From ded085bf2bb3210261a6fdfacbb67c8059ce7ac4 Mon Sep 17 00:00:00 2001 From: Nikolay Pultsin Date: Sat, 3 May 2014 03:30:54 +0100 Subject: [PATCH] refactoring --- .../fileChooser/FileChooserPreference.java | 20 +++---------------- .../FileChooserStringListPreference.java | 12 +++++++++++ .../FileChooserStringPreference.java | 12 +++++++++++ 3 files changed, 27 insertions(+), 17 deletions(-) diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java b/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java index 952462b51..70b63436b 100644 --- a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java +++ b/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserPreference.java @@ -19,19 +19,16 @@ package org.geometerplus.android.fbreader.preferences.fileChooser; -import android.app.Activity; import android.content.Context; import android.content.Intent; import android.preference.Preference; import org.geometerplus.zlibrary.core.resources.ZLResource; -import org.geometerplus.android.util.FileChooserUtil; - abstract class FileChooserPreference extends Preference { - private final int myRegCode; - private final ZLResource myResource; - private final boolean myChooseWritableDirectoriesOnly; + protected final int myRegCode; + protected final ZLResource myResource; + protected final boolean myChooseWritableDirectoriesOnly; protected final Runnable myOnValueSetAction; FileChooserPreference(Context context, ZLResource rootResource, String resourceKey, boolean chooseWritableDirectoriesOnly, int regCode, Runnable onValueSetAction) { @@ -45,17 +42,6 @@ abstract class FileChooserPreference extends Preference { myOnValueSetAction = onValueSetAction; } - @Override - protected void onClick() { - FileChooserUtil.runDirectoryChooser( - (Activity)getContext(), - myRegCode, - myResource.getResource("chooserTitle").getValue(), - getStringValue(), - myChooseWritableDirectoriesOnly - ); - } - protected abstract String getStringValue(); protected abstract void setValueFromIntent(Intent data); } diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringListPreference.java b/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringListPreference.java index bb21a40c0..8a31d7ab2 100644 --- a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringListPreference.java +++ b/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringListPreference.java @@ -22,6 +22,7 @@ package org.geometerplus.android.fbreader.preferences.fileChooser; import java.util.Collections; import java.util.List; +import android.app.Activity; import android.content.Context; import android.content.Intent; @@ -42,6 +43,17 @@ class FileChooserStringListPreference extends FileChooserPreference { setSummary(getStringValue()); } + @Override + protected void onClick() { + FileChooserUtil.runDirectoryChooser( + (Activity)getContext(), + myRegCode, + myResource.getResource("chooserTitle").getValue(), + getStringValue(), + myChooseWritableDirectoriesOnly + ); + } + @Override protected String getStringValue() { return MiscUtil.join(myOption.getValue(), ", "); diff --git a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringPreference.java b/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringPreference.java index e4f038cb4..279f0f6ed 100644 --- a/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringPreference.java +++ b/src/org/geometerplus/android/fbreader/preferences/fileChooser/FileChooserStringPreference.java @@ -19,6 +19,7 @@ package org.geometerplus.android.fbreader.preferences.fileChooser; +import android.app.Activity; import android.content.Context; import android.content.Intent; @@ -38,6 +39,17 @@ class FileChooserStringPreference extends FileChooserPreference { setSummary(getStringValue()); } + @Override + protected void onClick() { + FileChooserUtil.runDirectoryChooser( + (Activity)getContext(), + myRegCode, + myResource.getResource("chooserTitle").getValue(), + getStringValue(), + myChooseWritableDirectoriesOnly + ); + } + @Override protected String getStringValue() { return myOption.getValue();