示例#1
0
  @Override
  public void update(Observable arg0, Object arg1) {
    if (arg1 instanceof String) {
      String message = arg1.toString();
      if (message.startsWith("Forwarding: ")) {
        ForwardButton.setText("Stop Forwarding");
        SetChannelButton.setEnabled(false);
        BlockButton.setEnabled(false);
        Send.setEnabled(false);
        MessageInput.setEnabled(false);
        MessageDisplay.setEnabled(false);
        Availability.setEnabled(false);
      } else if (message.startsWith("End Forwarding:")) {
        ForwardButton.setText("Forward");
        SetChannelButton.setEnabled(true);
        BlockButton.setEnabled(true);
        Send.setEnabled(true);
        MessageInput.setEnabled(true);
        MessageDisplay.setEnabled(true);
        Availability.setEnabled(true);
      } else if (message.startsWith("#send")) {
        try {
          client.sendToServer(message.substring(6));
        } catch (IOException e) {
          e.printStackTrace();
        }
        return;
      } else if (message.startsWith("#linedraw")) {
        drawPad.updateDraw(message);
        return;
      } else if (message.startsWith("Login Error:")) {
        java.awt.EventQueue.invokeLater(
            new Runnable() {
              public void run() {
                chatFrame.setVisible(false);
                LoginGUI login = new LoginGUI(true);
              }
            });
      }

      if (!message.substring(message.length() - 1, message.length()).equals("\n")) message += "\n";

      // Update UI display safely
      final String msg = message;
      SwingUtilities.invokeLater(
          new Runnable() {
            public void run() {
              MessageDisplay.append(msg);
            }
          });
    }
  }
  private void initSouth() {
    listButton = new JToggleButton();
    listButton.setIcon(
        new javax.swing.ImageIcon(
            getClass().getResource("/org/gephi/desktop/ranking/resources/list.png"))); // NOI18N
    NbBundle.getMessage(RankingTopComponent.class, "RankingTopComponent.listButton.text");
    listButton.setEnabled(false);
    listButton.setFocusable(false);
    southToolbar.add(listButton);
    /*barChartButton = new JToggleButton();
    barChartButton.setIcon(new javax.swing.ImageIcon(getClass().getResource("/org/gephi/desktop/ranking/resources/barchart.png"))); // NOI18N
    NbBundle.getMessage(RankingTopComponent.class, "RankingTopComponent.barchartButton.text");
    barChartButton.setEnabled(false);
    barChartButton.setFocusable(false);
    southToolbar.add(barChartButton);*/

    // BarChartPanel & ListPanel
    listResultPanel.setVisible(false);

    listButton.addActionListener(
        new ActionListener() {

          public void actionPerformed(ActionEvent e) {
            model.setListVisible(listButton.isSelected());
          }
        });

    /*barChartButton.addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent e) {
    model.setBarChartVisible(barChartButton.isSelected());
    }
    });*/
  }
  protected void makeElementsNotEditable() {
    final ActionListener actionListener =
        new ActionListener() {
          @Override
          public void actionPerformed(final ActionEvent e) {
            if (e.getSource() instanceof JCheckBox) {
              final JCheckBox checkbox = (JCheckBox) e.getSource();
              checkbox.setSelected(!checkbox.isSelected());
            }
          }
        };

    for (final String key : new String[] {"ctnBody"}) {
      final Object component = result.get(key);
      if ((component != null)) {
        if (component instanceof JCheckBox) {
          ((JCheckBox) component).addActionListener(actionListener);
        } else if (component instanceof JToggleButton) {
          ((JToggleButton) component).setEnabled(false);
        } else if (component instanceof JButton) {
          ((JButton) component).setEnabled(false);
        } else if (component instanceof JTextComponent) {
          ((JTextComponent) component).setEditable(false);
        }
      }
    }
  }
示例#4
0
    public CategoryToolbar() {
      // Init components
      elementGroup = new javax.swing.ButtonGroup();
      for (final String elmtType : AppearanceUIController.ELEMENT_CLASSES) {

        JToggleButton btn = new JToggleButton();
        btn.setFocusPainted(false);
        String btnLabel = elmtType;
        try {
          btnLabel =
              NbBundle.getMessage(
                  AppearanceToolbar.class, "AppearanceToolbar." + elmtType + ".label");
        } catch (MissingResourceException e) {
        }
        btn.setText(btnLabel);
        btn.setEnabled(false);
        btn.addActionListener(
            new ActionListener() {
              @Override
              public void actionPerformed(ActionEvent e) {
                controller.setSelectedElementClass(elmtType);
              }
            });
        elementGroup.add(btn);
        add(btn);
      }
      box = new javax.swing.JLabel();

      addSeparator();

      box.setMaximumSize(new java.awt.Dimension(32767, 32767));
      add(box);
    }
  public void addSequences() {
    JFileChooser choose = new JFileChooser("Add sequence(s)...");
    choose.setCurrentDirectory(new File(System.getProperty("user.dir")));
    if (choose.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
      inFile = choose.getSelectedFile();
      // System.out.println(inFile.toString().substring(inFile.toString().length()-3,inFile.toString().length()));

      if (!(inFile.toString().endsWith(".fasta") || inFile.toString().endsWith(".fas"))) {
        // ErrorMessage.showPane(this, "File is not a valid Fasta file.", true);
        // return;
      }

      FileFormatReader reader = new FastaReader();
      try {
        manager.inputData.seqs.alphabet = "";
        manager.inputData.seqs.add(reader.read(inFile));
        manager.inputgui.updateSequences();
        manager.fullPath = inFile.getAbsolutePath();
        if (manager.inputData.model != null) {
          try {
            manager.inputData.model.acceptable(manager.inputData.seqs);
          } catch (RecognitionError e) {
            tryModels();
          }
        } else {
          tryModels();
        }
        if (manager.inputData.model != null) {
          runItem.setEnabled(true);
          runButton.setEnabled(true);

          if (!manager.inputData.seqs.isRNA()) {
            rnaButton.setEnabled(false);
          } else {
            rnaButton.setEnabled(true);
            RNAPopup.showPane(this);
          }
        }
      } catch (IOException e) {
        ErrorMessage.showPane(this, "An I/O error occured while reading input file.", true);
      } catch (ExceptionNonFasta e) {
        ErrorMessage.showPane(
            this, "The input sequences do not appear to be in Fasta format.", true);
      }
    }
  }
示例#6
0
 private JToggleButton addToggleButton(Action a) {
   JToggleButton tb = new JToggleButton((String) a.getValue(Action.NAME), null);
   tb.setEnabled(a.isEnabled());
   tb.setToolTipText((String) a.getValue(Action.SHORT_DESCRIPTION));
   tb.setAction(a);
   add(tb);
   return tb;
 }
示例#7
0
 public void syncPanel() {
   if (SeaMark.EntMAP.get(dlg.panelMain.mark.getObject()) == Ent.MOORING) {
     mooringButton.setBorderPainted(true);
     categoryBox.setVisible(false);
     mooringBox.setVisible(true);
     pillarButton.setEnabled(false);
     sparButton.setEnabled(false);
     beaconButton.setEnabled(false);
     towerButton.setEnabled(false);
     stakeButton.setEnabled(false);
     cairnButton.setEnabled(false);
     noticeButton.setEnabled(false);
     topmarkButton.setVisible(false);
     for (Cat cat : moorings.keySet()) {
       int item = moorings.get(cat);
       if (dlg.panelMain.mark.getCategory() == cat) mooringBox.setSelectedIndex(item);
     }
   } else {
     mooringButton.setBorderPainted(false);
     mooringBox.setVisible(false);
     categoryBox.setVisible(true);
     pillarButton.setEnabled(true);
     sparButton.setEnabled(true);
     beaconButton.setEnabled(true);
     towerButton.setEnabled(true);
     stakeButton.setEnabled(true);
     cairnButton.setEnabled(true);
     noticeButton.setEnabled(true);
     topmarkButton.setBorderPainted(dlg.panelMain.mark.getTopmark() != Top.NOTOP);
     topmarkButton.setSelected(dlg.panelMain.mark.getTopmark() != Top.NOTOP);
     topmarkButton.setVisible(dlg.panelMain.mark.testValid());
     for (Cat cat : categories.keySet()) {
       int item = categories.get(cat);
       if (dlg.panelMain.mark.getCategory() == cat) categoryBox.setSelectedIndex(item);
     }
   }
   for (Shp shp : shapes.keySet()) {
     JRadioButton button = shapes.get(shp);
     if (dlg.panelMain.mark.getShape() == shp) {
       button.setBorderPainted(true);
     } else button.setBorderPainted(false);
   }
   noticeButton.setBorderPainted(false);
   dlg.panelMain.mark.testValid();
 }
  private void refreshEnable() {
    boolean modelEnabled = isModelEnabled();

    // barChartButton.setEnabled(modelEnabled);
    listButton.setEnabled(modelEnabled);
    rankingChooser.setEnabled(modelEnabled);
    rankingToolbar.setEnabled(modelEnabled);
    listResultPanel.setEnabled(modelEnabled);
  }
 protected void enableEdition(boolean enable) {
   importmi.setEnabled(enable);
   savemi.setEnabled(enable);
   sizesl.setEnabled(enable);
   sizetf.setEnabled(enable);
   colorbt.setEnabled(enable);
   resetbt.setEnabled(enable);
   savebt.setEnabled(enable);
   eraserbt.setEnabled(enable);
 }
 /**
  * Enable or disable various UI elements
  *
  * @param enable
  */
 private void enableSettingsMode(boolean enable) {
   textFieldStepsize.setEnabled(enable);
   btnStepToMarker.setEnabled(enable);
   btnStep.setEnabled(enable);
   slider.setEnabled(enable);
   textFieldDistFallofExp.setEnabled(enable);
   textFieldTriDissimilarity.setEnabled(enable);
   textFieldMinTriAngle.setEnabled(enable);
   textFieldBadTriPen.setEnabled(enable);
   btnDisplayTriangles.setEnabled(enable);
   btnRefresh.setEnabled(enable);
   tglbtnMouseMode.setEnabled(enable);
 }
 /** Open button has been pushed, create the actual display connection */
 void openPortButtonActionPerformed(java.awt.event.ActionEvent e) {
   log.info("Open button pushed");
   // can't change this anymore
   openPortButton.setEnabled(false);
   portBox.setEnabled(false);
   // Open the port
   openPort((String) portBox.getSelectedItem(), "JMRI");
   // start the reader
   readerThread = new Thread(new Reader());
   readerThread.start();
   // enable buttons
   checkButton.setEnabled(true);
   log.info("Open button processing complete");
 }
示例#12
0
 public void setEnabled(boolean bEnable) {
   super.setEnabled(bEnable);
   btnDraw.setEnabled(bEnable);
   btnPen.setEnabled(bEnable);
   btnCalibrate.setEnabled(bEnable);
   btnSpline.setEnabled(bEnable);
   btnTextTool.setEnabled(bEnable);
   btnRulerTool.setEnabled(bEnable);
 }
  public void disableAllButtons() {
    openItem.setEnabled(false);
    openButton.setEnabled(false);
    runItem.setEnabled(false);
    runButton.setEnabled(false);

    pauseItem.setEnabled(true);
    pauseButton.setEnabled(true);

    resumeItem.setEnabled(false);

    stopItem.setEnabled(true);
    stopButton.setEnabled(true);

    rnaButton.setEnabled(false);
  }
 @Override
 public void actionPerformed(ActionEvent e) {
   if (e.getSource().equals(rt)) {
     view.onUserEvent("rt", tweet);
     JToggleButton b = (JToggleButton) rt;
     b.setEnabled(false);
   } else if (e.getSource().equals(fav)) {
     JToggleButton b = (JToggleButton) fav;
     if (b.isSelected()) {
       view.onUserEvent("fav", tweet);
     } else {
       view.onUserEvent("unfav", tweet);
     }
   } else if (e.getSource().equals(rep)) {
     view.onUserEvent("reply", tweet);
   }
 }
  /** Enables several menu items that were kept disabled during the run. */
  public void finished() {
    openItem.setEnabled(true);
    openButton.setEnabled(true);
    runItem.setEnabled(true);
    runButton.setEnabled(true);
    rnaButton.setEnabled(true);

    // rnaButton.setSelected(false);
    pauseItem.setEnabled(false);
    pauseButton.setEnabled(false);
    resumeItem.setEnabled(false);
    resumeButton.setEnabled(false);
    stopItem.setEnabled(false);
    stopButton.setEnabled(false);

    statusText.setText(MainFrame.IDLE_STATUS_MESSAGE);
    // SavedFilesPopup.showPane(this);

  }
  public void deactivateRNA() {

    int count = 0;
    if (manager.postProcMan.rnaMode) {
      for (Postprocess plugin : pluginTabs) {
        if (plugin.rnaAssociated) {
          plugin.reloadPanel();
          tabPluginMap.remove(plugin);
          tab.remove(count + 1);
          count--;
        }

        count++;
      }
    }

    manager.postProcMan.rnaMode = false;
    rnaButton.setSelected(false);
    rnaButton.setEnabled(false);
  }
