move all preference related stuff in prefs subfolder

This commit is contained in:
Philipp Schaefer 2014-05-16 17:58:46 +02:00
parent 7c68567d17
commit 5b41dddb15
11 changed files with 51 additions and 47 deletions

View File

@ -115,11 +115,11 @@
</activity>
<activity
android:name="com.cradle.iitc_mobile.IITC_PreferenceActivity"
android:name="com.cradle.iitc_mobile.prefs.PreferenceActivity"
android:configChanges="orientation|keyboard|keyboardHidden|screenSize"
android:label="@string/activity_settings"/>
<activity
android:name="com.cradle.iitc_mobile.IITC_PluginPreferenceActivity"
android:name="com.cradle.iitc_mobile.prefs.PluginPreferenceActivity"
android:configChanges="orientation|keyboard|keyboardHidden|screenSize"
android:label="@string/activity_plugins"/>
<activity

View File

@ -42,7 +42,7 @@
android:summary="@string/pref_plugins_sum"
android:title="@string/pref_plugins">
<intent
android:targetClass="com.cradle.iitc_mobile.IITC_PluginPreferenceActivity"
android:targetClass="com.cradle.iitc_mobile.prefs.PluginPreferenceActivity"
android:targetPackage="com.cradle.iitc_mobile"/>
</PreferenceScreen>
@ -102,7 +102,7 @@
android:key="pref_update_plugins_interval"
android:title="@string/pref_update_plugins_interval"
android:summary="@string/pref_update_plugins_interval_sum"/>
<com.cradle.iitc_mobile.IITC_ForceUpdatePreference
<com.cradle.iitc_mobile.prefs.ForceUpdatePreference
android:key="pref_force_plugin_update"
android:title="@string/pref_force_plugin_update"
android:summary="@string/pref_force_plugin_update_sum"/>
@ -121,7 +121,7 @@
android:key="pref_about_screen"
android:persistent="false"
android:title="@string/pref_about_title">
<com.cradle.iitc_mobile.IITC_AboutDialogPreference
<com.cradle.iitc_mobile.prefs.AboutDialogPreference
android:dialogIcon="@android:drawable/ic_dialog_info"
android:key="pref_about"
android:title="@string/pref_about_title"/>

View File

