From 876c37f3cd3beec94a2be38e211ff7f4a63a0ab0 Mon Sep 17 00:00:00 2001 From: Nikolay Pultsin Date: Sat, 8 Jan 2011 21:57:07 +0000 Subject: [PATCH] preferences code cleanup --- .../preferences/PreferenceActivity.java | 10 +---- .../preferences/ZLEnumPreference.java | 2 +- .../preferences/ZLPreferenceActivity.java | 22 ++++++----- .../preferences/ZLSimplePreference.java | 39 ------------------- 4 files changed, 15 insertions(+), 58 deletions(-) delete mode 100644 src/org/geometerplus/android/fbreader/preferences/ZLSimplePreference.java diff --git a/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java b/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java index 267122f1e..3fbd1fa5c 100644 --- a/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java +++ b/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java @@ -45,15 +45,9 @@ public class PreferenceActivity extends ZLPreferenceActivity { final ColorProfile profile = fbReader.getColorProfile(); final Screen directoriesScreen = createPreferenceScreen("directories"); - directoriesScreen.addPreference(new ZLStringOptionPreference( - this, Paths.BooksDirectoryOption(), - directoriesScreen.Resource, "books" - )); + directoriesScreen.addOption(Paths.BooksDirectoryOption(), "books"); if (AndroidFontUtil.areExternalFontsSupported()) { - directoriesScreen.addPreference(new ZLStringOptionPreference( - this, Paths.FontsDirectoryOption(), - directoriesScreen.Resource, "fonts" - )); + directoriesScreen.addOption(Paths.FontsDirectoryOption(), "fonts"); } final Screen appearanceScreen = createPreferenceScreen("appearance"); diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java b/src/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java index 778cecfed..a0a63718f 100644 --- a/src/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java +++ b/src/org/geometerplus/android/fbreader/preferences/ZLEnumPreference.java @@ -27,7 +27,7 @@ import org.geometerplus.zlibrary.core.resources.ZLResource; class ZLEnumPreference> extends ZLStringListPreference { private final ZLEnumOption myOption; - ZLEnumPreference(Context context, ZLResource resource, String resourceKey, ZLEnumOption option) { + ZLEnumPreference(Context context, ZLEnumOption option, ZLResource resource, String resourceKey) { super(context, resource, resourceKey); myOption = option; diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java b/src/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java index 2e9e56cd1..a93a035b3 100644 --- a/src/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java +++ b/src/org/geometerplus/android/fbreader/preferences/ZLPreferenceActivity.java @@ -59,19 +59,21 @@ abstract class ZLPreferenceActivity extends android.preference.PreferenceActivit } public ZLPreference addOption(ZLBooleanOption option, String resourceKey) { - ZLBooleanPreference preference = - new ZLBooleanPreference(ZLPreferenceActivity.this, option, Resource, resourceKey); - myScreen.addPreference(preference); - myPreferences.add(preference); - return preference; + return addPreference( + new ZLBooleanPreference(ZLPreferenceActivity.this, option, Resource, resourceKey) + ); + } + + public ZLPreference addOption(ZLStringOption option, String resourceKey) { + return addPreference( + new ZLStringOptionPreference(ZLPreferenceActivity.this, option, Resource, resourceKey) + ); } public > ZLPreference addOption(ZLEnumOption option, String resourceKey) { - ZLEnumPreference preference = - new ZLEnumPreference(ZLPreferenceActivity.this, Resource, resourceKey, option); - myScreen.addPreference(preference); - myPreferences.add(preference); - return preference; + return addPreference( + new ZLEnumPreference(ZLPreferenceActivity.this, option, Resource, resourceKey) + ); } public void close() { diff --git a/src/org/geometerplus/android/fbreader/preferences/ZLSimplePreference.java b/src/org/geometerplus/android/fbreader/preferences/ZLSimplePreference.java deleted file mode 100644 index a04a8862b..000000000 --- a/src/org/geometerplus/android/fbreader/preferences/ZLSimplePreference.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (C) 2009-2011 Geometer Plus - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - * 02110-1301, USA. - */ - -package org.geometerplus.android.fbreader.preferences; - -import android.content.Context; -import android.preference.Preference; - -abstract class ZLSimplePreference extends Preference implements ZLPreference, Preference.OnPreferenceClickListener { - ZLSimplePreference(Context context) { - super(context); - setOnPreferenceClickListener(this); - } - - public abstract void onAccept(); - - public boolean onPreferenceClick(Preference preference) { - onClick(); - return true; - } - - public abstract void onClick(); -}