示例#17
0
 JToggleButton addDecoderIdentButton() {
   JToggleButton iddecoder = new JToggleButton(Bundle.getMessage("ButtonReadType"));
   iddecoder.setToolTipText(Bundle.getMessage("TipSelectType"));
   if (jmri.InstanceManager.getNullableDefault(jmri.ProgrammerManager.class) != null
       && jmri.InstanceManager.getDefault(jmri.ProgrammerManager.class).getGlobalProgrammer()
           != null
       && !jmri.InstanceManager.getDefault(jmri.ProgrammerManager.class)
           .getGlobalProgrammer()
           .getCanRead()) {
     // can't read, disable the button
     iddecoder.setEnabled(false);
     iddecoder.setToolTipText(Bundle.getMessage("TipNoRead"));
   }
   iddecoder.addActionListener(
       new ActionListener() {
         public void actionPerformed(java.awt.event.ActionEvent e) {
           startIdentifyDecoder();
         }
       });
   return iddecoder;
 }
  public void initComponents(NceSystemConnectionMemo m) throws Exception {
    this.memo = m;

    // populate the GUI, invoked as part of startup
    // load the port selection part
    portBox.setToolTipText("Select the port to use");
    portBox.setAlignmentX(JLabel.LEFT_ALIGNMENT);
    Vector<String> v = getPortNames();
    for (int i = 0; i < v.size(); i++) {
      portBox.addItem(v.elementAt(i));
    }
    openPortButton.setText("Open");
    openPortButton.setToolTipText("Configure program to use selected port");
    openPortButton.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent evt) {
            try {
              openPortButtonActionPerformed(evt);
              // } catch (jmri.jmrix.SerialConfigException ex) {
              //    log.error("Error while opening port.  Did you select the right one?\n"+ex);
            } catch (java.lang.UnsatisfiedLinkError ex) {
              log.error("Error while opening port.  Did you select the right one?\n" + ex);
            }
          }
        });
    {
      JSeparator js = new JSeparator();
      js.setMaximumSize(new Dimension(10000, 10));
      add(js);
    }
    JPanel p1 = new JPanel();
    p1.setLayout(new FlowLayout());
    p1.add(new JLabel("Serial port: "));
    p1.add(portBox);
    p1.add(openPortButton);
    p1.setMaximumSize(p1.getPreferredSize());
    add(p1);

    // add user part of GUI
    {
      JSeparator js = new JSeparator();
      js.setMaximumSize(new Dimension(10000, 10));
      add(js);
    }
    JPanel p2 = new JPanel();
    {
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      checkButton.setToolTipText("?");
      checkButton.setEnabled(false);
      p.add(checkButton);
      checkButton.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              if (checkButton.isSelected()) {
                sendBytes(new byte[] {(byte) '?'});
                checkButton.setText("Res.");
                checkButton.setToolTipText("Resume packet monitoring");
              } else {
                sendBytes(new byte[] {(byte) ' '});
                checkButton.setText("Info");
                checkButton.setToolTipText("?");
              }
            }
          });
      truncateCheckBox.setToolTipText("Check this box to suppress identical packets");
      p.add(truncateCheckBox);
      p2.add(p);
    }

    {
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      b = new JRadioButton("Verbose");
      b.setToolTipText("V");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'V'});
            }
          });
      b = new JRadioButton("Hex with preamble symbol");
      b.setToolTipText("H0");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'H', (byte) '0'});
            }
          });
      p2.add(p);
      b = new JRadioButton("(as above with spaces)");
      b.setToolTipText("H1");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'H', (byte) '1'});
            }
          });
      p2.add(p);
      b = new JRadioButton("Hex without preamble symbol");
      b.setToolTipText("H2");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'H', (byte) '2'});
            }
          });
      p2.add(p);
      b = new JRadioButton("(as above with spaces)");
      b.setToolTipText("H3");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'H', (byte) '3'});
            }
          });
      p2.add(p);
      b = new JRadioButton("Hex with preamble count in hex");
      b.setToolTipText("H4");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'H', (byte) '4'});
            }
          });
      p2.add(p);
      b = new JRadioButton("(as above with spaces)");
      b.setToolTipText("H5");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'H', (byte) '5'});
            }
          });
      p2.add(p);
    } // end hex/verbose group

    { // start acc off/on
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      b = new JRadioButton("Hide acc packets");
      b.setToolTipText("A-");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'A', (byte) '-'});
            }
          });
      b = new JRadioButton("Show acc packets");
      b.setToolTipText("A+");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'A', (byte) '+'});
            }
          });
      p2.add(p);
    } // end acc off/on

    { // start idle off/on
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      b = new JRadioButton("Hide idle packets");
      b.setToolTipText("I-");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'I', (byte) '-'});
            }
          });
      b = new JRadioButton("Show idle packets");
      b.setToolTipText("I+");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'I', (byte) '+'});
            }
          });
      p2.add(p);
    } // end idle off/on

    { // start loco off/on
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      locoSpeedButton.setToolTipText("L-");
      g.add(locoSpeedButton);
      p.add(locoSpeedButton);
      locoSpeedButton.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'L', (byte) '-'});
            }
          });
      b = new JRadioButton("Show loco packets");
      b.setToolTipText("L+");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'L', (byte) '+'});
            }
          });
      p2.add(p);
    } // end loco off/on

    { // start reset off/on
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      b = new JRadioButton("Hide reset packets");
      b.setToolTipText("R-");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'R', (byte) '-'});
            }
          });
      b = new JRadioButton("Show reset packets");
      b.setToolTipText("R+");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'R', (byte) '+'});
            }
          });
      p2.add(p);
    } // end reset off/on

    { // start signal on/off
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      b = new JRadioButton("Hide signal packets");
      b.setToolTipText("S-");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'S', (byte) '-'});
            }
          });
      b = new JRadioButton("Show signal packets");
      b.setToolTipText("S+");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'S', (byte) '+'});
            }
          });
      p2.add(p);
    } // end signal off/on

    { // Monitor command acc single/double
      JPanel p = new JPanel();
      p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));
      JLabel t = new JLabel("Monitor Command");
      p.add(t);
      ButtonGroup g = new ButtonGroup();
      JRadioButton b;
      b = new JRadioButton("Acc addresses single");
      b.setToolTipText("AS");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'A', (byte) 'S'});
            }
          });
      b = new JRadioButton("Acc addresses paired");
      b.setToolTipText("AP");
      g.add(b);
      p.add(b);
      b.addActionListener(
          new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
              sendBytes(new byte[] {(byte) 'A', (byte) 'P'});
            }
          });
      p2.add(p);
    } // end acc single/double

    p2.setMaximumSize(p2.getPreferredSize());
    JScrollPane ps = new JScrollPane(p2);
    ps.setMaximumSize(ps.getPreferredSize());
    ps.setVisible(true);
    add(ps);
  }