@ -20,6 +20,7 @@ import android.widget.Toast;
import com.cradle.iitc_mobile.IITC_Mobile.ResponseHandler;
import com.cradle.iitc_mobile.async.UpdateScript;
import com.cradle.iitc_mobile.prefs.PluginPreferenceActivity;
import org.json.JSONObject;
@ -312,7 +313,7 @@ public class IITC_FileManager {
if (invalidateHeaders) {
try {
thread.join();
((IITC_PluginPreferenceActivity) mActivity).invalidateHeaders();
((PluginPreferenceActivity) mActivity).invalidateHeaders();
} catch (final InterruptedException e) {
Log.w(e);
}

View File

@ -40,6 +40,8 @@ import android.widget.TextView;
import android.widget.Toast;
import com.cradle.iitc_mobile.IITC_NavigationHelper.Pane;
import com.cradle.iitc_mobile.prefs.PluginPreferenceActivity;
import com.cradle.iitc_mobile.prefs.PreferenceActivity;
import com.cradle.iitc_mobile.share.ShareActivity;
import org.json.JSONException;
@ -257,7 +259,7 @@ public class IITC_Mobile extends Activity
final String type = intent.getType() == null ? "" : intent.getType();
final String path = uri.getPath() == null ? "" : uri.getPath();
if (path.endsWith(".user.js") || type.contains("javascript")) {
final Intent prefIntent = new Intent(this, IITC_PluginPreferenceActivity.class);
final Intent prefIntent = new Intent(this, PluginPreferenceActivity.class);
prefIntent.setDataAndType(uri, intent.getType());
startActivity(prefIntent);
}
@ -574,7 +576,7 @@ public class IITC_Mobile extends Activity
}
return true;
case R.id.action_settings: // start settings activity
final Intent intent = new Intent(this, IITC_PreferenceActivity.class);
final Intent intent = new Intent(this, PreferenceActivity.class);
try {
intent.putExtra("iitc_version", mFileManager.getIITCVersion());
} catch (final IOException e) {

View File

@ -16,9 +16,9 @@ import android.view.ViewParent;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import com.cradle.iitc_mobile.IITC_AboutDialogPreference;
import com.cradle.iitc_mobile.Log;
import com.cradle.iitc_mobile.R;
import com.cradle.iitc_mobile.prefs.AboutDialogPreference;
public class MainSettings extends PreferenceFragment {
@Override
@ -40,7 +40,7 @@ public class MainSettings extends PreferenceFragment {
Log.w(e);
}
final IITC_AboutDialogPreference pref_about = (IITC_AboutDialogPreference) findPreference("pref_about");
final AboutDialogPreference pref_about = (AboutDialogPreference) findPreference("pref_about");
pref_about.setVersions(iitcVersion, buildVersion);
final ListPreference pref_user_location_mode = (ListPreference) findPreference("pref_user_location_mode");

View File

@ -4,9 +4,9 @@ import android.app.ActionBar;
import android.os.Bundle;
import android.preference.PreferenceFragment;
import com.cradle.iitc_mobile.IITC_PluginPreference;
import com.cradle.iitc_mobile.IITC_PluginPreferenceActivity;
import com.cradle.iitc_mobile.R;
import com.cradle.iitc_mobile.prefs.PluginPreference;
import com.cradle.iitc_mobile.prefs.PluginPreferenceActivity;
import java.util.ArrayList;
@ -26,11 +26,11 @@ public class PluginsFragment extends PreferenceFragment {
// get plugins category for this fragments and plugins list
String category = getArguments().getString("category");
boolean userPlugin = getArguments().getBoolean("userPlugin");
ArrayList<IITC_PluginPreference> prefs =
IITC_PluginPreferenceActivity.getPluginPreference(category, userPlugin);
ArrayList<PluginPreference> prefs =
PluginPreferenceActivity.getPluginPreference(category, userPlugin);
// add plugin checkbox preferences
for (IITC_PluginPreference pref : prefs) {
for (PluginPreference pref : prefs) {
getPreferenceScreen().addPreference(pref);
}

View File

@ -1,4 +1,4 @@
package com.cradle.iitc_mobile;
package com.cradle.iitc_mobile.prefs;
import android.content.Context;
import android.preference.Preference;
@ -9,11 +9,13 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
public class IITC_AboutDialogPreference extends Preference {
import com.cradle.iitc_mobile.R;
public class AboutDialogPreference extends Preference {
private String mBuildVersion = "";
private String mIitcVersion = "";
public IITC_AboutDialogPreference(Context context, AttributeSet attrs) {
public AboutDialogPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}

View File

@ -1,27 +1,22 @@
package com.cradle.iitc_mobile;
package com.cradle.iitc_mobile.prefs;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.preference.Preference;
import android.preference.PreferenceManager;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import com.cradle.iitc_mobile.IITC_FileManager;
import com.cradle.iitc_mobile.IITC_Mobile;
import com.cradle.iitc_mobile.R;
/**
* The OptionDialogPreference will display a dialog, and will persist the
* <code>true</code> when pressing the positive button and <code>false</code>
* otherwise. It will persist to the android:key specified in xml-preference.
*/
public class IITC_ForceUpdatePreference extends Preference {
public class ForceUpdatePreference extends Preference {
public IITC_ForceUpdatePreference(Context context, AttributeSet attrs) {
public ForceUpdatePreference(Context context, AttributeSet attrs) {
super(context, attrs);
}

View File

@ -1,4 +1,4 @@
package com.cradle.iitc_mobile;
package com.cradle.iitc_mobile.prefs;
import android.content.Context;
import android.preference.CheckBoxPreference;
@ -7,9 +7,9 @@ import android.view.ViewGroup;
import android.widget.TextView;
// multiline checkbox preference
public class IITC_PluginPreference extends CheckBoxPreference {
public class PluginPreference extends CheckBoxPreference {
public IITC_PluginPreference(Context context) {
public PluginPreference(Context context) {
super(context);
}

View File

@ -1,4 +1,4 @@
package com.cradle.iitc_mobile;
package com.cradle.iitc_mobile.prefs;
import android.content.ActivityNotFoundException;
import android.content.Context;
@ -18,6 +18,10 @@ import android.widget.ListAdapter;
import android.widget.TextView;
import android.widget.Toast;
import com.cradle.iitc_mobile.IITC_FileManager;
import com.cradle.iitc_mobile.IITC_NotificationHelper;
import com.cradle.iitc_mobile.Log;
import com.cradle.iitc_mobile.R;
import com.cradle.iitc_mobile.fragments.PluginsFragment;
import java.io.File;
@ -31,7 +35,7 @@ import java.util.List;
import java.util.Map;
import java.util.TreeMap;
public class IITC_PluginPreferenceActivity extends PreferenceActivity {
public class PluginPreferenceActivity extends PreferenceActivity {
private final static int COPY_PLUGIN_REQUEST = 1;
@ -39,10 +43,10 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
// we use a tree map to have a map with alphabetical order
// don't initialize the asset plugin map, because it tells us if the settings are started the first time
// and we have to parse plugins to build the preference screen
private static TreeMap<String, ArrayList<IITC_PluginPreference>> sAssetPlugins = null;
private static TreeMap<String, ArrayList<PluginPreference>> sAssetPlugins = null;
// user plugins can be initialized.
private static final TreeMap<String, ArrayList<IITC_PluginPreference>> sUserPlugins =
new TreeMap<String, ArrayList<IITC_PluginPreference>>();
private static final TreeMap<String, ArrayList<PluginPreference>> sUserPlugins =
new TreeMap<String, ArrayList<PluginPreference>>();
private static int mDeletedPlugins = 0;
private IITC_FileManager mFileManager;
@ -69,7 +73,7 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
// it is enough to parse the plugin only on first start.
if (sAssetPlugins == null) {
Log.d("opened plugin prefs the first time since app start -> parse plugins");
sAssetPlugins = new TreeMap<String, ArrayList<IITC_PluginPreference>>();
sAssetPlugins = new TreeMap<String, ArrayList<PluginPreference>>();
setUpPluginPreferenceScreen();
} else {
checkForNewPlugins();
@ -170,7 +174,7 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
}
// called by Plugins Fragment
public static ArrayList<IITC_PluginPreference> getPluginPreference(final String key, final boolean userPlugin) {
public static ArrayList<PluginPreference> getPluginPreference(final String key, final boolean userPlugin) {
if (userPlugin) return sUserPlugins.get(key);
return sAssetPlugins.get(key);
@ -203,10 +207,10 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
final File[] userPlugins = getUserPlugins();
final String[] officialPlugins = getAssetPlugins();
int numPlugins = 0;
for (final Map.Entry<String, ArrayList<IITC_PluginPreference>> entry : sUserPlugins.entrySet()) {
for (final Map.Entry<String, ArrayList<PluginPreference>> entry : sUserPlugins.entrySet()) {
numPlugins += entry.getValue().size();
}
for (final Map.Entry<String, ArrayList<IITC_PluginPreference>> entry : sAssetPlugins.entrySet()) {
for (final Map.Entry<String, ArrayList<PluginPreference>> entry : sAssetPlugins.entrySet()) {
numPlugins += entry.getValue().size();
}
if ((userPlugins.length + officialPlugins.length) != (numPlugins + mDeletedPlugins)) {
@ -267,24 +271,24 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
// first check if we need a new category
if (userPlugin) {
if (!sUserPlugins.containsKey(plugin_cat)) {
sUserPlugins.put(plugin_cat, new ArrayList<IITC_PluginPreference>());
sUserPlugins.put(plugin_cat, new ArrayList<PluginPreference>());
Log.d("create " + plugin_cat + " and add " + plugin_name);
}
} else {
if (!sAssetPlugins.containsKey(plugin_cat)) {
sAssetPlugins.put(plugin_cat, new ArrayList<IITC_PluginPreference>());
sAssetPlugins.put(plugin_cat, new ArrayList<PluginPreference>());
Log.d("create " + plugin_cat + " and add " + plugin_name);
}
}
// now build a new checkable preference for the plugin
final IITC_PluginPreference plugin_pref = new IITC_PluginPreference(this);
final PluginPreference plugin_pref = new PluginPreference(this);
plugin_pref.setKey(plugin_key);
plugin_pref.setTitle(plugin_name);
plugin_pref.setSummary(plugin_desc);
plugin_pref.setDefaultValue(false);
plugin_pref.setPersistent(true);
final ArrayList<IITC_PluginPreference> list =
final ArrayList<PluginPreference> list =
userPlugin ? sUserPlugins.get(plugin_cat) : sAssetPlugins.get(plugin_cat);
list.add(plugin_pref);
}
@ -294,7 +298,7 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
final Header category = new Header();
category.title = "User Plugins";
mHeaders.add(category);
for (final Map.Entry<String, ArrayList<IITC_PluginPreference>> entry : sUserPlugins.entrySet()) {
for (final Map.Entry<String, ArrayList<PluginPreference>> entry : sUserPlugins.entrySet()) {
addHeader(entry.getKey(), true);
}
}
@ -302,7 +306,7 @@ public class IITC_PluginPreferenceActivity extends PreferenceActivity {
final Header category = new Header();
category.title = "Official Plugins";
mHeaders.add(category);
for (final Map.Entry<String, ArrayList<IITC_PluginPreference>> entry : sAssetPlugins.entrySet()) {
for (final Map.Entry<String, ArrayList<PluginPreference>> entry : sAssetPlugins.entrySet()) {
addHeader(entry.getKey(), false);
}
}

View File

@ -1,4 +1,4 @@
package com.cradle.iitc_mobile;
package com.cradle.iitc_mobile.prefs;
import android.app.Activity;
import android.os.Bundle;
@ -6,7 +6,7 @@ import android.view.MenuItem;
import com.cradle.iitc_mobile.fragments.MainSettings;
public class IITC_PreferenceActivity extends Activity {
public class PreferenceActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {