[jsword-svn] r2015 - in trunk: bibledesktop/.settings bibledesktop/src/main/java/org/crosswire/bibledesktop/book common-swing/.settings common-swing/src/main/java/org/crosswire/common/swing jsword/.settings jsword-limbo/.settings

dmsmith at crosswire.org dmsmith at crosswire.org
Thu Nov 18 07:20:36 MST 2010


Author: dmsmith
Date: 2010-11-18 07:20:36 -0700 (Thu, 18 Nov 2010)
New Revision: 2015

Added:
   trunk/common-swing/src/main/java/org/crosswire/common/swing/CWLabel.java
   trunk/jsword/.settings/de.guhsoft.jinto.core.prefs
   trunk/jsword/.settings/org.eclipse.jdt.launching.prefs
Modified:
   trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties
   trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties
   trunk/common-swing/.settings/org.eclipse.jdt.core.prefs
   trunk/common-swing/src/main/java/org/crosswire/common/swing/ActionFactory.java
   trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs
   trunk/jsword/.settings/org.eclipse.jdt.core.prefs
Log:
More migration toward fewer property files. This time, improved ActionFactory to allow the construction of a CWAction from a parameter list.

Modified: trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/.settings/org.eclipse.jdt.core.prefs	2010-11-18 14:20:36 UTC (rev 2015)
@@ -1,4 +1,4 @@
-#Thu Nov 11 12:00:19 EST 2010
+#Thu Nov 11 22:22:16 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -15,93 +15,21 @@
 org.eclipse.jdt.core.codeComplete.localSuffixes=
 org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
 org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.4
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.doc.comment.support=enabled
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
 org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
 org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.4
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,HIGH,NORMAL,LOW,NORMAL,LOW,LOW,NORMAL,LOW,LOW,LOW,LOW,LOW
 org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,URGENT,PENDING,LATER,BUG,DEAD,SPEEDUP,I18N,JDK14,JDK15,NOWARN,BORROWED,SERIALUID

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -1,56 +1,52 @@
 
-( = (
-
-) = )
-
-<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses. = <html><b>Search Tips.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a ! removes words from the result e.g. "<code>lord ! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
-
-Advanced\ Search = Advanced Search
-
-Bible\: = Bible:
-
-Books = Books
-
-Could\ not\ find\ verses\ with\:\ {0} = Could not find verses with: {0}
-
-Error\ finding\ verse = Error finding verse
-
-Error\:\ {0} = Error: {0}
-
-File\ {0}\ is\ empty = File {0} is empty
-
-No\ Bible\ is\ installed = No Bible is installed
-
-None = None
-
-Search\ Quick\ Help = Search Quick Help
-
-Select\ Passage = Select Passage
-
-Select\ Passages\ to\ Restrict\ Search\ to = Select Passages to Restrict Search to
-
-Select\ a\ book = Select a book
-
-Select\ a\ chapter = Select a chapter
-
-Select\ a\ verse = Select a verse
-
-Show\ all\ verses\: = Show all verses:
-
-Show\ best\ verse\: = Show best verse:
-
-Show\ {0}\ verses\: = Show {0} verses:
-
-Showing\ {1}\ of\ {2}\ verses\ with\:\ {0} = Showing {1} of {2} verses with: {0}
-
-Summary\:\ {0} = Summary: {0}
-
-The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom = The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
-
-There\ are\ {1}\ verses\ with\:\ {0} = There are {1} verses with: {0}
-
-Untitled = Untitled
-
-Untitled\ {0} = Untitled {0}
-
-Verse\ Lists\ ({0}) = Verse Lists ({0})
+(=(
+)=)
+<html><b>Search\ Tips.</b><br>You\ can\ use\ ||\ to\ join\ phrases,\ for\ example\ "<code>balaam\ ||\ balak</code>"\ finds\ passages\ containing\ Balak\ OR\ Balaam<br>Using\ &&\ requires\ both\ words,\ e.g.\ "<code>aaron\ &&\ moses</code>"\ finds\ passages\ containing\ both\ Aaron\ AND\ Moses<br>Using\ a\ \!\ removes\ words\ from\ the\ result\ e.g.\ "<code>lord\ \!\ jesus</code>"\ is\ passages\ containing\ Lord\ BUT\ NOT\ Jesus<br>Using\ ~2\ widens\ the\ passage\ by\ 2\ verses\ either\ side\ on\ any\ match.\ So\ "<code>amminadab\ ~1\ perez</code>"\ finds<br>verses\ containting\ Amminadab\ within\ 1\ verse\ of\ mention\ of\ Perez.<br>Using\ +[Gen-Exo]\ at\ the\ beginning\ will\ restrict\ a\ search\ to\ that\ range\ of\ verses.=<html><b>Search Tips.</b><br>You can use || to join phrases, for example "<code>balaam || balak</code>" finds passages containing Balak OR Balaam<br>Using && requires both words, e.g. "<code>aaron && moses</code>" finds passages containing both Aaron AND Moses<br>Using a \! removes words from the result e.g. "<code>lord \! jesus</code>" is passages containing Lord BUT NOT Jesus<br>Using ~2 widens the passage by 2 verses either side on any match. So "<code>amminadab ~1 perez</code>" finds<br>verses containting Amminadab within 1 verse of mention of Perez.<br>Using +[Gen-Exo] at the beginning will restrict a search to that range of verses.
+Advanced\ Search=Advanced Search
+Bible\:=Bible\:
+Books=Books
+Contains\ Strong's\ Hebrew\ and\ Greek=Contains Strong's Hebrew and Greek
+Could\ not\ find\ verses\ with\:\ {0}=Could not find verses with\: {0}
+Error\ finding\ verse=Error finding verse
+Error\:\ {0}=Error\: {0}
+Excludes\ Greek\ Numbers\:=Excludes Greek Numbers\:
+Excludes\ Hebrew\ Numbers\:=Excludes Hebrew Numbers\:
+Excludes\ all\ these\ words\:=Excludes all these words\:
+File\ {0}\ is\ empty=File {0} is empty
+Include\ Greek\ Numbers=Includes Greek Numbers\:
+Include\ these\ verses\:=Include these verses\:
+Include\ this\ phrase\:=Includes this phrase\:
+Include\ words\ starting\ with\:=Includes words starting with\:
+Includes\ Hebrew\ Numbers\:=Includes Hebrew Numbers\:
+Includes\ these\ words\:=Includes these words\:
+Narrow\ search\ by\ time\ period=Narrow search by time period
+No\ Bible\ is\ installed=No Bible is installed
+None=None
+Preset\ Ranges\:=Preset Ranges\:
+Prioritize\ the\ found\ verses=Prioritize the found verses
+Quick\ search\ syntax\:=Quick search syntax\:
+Restrict\ search\ to\ parts\ of\ the\ Bible=Restrict search to parts of the Bible
+Restrict\ to\ verses\ written\ after\:=Restrict to verses written after\:
+Restrict\ to\ verses\ written\ before\:=Restrict to verses written before\:
+Search=_Search
+Search\ Quick\ Help=Search Quick Help
+Search\ for\ verses\ with\ the\ following\ details=Search for verses with the following details
+Select=Select
+Select\ Passage=Select Passage
+Select\ Passages\ to\ Restrict\ Search\ to=Select Passages to Restrict Search to
+Select\ a\ book=Select a book
+Select\ a\ chapter=Select a chapter
+Select\ a\ verse=Select a verse
+Show=Show
+Show\ all\ verses\:=Show all verses\:
+Show\ best\ verse\:=Show best verse\:
+Show\ quick\ search\ syntax=Show quick search syntax
+Show\ {0}\ verses\:=Show {0} verses\:
+Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}=Showing {1} of {2} verses with\: {0}
+Something\ like\ this\ spelling\:=Something like this spelling\:
+Summary\:\ {0}=Summary\: {0}
+The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom=The Whole Bible|All Prophecy (Deu 28, Isa-Mal, Rev)|Old Testament (Gen-Mal)|New Testament (Mat-Rev)|The Pentateuch (Gen-Deu)|History (Josh-Est)|Poetry (Job-Song)|Major Prophets (Isa-Dan)|Minor Prophets (Hos-Mal)|Gospels and Acts (Mat-Act)|Letters to People (Rom-Heb)|Letters from People (Jam-Jude)|Custom
+There\ are\ {1}\ verses\ with\:\ {0}=There are {1} verses with\: {0}
+Untitled=Untitled
+Untitled\ {0}=Untitled {0}
+Verse\ Lists\ ({0})=Verse Lists ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_de.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -3,22 +3,38 @@
 Advanced\ Search=Suche (fortgeschritten)
 Bible\:=Bibel\:
 Books=B\u00FCcher