示例#19
0
 public void enablePolygonButton(boolean enable) {
   if (polygonButton != null) {
     polygonButton.setEnabled(enable);
   }
 }
示例#20
0
  public ToolBox(final MainFrame mf) {
    JPanel container = new JPanel();
    container.setBackground(new Color(0xF2F2F5));
    add(container);
    container.setLayout(new GridLayout(0, 3, 3, 3));
    setBackground(new Color(0xF2F2F5));

    ButtonGroup group = new ButtonGroup();
    for (int i = 0; i < 7; i++) {
      JToggleButton btn = new JToggleButton();
      buttons.add(btn);
      btn.setPreferredSize(new Dimension(35, 35));
      btn.setMinimumSize(new Dimension(35, 35));
      btn.setMaximumSize(new Dimension(35, 35));
      group.add(btn);
      container.add(btn);
    }

    final JToggleButton jButtonSelect = buttons.get(0);
    jButtonSelect.setIcon(new ImageIcon(getClass().getResource("icons/tool-select.png")));
    jButtonSelect.setEnabled(true);
    jButtonSelect.addActionListener(
        new java.awt.event.ActionListener() {

          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(SelectCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));
          }
        });

    final JToggleButton jButtonMove = buttons.get(1);
    jButtonMove.setIcon(new ImageIcon(getClass().getResource("icons/tool-move.png")));
    jButtonMove.addActionListener(
        new java.awt.event.ActionListener() {

          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(MoveCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.MOVE_CURSOR));
          }
        });

    final JToggleButton jButtonZoom = buttons.get(2);
    jButtonZoom.setIcon(new ImageIcon(getClass().getResource("icons/tool-zoom.png")));
    jButtonZoom.setEnabled(true);
    jButtonZoom.addActionListener(
        new java.awt.event.ActionListener() {

          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(ZoomCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.N_RESIZE_CURSOR));
          }
        });

    final JToggleButton jButtonPaint = buttons.get(3);
    jButtonPaint.setIcon(new ImageIcon(getClass().getResource("icons/tool-paint.png")));
    jButtonPaint.addActionListener(
        new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(PaintCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.HAND_CURSOR));
          }
        });
    jButtonPaint.doClick();

    final JToggleButton jButtonFill = buttons.get(4);
    jButtonFill.setIcon(new ImageIcon(getClass().getResource("icons/tool-fill.png")));
    jButtonFill.setEnabled(true);
    jButtonFill.addActionListener(
        new java.awt.event.ActionListener() {

          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(FillSelectionCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.MOVE_CURSOR));
          }
        });

    final JToggleButton jButtonErase = buttons.get(5);
    jButtonErase.setIcon(new ImageIcon(getClass().getResource("icons/tool-erase.png")));
    jButtonErase.setEnabled(true);
    jButtonErase.addActionListener(
        new java.awt.event.ActionListener() {

          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(EraseCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));
          }
        });

    final JToggleButton jButtonPick = buttons.get(6);
    jButtonPick.setIcon(new ImageIcon(getClass().getResource("icons/tool-pick.png")));
    jButtonPick.setEnabled(true);
    jButtonPick.addActionListener(
        new java.awt.event.ActionListener() {

          public void actionPerformed(java.awt.event.ActionEvent e) {
            mf.setActiveTool(PickCommand.class);
            mf.getShowcase().setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));
          }
        });
  }
  /** The only constructor of the class. It launches the main window. */
  @SuppressWarnings("unchecked")
  public MainFrame() throws Exception {
    super("StatAlign " + StatAlign.version);

    try {
      String syslook = UIManager.getSystemLookAndFeelClassName();
      if (!UIManager.getLookAndFeel().getClass().getName().equals(syslook)) {
        UIManager.setLookAndFeel(syslook);
        SwingUtilities.updateComponentTreeUI(this);
      }
    } catch (Exception ex) {
      JOptionPane.showMessageDialog(this, ex);
    }

    ArrayList<Class<?>> substModList = new ArrayList<Class<?>>();
    for (String model :
        Utils.classesInPackage(SubstitutionModel.class.getPackage().getName() + ".plugins")) {
      try {
        Class<?> cl = Class.forName(model);
        /* Only include non-abstract substitution models that extend SubstitutionModel */
        if (!Modifier.isAbstract(cl.getModifiers()) && SubstitutionModel.class.isAssignableFrom(cl))
          substModList.add(cl);
      } catch (Exception ex) {
      }
    }

    substModels =
        (Class<? extends SubstitutionModel>[])
            substModList.toArray(new Class<?>[substModList.size()]);
    manager = new MainManager(this);
    mcmcSettingsDlg = new McmcSettingsDlg(this);

    setMinimumSize(new Dimension(500, 250));

    ///
    /// Creates the MenuBar and the ToolBar
    ///

    toolBar = new JToolBar();
    toolBar.setFloatable(false);
    toolBar.setRollover(true);
    JMenuBar menubar = new JMenuBar();

    JMenu menu = new JMenu("File");
    menu.setMnemonic(KeyEvent.VK_F);
    JMenuItem item;

    String openText = "Add sequence(s)...";
    ImageIcon icon = new ImageIcon(ClassLoader.getSystemResource("icons/open.png"));
    openItem = createMenuItem(openText, true);
    openItem.setAccelerator(KeyStroke.getKeyStroke("control O"));
    openItem.setMnemonic(KeyEvent.VK_A);
    openItem.setIcon(icon);
    menu.add(openItem);

    openButton = createButton(icon, "Add sequence(s)...");
    toolBar.add(openButton);

    toolBar.addSeparator();

    JMenuItem ioPreferencesItem = createMenuItem("Preferences...", true);
    ioPreferencesItem.setAccelerator(KeyStroke.getKeyStroke("control 1"));
    ioPreferencesItem.setMnemonic(KeyEvent.VK_P);
    menu.add(ioPreferencesItem);

    menu.addSeparator();

    item = createMenuItem("Exit", true);
    item.setAccelerator(KeyStroke.getKeyStroke("alt F4"));
    item.setMnemonic(KeyEvent.VK_X);
    menu.add(item);
    menubar.add(menu);

    //		menu = new JMenu("Edit");
    //		menu.setMnemonic(KeyEvent.VK_E);
    //		item = new JMenuItem("Cut");
    //		item.addActionListener(this);
    //		item.setAccelerator(KeyStroke.getKeyStroke("control X"));
    //		menu.add(item);
    //		item = new JMenuItem("Copy");
    //		item.addActionListener(this);
    //		item.setAccelerator(KeyStroke.getKeyStroke("control C"));
    //		menu.add(item);
    //		item = new JMenuItem("Paste");
    //		item.addActionListener(this);
    //		item.setAccelerator(KeyStroke.getKeyStroke("control V"));
    //		menu.add(item);
    //		menubar.add(menu);

    menu = new JMenu("Analysis");
    menu.setMnemonic(KeyEvent.VK_M);

    //        item = createMenuItem("Settings", true);
    //        item.setAccelerator(KeyStroke.getKeyStroke("control M"));
    //        item.setMnemonic(KeyEvent.VK_S);
    //        menu.add(item);

    String runText = "Set up and run";
    icon = new ImageIcon(ClassLoader.getSystemResource("icons/play.png"));
    runItem = createMenuItem(runText, false);
    runItem.setAccelerator(KeyStroke.getKeyStroke("control ENTER"));
    runItem.setIcon(icon);
    menu.add(runItem);
    menu.addSeparator();

    runButton = createButton(icon, runText);
    runButton.setEnabled(false);
    toolBar.add(runButton);

    String pauseText = "Pause";
    icon = new ImageIcon(ClassLoader.getSystemResource("icons/pause.png"));
    pauseItem = createMenuItem("Pause", false);
    pauseItem.setIcon(icon);
    menu.add(pauseItem);

    pauseButton = createButton(icon, pauseText);
    pauseButton.setEnabled(false);
    toolBar.add(pauseButton);

    String resumeText = "Resume";
    icon = new ImageIcon(ClassLoader.getSystemResource("icons/resume.png"));
    resumeItem = createMenuItem(resumeText, false);
    resumeItem.setIcon(icon);
    menu.add(resumeItem);

    resumeButton = createButton(icon, resumeText);
    resumeButton.setEnabled(false);
    toolBar.add(resumeButton);

    String stopText = "Stop";
    icon = new ImageIcon(ClassLoader.getSystemResource("icons/stop.png"));
    stopItem = createMenuItem("Stop", false);
    stopItem.setIcon(icon);
    menu.add(stopItem);
    menubar.add(menu);

    stopButton = createButton(icon, stopText);
    stopButton.setEnabled(false);
    toolBar.add(stopButton);

    String rnaText = "RNA mode";
    rnaButton =
        createToggleButton(new ImageIcon(ClassLoader.getSystemResource("icons/rna1.png")), rnaText);
    rnaButton.setEnabled(false);
    rnaButton.setSelected(false);
    toolBar.add(rnaButton);

    //        String settingsText = "Settings";
    //        JButton settingsButton = createButton(new ImageIcon(ClassLoader.
    //        		getSystemResource("icons/settings.png")), settingsText);
    //        toolBar.add(settingsButton);

    menu = new JMenu("Model");
    menu.setMnemonic(KeyEvent.VK_L);

    modelButtons = new JMenuItem[substModels.length];
    ButtonGroup modelGroup = new ButtonGroup();
    HashMap<String, ArrayList<Class<? extends SubstitutionModel>>> substModTypes =
        new HashMap<String, ArrayList<Class<? extends SubstitutionModel>>>();
    for (Class<? extends SubstitutionModel> cl : substModels) {
      String type = SubstitutionModel.getType(cl);
      ArrayList<Class<? extends SubstitutionModel>> arr = substModTypes.get(type);
      if (arr == null)
        substModTypes.put(type, arr = new ArrayList<Class<? extends SubstitutionModel>>());
      arr.add(cl);
    }
    String[] typeArr = new String[substModTypes.keySet().size()];
    int s = 0;
    if (typeArr.length >= 2) {
      typeArr[0] = "protein"; // amino acid subst models first
      typeArr[1] = "nucleotide"; // then nucleotide models, then the rest
      s = 2;
    }
    for (String type : substModTypes.keySet()) {
      if (!type.equals("protein") && !type.equals("nucleotide")) typeArr[s++] = type;
    }
    s = 0;
    for (String type : typeArr) {
      if (s > 0) menu.addSeparator();
      for (Class<? extends SubstitutionModel> cl : substModTypes.get(type)) {
        String name = SubstitutionModel.getMenuName(cl);
        item = new JRadioButtonMenuItem(name);
        item.addActionListener(this);
        modelButtons[s++] = item;
        modelGroup.add(item);
        menu.add(item);
      }
    }
    modelGroup.clearSelection();
    menubar.add(menu);

    /*menu = new JMenu("View");
    menu.setMnemonic(KeyEvent.VK_V);
    JMenuItem zoomInItem = new JMenuItem("Zoom in");
    zoomInItem.setEnabled(false);
    zoomInItem.addActionListener(this);
    menu.add(zoomInItem);
    JMenuItem zoomOutItem = new JMenuItem("Zoom out");
    zoomOutItem.setEnabled(false);
    zoomOutItem.addActionListener(this);
    menu.add(zoomOutItem);
    JMenuItem autofitItem = new JMenuItem("Fit to frame");
    autofitItem.setEnabled(false);
    autofitItem.addActionListener(this);
    menu.add(autofitItem);

    menubar.add(menu);*/

    menu = new JMenu("Help");
    menu.setMnemonic(KeyEvent.VK_H);
    item = new JMenuItem("About...");
    item.addActionListener(this);
    menu.add(item);
    menu.addSeparator();
    item = new JMenuItem("Help for users");
    item.addActionListener(this);
    menu.add(item);
    menu.addSeparator();
    item = new JMenuItem("Html doc for developers");
    item.addActionListener(this);
    menu.add(item);
    item = new JMenuItem("Description of plugins");
    item.addActionListener(this);
    menu.add(item);

    menubar.add(menu);

    setJMenuBar(menubar);
    add(toolBar, BorderLayout.PAGE_START);

    ///
    /// Creates the main panel
    ///

    Container cp = getContentPane();
    JPanel mainPanel = new JPanel(new BorderLayout());
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    mainPanel.setMinimumSize(new Dimension(screenSize.width / 3, screenSize.height / 3));
    mainPanel.setMaximumSize(new Dimension(screenSize.width, screenSize.height));
    mainPanel.setPreferredSize(new Dimension(screenSize.width / 2, screenSize.height / 2));

    tab = new JTabbedPane();

    input = new Input(manager);
    tab.addTab(input.getTabName(), input.getIcon(), input.getJPanel(), input.getTip());
    manager.inputgui = input.inputgui;

    // Sorts the tab according to their getTabOrder()
    pluginTabs = manager.postProcMan.plugins.clone();
    Arrays.sort(
        pluginTabs,
        new Comparator<Postprocess>() {
          @Override
          public int compare(Postprocess firstTab, Postprocess secondTab) {
            return Double.compare(firstTab.getTabOrder(), secondTab.getTabOrder());
          }
        });

    tabPluginMap = new HashMap<Integer, Postprocess>();
    for (int i = 0; i < pluginTabs.length; i++) {
      Postprocess plugin = pluginTabs[i];
      if (plugin.selected && !plugin.rnaAssociated) {
        tabPluginMap.put(i + 1, plugin); // TODO: Jesus Java, horrible.
        tab.addTab(plugin.getTabName(), plugin.getIcon(), plugin.getJPanel(), plugin.getTip());
      }
    }

    tab.addChangeListener(
        new ChangeListener() {
          @Override
          public void stateChanged(ChangeEvent changeEvent) {
            JTabbedPane pane = (JTabbedPane) changeEvent.getSource();
            Integer i = pane.getSelectedIndex();

            // Remove the last tabs toolbar items.
            if (lastSelectedTabIndex != -1) {
              Postprocess lastPlugin = tabPluginMap.get(lastSelectedTabIndex);
              if (lastPlugin != null && lastPlugin.hasToolBar) {
                for (JComponent item : lastPlugin.getToolBarItems()) {
                  toolBar.remove(item);
                }
                toolBar.revalidate(); // TODO: optimize.
                toolBar.repaint();
              }
            }

            // Add the currents tab toolbar items.
            Postprocess plugin = tabPluginMap.get(i);
            if (plugin != null && plugin.hasToolBar) {
              for (JComponent item : plugin.getToolBarItems()) {
                toolBar.add(item);
              }
              toolBar.revalidate();
              toolBar.repaint();
            }
            lastSelectedTabIndex = i;
          }
        });

    mainPanel.add(tab, BorderLayout.CENTER);

    cp.add(mainPanel, BorderLayout.CENTER);
    JPanel statusBar = new JPanel(new BorderLayout());
    statusText = new JLabel(IDLE_STATUS_MESSAGE);
    statusBar.add(statusText, BorderLayout.CENTER);
    cp.add(statusBar, BorderLayout.SOUTH);

    //		setSize(300, 200);
    //		setLocationByPlatform(true);
    //    	setLocation(screenSize.width/4,screenSize.height/4);
    pack();
    setBounds(
        screenSize.width / 5 - 15,
        screenSize.height / 5 - 15,
        screenSize.width * 3 / 5 + 30,
        screenSize.height * 3 / 5 + 30);
    setVisible(true);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
  }
示例#22
0
 void setCardEnabled(DevCardType cardType, boolean enabled) {
   JToggleButton button = devCards.get(cardType);
   button.setEnabled(enabled);
 }
示例#23
0
 /**
  * Wird aufgerufen, wenn ein FSM-Programm gestartet bzw. gestoppt wird. Während einer
  * Programm-Ausführung sollte das Programm nicht verändert werden können (locked == true)
  */
 public void setLocked(boolean locked) {
   if (locked) {
     this.setEnabled(false);
     this.automataPanel.setLocked(true);
     editMode.setEnabled(false);
     deleteMode.setEnabled(false);
     createState.setEnabled(false);
     markStartState.setEnabled(false);
     markFinalState.setEnabled(false);
     createTransistion.setEnabled(false);
     createComment.setEnabled(false);
     zoomIn.setEnabled(false);
     zoomOut.setEnabled(false);
     layout.setEnabled(false);
     nondeterministic.setEnabled(false);
     deterministic.setEnabled(false);
   } else {
     this.setEnabled(true);
     this.automataPanel.setLocked(false);
     editMode.setEnabled(true);
     deleteMode.setEnabled(true);
     createState.setEnabled(true);
     markStartState.setEnabled(true);
     markFinalState.setEnabled(true);
     createTransistion.setEnabled(true);
     createComment.setEnabled(true);
     zoomIn.setEnabled(true);
     zoomOut.setEnabled(true);
     layout.setEnabled(true);
     nondeterministic.setEnabled(true);
     deterministic.setEnabled(true);
   }
 }