/[schmitzm]/trunk/src/skrueger/swing/TranslationEditJPanel.java
ViewVC logotype

Diff of /trunk/src/skrueger/swing/TranslationEditJPanel.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 127 by mojays, Sat May 30 14:29:58 2009 UTC revision 220 by alfonx, Tue Jul 14 09:41:31 2009 UTC
# Line 16  import schmitzm.swing.SpringUtilities; Line 16  import schmitzm.swing.SpringUtilities;
16  import skrueger.i8n.Translation;  import skrueger.i8n.Translation;
17    
18  /**  /**
19   * A {@link JPanel} that asks the user for translation of several strings   * A {@link JPanel} that asks the user for the translations of a String in
20     * several languages. Use {@link TranslationAskJDialog} to display.<br/>
21     * The class does not implement any backup/clong strategies. The
22     * {@link Translation} object is manipulated directly.<br/>
23     * {@link TranslationEditJPanel}s. {@link TranslationAskJDialog} implements a
24     * transparent Apply/Cancel logic.
25     *
26   * @author Stefan Alfons Krüger   * @author Stefan Alfons Krüger
  *  
27   */   */
28  public class TranslationEditJPanel extends JPanel {  public class TranslationEditJPanel extends JPanel {
29          static final protected Logger LOGGER = Logger.getLogger(TranslationEditJPanel.class);          static final protected Logger LOGGER = Logger
30                                    .getLogger(TranslationEditJPanel.class);
31    
32          private final List<String> languages;          private final List<String> languages;
33          private JPanel translationGrid;          private JPanel translationGrid;
34          private Translation trans;          private Translation trans;
35    
36            /**
37             * Creates a {@link JPanel} that asks the user for the translation of a
38             * String in several languages
39             */
40          public TranslationEditJPanel(Translation trans, List<String> languages_) {          public TranslationEditJPanel(Translation trans, List<String> languages_) {
41                  this(null, trans, languages_);                  this(null, trans, languages_);
42          }          }
43    
44            /**
45             * Creates a {@link JPanel} that asks the user for the translation of a
46             * String in several languages and additionally puts a {@link JLabel} with a
47             * question at the {@link JPanel}'s first row.
48             */
49          public TranslationEditJPanel(String question, Translation trans,          public TranslationEditJPanel(String question, Translation trans,
50                          List<String> languages_) {                          List<String> languages_) {
51                  super(new BorderLayout());                  super(new BorderLayout());
52                    
53                  if (trans == null) trans = new Translation();                  if (trans == null)
54                            trans = new Translation();
55    
56                  this.trans = trans;                  this.trans = trans;
57                  this.languages = languages_;                  this.languages = languages_;
58                    
59                  add(getTranslationGrid(), BorderLayout.CENTER);                  add(getTranslationGrid(), BorderLayout.CENTER);
60    
61                  if (question != null) {                  if (question != null) {
62                          JLabel questionLable = new JLabel(question);                          JLabel questionLable = new JLabel(question);
63                          questionLable.setBorder(BorderFactory.createEmptyBorder(                          questionLable
64                                          6, 6, 6, 6));                                          .setBorder(BorderFactory.createEmptyBorder(6, 6, 6, 6));
65                          add(questionLable, BorderLayout.NORTH);                          add(questionLable, BorderLayout.NORTH);
66                  }                  }
67          }          }
# Line 63  public class TranslationEditJPanel exten Line 79  public class TranslationEditJPanel exten
79    
80                                  TranslationJTextField langTextField = new TranslationJTextField(                                  TranslationJTextField langTextField = new TranslationJTextField(
81                                                  trans, langId);                                                  trans, langId);
82                                  // Setting a size                                  // Setting a size
83                                  langTextField.setPreferredSize( new Dimension(360,22));                                  langTextField.setPreferredSize(new Dimension(360, 22));
84                                  langDesc.setLabelFor(langTextField);                                  langDesc.setLabelFor(langTextField);
85                                  translationGrid.add(langDesc);                                  translationGrid.add(langDesc);
86                                  translationGrid.add(langTextField);                                  translationGrid.add(langTextField);
# Line 80  public class TranslationEditJPanel exten Line 96  public class TranslationEditJPanel exten
96                  return translationGrid;                  return translationGrid;
97          }          }
98    
 //      /**  
 //       * Merges a few {@link TranslationEditJPanel}s and shows them together..  
 //       * So far this is working on the Translation object directly, Cancel not possible.  
 //       * @param translationEditJPanel  
 //       *  
 //       * @deprecated Use {@link TranslationAskJDialog}  
 //       */  
 //      public static void ask(Frame parentFrame, final TranslationEditJPanel... translationEditJPanels) {  
 //              dialog = new JDialog(parentFrame);  
 //      //      backup( translationEditJPanels );  
 //              showDialog(dialog, translationEditJPanels);  
 //      }  
 //  
 //        
 //      /**  
 //       * Merges a few {@link TranslationEditJPanel}s and shows them together..  
 //       * So far this is working on the Translation object directly, Cancel not possible.  
 //       * @param translationEditJPanel  
 //  
 //       * @deprecated User {@link TranslationAskJDialog}        *  
 //       */  
 //      public static void ask(Window parentWindow, TranslationEditJPanel... translationEditJPanels) {  
 //              dialog = new JDialog(parentWindow);  
 //      //      backup( translationEditJPanels );  
 //              showDialog(dialog, translationEditJPanels);  
 //      }  
 //        
 //      /**  
 //       * Merges a few {@link TranslationEditJPanel}s and shows them together..  
 //       * So far this is working on the Translation object directly, Cancel not possible.  
 //       * @param translationEditJPanel  
 //       *  
 //       *       * @deprecated User {@link TranslationAskJDialog}  
 //       */  
 //      public static void ask(JDialog parentDialog, TranslationEditJPanel... translationEditJPanels) {  
 //              dialog = new JDialog(parentDialog);  
 //      //      backup( translationEditJPanels );  
 //              showDialog(dialog, translationEditJPanels);  
 //      }  
 //        
 //        
 //      /**  
 //       *       * @deprecated User {@link TranslationAskJDialog}  
 //       * @param d  
 //       * @param translationEditJPanels  
 //       * @author <a href="mailto:[email protected]">Stefan Alfons Kr&uuml;ger</a>  
 //       */  
 //      public static void showDialog(JDialog d, JComponent... translationEditJPanels) {  
 //              dialog = d;  
 //              dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);  
 //              SwingUtil.centerFrameOnScreen(dialog);  
 //              Box box = Box.createVerticalBox();  
 //              for (JComponent panel : translationEditJPanels) {  
 //                      box.add(panel);  
 //              }  
 //              JPanel cp = new JPanel( new BorderLayout());  
 //              cp.add( box, BorderLayout.CENTER);  
 //              cp.add( getButtons(), BorderLayout.SOUTH  );  
 //              dialog.setContentPane(cp);  
 //                
 //              // dialog.getRootPane().setDefaultButton(okButton);  
 //                
 //              dialog.setTitle("Please translate"); //i8n  
 //              dialog.setModal(true);  
 //              dialog.pack();  
 //              dialog.setVisible(true);  
 //      }  
 //  
 //      /**  
 //       * @deprecated Use TranslationAskJDialog  
 //       * @return  
 //       * @author <a href="mailto:[email protected]">Stefan Alfons Kr&uuml;ger</a>  
 //       */  
 //      private static JComponent getButtons() {  
 //              JPanel jPanel = new JPanel();  
 //              if (okButton == null) {  
 //                      okButton = new OkButton(new AbstractAction("enter") {  
 //                  public void actionPerformed(ActionEvent evt) {  
 //                      firePropertyChange(PROPERTY_APPLY_AND_CLOSE, null, null);  
 //                      dialog.dispose();  
 //                  }  
 //              } );  
 //              }  
 //              jPanel.add(okButton);  
 //  
 //              if (cancelButton == null) {  
 //                      cancelButton = new CancelButton(new AbstractAction("") {  
 //                  public void actionPerformed(ActionEvent evt) {  
 //                      // restore();  
 //                      firePropertyChange(PROPERTY_CANCEL_AND_CLOSE, null, null);  
 //                      dialog.dispose();  
 //                  }  
 //              } );  
 //              }  
 //              jPanel.add(okButton);  
 //  
 //              return jPanel;  
 //      }  
           
99          /**          /**
100           * @return The {@link Translation} that this {@link TranslationEditJPanel} deals with.           * @return The {@link Translation} that this {@link TranslationEditJPanel}
101             *         deals with.
102           */           */
103          public Translation getTranslation() {          public Translation getTranslation() {
104                  return trans;                  return trans;

Legend:
Removed from v.127  
changed lines
  Added in v.220

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26