From: <sh...@us...> - 2010-01-07 12:04:54
|
Revision: 15276 http://cdk.svn.sourceforge.net/cdk/?rev=15276&view=rev Author: shk3 Date: 2010-01-07 12:04:48 +0000 (Thu, 07 Jan 2010) Log Message: ----------- the change language is now in preferences (#61) Modified Paths: -------------- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/GT.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JCPMenuTextMaker.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintMenuHelper.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintPanel.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/action/ModifySettingsAction.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/FieldTablePanel.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/ModifyRenderOptionsDialog.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/editor/PropertiesModelEditor.java jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_applet.properties jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_application.properties Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/GT.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/GT.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/GT.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -120,17 +120,18 @@ boolean wasTranslating = doTranslate; doTranslate = false; languageList = new Language[] { - new Language("nl", GT._("Dutch"), true), new Language("en_US", GT._("American English"), true), // global default for "en" will be "en_US" - new Language("de", GT._("German"), true), + new Language("ar", GT._("Arabic"), true), new Language("pt_BR", GT._("Brazilian Portuguese"), true), - new Language("es", GT._("Spanish"), true), - new Language("ar", GT._("Arabic"), true), - new Language("nb", GT._("Norwegian Bokmal"), true), new Language("cs", GT._("Czech"), true), + new Language("nl", GT._("Dutch"), true), + new Language("de", GT._("German"), true), new Language("hu", GT._("Hungarian"), true), + new Language("nb", GT._("Norwegian Bokmal"), true), + new Language("pl", GT._("Polish"), true), + new Language("ru", GT._("Russian"), true), + new Language("es", GT._("Spanish"), true), new Language("th", GT._("Thai"), true), - new Language("ru", GT._("Russian"), true), }; doTranslate = wasTranslating; return languageList; Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JCPMenuTextMaker.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JCPMenuTextMaker.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JCPMenuTextMaker.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -321,7 +321,6 @@ entries.put("nucleosides", GT._("Nucleosides")); entries.put("porphyrins", GT._("Porphyrins")); entries.put("steroids", GT._("Steroids")); - entries.put("language", GT._("Language")); } /** Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintMenuHelper.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintMenuHelper.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintMenuHelper.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -178,22 +178,6 @@ } }); } - if(key.equals("language")){ - final GT.Language[] languages = GT.getLanguageList(); - for(int i=0;i<languages.length;i++){ - final int counter=i; - JMenuItem jmi = new JChemPaintMenuHelper().createMenuItem(jcpPanel, languages[i].language, false); - jmi.addActionListener(new ActionListener(){ - - public void actionPerformed(ActionEvent e) { - GT.setLanguage(languages[counter].code); - jcpPanel.updateMenusWithLanguage(); - } - - }); - menu.add(jmi); - } - } if(menu instanceof JMenu) jcpPanel.menus.put(key, (JMenu)menu); else if(menu instanceof JChemPaintPopupMenu) Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintPanel.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintPanel.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/JChemPaintPanel.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -123,6 +123,7 @@ * The gui string */ public JChemPaintPanel(IChemModel chemModel, String gui, boolean debug, JChemPaintAbstractApplet applet) { + GT.setLanguage(JCPPropertyHandler.getInstance().getJCPProperties().getProperty("General.language")); this.guistring = gui; this.debug = debug; this.setLayout(new BorderLayout()); Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/action/ModifySettingsAction.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/action/ModifySettingsAction.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/action/ModifySettingsAction.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -49,7 +49,7 @@ RendererModel renderModel = jcpPanel.get2DHub().getRenderer().getRenderer2DModel(); ModifyRenderOptionsDialog frame = - new ModifyRenderOptionsDialog(jcpPanel,renderModel); + new ModifyRenderOptionsDialog(jcpPanel,renderModel,0); frame.setVisible(true); } } Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/FieldTablePanel.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/FieldTablePanel.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/FieldTablePanel.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -51,7 +51,7 @@ protected int rows; - private JTabbedPane tabbedPane; + protected JTabbedPane tabbedPane; /** * Constructor for field table panel. Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/ModifyRenderOptionsDialog.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/ModifyRenderOptionsDialog.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/ModifyRenderOptionsDialog.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -55,15 +55,18 @@ private PropertiesModelEditor editor; private RendererModel model; private JChemPaintPanel jcpPanel; + private int tabtoshow; /** * Displays the Info Dialog for JChemPaint. + * @param tabtoshow Which tab is to be displayed? */ - public ModifyRenderOptionsDialog(JChemPaintPanel jcpPanel, RendererModel model) { + public ModifyRenderOptionsDialog(JChemPaintPanel jcpPanel, RendererModel model, int tabtoshow) { super(); this.model = model; this.jcpPanel=jcpPanel; - editor = new PropertiesModelEditor(this); + this.tabtoshow = tabtoshow; + editor = new PropertiesModelEditor(this, jcpPanel, tabtoshow); createDialog(); pack(); setVisible(true); @@ -89,7 +92,7 @@ JButton apply = new JButton(GT._("Apply")); apply.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - ApplyPressed(); + ApplyPressed(false); }} ); buttonPanel.add( apply ); @@ -106,13 +109,13 @@ validate(); } - private void ApplyPressed() { + private void ApplyPressed(boolean close) { // apply new settings - editor.applyChanges(); + editor.applyChanges(close); jcpPanel.get2DHub().updateView(); } private void OKPressed() { - ApplyPressed(); + ApplyPressed(true); closeFrame(); } Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/editor/PropertiesModelEditor.java =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/editor/PropertiesModelEditor.java 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/dialog/editor/PropertiesModelEditor.java 2010-01-07 12:04:48 UTC (rev 15276) @@ -37,8 +37,10 @@ import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JColorChooser; +import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; +import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JRadioButton; @@ -49,7 +51,12 @@ import org.openscience.jchempaint.GT; import org.openscience.jchempaint.JCPPropertyHandler; +import org.openscience.jchempaint.JChemPaintMenuHelper; +import org.openscience.jchempaint.JChemPaintPanel; +import org.openscience.jchempaint.action.ModifySettingsAction; +import org.openscience.jchempaint.applet.JChemPaintEditorApplet; import org.openscience.jchempaint.dialog.FieldTablePanel; +import org.openscience.jchempaint.dialog.ModifyRenderOptionsDialog; import org.openscience.jchempaint.renderer.RendererModel; import org.openscience.jchempaint.renderer.RenderingParameters; @@ -82,7 +89,7 @@ //private JCheckBox showReactionBoxes; - private JCheckBox useAntiAliasing; + //private JCheckBox useAntiAliasing; private JCheckBox isFitToScreen; @@ -117,16 +124,26 @@ private Color currentColor; private JFrame frame; + + private JChemPaintPanel jcpPanel; private RendererModel model; private JCheckBox askForIOSettings; private JTextField undoStackSize; + + private JComboBox language; - public PropertiesModelEditor(JFrame frame) { + private GT.Language[] gtlanguages = GT.getLanguageList(); + + private int tabtoshow; + + public PropertiesModelEditor(JFrame frame, JChemPaintPanel jcpPanel, int tabtoshow) { super(true); this.frame = frame; + this.jcpPanel = jcpPanel; + this.tabtoshow = tabtoshow; constructPanel(); } @@ -289,7 +306,7 @@ options1.add(chooseColorButton); addField("", new JLabel(" "), options1); //addField("", chooseColorButton, options2); - + JPanel otherOptionsPanel = this.addTab(GT._("Other Preferences")); undoStackSize = new JTextField(); @@ -297,6 +314,19 @@ askForIOSettings = new JCheckBox(); addField(GT._("Ask for CML settings when saving"), askForIOSettings, otherOptionsPanel); + + String[] languagesstrings = new String[gtlanguages.length]; + for(int i=0;i<gtlanguages.length;i++){ + languagesstrings[i] = gtlanguages[i].language; + } + language = new JComboBox(languagesstrings); + for(int i=0;i<languagesstrings.length;i++){ + if(gtlanguages[i].code.equals(GT.getLanguage())) + language.setSelectedIndex(i); + } + addField(GT._("User Interface Language"), language, otherOptionsPanel); + + this.tabbedPane.setSelectedIndex(tabtoshow); } public void setModel(RendererModel model) { @@ -343,10 +373,11 @@ Properties props = JCPPropertyHandler.getInstance().getJCPProperties(); askForIOSettings.setSelected(props.getProperty("askForIOSettings", "false").equals("true")); undoStackSize.setText(props.getProperty("General.UndoStackSize")); + language.setSelectedItem(props.getProperty("General.language")); validate(); } - public void applyChanges() { + public void applyChanges(boolean close) { Properties props = JCPPropertyHandler.getInstance().getJCPProperties(); model.setDrawNumbers(drawNumbers.isSelected()); @@ -378,7 +409,11 @@ //model.setFontName(currentFontName); model.setBackColor(currentColor); + GT.setLanguage(gtlanguages[language.getSelectedIndex()].code); + jcpPanel.updateMenusWithLanguage(); + updateLanguge(); + props.setProperty("DrawNumbers",String.valueOf(drawNumbers.isSelected())); //props.setProperty("ShowAtomAtomMapping",String.valueOf(showAtomAtomMapping.isSelected())); props.setProperty("KekuleStructure",String.valueOf(useKekuleStructure.isSelected())); @@ -420,13 +455,35 @@ throw new Exception("wrong number"); props.setProperty("General.UndoStackSize", undoStackSize.getText()); - JCPPropertyHandler.getInstance().saveProperties(); - } - catch(Exception ex){ + //TODO here apply to current app + }catch(Exception ex){ JOptionPane.showMessageDialog(this, GT._("Number of undoable operations")+" "+GT._("must be a number from 1 to 100"), GT._("Number of undoable operations"), JOptionPane.WARNING_MESSAGE); } + boolean languagechanged = false; + for(int i=0;i<gtlanguages.length;i++){ + if(gtlanguages[i].language.equals((String)language.getSelectedItem())){ + if(!props.getProperty("General.language").equals(gtlanguages[i].code)){ + props.setProperty("General.language", gtlanguages[i].code); + languagechanged = true; + } + } + } + JCPPropertyHandler.getInstance().saveProperties(); + if(languagechanged && !close){ + //we need to rediplay the dialog to change its language + this.getParent().getParent().getParent().getParent().setVisible(false); + RendererModel renderModel = + jcpPanel.get2DHub().getRenderer().getRenderer2DModel(); + ModifyRenderOptionsDialog frame = + new ModifyRenderOptionsDialog(jcpPanel,renderModel, 1); + frame.setVisible(true); + } } + private void updateLanguge() { + // TODO here the language of the editor window needs to be updated + } + /** * Required by the ActionListener interface. */ Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_applet.properties =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_applet.properties 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_applet.properties 2010-01-07 12:04:48 UTC (rev 15276) @@ -45,7 +45,7 @@ file=new open save saveAs - export print edit=undo redo - cut copy copyAsSmiles paste - eraser selectAll - options -view=zoomin zoomout zoomoriginal - cleanup @flip @hydrogen - @language +view=zoomin zoomout zoomoriginal - cleanup @flip @hydrogen atomMenu=@formalCharge @hydrogen @isotopeChange @radical @pseudoSymbols pseudoStar @valence - @symbolChange bondMenu=bond up_bond down_bond undefined_bond undefined_stereo_bond tools=cleanup - createSMILES @@ -54,7 +54,6 @@ lipids nucleosides porphyrins steroids miscellaneous hydrogen=hydroon hydrooff -language= flip=flipHorizontal flipVertical formalCharge=plus minus valence= valenceOff valence1 valence2 valence3 valence4 valence5 valence6 valence7 valence8 Modified: jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_application.properties =================================================================== --- jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_application.properties 2010-01-07 10:45:40 UTC (rev 15275) +++ jchempaint/branches/3_0/src/main/org/openscience/jchempaint/resources/JCPGUI_application.properties 2010-01-07 12:04:48 UTC (rev 15276) @@ -56,7 +56,7 @@ file=new open save saveAs - export print - close - exit edit=undo redo - cut copy copyAsSmiles paste - eraser selectAll - options -view=toolbar++ statusbar++ menubar++ insertstructure++ - zoomin zoomout zoomoriginal - cleanup @flip @hydrogen - @language +view=toolbar++ statusbar++ menubar++ insertstructure++ - zoomin zoomout zoomoriginal - cleanup @flip @hydrogen atomMenu=@formalCharge @hydrogen @isotopeChange @radical @pseudoSymbols pseudoStar @valence - @symbolChange bondMenu=bond up_bond down_bond undefined_bond undefined_stereo_bond tools=cleanup - createSMILES createInChI @@ -65,7 +65,6 @@ lipids nucleosides porphyrins steroids miscellaneous hydrogen=hydroon hydrooff -language= flip=flipHorizontal flipVertical formalCharge=plus minus valence= valenceOff valence1 valence2 valence3 valence4 valence5 valence6 valence7 valence8 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |