< prev index next >

src/com/sun/javatest/exec/CE_KeywordsPane.java

Print this page




  77  * Standard values, keyword pane.
  78  */
  79 class CE_KeywordsPane extends CE_StdPane {
  80     CE_KeywordsPane(UIFactory uif, InterviewParameters config) {
  81         super(uif, config, "keywords");
  82 
  83         updateConfig();
  84         initGUI();
  85     }
  86 
  87     boolean isOKToClose() {
  88         if (mutableKeywordsParameters == null)
  89             return true;
  90 
  91         if (!selectCheck.isSelected())
  92             return true;
  93 
  94         try {
  95             TestSuite ts = config.getTestSuite();
  96             String[] validKeywords = ts.getKeywords();
  97             HashSet validKeywordsSet;
  98             if (validKeywords == null)
  99                 validKeywordsSet = null;
 100             else
 101                 validKeywordsSet = new HashSet(Arrays.asList(validKeywords));
 102 
 103             String kc = (String) (keywordsChoice.getSelectedItem());
 104             String type;
 105             if (kc.equals(ANY_OF))
 106                 type = Keywords.ANY_OF;
 107             else if (kc.equals(ALL_OF))
 108                 type = Keywords.ALL_OF;
 109             else
 110                 type = Keywords.EXPR;
 111             Keywords k = Keywords.create(type, keywordsField.getText(),
 112                     validKeywordsSet);
 113             return true;
 114         } catch (Keywords.Fault e) {
 115             uif.showError("ce.keywords.invalid", e.getMessage());
 116             return false;
 117         }
 118     }
 119 
 120     void updateConfig() {
 121         // track interview changes


 269                 // so disable the entire pane
 270                 setEnabled(false);
 271             } else {
 272                 // this test suite specifies valid keywords,
 273                 // so create a popup menu for them
 274                 keywordPopup = uif.createPopupMenu("ce.keywords.keyword");
 275                 keywordChooser = false;
 276                 for (int i = 0; i < keywords.length; i++)
 277                     keywordPopup.add(uif.createLiteralMenuItem(keywords[i], listener));
 278                 if (keywordPopup.getPreferredSize().getHeight() > (Toolkit.getDefaultToolkit().getScreenSize().height - 50)) {
 279                     keywordPopup = null;
 280                     keywordChooser = true;
 281                 }
 282             }
 283         }
 284     }
 285 
 286     private class KeywordChooser extends JDialog {
 287 
 288         private JScrollPane sp;
 289         private JList lst;
 290         private JButton ok, cancel;
 291 
 292         KeywordChooser(Dialog parent, String [] keywords, Listener listener ) {
 293             super(parent);
 294             initUI(keywords, listener);
 295         }
 296 
 297         KeywordChooser(Frame parent, String [] keywords, Listener listener ) {
 298             super(parent);
 299             initUI(keywords, listener);
 300         }
 301 
 302         KeywordChooser(String [] keywords, Listener listener ) {
 303             super();
 304             initUI(keywords, listener);
 305         }
 306 
 307         private void initUI(String [] keywords, final Listener listener ) {
 308             GridBagConstraints gbc;
 309 
 310             sp = new JScrollPane();
 311             lst = new JList(keywords);
 312 
 313             ok = uif.createButton("keywordChooser.insert", new ActionListener() {
 314                 public void actionPerformed(ActionEvent e) {
 315                     Object[] sels = lst.getSelectedValues();
 316                     String inserted = "";
 317                     for (int i = 0; i < sels.length; i++) {
 318                         inserted += sels[i] + " ";
 319                     }
 320                     listener.insert(inserted.trim());
 321                     lst.clearSelection();
 322                     setVisible(false);
 323                     dispose();
 324                 }
 325             });
 326 
 327 
 328             cancel = uif.createButton("keywordChooser.cancel", new ActionListener() {
 329                 public void actionPerformed(ActionEvent e) {
 330                     lst.clearSelection();
 331                     setVisible(false);




  77  * Standard values, keyword pane.
  78  */
  79 class CE_KeywordsPane extends CE_StdPane {
  80     CE_KeywordsPane(UIFactory uif, InterviewParameters config) {
  81         super(uif, config, "keywords");
  82 
  83         updateConfig();
  84         initGUI();
  85     }
  86 
  87     boolean isOKToClose() {
  88         if (mutableKeywordsParameters == null)
  89             return true;
  90 
  91         if (!selectCheck.isSelected())
  92             return true;
  93 
  94         try {
  95             TestSuite ts = config.getTestSuite();
  96             String[] validKeywords = ts.getKeywords();
  97             HashSet<String> validKeywordsSet;
  98             if (validKeywords == null)
  99                 validKeywordsSet = null;
 100             else
 101                 validKeywordsSet = new HashSet<String>(Arrays.asList(validKeywords));
 102 
 103             String kc = (String) (keywordsChoice.getSelectedItem());
 104             String type;
 105             if (kc.equals(ANY_OF))
 106                 type = Keywords.ANY_OF;
 107             else if (kc.equals(ALL_OF))
 108                 type = Keywords.ALL_OF;
 109             else
 110                 type = Keywords.EXPR;
 111             Keywords k = Keywords.create(type, keywordsField.getText(),
 112                     validKeywordsSet);
 113             return true;
 114         } catch (Keywords.Fault e) {
 115             uif.showError("ce.keywords.invalid", e.getMessage());
 116             return false;
 117         }
 118     }
 119 
 120     void updateConfig() {
 121         // track interview changes


 269                 // so disable the entire pane
 270                 setEnabled(false);
 271             } else {
 272                 // this test suite specifies valid keywords,
 273                 // so create a popup menu for them
 274                 keywordPopup = uif.createPopupMenu("ce.keywords.keyword");
 275                 keywordChooser = false;
 276                 for (int i = 0; i < keywords.length; i++)
 277                     keywordPopup.add(uif.createLiteralMenuItem(keywords[i], listener));
 278                 if (keywordPopup.getPreferredSize().getHeight() > (Toolkit.getDefaultToolkit().getScreenSize().height - 50)) {
 279                     keywordPopup = null;
 280                     keywordChooser = true;
 281                 }
 282             }
 283         }
 284     }
 285 
 286     private class KeywordChooser extends JDialog {
 287 
 288         private JScrollPane sp;
 289         private JList<String> lst;
 290         private JButton ok, cancel;
 291 
 292         KeywordChooser(Dialog parent, String [] keywords, Listener listener ) {
 293             super(parent);
 294             initUI(keywords, listener);
 295         }
 296 
 297         KeywordChooser(Frame parent, String [] keywords, Listener listener ) {
 298             super(parent);
 299             initUI(keywords, listener);
 300         }
 301 
 302         KeywordChooser(String [] keywords, Listener listener ) {
 303             super();
 304             initUI(keywords, listener);
 305         }
 306 
 307         private void initUI(String [] keywords, final Listener listener ) {
 308             GridBagConstraints gbc;
 309 
 310             sp = new JScrollPane();
 311             lst = new JList<>(keywords);
 312 
 313             ok = uif.createButton("keywordChooser.insert", new ActionListener() {
 314                 public void actionPerformed(ActionEvent e) {
 315                     Object[] sels = lst.getSelectedValues();
 316                     String inserted = "";
 317                     for (int i = 0; i < sels.length; i++) {
 318                         inserted += sels[i] + " ";
 319                     }
 320                     listener.insert(inserted.trim());
 321                     lst.clearSelection();
 322                     setVisible(false);
 323                     dispose();
 324                 }
 325             });
 326 
 327 
 328             cancel = uif.createButton("keywordChooser.cancel", new ActionListener() {
 329                 public void actionPerformed(ActionEvent e) {
 330                     lst.clearSelection();
 331                     setVisible(false);


< prev index next >