Kaydet (Commit) 520fbf75 authored tarafından Iain Billett's avatar Iain Billett

Added a preferences activity to set default behaviour.

üst 20b2d07b
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
<activity android:theme="@android:style/Theme.Holo.Light" android:name="WriterViewerActivity"> <activity android:theme="@android:style/Theme.Holo.Light" android:name="WriterViewerActivity">
<intent-filter android:label="writer_viewer"></intent-filter> <intent-filter android:label="writer_viewer"></intent-filter>
</activity> </activity>
<activity android:name="PreferenceEditor"></activity>
</application> </application>
</manifest> </manifest>
\ No newline at end of file
...@@ -14,4 +14,7 @@ ...@@ -14,4 +14,7 @@
<item android:id="@+id/menu_sort_modified" <item android:id="@+id/menu_sort_modified"
android:title="@string/menu_sort_modified" android:title="@string/menu_sort_modified"
android:onClick="sortFiles"/> android:onClick="sortFiles"/>
<item android:id="@+id/menu_preferences"
android:title="@string/menu_preferences"
android:onClick="editPreferences"/>
</menu> </menu>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<resources>
<integer-array name="FilterTypeValues">
<item >-1</item>
<item >0</item>
<item >1</item>
<item >2</item>
</integer-array>
<string-array name="FilterTypeStringValues">
<item >-1</item>
<item >0</item>
<item >1</item>
<item >2</item>
</string-array>
<string-array name="SortModeStringValues">
<item >0</item>
<item >1</item>
<item >2</item>
<item >3</item>
<item >4</item>
<item >5</item>
</string-array>
<!-- View Mode names,values -->
<string-array name="ViewModeNames">
<item >Grid</item>
<item >List</item>
</string-array>
<string-array name="ViewModeStringValues">
<item >0</item>
<item >1</item>
</string-array>
<!-- Preference Name Arrays -->
<string-array name="file_view_modes">
<item >EVERYTHING</item>
<item >DOCUMENTS</item>
<item >SPREADSHEETS</item>
<item >PRESENTATIONS</item>
</string-array>
<string-array name="FilterTypeNames">
<item >Everything</item>
<item >Documents</item>
<item >Spreadsheets</item>
<item >Presentations</item>
</string-array>
<string-array name="SortModeNames">
<item >A-Z</item>
<item >Z-A</item>
<item >Oldest First</item>
<item >Newest First</item>
<item >Largest First</item>
<item >Smallest First</item>
</string-array>
</resources>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<string name="hello">Hello World, LibreOfficeUIActivity!</string>
<string name="app_name">LibreOfficeUI</string> <string name="app_name">LibreOfficeUI</string>
<string name="menu_search">Search</string> <string name="menu_search">Search</string>
<string name="list_view">List</string> <string name="list_view">List</string>
...@@ -9,11 +7,10 @@ ...@@ -9,11 +7,10 @@
<string name="menu_sort_size">Sort By Size</string> <string name="menu_sort_size">Sort By Size</string>
<string name="menu_sort_az">Sort A-Z</string> <string name="menu_sort_az">Sort A-Z</string>
<string name="menu_sort_modified">Sort by Date</string> <string name="menu_sort_modified">Sort by Date</string>
<string-array name="file_view_modes"> <string name="menu_preferences">Preferences</string>
<item >EVERYTHING</item> <!-- Pref keys as resources ; Not currently used -->
<item >DOCUMENTS</item> <string name="EXPLORER_VIEW_TYPE_KEY">EXPLORER_VIEW_TYPE</string>
<item >SPREADSHEETS</item> <string name="CURRENT_DIRECTORY_KEY">CURRENT_DIRECTORY</string>
<item >PRESENTATIONS</item>
</string-array>
</resources> </resources>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<ListPreference
android:title="Default File Filter"
android:summary="Set which files to show by default"
android:entries="@array/FilterTypeNames"
android:entryValues="@array/FilterTypeStringValues"
android:key="FILTER_MODE"/>
<ListPreference
android:summary="Select how to order files; A-Z, by size, etc."
android:key="SORT_MODE"
android:title="File Order" android:entries="@array/SortModeNames" android:entryValues="@array/SortModeStringValues"/>
<ListPreference
android:entries="@array/ViewModeNames"
android:entryValues="@array/ViewModeStringValues"
android:title="Default File Explorer View"
android:key="EXPLORER_VIEW_TYPE"
android:summary="View files as a grid or in a list. #not functional, yet."/>
</PreferenceScreen>
\ No newline at end of file
...@@ -6,6 +6,7 @@ import java.io.FilenameFilter; ...@@ -6,6 +6,7 @@ import java.io.FilenameFilter;
import java.io.IOException; import java.io.IOException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.prefs.Preferences;
import android.app.ActionBar; import android.app.ActionBar;
import android.app.ActionBar.OnNavigationListener; import android.app.ActionBar.OnNavigationListener;
...@@ -16,6 +17,7 @@ import android.content.SharedPreferences; ...@@ -16,6 +17,7 @@ import android.content.SharedPreferences;
import android.database.DataSetObserver; import android.database.DataSetObserver;
import android.os.Bundle; import android.os.Bundle;
import android.os.Environment; import android.os.Environment;
import android.preference.PreferenceManager;
import android.util.Log; import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.Menu; import android.view.Menu;
...@@ -71,9 +73,7 @@ public class LibreOfficeUIActivity extends Activity implements OnNavigationListe ...@@ -71,9 +73,7 @@ public class LibreOfficeUIActivity extends Activity implements OnNavigationListe
homeDirectory.mkdirs(); homeDirectory.mkdirs();
currentDirectory = homeDirectory; currentDirectory = homeDirectory;
//Load default settings //Load default settings
prefs = getSharedPreferences(EXPLORER_PREFS_KEY, MODE_PRIVATE);
viewMode = prefs.getInt( EXPLORER_VIEW_TYPE_KEY, GRID_VIEW);
sortMode = prefs.getInt( SORT_MODE_KEY, FileUtilities.SORT_AZ );
} }
...@@ -301,6 +301,19 @@ public class LibreOfficeUIActivity extends Activity implements OnNavigationListe ...@@ -301,6 +301,19 @@ public class LibreOfficeUIActivity extends Activity implements OnNavigationListe
return; return;
} }
public void readPreferences(){
prefs = getSharedPreferences(EXPLORER_PREFS_KEY, MODE_PRIVATE);
viewMode = prefs.getInt( EXPLORER_VIEW_TYPE_KEY, GRID_VIEW);
sortMode = prefs.getInt( SORT_MODE_KEY, FileUtilities.SORT_AZ );
SharedPreferences defaultPrefs = PreferenceManager.getDefaultSharedPreferences( getBaseContext() );
filterMode = Integer.valueOf( defaultPrefs.getString( FILTER_MODE_KEY , "-1") );
sortMode = Integer.valueOf( defaultPrefs.getString( SORT_MODE_KEY , "-1") );
}
public void editPreferences(MenuItem item){
startActivity( new Intent( this , PreferenceEditor.class) );
}
@Override @Override
protected void onSaveInstanceState(Bundle outState) { protected void onSaveInstanceState(Bundle outState) {
// TODO Auto-generated method stub // TODO Auto-generated method stub
...@@ -341,6 +354,7 @@ public class LibreOfficeUIActivity extends Activity implements OnNavigationListe ...@@ -341,6 +354,7 @@ public class LibreOfficeUIActivity extends Activity implements OnNavigationListe
// TODO Auto-generated method stub // TODO Auto-generated method stub
super.onResume(); super.onResume();
Log.d(tag, "onResume"); Log.d(tag, "onResume");
readPreferences();// intent values take precedence over prefs?
Intent i = this.getIntent(); Intent i = this.getIntent();
if( i.hasExtra( CURRENT_DIRECTORY_KEY ) ){ if( i.hasExtra( CURRENT_DIRECTORY_KEY ) ){
currentDirectory = new File( i.getStringExtra( CURRENT_DIRECTORY_KEY ) ); currentDirectory = new File( i.getStringExtra( CURRENT_DIRECTORY_KEY ) );
......
package org.libreoffice.ui;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceActivity;
public class PreferenceEditor extends PreferenceActivity {
public final static String FilterTypePrefKey = "FilterTypePreference";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource( R.xml.libreoffice_preferences );
//mPrefs = getSharedPreferences( LibreOfficeUIActivity.EXPLORER_PREFS_KEY , MODE_PRIVATE );
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment