Revision: 7412
http://languagetool.svn.sourceforge.net/languagetool/?rev=7412&view=rev
Author: milek_pl
Date: 2012-06-19 11:01:16 +0000 (Tue, 19 Jun 2012)
Log Message:
-----------
some work in the language manager - add a warning dialog (including strings to
translate) and a TODO; LanguageBuilder supports variants now as well
Modified Paths:
--------------
trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle.properties
trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle_en.properties
trunk/JLanguageTool/src/java/org/languagetool/gui/LanguageManagerDialog.java
trunk/JLanguageTool/src/java/org/languagetool/language/LanguageBuilder.java
Modified:
trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle.properties
===================================================================
--- trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle.properties
2012-06-19 10:14:23 UTC (rev 7411)
+++ trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle.properties
2012-06-19 11:01:16 UTC (rev 7412)
@@ -246,3 +246,7 @@
pt-BR = Portuguese (Brazil)
pt-PT = Portuguese (Portugal)
+
+guiWarning = Warning
+
+guiDuplicate = Duplicate rule file!
\ No newline at end of file
Modified:
trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle_en.properties
===================================================================
--- trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle_en.properties
2012-06-19 10:14:23 UTC (rev 7411)
+++ trunk/JLanguageTool/src/java/org/languagetool/MessagesBundle_en.properties
2012-06-19 11:01:16 UTC (rev 7412)
@@ -245,4 +245,8 @@
pt-BR = Portuguese (Brazil)
-pt-PT = Portuguese (Portugal)
\ No newline at end of file
+pt-PT = Portuguese (Portugal)
+
+guiWarning = Warning
+
+guiDuplicate = Duplicate rule file!
\ No newline at end of file
Modified:
trunk/JLanguageTool/src/java/org/languagetool/gui/LanguageManagerDialog.java
===================================================================
---
trunk/JLanguageTool/src/java/org/languagetool/gui/LanguageManagerDialog.java
2012-06-19 10:14:23 UTC (rev 7411)
+++
trunk/JLanguageTool/src/java/org/languagetool/gui/LanguageManagerDialog.java
2012-06-19 11:01:16 UTC (rev 7412)
@@ -36,6 +36,7 @@
import javax.swing.JComponent;
import javax.swing.JDialog;
import javax.swing.JList;
+import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRootPane;
import javax.swing.JScrollPane;
@@ -146,9 +147,14 @@
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
final File ruleFile = Tools.openFileDialog(null, new XMLFileFilter());
- // TODO: avoid duplicate files!
- ruleFiles.add(ruleFile);
- list.setListData(ruleFiles.toArray(new File[]{}));
+ if (!isOnList(ruleFile)) {
+ ruleFiles.add(ruleFile);
+ list.setListData(ruleFiles.toArray(new File[]{}));
+ } else {
+ JOptionPane jop = new JOptionPane();
+ JOptionPane.showMessageDialog(jop,
Messages.getString("guiDuplicate"),
+ Messages.getString("guiWarning"),
JOptionPane.WARNING_MESSAGE);
+ }
} else if (e.getSource() == removeButton) {
if (list.getSelectedIndex() != -1) {
ruleFiles.remove(list.getSelectedIndex());
@@ -161,6 +167,15 @@
}
}
+ private boolean isOnList(final File file) {
+ for (File f : ruleFiles) {
+ if (f.equals(file)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
/**
* Return all external Languages.
*/
Modified:
trunk/JLanguageTool/src/java/org/languagetool/language/LanguageBuilder.java
===================================================================
--- trunk/JLanguageTool/src/java/org/languagetool/language/LanguageBuilder.java
2012-06-19 10:14:23 UTC (rev 7411)
+++ trunk/JLanguageTool/src/java/org/languagetool/language/LanguageBuilder.java
2012-06-19 11:01:16 UTC (rev 7412)
@@ -53,12 +53,16 @@
if (!file.getName().endsWith(".xml")) {
throw new RuleFilenameException(file);
}
- final String[] parts = file.getName().split("-");
+ final String[] parts = file.getName().split("-");
final boolean startsWithRules = parts[0].equals("rules");
- final boolean secondPartHasCorrectLength = parts[1].length() == 2 ||
parts[1].length() == 3;
+ final boolean secondPartHasCorrectLength =
+ (parts[1].length() == 2 || parts[1].length() == 5) ||
parts[1].length() == 3;
if (parts.length != 3 || !startsWithRules || !secondPartHasCorrectLength) {
throw new RuleFilenameException(file);
}
+ //TODO: when the Language already exists, and the XML file is mergeable
with
+ // other rules (need to add a parameter for this?), subclass the existing
language,
+ //and adjust the settings if any are set in the rule file default
configuration set
final Language newLanguage = new Language() {
@Override
@@ -71,11 +75,15 @@
}
@Override
public String getShortName() {
- return parts[1];
+ if (parts[1].length() == 2)
+ return parts[1];
+ return parts[1].split("_")[0]; //en as in en_US
}
@Override
public String[] getCountryVariants() {
- return new String[] {""};
+ if (parts[1].length() == 2)
+ return new String[] {""};
+ return new String[] {parts[1].split("_")[1]}; //US as in en_US
}
@Override
public String getName() {
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Languagetool-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/languagetool-cvs