1
0
Fork 0
mirror of https://github.com/geometer/FBReaderJ.git synced 2025-10-04 10:19:33 +02:00

language filter (in progress)

This commit is contained in:
Nikolay Pultsin 2010-12-02 13:28:32 +00:00
parent b0d3b7de3b
commit f7e213bf4a
2 changed files with 6 additions and 5 deletions

View file

@ -263,7 +263,7 @@ public class NetworkLibraryActivity extends NetworkBaseActivity {
.setTitle(dialogResource.getResource("languageFilterDialog").getResource("title").getValue()) .setTitle(dialogResource.getResource("languageFilterDialog").getResource("title").getValue())
.setPositiveButton(dialogResource.getResource("button").getResource("ok").getValue(), new DialogInterface.OnClickListener() { .setPositiveButton(dialogResource.getResource("button").getResource("ok").getValue(), new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
final ArrayList<String> newActiveCodes = new ArrayList<String>(); final TreeSet<String> newActiveCodes = new TreeSet<String>(new ZLLanguageUtil.CodeComparator());
for (int i = 0; i < checked.length; ++i) { for (int i = 0; i < checked.length; ++i) {
if (checked[i]) { if (checked[i]) {
newActiveCodes.add(allLanguageCodes.get(i)); newActiveCodes.add(allLanguageCodes.get(i));

View file

@ -84,10 +84,8 @@ public class NetworkLibrary {
public final ZLStringOption NetworkSearchPatternOption = new ZLStringOption("NetworkSearch", "Pattern", ""); public final ZLStringOption NetworkSearchPatternOption = new ZLStringOption("NetworkSearch", "Pattern", "");
private final ArrayList<INetworkLink> myLinks = new ArrayList<INetworkLink>(); private final ArrayList<INetworkLink> myLinks = new ArrayList<INetworkLink>();
public List<String> languageCodes() { public List<String> languageCodes() {
final TreeSet<String> languageSet = new TreeSet<String>(); final TreeSet<String> languageSet = new TreeSet<String>();
for (INetworkLink link : myLinks) { for (INetworkLink link : myLinks) {
@ -99,11 +97,13 @@ public class NetworkLibrary {
private ZLStringOption myActiveLanguageCodesOption; private ZLStringOption myActiveLanguageCodesOption;
private ZLStringOption activeLanguageCodesOption() { private ZLStringOption activeLanguageCodesOption() {
if (myActiveLanguageCodesOption == null) { if (myActiveLanguageCodesOption == null) {
final TreeSet<String> defaultCodes = new TreeSet<String>(new ZLLanguageUtil.CodeComparator());
defaultCodes.addAll(ZLibrary.Instance().defaultLanguageCodes());
myActiveLanguageCodesOption = myActiveLanguageCodesOption =
new ZLStringOption( new ZLStringOption(
"Options", "Options",
"ActiveLanguages", "ActiveLanguages",
commaSeparatedString(ZLibrary.Instance().defaultLanguageCodes()) commaSeparatedString(defaultCodes)
); );
} }
return myActiveLanguageCodesOption; return myActiveLanguageCodesOption;
@ -114,7 +114,8 @@ public class NetworkLibrary {
} }
public void setActiveLanguageCodes(Collection<String> codes) { public void setActiveLanguageCodes(Collection<String> codes) {
final TreeSet<String> allCodes = new TreeSet<String>(ZLibrary.Instance().defaultLanguageCodes()); final TreeSet<String> allCodes = new TreeSet<String>(new ZLLanguageUtil.CodeComparator());
allCodes.addAll(ZLibrary.Instance().defaultLanguageCodes());
allCodes.removeAll(languageCodes()); allCodes.removeAll(languageCodes());
allCodes.addAll(codes); allCodes.addAll(codes);
activeLanguageCodesOption().setValue(commaSeparatedString(allCodes)); activeLanguageCodesOption().setValue(commaSeparatedString(allCodes));