+Contains\ Strong's\ Hebrew\ and\ Greek=Contains Strong's Hebrew and Greek
 Could\ not\ find\ verses\ with\:\ {0}=Verse mit {0} nicht gefunden
 Error\ finding\ verse=Vers nicht gefunden
 Error\:\ {0}=Fehler\: {0}
+Excludes\ all\ these\ words\:=Schlie\u00DFe diese W\u00F6rter aus\:
 File\ {0}\ is\ empty=Datei {0} ist leer
+Include\ these\ verses\:=Diese Verse miteinbeziehen\:
+Include\ this\ phrase\:=Suche nach dieser Phrase\:
+Include\ words\ starting\ with\:=Beginnt mit\:
+Includes\ these\ words\:=Suche nach diesen W\u00F6rtern\:
 No\ Bible\ is\ installed=Keine Bibel installiert
 None=Keines
+Preset\ Ranges\:=Bereiche\:
+Prioritize\ the\ found\ verses=Gefundene Verse priorisieren
+Quick\ search\ syntax\:=Verk\u00FCrzte Such-Syntax\:
+Restrict\ search\ to\ parts\ of\ the\ Bible=Nur bestimmte Teile der Bibel durchsuchen
+Search=Suche
 Search\ Quick\ Help=Kurzhilfe zur Suche
+Search\ for\ verses\ with\ the\ following\ details=Detaillierte Sucheinstellungen
+Select=Auswahl
 Select\ Passage=Abschnitt ausw\u00E4hlen
 Select\ Passages\ to\ Restrict\ Search\ to=Beschr\u00E4nkung der Passagen
 Select\ a\ book=Buch
 Select\ a\ chapter=Kapitel
 Select\ a\ verse=Vers
+Show=Zeige
 Show\ all\ verses\:=Zeige {0} Verse\:
 Show\ best\ verse\:=Zeige den besten Vers\:
+Show\ quick\ search\ syntax=Verk\u00FCrzte Such-Syntax anzeigen
 Show\ {0}\ verses\:=Zeige {0} Verse\:
 Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}=Folgende {1} von {2} Versen mit\: {0}
+Something\ like\ this\ spelling\:=So \u00E4hnlich\:
 Summary\:\ {0}=Zusammenfassung\: {0}
 The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom=Die ganze Bibel|Alle Propheten (Deu 28, Isa-Mal, Rev)|Altes Testament Testament (Gen-Mal)|Neues Testament (Mat-Rev)|Der Pentateuch (Gen-Deu)|Geschichtschreibung (Josh-Est)|Poesie (Job-Song)|Gro\u00DFe Propheten (Isa-Dan)|Kleine Propheten (Hos-Mal)|Evangelien und Apostelgeschichte (Mat-Act)|Pauslusbriefe (Rom-Heb)|Briefe von anderen Aposteln (Jam-Jude)|Custom
 There\ are\ {1}\ verses\ with\:\ {0}=Folgende {1} Verse mit {0} gefunden

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_fa.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -3,22 +3,42 @@
 Advanced\ Search=\u062C\u0633\u062A\u062C\u0648
 Bible\:=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633\:
 Books=\u06A9\u062A\u0627\u0628\u0647\u0627
+Contains\ Strong's\ Hebrew\ and\ Greek=\u062C\u0633\u062A\u062C\u0648 \u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06A9\u0634\u06CC\u0634 \u0627\u0633\u062A\u0631\u0648\u0646\u06AF
 Could\ not\ find\ verses\ with\:\ {0}=\u0647\u06CC\u062C \u0622\u06CC\u0647 \u0628\u0627 {0} \u067E\u06CC\u062F\u0627 \u0646\u0634\u062F
 Error\ finding\ verse=\u0627\u0634\u062A\u0628\u0627 \u0628\u0627 \u0627\u0646 \u0622\u06CC\u0647
 Error\:\ {0}=\u0627\u0634\u062A\u0628\u0627\: {0}
+Excludes\ Greek\ Numbers\:=\u0628\u062F\u0648\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06CC\u0648\u0646\u0627\u0646\u06CC
+Excludes\ Hebrew\ Numbers\:=\u0628\u062F\u0648\u0646 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0639\u0628\u0631\u06CC
+Excludes\ all\ these\ words\:=\u0628\u062F\u0648\u0646 \u0627\u06CC\u0646 \u06A9\u0644\u0645\u0627\u062A
 File\ {0}\ is\ empty={0} \u062E\u0644\u06CC \u0647\u0627\u0633\u062A
+Include\ Greek\ Numbers=\u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u06CC\u0648\u0646\u0627\u0646\u06CC
+Include\ these\ verses\:=\u0627\u06CC\u0646 \u0622\u06CC\u0627\u062A \u0631\u0627 \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646
+Include\ this\ phrase\:=\u0645\u062D\u062A\u0648\u06CC \u0622\u06CC\u0646 \u0627\u0645\u0637\u0644\u0627\u062D\:
+Include\ words\ starting\ with\:=\u0645\u062D\u062A\u0648\u06CC \u06A9\u0644\u0645\u0627\u062A\u06CC \u06A9\u0647 \u0628\u0627 \u0627\u06CC\u0646 \u0634\u0631\u0648\u0639 \u0634\u0648\u062F\:
+Includes\ Hebrew\ Numbers\:=\u0628\u0627 \u0634\u0645\u0627\u0631\u0647\u200C\u0647\u0627 \u0639\u0628\u0631\u06CC
+Includes\ these\ words\:=\u0645\u062D\u062A\u0648\u06CC \u0627\u06CC\u0646 \u06A9\u0644\u0645\u0627\u062A
 No\ Bible\ is\ installed=\u0647\u06CC\u062C \u06A9\u062A\u0627\u0628 \u0646\u0636\u0628 \u0646\u0634\u062F\u0647
 None=\u0647\u06CC\u062C
+Preset\ Ranges\:=\u0642\u0633\u0645\u062A200C\u0647\u0627 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633
+Prioritize\ the\ found\ verses=\u062A\u0639\u062F\u0627\u062F \u0622\u06CC\u0627\u062A\u06CC \u06A9\u0647 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F 
+Quick\ search\ syntax\:=\u062C\u0633\u062A\u062C\u0648\u06CC \u06A9\u0627\u0645\u0644
+Restrict\ search\ to\ parts\ of\ the\ Bible=\u0642\u0633\u0645\u062A\u200C\u0647\u0627 \u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0647 \u0645\u06CC\u062E\u0648\u0627\u0647\u06CC\u062F \u062C\u0633\u062A\u062C\u0648 \u06A9\u0646\u06CC\u062F
+Search=\u0642\u0628\u0648\u0644
 Search\ Quick\ Help=\u0631\u0647\u0646\u0645\u0627
+Search\ for\ verses\ with\ the\ following\ details=\u062C\u0633\u062A\u062C\u0648\u06CC \u0622\u06CC\u0627\u062A \u0628\u0627 \u062C\u0632\u062B\u06CC\u0627\u062A \u0632\u06CC\u0631
+Select=\u202D \u202C\u0627\u0646\u062A\u062E\u0627\u0628\u202E \u202C\u06A9\u0646
 Select\ Passage=\u0627\u0646\u062A\u062E\u0627\u0628 \u0642\u0633\u0645\u062A
 Select\ Passages\ to\ Restrict\ Search\ to=\u0642\u0633\u0645\u062A\u0647\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
 Select\ a\ book=\u06A9\u062A\u0627\u0628 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
 Select\ a\ chapter=\u0628\u0627\u0628 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
 Select\ a\ verse=\u0622\u06CC\u0647 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646
+Show=\u0622\u06CC\u0647
 Show\ all\ verses\:={0}\u0622\u06CC\u0647
 Show\ best\ verse\:=\u0622\u06CC\u0647 \u0628\u0647\u062A\u0631\u06CC\u0646
+Show\ quick\ search\ syntax=\u062C\u0633\u062A\u062C\u0648\u06CC \u06A9\u0627\u0645\u0644
 Show\ {0}\ verses\:={0}\u0622\u06CC\u0647
 Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}={1} \u0627\u0632 {2} \u0622\u06CC\u0647 \u0628\u0627 {0}
+Something\ like\ this\ spelling\:=\u062F\u0627\u0631\u0627\u06CC \u0627\u0645\u0644\u0627\u0621 \u0645\u0634\u0627\u0628\u0647 \u0628\u0627 
 Summary\:\ {0}=\u062E\u0644\u0627\u0645\u0647\: {0}
 The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom=\u06A9\u062A\u0627\u0628 \u0645\u0642\u062F\u0633 \u06A9\u0627\u0645\u0644|\u0646\u0628\u0627\u0648\u062A\u06CC \u06A9\u0627\u0645\u0644 (Deu 28, Isa-Mal, Rev)|\u0639\u0647\u062F \u0639\u062A\u06CC\u0642 (Gen-Mal)|\u0639\u0647\u062F \u062C\u062F\u06CC\u062F (Mat-Rev)|\u062A\u0648\u0631\u0627\u062A (Gen-Deu)|\u062A\u0631\u06CC\u062E(Josh-Est)|\u0634\u0627\u0639\u0631 (Job-Song)|\u0646\u0628\u06CC\u200C\u0647\u0627 \u0628\u0632\u0631\u06AF (Isa-Dan)|\u0646\u0628\u06CC\u200C\u0647\u0627 \u06A9\u0648\u062C\u06A9 (Hos-Mal)|\u0627\u062D\u0646\u062C\u062D\u0644 \u0648 \u0627\u0639\u0645\u0627\u0644 (Mat-Act)|\u0646\u0645\u0647\u200C\u0647\u0627 \u067E \u067E\u0648\u0644\u0627\u0633 (Rom-Heb)|\u0646\u0627\u0645\u0647\u200C\u0647\u0627 \u0631\u0633\u0648\u0644\u0627\u0646 \u062F\u06CC\u06AF\u0627\u0631 (Jam-Jude)|\u0633\u0627\u062E\u062A\u0647 \u0634\u0645\u0627
 There\ are\ {1}\ verses\ with\:\ {0}={1} \u0622\u06CC\u0647 \u0628\u0627 {0}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_in.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -3,22 +3,43 @@
 Advanced\ Search=Pencarian Khusus
 Bible\:=Alkitab\:
 Books=Buku
+Contains\ Strong's\ Hebrew\ and\ Greek=Berisikan Strong's Ibrani dan Yunani
 Could\ not\ find\ verses\ with\:\ {0}=Tidak dapat menemukan ayat\: {0}
 Error\ finding\ verse=Gagal mencari ayat
 Error\:\ {0}=Kesalahan\: {0}
+Excludes\ Greek\ Numbers\:=Tidak mengandung Yunani Nos\:
+Excludes\ Hebrew\ Numbers\:=Tidak mengandung Ibrani Nos\:
+Excludes\ all\ these\ words\:=Tidak mengandung kata\:
 File\ {0}\ is\ empty=Berkas {0} kosong
+Include\ Greek\ Numbers=Mengandung Yunani Nos\:
+Include\ these\ verses\:=Termasuk ayat ini\:
+Include\ this\ phrase\:=Mengandung frase\:
+Include\ words\ starting\ with\:=Berawalan dengan\:
+Includes\ Hebrew\ Numbers\:=Mengandung Ibrani Nos\:
+Includes\ these\ words\:=Termasuk kata\:
 No\ Bible\ is\ installed=Tidak ada Teks Biblika yang terinstall
 None=None
+Preset\ Ranges\:=Lingkup Kitab\:
+Prioritize\ the\ found\ verses=Urutkan prioritas hasil pencarian
+Quick\ search\ syntax\:=Tampilan sintaksis pencarian\:
+Restrict\ search\ to\ parts\ of\ the\ Bible=Batasan hasil pencarian
+Restrict\ to\ verses\ written\ after\:=Batasi ayat sesudah\:
+Restrict\ to\ verses\ written\ before\:=Batasi ayar sebelum\:
+Search=_Cari
 Search\ Quick\ Help=Bantuan Pencarian
+Search\ for\ verses\ with\ the\ following\ details=Cari ayat dengan specifikasi
 Select\ Passage=Pilih Ayat
 Select\ Passages\ to\ Restrict\ Search\ to=Pilih ayat dengan batasan
 Select\ a\ book=Pilih Buku
 Select\ a\ chapter=Pilih Pasal
 Select\ a\ verse=Pilih Ayat
+Show=Tampilkan
 Show\ all\ verses\:=Menampilkan {0} ayat\:
 Show\ best\ verse\:=Menampilan ayat\:
+Show\ quick\ search\ syntax=Tampilan sintaksis pencarian cepat
 Show\ {0}\ verses\:=Menampilkan {0} ayat\:
 Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}=Menampilkan {1} dari {2} ayat dengan\: {0}
+Something\ like\ this\ spelling\:=Seperti pengejaan\:
 Summary\:\ {0}=Kesimpulan\: {0}
 The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom=Semua Kitab|Nubuatan (Deu 28, Isa-Mal, Rev)|Perjanjian Lama (Gen-Mal)|Perjanjian Baru (Mat-Rev)|5 Kitab Musa (Gen-Deu)|Sejarah (Josh-Est)|Puisi (Job-Song)|Nabi Besar (Isa-Dan)|Nabi Kecil (Hos-Mal)|Injil dan Kis (Mat-Act)|Surat kepada Jemaat (Rom-Heb)|Surat dari Jemaat (Jam-Jude)|Kustom
 There\ are\ {1}\ verses\ with\:\ {0}=Ada {1} ayat dengan\: {0}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_vi.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -3,22 +3,44 @@
 Advanced\ Search=T\u00ECm Ki\u1EBFm N\u00E2ng Cao
 Bible\:=Kinh Th\u00E1nh\:
 Books=C\u00E1c S\u00E1ch
+Contains\ Strong's\ Hebrew\ and\ Greek=Bao g\u1ED3m ti\u1EBFng H\u00EA-b\u01A1-r\u01A1 v\u00E0 ti\u1EBFng Hy-l\u1EA1p c\u1EE7a Strong
 Could\ not\ find\ verses\ with\:\ {0}=Kh\u00F4ng t\u00ECm \u0111\u01B0\u1EE3c c\u00E2u c\u00F3\: {0}
 Error\ finding\ verse=L\u1ED7i t\u00ECm c\u00E2u
 Error\:\ {0}=L\u1ED7i\: {0}
+Excludes\ Greek\ Numbers\:=Lo\u1EA1i tr\u00F9 s\u1ED1 Strong ti\u1EBFng Hy-l\u1EA1p
+Excludes\ Hebrew\ Numbers\:=Lo\u1EA1i tr\u1EEB s\u1ED1 Strong ti\u1EBFng H\u00EA-b\u01A1-r\u01A1
+Excludes\ all\ these\ words\:=Lo\u1EA1i tr\u1EEB t\u1EA5t c\u1EA3 c\u00E1c t\u1EEB ng\u1EEF n\u00E0y\:
 File\ {0}\ is\ empty=T\u1EADp Tin {0} tr\u1ED1ng r\u1ED7ng
+Include\ Greek\ Numbers=Bao g\u1ED3m s\u1ED1 Strong ti\u1EBFng Hy-l\u1EA1p
+Include\ these\ verses\:=Ch\u1EE9a \u0111\u01B0ng c\u00E1c c\u00E2u n\u00E0y\:
+Include\ this\ phrase\:=Bao g\u1ED3m c\u1EE5m t\u1EEB n\u00E0y\:
+Include\ words\ starting\ with\:=Bao g\u1ED3m t\u1EEB ng\u1EEF b\u1EAFt \u0111\u1EA7u v\u1EDBi\:
+Includes\ Hebrew\ Numbers\:=Bao g\u1ED3m s\u1ED1 Strong ti\u1EBFng H\u00EA-b\u01A1-r\u01A1
+Includes\ these\ words\:=Bao g\u1ED3m c\u00E1c t\u1EEB ng\u1EEF n\u00E0y\:
 No\ Bible\ is\ installed=Ch\u01B0a c\u00F3 cu\u1ED1n Kinh Th\u00E1nh c\u00E0i \u0111\u1EB7t
 None=Kh\u00F4ng c\u00F3
+Preset\ Ranges\:=Ph\u1EA7n \u0110\u1EB7t S\u1EB5n
+Prioritize\ the\ found\ verses=D\u00E0nh \u01B0u ti\u00EAn c\u00E1c c\u00E2u \u0111\u01B0\u1EE3c t\u00ECm
+Quick\ search\ syntax\:=C\u00FA Ph\u00E1p T\u00ECm Ki\u1EBFm Nhanh
+Restrict\ search\ to\ parts\ of\ the\ Bible=Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho ph\u1EA7n c\u1EE7a Kinh Th\u00E1nh
+Restrict\ to\ verses\ written\ after\:=Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho c\u00E2u vi\u1EBFt sau\:
+Restrict\ to\ verses\ written\ before\:=Gi\u1EDBi h\u1EA1n t\u00ECm ki\u1EBFm cho c\u00E1c c\u00E2u vi\u1EBFt tr\u01B0\u1EDBc\:
+Search=T\u00ECm Ki\u1EBFm
 Search\ Quick\ Help=T\u00ECm Ki\u1EBFm trong Tr\u1EE3 Gi\u00FAp Nhanh
+Search\ for\ verses\ with\ the\ following\ details=T\u00ECm c\u00E2u v\u1EDBi chi ti\u1EBFt ti\u1EBFp theo
+Select=Ch\u1ECDn
 Select\ Passage=Ch\u1ECDn Ph\u00E2n \u0110o\u1EA1n
 Select\ Passages\ to\ Restrict\ Search\ to=Ch\u1ECDn Ph\u00E2n \u0110o\u1EA1n \u0110\u1EC3 Gi\u1EDBi H\u1EA1n T\u00ECm Ki\u1EBFm
 Select\ a\ book=Ch\u1ECDn m\u1ED9t quy\u1EC3n s\u00E1ch
 Select\ a\ chapter=Ch\u1ECDn m\u1ED9t ch\u01B0\u01A1ng
 Select\ a\ verse=Ch\u1ECDn m\u1ED9t c\u00E2u
+Show=Hi\u1EC7n
 Show\ all\ verses\:=Hi\u1EC7n {0} c\u00E2u\:
 Show\ best\ verse\:=Hi\u1EC7n c\u00E2u t\u1ED1t nh\u1EA5t\:
+Show\ quick\ search\ syntax=Hi\u1EC7n c\u00FA ph\u00E1p t\u00ECm ki\u1EBFm nhanh
 Show\ {0}\ verses\:=Hi\u1EC7n {0} c\u00E2u\:
 Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}=Hi\u1EC7n {1} c\u00E2u v\u1EDBi\: {0}
+Something\ like\ this\ spelling\:=Ch\u00EDnh t\u1EA3 g\u1EA7n gi\u1ED1ng n\u00E0y\:
 Summary\:\ {0}=T\u00F3m T\u1EAFt\: {0}
 The\ Whole\ Bible|All\ Prophecy\ (Deu\ 28,\ Isa-Mal,\ Rev)|Old\ Testament\ (Gen-Mal)|New\ Testament\ (Mat-Rev)|The\ Pentateuch\ (Gen-Deu)|History\ (Josh-Est)|Poetry\ (Job-Song)|Major\ Prophets\ (Isa-Dan)|Minor\ Prophets\ (Hos-Mal)|Gospels\ and\ Acts\ (Mat-Act)|Letters\ to\ People\ (Rom-Heb)|Letters\ from\ People\ (Jam-Jude)|Custom=\=C\u1EA3 Kinh Th\u00E1nh|T\u1EA5t C\u1EA3 S\u00E1ch Ti\u00EAn Tri (Deu 28, Isa-Mal, Rev)|C\u1EF1u \u01AF\u1EDBc (Gen-Mal)|T\u00E2n \u01AF\u1EDBc (Mat-Rev)|Ng\u0169 Kinh (Gen-Deu)|S\u00E1ch L\u1ECBch S\u1EED (Josh-Est)|S\u00E1ch Th\u01A1 Ca (Job-Song)|\u0110\u1EA1i Ti\u00EAn Tri (Isa-Dan)|Ti\u1EC3u Ti\u00EAn Tri (Hos-Mal)|S\u00E1ch Ph\u00FAc \u00C2m v\u00E0 C\u00F4ng V\u1EE5 (Mat-Act)|Th\u01B0 T\u00EDn cho Ng\u01B0\u1EDDi (Rom-Heb)|Th\u01B0 T\u00EDn t\u1EEB Ng\u01B0\u1EDDi (Jam-Jude)|Tu\u1EF3 Ch\u1ECDn
 There\ are\ {1}\ verses\ with\:\ {0}=C\u00F3 {1} c\u00E2u v\u1EDBi\: {0}

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -6,10 +6,19 @@
 Could\ not\ find\ verses\ with\:\ {0}=\u6C92\u6709\u627E\u5230\: {0}
 Error\ finding\ verse=\u932F\u8AA4\u7684\u641C\u5C0B\u65B9\u5F0F
 Error\:\ {0}=\u932F\u8AA4\: {0}
+Excludes\ all\ these\ words\:=\u6392\u9664 \u5B57\:
 File\ {0}\ is\ empty=\u6A94\u6848 {0} \u662F\u7A7A\u7684
+Include\ this\ phrase\:=\u5305\u542B \u53E5\u5B50\:
+Include\ words\ starting\ with\:=\u8D77\u982D\u7684\u5B57\u53E5\:
+Includes\ these\ words\:=\u5305\u542B \u5B57\:
 No\ Bible\ is\ installed=\u4F60\u9084\u6C92\u5B89\u88DD\u4EFB\u4F55\u7684\u8056\u7D93\u7248\u672C\uFF0C\u8ACB\u9EDE\u9078\u5DE5\u5177(Tool)-->\u66F8\u7C4D(book).\u5F8C\u9078\u64C7\u4F60\u60F3\u5B89\u88DD\u7684\u8056\u7D93\u6216\u53C3\u8003\u66F8\u3002
 None=\u7121
+Prioritize\ the\ found\ verses=\u689D\u76EE\u6578\u91CF
+Quick\ search\ syntax\:=\u5FEB\u901F\u641C\u5C0B\u8A9E\u6CD5\:
+Restrict\ search\ to\ parts\ of\ the\ Bible=\u9650\u5236\u641C\u5C0B
+Search=\u641C\u5C0B
 Search\ Quick\ Help=\u641C\u5C0B\u5FEB\u901F\u5E6B\u52A9
+Search\ for\ verses\ with\ the\ following\ details=\u9032\u968E\u641C\u5C0B
 Select\ Passage=\u4E3B\u984C\u95B1\u8B80
 Select\ Passages\ to\ Restrict\ Search\ to=\u689D\u4EF6\u5F0F\u4E3B\u984C\u95B1\u8B80
 Select\ a\ book=\u9078\u64C7\u66F8\u5377
@@ -17,8 +26,10 @@
 Select\ a\ verse=\u9078\u64C7\u7BC0
 Show\ all\ verses\:=\u986F\u793A {0} \u7D93\u7BC0\:
 Show\ best\ verse\:=\u986F\u793A\u8F03\u597D\u6216\u559C\u611B\u7684\u7D93\u7BC0\:
+Show\ quick\ search\ syntax=\u986F\u793A\u5FEB\u901F\u641C\u5C0B\u8A9E\u6CD5
 Show\ {0}\ verses\:=\u986F\u793A {0} \u7D93\u7BC0\:
 Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}=\u986F\u793A {1} \u5728{2}\u7684\u7D93\u53E5\u95DC\u65BC\: {0}
+Something\ like\ this\ spelling\:=\u6A21\u7CCA\u641C\u5C0B\:
 Summary\:\ {0}=\u6458\u8981\: {0}
 There\ are\ {1}\ verses\ with\:\ {0}=\u627E\u5230 {1} \u7D93\u53E5\u95DC\u65BC\: {0}
 Verse\ Lists\ ({0})=\u5217\u51FA\u7D93\u7BC0 ({0})

Modified: trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties
===================================================================
--- trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/bibledesktop/src/main/java/org/crosswire/bibledesktop/book/Msg_zh_CN.properties	2010-11-18 14:20:36 UTC (rev 2015)
@@ -6,18 +6,29 @@
 Could\ not\ find\ verses\ with\:\ {0}=\u6CA1\u6709\u627E\u5230\: {0}
 Error\ finding\ verse=\u9519\u52A1\u7684\u641C\u5BFB\u65B9\u5F0F
 Error\:\ {0}=\u9519\u52A1\: {0}
+Excludes\ all\ these\ words\:=\u6392\u9664 \u5B57\:
 File\ {0}\ is\ empty=\u6863\u6848 {0} \u662F\u7A7A\u7684
+Include\ this\ phrase\:=\u5305\u542B \u53E5\u5B50\:
+Include\ words\ starting\ with\:=\u5F00\u59CB\u7684\u5B57\u53E5\:
+Includes\ these\ words\:=\u5305\u542B \u5B57\:
 No\ Bible\ is\ installed=\u4F60\u8FD8\u6CA1\u5B89\u88C5\u4EFB\u4F55\u7248\u672C\u7684\u5723\u7ECF\uFF0C\u8BF7\u70B9\u9009\u5DE5\u5177-->\u4E66\u7C4D.\u5B89\u88C5\u5723\u7ECF\u6216\u53C2\u8003\u4E66\u3002
 None=\u65E0
+Prioritize\ the\ found\ verses=\u6761\u76EE\u6570\u91CF
+Quick\ search\ syntax\:=\u5FEB\u901F\u641C\u5BFB\u8BED\u6CD5\:
+Restrict\ search\ to\ parts\ of\ the\ Bible=\u9650\u5236\u641C\u5BFB
+Search=\u641C\u5BFB
 Search\ Quick\ Help=\u641C\u5BFB\u5FEB\u901F\u5E2E\u52A9
+Search\ for\ verses\ with\ the\ following\ details=\u9AD8\u7EA7\u641C\u5BFB
 Select\ Passage=\u4E3B\u9898\u9605\u8BFB
 Select\ Passages\ to\ Restrict\ Search\ to=\u6761\u4EF6\u5F0F\u4E3B\u9898\u9605\u8BFB
 Select\ a\ book=\u9009\u62E9\u4E66\u5377
 Select\ a\ chapter=\u9009\u62E9\u7AE0
 Select\ a\ verse=\u9009\u62E9\u8282
 Show\ best\ verse\:=\u663E\u793A\u8F83\u597D\u6216\u8F83\u559C\u7231\u7684\u7ECF\u8282\:
+Show\ quick\ search\ syntax=\u663E\u793A\u5FEB\u901F\u641C\u5BFB\u8BED\u6CD5
 Show\ {0}\ verses\:=\u663E\u793A {0} \u7ECF\u8282\:
 Showing\ {1}\ of\ {2}\ verses\ with\:\ {0}=\u663E\u793A {1} \u5728{2}\u7684\u7ECF\u53E5\u5173\u65BC\: {0}
+Something\ like\ this\ spelling\:=\u6A21\u7CCA\u641C\u5BFB\:
 Summary\:\ {0}=\u6458\u8981\: {0}
 There\ are\ {1}\ verses\ with\:\ {0}=\u627E\u5230 {1} \u7ECF\u53E5\u5173\u65BC\: {0}
 Verse\ Lists\ ({0})=\u5217\u51FA\u7ECF\u8282 ({0})

Modified: trunk/common-swing/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/common-swing/.settings/org.eclipse.jdt.core.prefs	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/common-swing/.settings/org.eclipse.jdt.core.prefs	2010-11-18 14:20:36 UTC (rev 2015)
@@ -1,4 +1,4 @@
-#Thu Nov 11 12:03:14 EST 2010
+#Thu Nov 11 22:12:03 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -15,93 +15,21 @@
 org.eclipse.jdt.core.codeComplete.localSuffixes=
 org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
 org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.4
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.doc.comment.support=enabled
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
 org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
 org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.4
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,HIGH,NORMAL,LOW,NORMAL,LOW,LOW,NORMAL,LOW,LOW,LOW,LOW,LOW
 org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,URGENT,PENDING,LATER,BUG,DEAD,SPEEDUP,I18N,JDK14,JDK15,NOWARN,BORROWED,SERIALUID

Modified: trunk/common-swing/src/main/java/org/crosswire/common/swing/ActionFactory.java
===================================================================
--- trunk/common-swing/src/main/java/org/crosswire/common/swing/ActionFactory.java	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/common-swing/src/main/java/org/crosswire/common/swing/ActionFactory.java	2010-11-18 14:20:36 UTC (rev 2015)
@@ -319,6 +319,98 @@
     }
 
     /**
+     * Lookup an existing action for actionName. Otherwise construct, store and return an action.
+     * 
+     * @param key
+     *            The short name by which this action is known. It is used to
+     *            lookup the action for reuse.
+     * @param name
+     *            This is required. The value is used for the text of the
+     *            Action.<br/>
+     *            A mnemonic can be specified by preceding the letter with _.
+     *            Using this letter in a case insensitive search, the earliest
+     *            position of that letter will cause the it to be underlined. In
+     *            a platform dependent way it provides a keyboard mechanism to
+     *            fire the action. For example, on Windows, alt + mnemonic will
+     *            cause a visible, active element with that mnemonic to fire.
+     *            For this reason, it is important to ensure that two visible,
+     *            active elements do not have the same mnemonic.<br/>
+     *            Note: Mnemonics are suppressed on MacOSX.
+     * @param tooltip
+     *            A tip to show when the mouse is over an element. If not
+     *            present, Name is used. This is likely to change. It is
+     *            redundant to show a tooltip that is identical to the shown
+     *            text.
+     * @param smallIconPath
+     *            An optional specification of a 16x16 pixel image to be shown
+     *            for the item. The value for this is a path which can be found
+     *            as a resource.<br/>
+     *            Note: the small icon will be used when actions are tied to
+     *            menu items and buttons.
+     * @param largIconPath
+     *            An optional specification of a 24x24 pixel image to be shown
+     *            for the item when large items are shown. Currently, these are
+     *            only used for the ToolBar, when a large toolbar is requested.
+     *            The value is a resource path to the image.
+     * @param acceleratorSpec
+     *            A key on the keyboard, which may be specified with 0x25 kind
+     *            of notation.<br/>
+     *            Accelerators are global key combinations that work within an
+     *            application to fire the action. When the action is shown as a
+     *            menu item the accelerator will be listed with the name. Note:
+     *            The accelerator key and it's modifiers are converted into a
+     *            <code>KeyStroke</code> with
+     *            <code>KeyStroke.getKeyStroke(key, modifierMask);</code><br/>
+     *            The modifiers are specified with comma separated list of ctrl,
+     *            alt, and shift, indicating what modifiers are necessary for
+     *            the accelerator.<br/>
+     *            Note: ctrl will use a platform's command key. On MacOSX this
+     *            is the Apple/Command key. Other platforms use Ctrl.
+     * @param enabled
+     *            Defaults to true when not present. It is disabled when the
+     *            value does not match "true" regardless of case. This is used
+     *            to initialize widgets tied to actions to disabled. Once the
+     *            action is created, it's state can be changed and the tied
+     *            widgets will behave appropriately.
+     * @return the stored or newly constructed action
+     */
+    public CWAction buildAction(String key, String name, String tooltip, String smallIconPath, String largIconPath, String acceleratorSpec, String enabled)
+    {
+        if (key == null || key.length() == 0) {
+            log.warn("Acronymn is missing for CWAction");
+        } 
+
+        CWAction cwAction = (CWAction) actions.get(key);
+
+        if (cwAction != null) {
+            return cwAction;
+        }
+
+        cwAction = new CWAction();
+        cwAction.putValue(Action.ACTION_COMMAND_KEY, key);
+
+        CWLabel cwLabel = new CWLabel(name);
+        cwAction.putValue(Action.NAME, cwLabel.getLabel());
+
+        // Mac's don't have mnemonics
+        if (!OSType.MAC.equals(OSType.getOSType())) {
+            cwAction.putValue(Action.MNEMONIC_KEY, cwLabel.getMnemonic());
+        }
+
+        cwAction.putValue(Action.SHORT_DESCRIPTION, tooltip);
+
+        cwAction.putValue(CWAction.LARGE_ICON, getIcon(largIconPath));
+        cwAction.putValue(Action.SMALL_ICON, getIcon(smallIconPath));
+
+        cwAction.putValue(Action.ACCELERATOR_KEY, getAccelerator(key, acceleratorSpec));
+
+        boolean flag = enabled == null ? true : Boolean.valueOf(enabled).booleanValue();
+        cwAction.setEnabled(flag);
+
+        return cwAction;
+    }
+
+    /**
      * Build the map of actions from resources
      */
     private void buildActionMap(Class basis) {
@@ -341,88 +433,36 @@
                 if (key.endsWith(TEST)) {
                     String actionName = key.substring(0, key.length() - TEST.length());
 
-                    ResourceBundle nickname = null;
-                    String nameValue = getActionString(resources, null, actionName, Action.NAME);
+                    String label = getActionString(resources, null, actionName, Action.NAME);
+                    String smallIconStr = getActionString(controls, null, actionName, Action.SMALL_ICON);
+                    String largeIconStr = getActionString(controls, null, actionName, CWAction.LARGE_ICON);
+                    String enabledStr = getActionString(controls, null, actionName, "Enabled");
 
                     // We know this should never happen because we are merely rebuilding the key.
-                    if (nameValue == null) {
+                    if (label == null) {
                         log.warn("Missing original key for " + actionName + '.' + Action.NAME);
                         continue;
                     }
 
                     // If the value starts with alias, we have to dig the actual name out of the aliases
-                    if (nameValue.startsWith(ActionFactory.ALIAS)) {
-                        String newActionName = nameValue.substring(ActionFactory.ALIAS.length());
-                        String newNameValue = getActionString(aliases, null, newActionName, Action.NAME);
+                    ResourceBundle nickname = null;
+                    if (label.startsWith(ActionFactory.ALIAS)) {
+                        String newActionName = label.substring(ActionFactory.ALIAS.length());
+                        String newLabel = getActionString(aliases, null, newActionName, Action.NAME);
                         // We had a clear request for an Alias. So newNameValue should never be null here.
-                        if (newNameValue == null) {
+                        if (newLabel == null) {
                             log.warn("Missing alias key for " + actionName + '.' + Action.NAME);
                             continue;
                         }
-                        nameValue = newNameValue;
+                        label = newLabel;
                         nickname = aliases;
                     }
 
                     String tooltip = getActionString(resources, nickname, actionName, CWAction.TOOL_TIP);
-                    if (tooltip == null) {
-                        tooltip = nameValue;
-                    }
+                    String acceleratorSpec = getActionString(resources, nickname, actionName, Action.ACCELERATOR_KEY);
 
-                    // A Mnemonic can be specified by a preceding _ in the name
-                    Integer mnemonic = null;
-                    int pos = nameValue.indexOf('_');
-                    int len = nameValue.length();
-                    if (pos == len - 1) {
-                        // There is nothing following the _. Just remove it.
-                        nameValue = nameValue.substring(0, len - 1);
-                    } else if (pos >= 0 && pos < len - 1) {
-                        // Remove the _
-                        StringBuffer buffer = new StringBuffer(nameValue.length() - 1);
-                        if (pos > 0) {
-                            buffer.append(nameValue.substring(0, pos));
-                        }
-                        buffer.append(nameValue.substring(pos + 1));
-
-                        nameValue = buffer.toString();
-
-                        // the mnemonic is now at the position that the _ was.
-                        mnemonic = new Integer(nameValue.charAt(pos));
-                    }
-
-                    KeyStroke accelerator = getAccelerator(nickname, resources, actionName);
-
-                    Icon smallIcon = getIcon(controls, actionName, Action.SMALL_ICON);
-                    Icon largeIcon = getIcon(controls, actionName, CWAction.LARGE_ICON);
-                    String enabledStr = getActionString(controls, null, actionName, "Enabled");
-                    boolean enabled = enabledStr == null ? true : Boolean.valueOf(enabledStr).booleanValue();
-
-                    CWAction cwAction = new CWAction();
-
-                    if (actionName == null || actionName.length() == 0) {
-                        log.warn("Acronymn is missing for CWAction");
-                    } else {
-                        cwAction.putValue(Action.ACTION_COMMAND_KEY, actionName);
-                    }
-
-                    if (nameValue.length() == 0) {
-                        log.warn("Name is missing for CWAction");
-                        cwAction.putValue(Action.NAME, "?");
-                    } else {
-                        cwAction.putValue(Action.NAME, nameValue);
-                    }
-
-                    cwAction.putValue(CWAction.LARGE_ICON, largeIcon);
-                    cwAction.putValue(Action.SMALL_ICON, smallIcon);
-                    cwAction.putValue(Action.SHORT_DESCRIPTION, tooltip);
-                    // Mac's don't have mnemonics
-                    if (!OSType.MAC.equals(OSType.getOSType())) {
-                        cwAction.putValue(Action.MNEMONIC_KEY, mnemonic);
-                    }
-                    cwAction.putValue(Action.ACCELERATOR_KEY, accelerator);
-                    cwAction.setEnabled(enabled);
-
+                    CWAction cwAction = buildAction(actionName, label, tooltip, smallIconStr, largeIconStr, acceleratorSpec, enabledStr);
                     cwAction.addActionListener(this);
-
                     actions.put(actionName, cwAction);
                 }
             }
@@ -463,9 +503,8 @@
     /**
      * Get an icon for the string
      */
-    private Icon getIcon(ResourceBundle resources, String actionName, String iconName) {
+    private Icon getIcon(String iconStr) {
         Icon icon = null;
-        String iconStr = getActionString(resources, null, actionName, iconName);
         if (iconStr != null && iconStr.length() > 0) {
             icon = GuiUtil.getIcon(iconStr);
         }
@@ -475,9 +514,8 @@
     /**
      * Convert the string to a valid Accelerator (that is a KeyStroke)
      */
-    private KeyStroke getAccelerator(ResourceBundle nicknames, ResourceBundle resources, String actionName) {
+    private KeyStroke getAccelerator(String actionName, String acceleratorSpec) {
         KeyStroke accelerator = null;
-        String acceleratorSpec = getActionString(resources, nicknames, actionName, Action.ACCELERATOR_KEY);
         if (acceleratorSpec != null && acceleratorSpec.length() > 0) {
             try {
                 accelerator = getKeyStroke(acceleratorSpec);

Added: trunk/common-swing/src/main/java/org/crosswire/common/swing/CWLabel.java
===================================================================
--- trunk/common-swing/src/main/java/org/crosswire/common/swing/CWLabel.java	                        (rev 0)
+++ trunk/common-swing/src/main/java/org/crosswire/common/swing/CWLabel.java	2010-11-18 14:20:36 UTC (rev 2015)
@@ -0,0 +1,108 @@
+/**
+ * Distribution License:
+ * JSword is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU Lesser General Public License, version 2.1 as published by
+ * the Free Software Foundation. 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 Lesser General Public License for more details.
+ *
+ * The License is available on the internet at:
+ *       http://www.gnu.org/copyleft/lgpl.html
+ * or by writing to:
+ *      Free Software Foundation, Inc.
+ *      59 Temple Place - Suite 330
+ *      Boston, MA 02111-1307, USA
+ *
+ * Copyright: 2007
+ *     The copyright to this program is held by it's authors.
+ *
+ * ID: $Id: org.eclipse.jdt.ui.prefs 1178 2006-11-06 12:48:02Z dmsmith $
+ */
+package org.crosswire.common.swing;
+
+import javax.swing.JLabel;
+
+import org.crosswire.common.util.Logger;
+
+/**
+ * A CWLabel consists of a label and a mnemonic constructed from a string having
+ * an optional mnemonic indicator. The indicator, '_', precedes the mnemonic
+ * letter.
+ * 
+ * @see gnu.lgpl.License for license details.<br>
+ *      The copyright to this program is held by it's authors.
+ * @author DM Smith [dmsmith555 at yahoo dot com]
+ */
+public class CWLabel {
+
+    /**
+     * Construct a CWLabel from a string. The string is assumed to have at most
+     * one underscore, '_', and the letter that it precedes is taken as the
+     * mnemonic.
+     * 
+     * @param text
+     */
+    public CWLabel(String text) {
+        label = text;
+
+        // A Mnemonic can be specified by a preceding _ in the name
+        int pos = label.indexOf('_');
+        int len = label.length();
+        if (pos == len - 1) {
+            // There is nothing following the _. Just remove it.
+            label = label.substring(0, len - 1);
+        } else if (pos >= 0 && pos < len - 1) {
+            // Remove the _
+            StringBuffer buffer = new StringBuffer(label.length() - 1);
+            if (pos > 0) {
+                buffer.append(label.substring(0, pos));
+            }
+            buffer.append(label.substring(pos + 1));
+
+            label = buffer.toString();
+
+            // the mnemonic is now at the position that the _ was.
+            mnemonic = new Integer(label.charAt(pos));
+        }
+
+        if (label.length() == 0) {
+            log.warn("text is missing for CWLabel");
+            label = "?";
+        }
+    }
+
+    public JLabel createJLabel() {
+        JLabel theLabel = new JLabel();
+        theLabel.setText(label);
+
+        if (mnemonic != null) {
+            theLabel.setDisplayedMnemonic(mnemonic.intValue());
+        }
+
+        return theLabel;
+    }
+
+    /**
+     * @return the label
+     */
+    public String getLabel() {
+        return label;
+    }
+
+    /**
+     * @return the mnemonic
+     */
+    public Integer getMnemonic() {
+        return mnemonic;
+    }
+
+    private String label;
+    private Integer mnemonic;
+
+    /**
+     * The log stream
+     */
+    private static final Logger log = Logger.getLogger(CWLabel.class);
+
+}

Added: trunk/jsword/.settings/de.guhsoft.jinto.core.prefs
===================================================================
--- trunk/jsword/.settings/de.guhsoft.jinto.core.prefs	                        (rev 0)
+++ trunk/jsword/.settings/de.guhsoft.jinto.core.prefs	2010-11-18 14:20:36 UTC (rev 2015)
@@ -0,0 +1,3 @@
+#Thu Nov 11 22:11:21 EST 2010
+de.guhsoft.jinto.core.accessorConfiguration=<?xml version\="1.0" encoding\="UTF-8"?>\n<root/>
+eclipse.preferences.version=1

Modified: trunk/jsword/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jsword/.settings/org.eclipse.jdt.core.prefs	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/jsword/.settings/org.eclipse.jdt.core.prefs	2010-11-18 14:20:36 UTC (rev 2015)
@@ -1,8 +1,9 @@
-#Thu Nov 11 12:09:17 EST 2010
+#Thu Nov 11 22:11:21 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
 org.eclipse.jdt.core.builder.invalidClasspath=abort
+org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
 org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
 org.eclipse.jdt.core.circularClasspath=error
 org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
@@ -15,93 +16,21 @@
 org.eclipse.jdt.core.codeComplete.localSuffixes=
 org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
 org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.4
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.doc.comment.support=enabled
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
 org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
+org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
 org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
+org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
 org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.4
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,HIGH,NORMAL,LOW,NORMAL,LOW,LOW,NORMAL,LOW,LOW,LOW,LOW,LOW
 org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,URGENT,PENDING,LATER,BUG,DEAD,SPEEDUP,I18N,JDK14,JDK15,NOWARN,BORROWED,SERIALUID

Added: trunk/jsword/.settings/org.eclipse.jdt.launching.prefs
===================================================================
--- trunk/jsword/.settings/org.eclipse.jdt.launching.prefs	                        (rev 0)
+++ trunk/jsword/.settings/org.eclipse.jdt.launching.prefs	2010-11-18 14:20:36 UTC (rev 2015)
@@ -0,0 +1,3 @@
+#Thu Nov 11 22:11:21 EST 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE=warning

Modified: trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs	2010-11-12 03:11:25 UTC (rev 2014)
+++ trunk/jsword-limbo/.settings/org.eclipse.jdt.core.prefs	2010-11-18 14:20:36 UTC (rev 2015)
@@ -1,4 +1,4 @@
-#Sat Jan 23 23:09:27 EST 2010
+#Thu Nov 11 22:23:52 EST 2010
 eclipse.preferences.version=1
 org.eclipse.jdt.core.builder.cleanOutputFolder=clean
 org.eclipse.jdt.core.builder.duplicateResourceTask=warning
@@ -7,30 +7,21 @@
 org.eclipse.jdt.core.circularClasspath=error
 org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
 org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.4
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.4
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.doc.comment.support=enabled
 org.eclipse.jdt.core.compiler.maxProblemPerUnit=1000
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
 org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=error
 org.eclipse.jdt.core.compiler.problem.deadCode=warning
 org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=enabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
 org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
 org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
 org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
 org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
 org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
 org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
@@ -44,7 +35,7 @@
 org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
 org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
 org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
 org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
@@ -52,8 +43,9 @@
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private
 org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
 org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
 org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
 org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
@@ -61,37 +53,37 @@
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
 org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
 org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
 org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
 org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
 org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
 org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
 org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
 org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=disabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=disabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=enabled
 org.eclipse.jdt.core.compiler.problem.unusedImport=warning
 org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
 org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
 org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
 org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
 org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
 org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=ignore
 org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.4
 org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
 org.eclipse.jdt.core.compiler.taskPriorities=
 org.eclipse.jdt.core.compiler.taskTags=




More information about the jsword-svn mailing list