protected void initBtn() { bOk.setText("确定"); bOk.setToolTipText("确定"); bOk.setMargin(new Insets(0, 0, 0, 0)); bOk.setIcon(ExplorerIcons.getExplorerIcon("jprofiler/checkbox_16.png")); bOk.addActionListener(this); bExit.setText("取消"); bExit.setToolTipText("取消"); bExit.setMargin(new Insets(0, 0, 0, 0)); bExit.setIcon(ExplorerIcons.getExplorerIcon("jprofiler/delete.png")); bExit.addActionListener(this); }
/** * Installs a Tool in the Toolbar * * @param toolbar as JToolbar * @param tool, Tool to install */ public void installToolInToolBar(JToolBar toolbar, final Tool tool) { final JButton button; button = new JButton(); button.setMargin(new Insets(0, 0, 0, 0)); if (tool.getItemType() != null) { button.setIcon(tool.getItemType().getIcon()); button.setToolTipText(tool.getItemType().getDescription()); } else { button.setText("Tool"); // For Debugging } toolbar.add(button); toolButtons.add(button); button.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { WorkingView.this.setTool(tool, button); } }); button.setContentAreaFilled(false); button.setBorderPainted(false); button.addMouseListener( new MouseAdapter() { public void mouseEntered(MouseEvent e) { ((JButton) e.getSource()).setBorderPainted(true); } public void mouseExited(MouseEvent e) { ((JButton) e.getSource()).setBorderPainted(false); } }); }
/** * Create a button to go inside of the toolbar. By default this will load an image resource. The * image filename is relative to the classpath (including the '.' directory if its a part of the * classpath), and may either be in a JAR file or a separate file. * * @param key The key in the resource file to serve as the basis of lookups. */ protected JButton createToolbarButton(String key) { URL url = getResource(key + imageSuffix); JButton b = new JButton(new ImageIcon(url)) { @Override public float getAlignmentY() { return 0.5f; } }; b.setRequestFocusEnabled(false); b.setMargin(new Insets(1, 1, 1, 1)); String astr = getProperty(key + actionSuffix); if (astr == null) { astr = key; } Action a = getAction(astr); if (a != null) { b.setActionCommand(astr); b.addActionListener(a); } else { b.setEnabled(false); } String tip = getResourceString(key + tipSuffix); if (tip != null) { b.setToolTipText(tip); } return b; }
/** Simple convenience routine for adding a button/icon to a Toolbar */ public static JButton addTool(JToolBar toolBar, String name) { JButton b; b = new JButton(new ImageIcon("images/" + name + ".gif", name)); toolBar.add(b); b.setToolTipText(name); b.setMargin(new Insets(0, 0, 0, 0)); b.getAccessibleContext().setAccessibleName(name); return b; }
/** * _more_ * * @param type * @return _more_ */ private JButton createButton(SpinIcon.Type type) { SpinIcon icon = new SpinIcon(type); JButton butt = new JButton(icon); Insets i = new Insets(0, 0, 0, 0); butt.setMargin(i); butt.setBorderPainted(false); butt.setFocusPainted(false); butt.setPreferredSize(new Dimension(icon.getIconWidth() + 2, icon.getIconHeight() + 2)); return butt; }
public MenuedButton(Icon icon, JPopupMenu menu) { JButton iconBut = new JButton(icon); iconBut.setMargin(new Insets(0, 0, 0, 0)); // iconBut. setMainButton(iconBut); setPopupMenu(menu); setShdPopupOnBtnClick(true); setPopupLocation(BELOW); }
public BorderedComponent(String text, JComponent comp, boolean collapsible) { super(null); this.comp = comp; // Only add border if text is not null if (text != null) { TitledBorder border; if (collapsible) { final JLabel textLabel = new JLabel(text); JPanel borderLabel = new JPanel(new FlowLayout(FlowLayout.LEFT, 2, 0)) { public int getBaseline(int w, int h) { Dimension dim = textLabel.getPreferredSize(); return textLabel.getBaseline(dim.width, dim.height) + textLabel.getY(); } }; borderLabel.add(textLabel); border = new LabeledBorder(borderLabel); textLabel.setForeground(border.getTitleColor()); if (IS_WIN) { collapseIcon = new ImageIcon(getImage("collapse-winlf")); expandIcon = new ImageIcon(getImage("expand-winlf")); } else { collapseIcon = new ArrowIcon(SOUTH, textLabel); expandIcon = new ArrowIcon(EAST, textLabel); } moreOrLessButton = new JButton(collapseIcon); moreOrLessButton.setContentAreaFilled(false); moreOrLessButton.setBorderPainted(false); moreOrLessButton.setMargin(new Insets(0, 0, 0, 0)); moreOrLessButton.addActionListener(this); String toolTip = Messages.BORDERED_COMPONENT_MORE_OR_LESS_BUTTON_TOOLTIP; moreOrLessButton.setToolTipText(toolTip); borderLabel.add(moreOrLessButton); borderLabel.setSize(borderLabel.getPreferredSize()); add(borderLabel); } else { border = new TitledBorder(text); } setBorder(new CompoundBorder(new FocusBorder(this), border)); } else { setBorder(new FocusBorder(this)); } if (comp != null) { add(comp); } }
public void setUseFlatUI(boolean b) { main.setContentAreaFilled(!b); main.setFocusPainted(!b); main.setBorderPainted(!b); main.setMargin(new Insets(1, 1, 1, 1)); popper.setContentAreaFilled(!b); popper.setFocusPainted(!b); popper.setBorderPainted(!b); popper.setMargin(new Insets(1, 1, 1, 1)); setBorder(BorderFactory.createEmptyBorder(1, 1, 1, 1)); setOpaque(false); MouseAdapter ma = new MouseAdapter() { public void mouseEntered(MouseEvent e) { main.setContentAreaFilled(true); main.setBackground(new Color(216, 240, 254)); // m.getMainButton().setForeground( Color.black ); setBorder(new LineBorder(new Color(200, 200, 200), 1)); setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); popper.setBackground(new Color(242, 242, 242)); popper.setContentAreaFilled(true); popper.setBorder(menu.getBorder()); } public void mouseExited(MouseEvent e) { main.setContentAreaFilled(false); // c.setForeground( Color.black ); setBorder(BorderFactory.createEmptyBorder(1, 1, 1, 1)); setCursor(Cursor.getDefaultCursor()); popper.setContentAreaFilled(false); popper.setBorder(null); } }; main.addMouseListener(ma); popper.addMouseListener(ma); }
public void setCommands(String[] names) { panel.removeAll(); panel.add(Box.createHorizontalGlue()); for (int i = 0; i < names.length; i++) { JButton b = new XButton(""); if (shownames) b.setText(names[i]); else b.setToolTipText(names[i]); b.setActionCommand(names[i]); b.addActionListener(this); b.setMargin(new InsetsUIResource(0, 6, 0, 6)); panel.add(b); if (i < names.length - 1) { if (isHorisontal()) { panel.add(Box.createHorizontalStrut(9)); } else { panel.add(Box.createVerticalStrut(5)); } } buttons.put(names[i], b); } setButtonsSize(); panel.validate(); }
private void initComponents() { setPreferredSize(new java.awt.Dimension(420, 65)); this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); JPanel buttonPanel = new JPanel(); buttonPanel.setLayout(new FlowLayout(FlowLayout.LEFT)); JPanel textPanel = new JPanel(); SpringLayout textLayout = new SpringLayout(); textPanel.setLayout(textLayout); this.add(buttonPanel); this.add(textPanel); // button area abortButton_ = new JButton(); abortButton_.setBackground(new java.awt.Color(255, 255, 255)); abortButton_.setIcon( new javax.swing.ImageIcon( getClass().getResource("/org/micromanager/icons/cancel.png"))); // NOI18N abortButton_.setToolTipText("Abort acquisition"); abortButton_.setFocusable(false); abortButton_.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); abortButton_.setMaximumSize(new java.awt.Dimension(30, 28)); abortButton_.setMinimumSize(new java.awt.Dimension(30, 28)); abortButton_.setPreferredSize(new java.awt.Dimension(30, 28)); abortButton_.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); abortButton_.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { try { JavaUtils.invokeRestrictedMethod(vad_, VirtualAcquisitionDisplay.class, "abort"); } catch (Exception ex) { ReportingUtils.showError( "Couldn't abort. Try pressing stop on Multi-Dimensional acquisition Window"); } } }); buttonPanel.add(abortButton_); pauseButton_ = new JButton(); pauseButton_.setIcon( new javax.swing.ImageIcon( getClass().getResource("/org/micromanager/icons/control_pause.png"))); // NOI18N pauseButton_.setToolTipText("Pause acquisition"); pauseButton_.setFocusable(false); pauseButton_.setMargin(new java.awt.Insets(0, 0, 0, 0)); pauseButton_.setMaximumSize(new java.awt.Dimension(30, 28)); pauseButton_.setMinimumSize(new java.awt.Dimension(30, 28)); pauseButton_.setPreferredSize(new java.awt.Dimension(30, 28)); pauseButton_.addActionListener( new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { try { JavaUtils.invokeRestrictedMethod(vad_, VirtualAcquisitionDisplay.class, "pause"); } catch (Exception ex) { ReportingUtils.showError("Couldn't pause"); } if (eng_.isPaused()) { pauseButton_.setIcon( new javax.swing.ImageIcon( getClass() .getResource("/org/micromanager/icons/resultset_next.png"))); // NOI18N } else { pauseButton_.setIcon( new javax.swing.ImageIcon( getClass() .getResource("/org/micromanager/icons/control_pause.png"))); // NOI18N } } }); buttonPanel.add(pauseButton_); gridXSpinner_ = new JSpinner(); gridXSpinner_.setModel(new SpinnerNumberModel(2, 1, 1000, 1)); gridXSpinner_.setPreferredSize(new Dimension(35, 24)); gridYSpinner_ = new JSpinner(); gridYSpinner_.setModel(new SpinnerNumberModel(2, 1, 1000, 1)); gridYSpinner_.setPreferredSize(new Dimension(35, 24)); gridXSpinner_.addChangeListener( new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { gridSizeChanged(); } }); gridYSpinner_.addChangeListener( new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { gridSizeChanged(); } }); final JLabel gridLabel = new JLabel(" grid"); final JLabel byLabel = new JLabel("by"); gridLabel.setEnabled(false); byLabel.setEnabled(false); gridXSpinner_.setEnabled(false); gridYSpinner_.setEnabled(false); final JButton createGridButton = new JButton("Create"); createGridButton.setEnabled(false); createGridButton.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { createGrid(); } }); newGridButton_ = new JToggleButton("New grid"); buttonPanel.add(new JLabel(" ")); buttonPanel.add(newGridButton_); newGridButton_.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (newGridButton_.isSelected()) { makeGridOverlay( vad_.getImagePlus().getWidth() / 2, vad_.getImagePlus().getHeight() / 2); newGridButton_.setText("Cancel"); gridLabel.setEnabled(true); byLabel.setEnabled(true); gridXSpinner_.setEnabled(true); gridYSpinner_.setEnabled(true); createGridButton.setEnabled(true); } else { vad_.getImagePlus().getOverlay().clear(); vad_.getImagePlus().getCanvas().repaint(); newGridButton_.setText("New grid"); gridLabel.setEnabled(false); byLabel.setEnabled(false); gridXSpinner_.setEnabled(false); gridYSpinner_.setEnabled(false); createGridButton.setEnabled(false); } } }); buttonPanel.add(gridXSpinner_); buttonPanel.add(byLabel); buttonPanel.add(gridYSpinner_); buttonPanel.add(gridLabel); buttonPanel.add(createGridButton); // text area zPosLabel_ = new JLabel("Z position: "); textPanel.add(zPosLabel_); timeStampLabel_ = new JLabel("Elapsed time: "); textPanel.add(timeStampLabel_); fpsField_ = new JTextField(); fpsField_.setText("7"); fpsField_.setToolTipText("Set the speed at which the acquisition is played back."); fpsField_.setPreferredSize(new Dimension(25, 18)); fpsField_.addFocusListener( new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { updateFPS(); } }); fpsField_.addKeyListener( new java.awt.event.KeyAdapter() { public void keyReleased(java.awt.event.KeyEvent evt) { updateFPS(); } }); JLabel fpsLabel = new JLabel("Animation playback FPS: "); textPanel.add(fpsLabel); textPanel.add(fpsField_); textLayout.putConstraint(SpringLayout.WEST, textPanel, 0, SpringLayout.WEST, zPosLabel_); textLayout.putConstraint( SpringLayout.EAST, zPosLabel_, 0, SpringLayout.WEST, timeStampLabel_); textLayout.putConstraint(SpringLayout.EAST, timeStampLabel_, 0, SpringLayout.WEST, fpsLabel); textLayout.putConstraint(SpringLayout.EAST, fpsLabel, 0, SpringLayout.WEST, fpsField_); textLayout.putConstraint(SpringLayout.EAST, fpsField_, 0, SpringLayout.EAST, textPanel); textLayout.putConstraint(SpringLayout.NORTH, fpsField_, 0, SpringLayout.NORTH, textPanel); textLayout.putConstraint(SpringLayout.NORTH, zPosLabel_, 3, SpringLayout.NORTH, textPanel); textLayout.putConstraint( SpringLayout.NORTH, timeStampLabel_, 3, SpringLayout.NORTH, textPanel); textLayout.putConstraint(SpringLayout.NORTH, fpsLabel, 3, SpringLayout.NORTH, textPanel); }
public JButton createImageButton(Action a) { JButton b = new JButton(a); b.setMargin(new Insets(0, 0, 0, 0)); return b; }
void jbInit() throws Exception { border1 = BorderFactory.createEmptyBorder(10, 10, 5, 5); panel1.setLayout(borderLayout1); jPanel1.setLayout(borderLayout2); jScrollPane1.getViewport().setBackground(Color.white); jPanel2.setLayout(gridBagLayout1); jLabel1.setText("Profile Name : "); nameTextField.setMinimumSize(new Dimension(4, 18)); nameTextField.setPreferredSize(new Dimension(63, 18)); jLabel2.setText("Profile Type : "); openButton.setMaximumSize(new Dimension(73, 24)); openButton.setMinimumSize(new Dimension(73, 24)); openButton.setPreferredSize(new Dimension(73, 24)); openButton.setText("Open"); openButton.addActionListener( new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { openButton_actionPerformed(e); } }); cancelButton.setMaximumSize(new Dimension(73, 24)); cancelButton.setMinimumSize(new Dimension(73, 24)); cancelButton.setPreferredSize(new Dimension(73, 24)); cancelButton.setMargin(new Insets(0, 5, 0, 5)); cancelButton.setText("Cancel"); cancelButton.addActionListener( new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { cancelButton_actionPerformed(e); } }); profileList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); profileList.addMouseListener( new java.awt.event.MouseAdapter() { public void mouseClicked(MouseEvent e) { profileList_mouseClicked(e); } }); jPanel2.setBorder(border1); typeComboBox.setMaximumSize(new Dimension(32767, 18)); typeComboBox.setMinimumSize(new Dimension(122, 18)); typeComboBox.setPreferredSize(new Dimension(176, 18)); getContentPane().add(panel1); panel1.add(jPanel1, BorderLayout.CENTER); jPanel1.add(jScrollPane1, BorderLayout.CENTER); panel1.add(jPanel2, BorderLayout.SOUTH); jPanel2.add( jLabel1, new GridBagConstraints( 0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 7, 0), 0, 0)); jPanel2.add( nameTextField, new GridBagConstraints( 1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 11, 7, 0), 0, 0)); jPanel2.add( jLabel2, new GridBagConstraints( 0, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 17, 0), 0, 0)); jScrollPane1.getViewport().add(profileList, null); jPanel2.add( openButton, new GridBagConstraints( 3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 11, 2, 10), 0, 0)); jPanel2.add( cancelButton, new GridBagConstraints( 3, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 11, 9, 10), 0, 0)); jPanel2.add( typeComboBox, new GridBagConstraints( 1, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 11, 17, 0), 0, 0)); }
/** * Creates the appropriate object to represent each of the objects in <code>buttons</code> and * adds it to <code>container</code>. This differs from addMessageComponents in that it will * recurse on <code>buttons</code> and that if button is not a Component it will create an * instance of JButton. */ protected void addButtonComponents(Container container, Object[] buttons, int initialIndex) { if (buttons != null && buttons.length > 0) { boolean sizeButtonsToSame = getSizeButtonsToSameWidth(); boolean createdAll = true; int numButtons = buttons.length; JButton[] createdButtons = null; int maxWidth = 0; if (sizeButtonsToSame) { createdButtons = new JButton[numButtons]; } for (int counter = 0; counter < numButtons; counter++) { Object button = buttons[counter]; Component newComponent; if (button instanceof Component) { createdAll = false; newComponent = (Component) button; container.add(newComponent); hasCustomComponents = true; } else { JButton aButton; if (button instanceof ButtonFactory) { aButton = ((ButtonFactory) button).createButton(); } else if (button instanceof Icon) aButton = new JButton((Icon) button); else aButton = new JButton(button.toString()); aButton.setName("OptionPane.button"); aButton.setMultiClickThreshhold( DefaultLookup.getInt(optionPane, this, "OptionPane.buttonClickThreshhold", 0)); configureButton(aButton); container.add(aButton); ActionListener buttonListener = createButtonActionListener(counter); if (buttonListener != null) { aButton.addActionListener(buttonListener); } newComponent = aButton; } if (sizeButtonsToSame && createdAll && (newComponent instanceof JButton)) { createdButtons[counter] = (JButton) newComponent; maxWidth = Math.max(maxWidth, newComponent.getMinimumSize().width); } if (counter == initialIndex) { initialFocusComponent = newComponent; if (initialFocusComponent instanceof JButton) { JButton defaultB = (JButton) initialFocusComponent; defaultB.addHierarchyListener( new HierarchyListener() { public void hierarchyChanged(HierarchyEvent e) { if ((e.getChangeFlags() & HierarchyEvent.PARENT_CHANGED) != 0) { JButton defaultButton = (JButton) e.getComponent(); JRootPane root = SwingUtilities.getRootPane(defaultButton); if (root != null) { root.setDefaultButton(defaultButton); } } } }); } } } ((ButtonAreaLayout) container.getLayout()) .setSyncAllWidths((sizeButtonsToSame && createdAll)); /* Set the padding, windows seems to use 8 if <= 2 components, otherwise 4 is used. It may actually just be the size of the buttons is always the same, not sure. */ if (DefaultLookup.getBoolean(optionPane, this, "OptionPane.setButtonMargin", true) && sizeButtonsToSame && createdAll) { JButton aButton; int padSize; padSize = (numButtons <= 2 ? 8 : 4); for (int counter = 0; counter < numButtons; counter++) { aButton = createdButtons[counter]; aButton.setMargin(new Insets(2, padSize, 2, padSize)); } } } }
public SearchManager2(JabRefFrame frame, SidePaneManager manager) { super(manager, GUIGlobals.getIconUrl("search"), Globals.lang("Search")); this.frame = frame; incSearcher = new IncrementalSearcher(Globals.prefs); // setBorder(BorderFactory.createMatteBorder(1,1,1,1,Color.magenta)); searchReq = new JCheckBoxMenuItem( Globals.lang("Search required fields"), Globals.prefs.getBoolean(JabRefPreferences.SEARCH_REQ)); searchOpt = new JCheckBoxMenuItem( Globals.lang("Search optional fields"), Globals.prefs.getBoolean(JabRefPreferences.SEARCH_OPT)); searchGen = new JCheckBoxMenuItem( Globals.lang("Search general fields"), Globals.prefs.getBoolean(JabRefPreferences.SEARCH_GEN)); searchAll = new JCheckBoxMenuItem( Globals.lang("Search all fields"), Globals.prefs.getBoolean(JabRefPreferences.SEARCH_ALL)); regExpSearch = new JCheckBoxMenuItem( Globals.lang("Use regular expressions"), Globals.prefs.getBoolean(JabRefPreferences.REG_EXP_SEARCH)); increment = new JRadioButton(Globals.lang("Incremental"), false); floatSearch = new JRadioButton(Globals.lang("Float"), true); hideSearch = new JRadioButton(Globals.lang("Filter"), true); showResultsInDialog = new JRadioButton(Globals.lang("Show results in dialog"), true); searchAllBases = new JRadioButton( Globals.lang("Global search"), Globals.prefs.getBoolean(JabRefPreferences.SEARCH_ALL_BASES)); ButtonGroup types = new ButtonGroup(); types.add(increment); types.add(floatSearch); types.add(hideSearch); types.add(showResultsInDialog); types.add(searchAllBases); select = new JCheckBoxMenuItem(Globals.lang("Select matches"), false); increment.setToolTipText(Globals.lang("Incremental search")); floatSearch.setToolTipText(Globals.lang("Gray out non-matching entries")); hideSearch.setToolTipText(Globals.lang("Hide non-matching entries")); showResultsInDialog.setToolTipText(Globals.lang("Show search results in a window")); // Add an item listener that makes sure we only listen for key events // when incremental search is turned on. increment.addItemListener(this); floatSearch.addItemListener(this); hideSearch.addItemListener(this); showResultsInDialog.addItemListener(this); // Add the global focus listener, so a menu item can see if this field was focused when // an action was called. searchField.addFocusListener(Globals.focusListener); if (searchAll.isSelected()) { searchReq.setEnabled(false); searchOpt.setEnabled(false); searchGen.setEnabled(false); } searchAll.addChangeListener( new ChangeListener() { @Override public void stateChanged(ChangeEvent event) { boolean state = !searchAll.isSelected(); searchReq.setEnabled(state); searchOpt.setEnabled(state); searchGen.setEnabled(state); } }); caseSensitive = new JCheckBoxMenuItem( Globals.lang("Case sensitive"), Globals.prefs.getBoolean(JabRefPreferences.CASE_SENSITIVE_SEARCH)); highLightWords = new JCheckBoxMenuItem( Globals.lang("Highlight Words"), Globals.prefs.getBoolean(JabRefPreferences.HIGH_LIGHT_WORDS)); searchAutoComplete = new JCheckBoxMenuItem( Globals.lang("Autocomplete names"), Globals.prefs.getBoolean(JabRefPreferences.SEARCH_AUTO_COMPLETE)); settings.add(select); // 2005.03.29, trying to remove field category searches, to simplify // search usability. // settings.addSeparator(); // settings.add(searchReq); // settings.add(searchOpt); // settings.add(searchGen); // settings.addSeparator(); // settings.add(searchAll); // --------------------------------------------------------------- settings.addSeparator(); settings.add(caseSensitive); settings.add(regExpSearch); settings.addSeparator(); settings.add(highLightWords); settings.addSeparator(); settings.add(searchAutoComplete); searchField.addActionListener(this); searchField.addCaretListener(this); search.addActionListener(this); searchField.addFocusListener( new FocusAdapter() { @Override public void focusGained(FocusEvent e) { if (increment.isSelected()) { searchField.setText(""); } } @Override public void focusLost(FocusEvent e) { incSearch = false; incSearchPos = -1; // Reset incremental // search. This makes the // incremental search reset // once the user moves focus to // somewhere else. if (increment.isSelected()) { // searchField.setText(""); // System.out.println("focuslistener"); } } }); escape.addActionListener(this); escape.setEnabled(false); // enabled after searching openset.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (settings.isVisible()) { // System.out.println("oee"); // settings.setVisible(false); } else { JButton src = (JButton) e.getSource(); settings.show(src, 0, openset.getHeight()); } } }); searchAutoComplete.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent actionEvent) { Globals.prefs.putBoolean( JabRefPreferences.SEARCH_AUTO_COMPLETE, searchAutoComplete.isSelected()); if (SearchManager2.this.frame.basePanel() != null) { SearchManager2.this.frame.basePanel().updateSearchManager(); } } }); Insets margin = new Insets(0, 2, 0, 2); // search.setMargin(margin); escape.setMargin(margin); openset.setMargin(margin); JButton help = new JButton(GUIGlobals.getImage("help")); int butSize = help.getIcon().getIconHeight() + 5; Dimension butDim = new Dimension(butSize, butSize); help.setPreferredSize(butDim); help.setMinimumSize(butDim); help.setMargin(margin); help.addActionListener(new HelpAction(Globals.helpDiag, GUIGlobals.searchHelp, "Help")); // Select the last used mode of search: if (Globals.prefs.getBoolean(JabRefPreferences.INCREMENT_S)) { increment.setSelected(true); } else if (Globals.prefs.getBoolean(JabRefPreferences.FLOAT_SEARCH)) { floatSearch.setSelected(true); } else if (Globals.prefs.getBoolean(JabRefPreferences.SHOW_SEARCH_IN_DIALOG)) { showResultsInDialog.setSelected(true); } else if (Globals.prefs.getBoolean(JabRefPreferences.SEARCH_ALL_BASES)) { searchAllBases.setSelected(true); } else { hideSearch.setSelected(true); } JPanel main = new JPanel(); GridBagLayout gbl = new GridBagLayout(); main.setLayout(gbl); GridBagConstraints con = new GridBagConstraints(); con.gridwidth = GridBagConstraints.REMAINDER; con.fill = GridBagConstraints.BOTH; con.weightx = 1; gbl.setConstraints(searchField, con); main.add(searchField); // con.gridwidth = 1; gbl.setConstraints(search, con); main.add(search); con.gridwidth = GridBagConstraints.REMAINDER; gbl.setConstraints(escape, con); main.add(escape); con.insets = new Insets(0, 2, 0, 0); gbl.setConstraints(increment, con); main.add(increment); gbl.setConstraints(floatSearch, con); main.add(floatSearch); gbl.setConstraints(hideSearch, con); main.add(hideSearch); gbl.setConstraints(showResultsInDialog, con); main.add(showResultsInDialog); gbl.setConstraints(searchAllBases, con); main.add(searchAllBases); con.insets = new Insets(0, 0, 0, 0); JPanel pan = new JPanel(); GridBagLayout gb = new GridBagLayout(); gbl.setConstraints(pan, con); pan.setLayout(gb); con.weightx = 1; con.gridwidth = 1; gb.setConstraints(openset, con); pan.add(openset); con.weightx = 0; gb.setConstraints(help, con); pan.add(help); main.add(pan); main.setBorder(BorderFactory.createEmptyBorder(1, 1, 1, 1)); setContentContainer(main); searchField.getInputMap().put(Globals.prefs.getKey("Repeat incremental search"), "repeat"); searchField .getActionMap() .put( "repeat", new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { if (increment.isSelected()) { repeatIncremental(); } } }); searchField.getInputMap().put(Globals.prefs.getKey("Clear search"), "escape"); searchField .getActionMap() .put( "escape", new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { hideAway(); // SearchManager2.this.actionPerformed(new ActionEvent(escape, 0, "")); } }); setSearchButtonSizes(); updateSearchButtonText(); }
public ListDataEventDemo() { super(new BorderLayout()); // Create and populate the list model. listModel = new DefaultListModel(); listModel.addElement("Whistler, Canada"); listModel.addElement("Jackson Hole, Wyoming"); listModel.addElement("Squaw Valley, California"); listModel.addElement("Telluride, Colorado"); listModel.addElement("Taos, New Mexico"); listModel.addElement("Snowbird, Utah"); listModel.addElement("Chamonix, France"); listModel.addElement("Banff, Canada"); listModel.addElement("Arapahoe Basin, Colorado"); listModel.addElement("Kirkwood, California"); listModel.addElement("Sun Valley, Idaho"); listModel.addListDataListener(new MyListDataListener()); // Create the list and put it in a scroll pane. list = new JList(listModel); list.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION); list.setSelectedIndex(0); list.addListSelectionListener(this); JScrollPane listScrollPane = new JScrollPane(list); // Create the list-modifying buttons. addButton = new JButton(addString); addButton.setActionCommand(addString); addButton.addActionListener(new AddButtonListener()); deleteButton = new JButton(deleteString); deleteButton.setActionCommand(deleteString); deleteButton.addActionListener(new DeleteButtonListener()); ImageIcon icon = createImageIcon("Up16"); if (icon != null) { upButton = new JButton(icon); upButton.setMargin(new Insets(0, 0, 0, 0)); } else { upButton = new JButton("Move up"); } upButton.setToolTipText("Move the currently selected list item higher."); upButton.setActionCommand(upString); upButton.addActionListener(new UpDownListener()); icon = createImageIcon("Down16"); if (icon != null) { downButton = new JButton(icon); downButton.setMargin(new Insets(0, 0, 0, 0)); } else { downButton = new JButton("Move down"); } downButton.setToolTipText("Move the currently selected list item lower."); downButton.setActionCommand(downString); downButton.addActionListener(new UpDownListener()); JPanel upDownPanel = new JPanel(new GridLayout(2, 1)); upDownPanel.add(upButton); upDownPanel.add(downButton); // Create the text field for entering new names. nameField = new JTextField(15); nameField.addActionListener(new AddButtonListener()); String name = listModel.getElementAt(list.getSelectedIndex()).toString(); nameField.setText(name); // Create a control panel, using the default FlowLayout. JPanel buttonPane = new JPanel(); buttonPane.add(nameField); buttonPane.add(addButton); buttonPane.add(deleteButton); buttonPane.add(upDownPanel); // Create the log for reporting list data events. log = new JTextArea(10, 20); JScrollPane logScrollPane = new JScrollPane(log); // Create a split pane for the log and the list. JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, listScrollPane, logScrollPane); splitPane.setResizeWeight(0.5); // Put everything together. add(buttonPane, BorderLayout.PAGE_START); add(splitPane, BorderLayout.CENTER); }
private Startpage(String title) { super(title); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); int frameWidth = 800; int frameHeight = 600; setSize(frameWidth, frameHeight); Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); int x = (d.width - getSize().width) / 2; int y = (d.height - getSize().height) / 2; setLocation(x, y); setResizable(false); this.setLayout(null); image = (BufferedImage) ImageManager.get("Background"); Container c = new Container() { @Override public void paint(Graphics g) { g.drawImage(image, 0, 0, null); super.paint(g); } }; c.setBackground(new Color(0, 0, 0, 0)); this.setContentPane(c); names[0] = new JTextField(); mode[0] = new JComboBox<>(); names[1] = new JTextField(); mode[1] = new JComboBox<>(); names[2] = new JTextField(); mode[2] = new JComboBox<>(); names[3] = new JTextField(); mode[3] = new JComboBox<>(); names[0].setBounds(25, 300, 150, 25); names[0].setFont(new Font("Consolas", Font.PLAIN, 12)); names[0].setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR)); names[0].setBackground(Color.WHITE); names[0].setToolTipText("Enter your name, program!"); names[0].addActionListener( (ActionEvent evt) -> { Configs.setPlayerName(names[0].getText(), 1); }); this.add(names[0]); mode[0].setBounds(25, 275, 150, 25); mode[0].addItem(PlayerStartConfig.MODE.TWOKEY); mode[0].addItem(PlayerStartConfig.MODE.FOURKEY); mode[0].addItem(PlayerStartConfig.MODE.BOT); this.add(mode[0]); names[1].setBounds(225, 300, 150, 25); names[1].setFont(new Font("Consolas", Font.PLAIN, 12)); names[1].setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR)); names[1].setBackground(Color.WHITE); names[1].setToolTipText("Enter your name, program!"); names[1].addActionListener( (ActionEvent evt) -> { Configs.setPlayerName(names[1].getText(), 2); }); this.add(names[1]); mode[1].setBounds(225, 275, 150, 25); mode[1].addItem(PlayerStartConfig.MODE.TWOKEY); mode[1].addItem(PlayerStartConfig.MODE.FOURKEY); mode[1].addItem(PlayerStartConfig.MODE.BOT); this.add(mode[1]); names[2].setBounds(425, 300, 150, 25); names[2].setFont(new Font("Consolas", Font.PLAIN, 12)); names[2].setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR)); names[2].setBackground(Color.WHITE); names[2].setToolTipText("Enter your name, program!"); names[2].addActionListener( (ActionEvent evt) -> { Configs.setPlayerName(names[2].getText(), 3); }); this.add(names[2]); mode[2].setBounds(425, 275, 150, 25); mode[2].addItem(PlayerStartConfig.MODE.TWOKEY); mode[2].addItem(PlayerStartConfig.MODE.FOURKEY); mode[2].addItem(PlayerStartConfig.MODE.BOT); this.add(mode[2]); names[3].setBounds(625, 300, 150, 25); names[3].setFont(new Font("Consolas", Font.PLAIN, 12)); names[3].setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR)); names[3].setBackground(Color.WHITE); names[3].setToolTipText("Enter your name, program!"); names[3].addActionListener( (ActionEvent evt) -> { Configs.setPlayerName(names[3].getText(), 4); }); this.add(names[3]); mode[3].setBounds(625, 275, 150, 25); mode[3].addItem(PlayerStartConfig.MODE.TWOKEY); mode[3].addItem(PlayerStartConfig.MODE.FOURKEY); mode[3].addItem(PlayerStartConfig.MODE.BOT); this.add(mode[3]); Ok.setBounds(300, 352, 75, 25); Ok.setText("Ok"); Ok.setMargin(new Insets(2, 2, 2, 2)); Ok.addActionListener( (ActionEvent evt) -> { for (int i = 0; i < 4; i++) { Configs.setPlayerName(names[i].getText(), i + 1); Configs.setControlMode((PlayerStartConfig.MODE) mode[i].getSelectedItem(), i + 1); } setVisible(false); Tron.getInstance().startGame(); }); this.add(Ok); Back.setBounds(425, 352, 75, 25); Back.setText("Back"); Back.setMargin(new Insets(2, 2, 2, 2)); Back.addActionListener( (ActionEvent evt) -> { MainMenue.getInstance().setVisible(true); setVisible(false); }); this.add(Back); TRON.setBounds(320, 50, 160, 90); TRON.setText("TRON"); TRON.setFont(new Font("Consolas", Font.BOLD, 72)); TRON.setForeground(Color.WHITE); this.add(TRON); setVisible(true); }
public JMovieControlAqua() { // Set the background color to the border color of the buttons. // This way the toolbar won't look too ugly when the buttons // are displayed before they have been loaded completely. // setBackground(new Color(118, 118, 118)); setBackground(Color.WHITE); Dimension buttonSize = new Dimension(16, 16); GridBagLayout gridbag = new GridBagLayout(); Insets margin = new Insets(0, 0, 0, 0); setLayout(gridbag); GridBagConstraints c; ResourceBundle labels = ResourceBundle.getBundle("org.monte.media.Labels"); colorCyclingButton = new JToggleButton(); colorCyclingButton.setToolTipText(labels.getString("colorCycling.toolTipText")); colorCyclingButton.addActionListener(this); colorCyclingButton.setPreferredSize(buttonSize); colorCyclingButton.setMinimumSize(buttonSize); colorCyclingButton.setVisible(false); colorCyclingButton.setMargin(margin); c = new GridBagConstraints(); // c.gridx = 0; // c.gridy = 0; gridbag.setConstraints(colorCyclingButton, c); add(colorCyclingButton); audioButton = new JToggleButton(); audioButton.setToolTipText(labels.getString("audio.toolTipText")); audioButton.addActionListener(this); audioButton.setPreferredSize(buttonSize); audioButton.setMinimumSize(buttonSize); audioButton.setVisible(false); audioButton.setMargin(margin); c = new GridBagConstraints(); // c.gridx = 0; // c.gridy = 0; gridbag.setConstraints(audioButton, c); add(audioButton); startButton = new JToggleButton(); startButton.setToolTipText(labels.getString("play.toolTipText")); startButton.addActionListener(this); startButton.setPreferredSize(buttonSize); startButton.setMinimumSize(buttonSize); startButton.setMargin(margin); c = new GridBagConstraints(); // c.gridx = 1; // c.gridy = 0; gridbag.setConstraints(startButton, c); add(startButton); slider = new JMovieSliderAqua(); c = new GridBagConstraints(); // c.gridx = 2; // c.gridy = 0; c.fill = GridBagConstraints.HORIZONTAL; c.weightx = 1.0; gridbag.setConstraints(slider, c); add(slider); rewindButton = new JButton(); rewindButton.setToolTipText(labels.getString("previous.toolTipText")); rewindButton.setPreferredSize(buttonSize); rewindButton.setMinimumSize(buttonSize); rewindButton.setMargin(margin); c = new GridBagConstraints(); // c.gridx = 3; // c.gridy = 0; gridbag.setConstraints(rewindButton, c); add(rewindButton); rewindButton.addActionListener(this); forwardButton = new JButton(); forwardButton.setToolTipText(labels.getString("next.toolTipText")); buttonSize = new Dimension(17, 16); forwardButton.setPreferredSize(buttonSize); forwardButton.setMinimumSize(buttonSize); forwardButton.setMargin(margin); c = new GridBagConstraints(); // c.gridx = 4; // c.gridy = 0; gridbag.setConstraints(forwardButton, c); add(forwardButton); forwardButton.addActionListener(this); // The spacer is used when the play controls are hidden spacer = new JPanel(new BorderLayout()); spacer.setVisible(false); spacer.setPreferredSize(new Dimension(16, 16)); spacer.setMinimumSize(new Dimension(16, 16)); spacer.setOpaque(false); c = new GridBagConstraints(); c.fill = GridBagConstraints.HORIZONTAL; c.weightx = 1.0; gridbag.setConstraints(spacer, c); add(spacer); Border border = new BackdropBorder( new ButtonStateBorder( new ImageBevelBorder( Images.createImage(getClass(), "images/Player.border.png"), new Insets(1, 1, 1, 1), new Insets(0, 4, 1, 4)), new ImageBevelBorder( Images.createImage(getClass(), "images/Player.borderP.png"), new Insets(1, 1, 1, 1), new Insets(0, 4, 1, 4)))); Border westBorder = new BackdropBorder( new ButtonStateBorder( new ImageBevelBorder( Images.createImage(getClass(), "images/Player.borderWest.png"), new Insets(1, 1, 1, 0), new Insets(0, 4, 1, 4)), new ImageBevelBorder( Images.createImage(getClass(), "images/Player.borderWestP.png"), new Insets(1, 1, 1, 0), new Insets(0, 4, 1, 4)))); startButton.setBorder(westBorder); colorCyclingButton.setBorder(westBorder); audioButton.setBorder(westBorder); rewindButton.setBorder(westBorder); forwardButton.setBorder(border); startButton.setUI((ButtonUI) CustomButtonUI.createUI(startButton)); colorCyclingButton.setUI((ButtonUI) CustomButtonUI.createUI(audioButton)); audioButton.setUI((ButtonUI) CustomButtonUI.createUI(audioButton)); rewindButton.setUI((ButtonUI) CustomButtonUI.createUI(rewindButton)); forwardButton.setUI((ButtonUI) CustomButtonUI.createUI(forwardButton)); colorCyclingButton.setIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStartColorCycling.png"))); colorCyclingButton.setSelectedIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStartColorCycling.png"))); colorCyclingButton.setDisabledIcon( new ImageIcon( Images.createImage(getClass(), "images/PlayerStartColorCycling.disabled.png"))); audioButton.setIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStartAudio.png"))); audioButton.setSelectedIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStopAudio.png"))); audioButton.setDisabledIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStartAudio.disabled.png"))); startButton.setIcon(new ImageIcon(Images.createImage(getClass(), "images/PlayerStart.png"))); startButton.setSelectedIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStop.png"))); startButton.setDisabledIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerStart.disabled.png"))); rewindButton.setIcon(new ImageIcon(Images.createImage(getClass(), "images/PlayerBack.png"))); rewindButton.setDisabledIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerBack.disabled.png"))); forwardButton.setIcon(new ImageIcon(Images.createImage(getClass(), "images/PlayerNext.png"))); forwardButton.setDisabledIcon( new ImageIcon(Images.createImage(getClass(), "images/PlayerNext.disabled.png"))); // Automatic scrolling scrollHandler = new ScrollHandler(); scrollTimer = new Timer(60, scrollHandler); scrollTimer.setInitialDelay(300); // default InitialDelay? forwardButton.addMouseListener(scrollHandler); rewindButton.addMouseListener(scrollHandler); }
public void installComponents(JFileChooser fc) { fc.setLayout(new BorderLayout(10, 10)); fc.setAlignmentX(JComponent.CENTER_ALIGNMENT); JPanel interior = new JPanel() { public Insets getInsets() { return insets; } }; align(interior); interior.setLayout(new BoxLayout(interior, BoxLayout.PAGE_AXIS)); fc.add(interior, BorderLayout.CENTER); // PENDING(jeff) - I18N JLabel l = new JLabel(pathLabelText); l.setDisplayedMnemonic(pathLabelMnemonic); align(l); interior.add(l); File currentDirectory = fc.getCurrentDirectory(); String curDirName = null; if (currentDirectory != null) { curDirName = currentDirectory.getPath(); } pathField = new JTextField(curDirName) { public Dimension getMaximumSize() { Dimension d = super.getMaximumSize(); d.height = getPreferredSize().height; return d; } }; l.setLabelFor(pathField); align(pathField); // Change to folder on return pathField.addActionListener(getUpdateAction()); interior.add(pathField); interior.add(Box.createRigidArea(vstrut10)); // CENTER: left, right accessory JPanel centerPanel = new JPanel(); centerPanel.setLayout(new BoxLayout(centerPanel, BoxLayout.LINE_AXIS)); align(centerPanel); // left panel - Filter & folderList JPanel leftPanel = new JPanel(); leftPanel.setLayout(new BoxLayout(leftPanel, BoxLayout.PAGE_AXIS)); align(leftPanel); // add the filter PENDING(jeff) - I18N l = new JLabel(filterLabelText); l.setDisplayedMnemonic(filterLabelMnemonic); align(l); leftPanel.add(l); filterComboBox = new JComboBox() { public Dimension getMaximumSize() { Dimension d = super.getMaximumSize(); d.height = getPreferredSize().height; return d; } }; l.setLabelFor(filterComboBox); filterComboBoxModel = createFilterComboBoxModel(); filterComboBox.setModel(filterComboBoxModel); filterComboBox.setRenderer(createFilterComboBoxRenderer()); fc.addPropertyChangeListener(filterComboBoxModel); align(filterComboBox); leftPanel.add(filterComboBox); // leftPanel.add(Box.createRigidArea(vstrut10)); // Add the Folder List PENDING(jeff) - I18N l = new JLabel(foldersLabelText); l.setDisplayedMnemonic(foldersLabelMnemonic); align(l); leftPanel.add(l); JScrollPane sp = createDirectoryList(); sp.getVerticalScrollBar().setFocusable(false); sp.getHorizontalScrollBar().setFocusable(false); l.setLabelFor(sp.getViewport().getView()); leftPanel.add(sp); // create files list JPanel rightPanel = new JPanel(); align(rightPanel); rightPanel.setLayout(new BoxLayout(rightPanel, BoxLayout.PAGE_AXIS)); l = new JLabel(filesLabelText); l.setDisplayedMnemonic(filesLabelMnemonic); align(l); rightPanel.add(l); sp = createFilesList(); l.setLabelFor(sp); rightPanel.add(sp); centerPanel.add(leftPanel); centerPanel.add(Box.createRigidArea(hstrut10)); centerPanel.add(rightPanel); JComponent accessoryPanel = getAccessoryPanel(); JComponent accessory = fc.getAccessory(); if (accessoryPanel != null) { if (accessory == null) { accessoryPanel.setPreferredSize(ZERO_ACC_SIZE); accessoryPanel.setMaximumSize(ZERO_ACC_SIZE); } else { getAccessoryPanel().add(accessory, BorderLayout.CENTER); accessoryPanel.setPreferredSize(PREF_ACC_SIZE); accessoryPanel.setMaximumSize(MAX_SIZE); } align(accessoryPanel); centerPanel.add(accessoryPanel); } interior.add(centerPanel); interior.add(Box.createRigidArea(vstrut10)); // add the filename field PENDING(jeff) - I18N l = new JLabel(enterFileNameLabelText); l.setDisplayedMnemonic(enterFileNameLabelMnemonic); align(l); interior.add(l); filenameTextField = new JTextField() { public Dimension getMaximumSize() { Dimension d = super.getMaximumSize(); d.height = getPreferredSize().height; return d; } }; l.setLabelFor(filenameTextField); filenameTextField.addActionListener(getApproveSelectionAction()); align(filenameTextField); filenameTextField.setAlignmentX(JComponent.LEFT_ALIGNMENT); interior.add(filenameTextField); bottomPanel = getBottomPanel(); bottomPanel.add(new JSeparator(), BorderLayout.NORTH); // Add buttons JPanel buttonPanel = new JPanel(); align(buttonPanel); buttonPanel.setLayout(new BoxLayout(buttonPanel, BoxLayout.LINE_AXIS)); buttonPanel.add(Box.createGlue()); approveButton = new JButton(getApproveButtonText(fc)) { public Dimension getMaximumSize() { return new Dimension(MAX_SIZE.width, this.getPreferredSize().height); } }; approveButton.setMnemonic(getApproveButtonMnemonic(fc)); approveButton.setToolTipText(getApproveButtonToolTipText(fc)); align(approveButton); approveButton.setMargin(buttonMargin); approveButton.addActionListener(getApproveSelectionAction()); buttonPanel.add(approveButton); buttonPanel.add(Box.createGlue()); JButton updateButton = new JButton(updateButtonText) { public Dimension getMaximumSize() { return new Dimension(MAX_SIZE.width, this.getPreferredSize().height); } }; updateButton.setMnemonic(updateButtonMnemonic); updateButton.setToolTipText(updateButtonToolTipText); align(updateButton); updateButton.setMargin(buttonMargin); updateButton.addActionListener(getUpdateAction()); buttonPanel.add(updateButton); buttonPanel.add(Box.createGlue()); JButton cancelButton = new JButton(cancelButtonText) { public Dimension getMaximumSize() { return new Dimension(MAX_SIZE.width, this.getPreferredSize().height); } }; cancelButton.setMnemonic(cancelButtonMnemonic); cancelButton.setToolTipText(cancelButtonToolTipText); align(cancelButton); cancelButton.setMargin(buttonMargin); cancelButton.addActionListener(getCancelSelectionAction()); buttonPanel.add(cancelButton); buttonPanel.add(Box.createGlue()); JButton helpButton = new JButton(helpButtonText) { public Dimension getMaximumSize() { return new Dimension(MAX_SIZE.width, this.getPreferredSize().height); } }; helpButton.setMnemonic(helpButtonMnemonic); helpButton.setToolTipText(helpButtonToolTipText); align(helpButton); helpButton.setMargin(buttonMargin); helpButton.setEnabled(false); buttonPanel.add(helpButton); buttonPanel.add(Box.createGlue()); bottomPanel.add(buttonPanel, BorderLayout.SOUTH); if (fc.getControlButtonsAreShown()) { fc.add(bottomPanel, BorderLayout.SOUTH); } }
public LogDateChooser(String label) { thisDialog = this; border = new EtchedBorder(); setBorder(border); Font f = new Font("Helvetica", Font.PLAIN, 10); title = new JLabel(label); add(title); setLayout(new DateLayout()); dfs = new DateFormatSymbols(); months = dfs.getMonths(); weekdays = dfs.getShortWeekdays(); for (int i = 0; i < 7; i++) { days[i] = new JLabel(weekdays[i + 1]); days[i].setFont(f); add(days[i]); } gc = new GregorianCalendar(); mDown = new JButton("<"); mDown.setMargin(new Insets(0, 0, 0, 0)); mDown.addActionListener(new MDownEar()); mDown.setBorderPainted(false); mDown.setFont(f); mDown.setForeground(Color.BLUE); add(mDown); mUp = new JButton(">"); mUp.setMargin(new Insets(0, 0, 0, 0)); mUp.addActionListener(new MUpEar()); mUp.setBorderPainted(false); mUp.setFont(f); mUp.setForeground(Color.BLUE); add(mUp); month = new JLabel(months[gc.get(Calendar.MONTH)]); month.setHorizontalAlignment(SwingConstants.CENTER); month.setFont(f); add(month); year = new JLabel(new Integer(gc.get(Calendar.YEAR)).toString()); year.setFont(f); add(year); yDown = new JButton("<"); yDown.setMargin(new Insets(0, 0, 0, 0)); yDown.addActionListener(new YDownEar()); yDown.setBorderPainted(false); yDown.setFont(f); yDown.setForeground(Color.BLUE); add(yDown); yUp = new JButton(">"); yUp.setMargin(new Insets(0, 0, 0, 0)); yUp.addActionListener(new YUpEar()); yUp.setBorderPainted(false); yUp.setFont(f); yUp.setForeground(Color.BLUE); add(yUp); // System.out.println(year.getText()); NumberEar numberEar = new NumberEar(); for (int i = 0; i < 31; i++) { number[i] = new JButton(new Integer(i + 1).toString()); number[i].setMargin(new Insets(0, 0, 0, 0)); number[i].addActionListener(numberEar); number[i].setBorderPainted(false); number[i].setContentAreaFilled(false); number[i].setFont(f); number[i].setForeground(Color.BLUE); add(number[i]); } number[0].setForeground(Color.CYAN); }
public Fenetre(String titre) { super(titre); // Gauche de l'application jp_gauche = new JPanel(); String nomJ1 = "Joueur 1"; // nomJ1 = JOptionPane.showInputDialog("Quel est votre nom de capitaine ?"); //(Chiant) nom_J1 = new JLabel(nomJ1); // grille J1 jp_grille1 = new JPanel(new GridLayout(10, 10)); tabbout1 = new JButton[10][10]; for (int i = 0; i < 10; i++) // ligne { for (int j = 0; j < 10; j++) // colonne { JButton boutton = new JButton(new ImageIcon("src/eau.png")); boutton.setMargin(m); jp_grille1.add(boutton); // boutton.addActionListener(ecouteur); tabbout1[i][j] = boutton; } } jp_gauche.add(nom_J1, BorderLayout.NORTH); jp_gauche.add(jp_grille1, BorderLayout.CENTER); // bas pour le J1 b_new = new JButton("Nouvelle partie"); jpg_bas = new JPanel(); jpg_bas.add(b_new); jb_sub = new JButton("Sous-marin"); jb_avion = new JButton("Porte-avion"); jb_cuir = new JButton("Cuirrassé"); this.al_sub = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (nbsub) { Partie.demande(submarin, J1); majgrid1(J1); nbsub = false; } else { JOptionPane.showMessageDialog( null, "Vous avez déjà placé votre sous-marin", "Erreur 005", JOptionPane.ERROR_MESSAGE); } } }; this.jb_sub.addActionListener(al_sub); this.al_cuir = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (nbcuir) { Partie.demande(battleship, J1); majgrid1(J1); nbcuir = false; } else { JOptionPane.showMessageDialog( null, "Vous avez déjà placé votre cuirrassé", "Erreur 004", JOptionPane.ERROR_MESSAGE); } } }; this.jb_cuir.addActionListener(al_cuir); this.al_avion = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { if (nbavion) { Partie.demande(aircraft, J1); majgrid1(J1); nbavion = false; } else { JOptionPane.showMessageDialog( null, "Vous avez déjà placé votre porte-avion", "Erreur 003", JOptionPane.ERROR_MESSAGE); } } }; this.jb_avion.addActionListener(al_avion); jb_sub.setVisible(false); jb_cuir.setVisible(false); jb_avion.setVisible(false); jpg_bas.add(jb_sub); jpg_bas.add(jb_cuir); jpg_bas.add(jb_avion); jp_gauche.add(jpg_bas, BorderLayout.SOUTH); // Droite de l'application jp_droite = new JPanel(); String nomJ2 = "Joueur 2"; nom_J2 = new JLabel(nomJ2); // Nom du joueur 2 à récupéré sur le serveur jp_droite.add(nom_J2); // grille J2 jp_grille2 = new JPanel(new GridLayout(10, 10)); tabbout2 = new JButton[10][10]; for (int i = 0; i < 10; i++) // ligne { for (int j = 0; j < 10; j++) // colonne { JButton boutton = new JButton(new ImageIcon("src/brouillard.png")); boutton.setMargin(m); jp_grille2.add(boutton); tabbout2[i][j] = boutton; } } jp_droite.add(nom_J2, BorderLayout.NORTH); jp_droite.add(jp_grille2, BorderLayout.SOUTH); // Mise en page this.add(jp_gauche, BorderLayout.WEST); this.add(jp_droite, BorderLayout.EAST); // bouton b_new commence une partie this.al_new = new ActionListener() { @Override public void actionPerformed(ActionEvent e) { jeu = new Partie(); J1 = new Player(); jb_sub.setVisible(true); jb_cuir.setVisible(true); jb_avion.setVisible(true); b_new.setVisible(false); nbavion = true; nbcuir = true; nbsub = true; } }; this.b_new.addActionListener(al_new); // algo // boolean test = true; // while(test){ // if( nbavion == false && nbcuir == false && nbsub == false && b_new.isVisible() == // false ) { // System.out.print("OUIIIIIIIII"); // while(P1.isDestroyed() || P2.isDestroyed()){ // if(P1 != game.getCurrentEnnemy()){ // String x = JOptionPane.showInputDialog("Sur quel ligne voulez vous // tirez ?"); // String y = JOptionPane.showInputDialog("Sur quel collonne voulez vous // tirez ?"); // int res = game.fire(Integer.parseInt(x),Integer.parseInt(y)); // //majgrid2(res); // game.nextTurn(); // } // else{ // game.waitt(); // game.nextTurn(); // } // } // // test = false; // } // else // { // System.out.print("CACA"); // } // } }
/** * Show the saved results on the server. * * @param mysettings jemboss settings * @param frameName title name for frame */ public ShowSavedResults(final JembossParams mysettings, final JFrame f) { this("Saved results list" + (Jemboss.withSoap ? " on server" : "")); try { final ResultList reslist = new ResultList(mysettings); JMenu resFileMenu = new JMenu("File"); resMenu.add(resFileMenu); final JCheckBoxMenuItem listByProgram = new JCheckBoxMenuItem("List by program"); listByProgram.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { listByProgramName(); } }); resFileMenu.add(listByProgram); JCheckBoxMenuItem listByDate = new JCheckBoxMenuItem("List by date", true); listByDate.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { listByDateRun(reslist, false); } }); resFileMenu.add(listByDate); ButtonGroup group = new ButtonGroup(); group.add(listByProgram); group.add(listByDate); JButton refresh = new JButton(rfii); refresh.setMargin(new Insets(0, 1, 0, 1)); refresh.setToolTipText("Refresh"); resMenu.add(refresh); refresh.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { try { setCursor(cbusy); ResultList newlist = new ResultList(mysettings); setCursor(cdone); if (newlist.getStatus().equals("0")) { reslist.updateRes(newlist.hash()); datasets.removeAllElements(); StringTokenizer tok = new StringTokenizer((String) reslist.get("list"), "\n"); while (tok.hasMoreTokens()) datasets.addElement(convertToPretty(tok.nextToken())); if (listByProgram.isSelected()) listByProgramName(); else listByDateRun(reslist, false); } else { JOptionPane.showMessageDialog( null, newlist.getStatusMsg(), "Soap Error", JOptionPane.ERROR_MESSAGE); } } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, f); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } }); resFileMenu.addSeparator(); JMenuItem resFileMenuExit = new JMenuItem("Close"); resFileMenuExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, ActionEvent.CTRL_MASK)); resFileMenuExit.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { dispose(); } }); resFileMenu.add(resFileMenuExit); setJMenuBar(resMenu); // this is the list of saved results listByDateRun(reslist, true); final JList st = new JList(datasets); st.setCellRenderer(new TabListCellRenderer()); st.addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { if (e.getValueIsAdjusting()) return; JList theList = (JList) e.getSource(); if (theList.isSelectionEmpty()) { System.out.println("Empty selection"); } else { int index = theList.getSelectedIndex(); String thisdata = convertToOriginal(datasets.elementAt(index)); aboutRes.setText((String) reslist.get(thisdata)); aboutRes.setCaretPosition(0); } } }); st.addMouseListener( new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) { try { setCursor(cbusy); String project = convertToOriginal(st.getSelectedValue()); ResultList thisres = new ResultList(mysettings, project, "show_saved_results"); new ShowResultSet(thisres.hash(), project, mysettings); setCursor(cdone); } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, f); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } } }); sp.add(st); // display retrieves all files and shows them in a window JPanel resButtonPanel = new JPanel(); JButton showResButton = new JButton("Display"); showResButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { String sel = convertToOriginal(st.getSelectedValue()); if (sel != null) { try { setCursor(cbusy); ResultList thisres = new ResultList(mysettings, sel, "show_saved_results"); if (thisres.hash().size() == 0) JOptionPane.showMessageDialog( sp, "This application launch '" + sel + "' didn't produce any result files."); else new ShowResultSet(thisres.hash(), sel, mysettings); setCursor(cdone); } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, f); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } else { statusField.setText("Nothing selected to be displayed."); } } }); // add a users note for that project JButton addNoteButton = new JButton("Edit Notes"); addNoteButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { String sel = convertToOriginal(st.getSelectedValue()); if (sel != null) { try { setCursor(cbusy); ResultList thisres = new ResultList(mysettings, sel, "Notes", "show_saved_results"); new ShowResultSet(thisres.hash(), sel, mysettings); setCursor(cdone); } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, f); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } else { statusField.setText("Selected a project!"); } } }); // delete removes the file on the server & edits the list JButton delResButton = new JButton("Delete"); delResButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { Object sel[] = st.getSelectedValues(); if (sel != null) { String selList = new String(""); JTextPane delList = new JTextPane(); FontMetrics fm = delList.getFontMetrics(delList.getFont()); int maxWidth = 0; for (int i = 0; i < sel.length; i++) { if (i == sel.length - 1) selList = selList.concat((String) sel[i]); else selList = selList.concat(sel[i] + "\n"); int width = fm.stringWidth((String) sel[i]); if (width > maxWidth) maxWidth = width; } int ok = JOptionPane.OK_OPTION; if (sel.length > 1) { JScrollPane scrollDel = new JScrollPane(delList); delList.setText(selList); delList.setEditable(false); delList.setCaretPosition(0); Dimension d1 = delList.getPreferredSize(); int maxHeight = (int) d1.getHeight() + 5; if (maxHeight > 350) maxHeight = 350; else if (maxHeight < 50) maxHeight = 50; scrollDel.setPreferredSize(new Dimension(maxWidth + 30, maxHeight)); ok = JOptionPane.showConfirmDialog( null, scrollDel, "Confirm Deletion", JOptionPane.YES_NO_OPTION); } if (ok == JOptionPane.OK_OPTION) { try // ask the server to delete these results { setCursor(cbusy); selList = convertToOriginal(selList); new ResultList(mysettings, selList, "delete_saved_results"); setCursor(cdone); // amend the list for (int i = 0; i < sel.length; i++) datasets.removeElement(sel[i]); statusField.setText("Deleted " + sel.length + " result(s)"); aboutRes.setText(""); st.setSelectedIndex(-1); } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, f); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } } else { statusField.setText("Nothing selected for deletion."); } } }); resButtonPanel.add(delResButton); resButtonPanel.add(addNoteButton); resButtonPanel.add(showResButton); resButtonStatus.add(resButtonPanel, BorderLayout.CENTER); resButtonStatus.add(statusField, BorderLayout.SOUTH); Container c = getContentPane(); c.add(ss, BorderLayout.WEST); c.add(aboutScroll, BorderLayout.CENTER); c.add(resButtonStatus, BorderLayout.SOUTH); pack(); setVisible(true); } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, f); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } }
/** * Show the results sent to a batch queue. * * @param mysettings jemboss settings * @param epr pending results * @throws JembossSoapException when server connection fails */ public ShowSavedResults(final JembossParams mysettings, final PendingResults epr) throws JembossSoapException { this("Current Sessions Results"); Dimension d = new Dimension(270, 100); ss.setPreferredSize(d); // ss.setMaximumSize(d); JMenu resFileMenu = new JMenu("File"); resMenu.add(resFileMenu); JButton refresh = new JButton(rfii); refresh.setMargin(new Insets(0, 1, 0, 1)); refresh.setToolTipText("Refresh"); resMenu.add(refresh); refresh.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { setCursor(cbusy); epr.updateStatus(); setCursor(cdone); datasets.removeAllElements(); Enumeration enumer = epr.descriptionHash().keys(); while (enumer.hasMoreElements()) { String image = convertToPretty((String) enumer.nextElement()); datasets.addElement(image); } } }); JMenuItem resFileMenuExit = new JMenuItem("Close"); resFileMenuExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, ActionEvent.CTRL_MASK)); resFileMenuExit.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { dispose(); } }); resFileMenu.add(resFileMenuExit); setJMenuBar(resMenu); // set up the results list in the gui Enumeration enumer = epr.descriptionHash().keys(); while (enumer.hasMoreElements()) datasets.addElement(convertToPretty((String) enumer.nextElement())); final JList st = new JList(datasets); st.setCellRenderer(new TabListCellRenderer()); st.addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { if (e.getValueIsAdjusting()) return; JList theList = (JList) e.getSource(); if (!theList.isSelectionEmpty()) { int index = theList.getSelectedIndex(); String thisdata = convertToOriginal(datasets.elementAt(index)); aboutRes.setText((String) epr.descriptionHash().get(thisdata)); aboutRes.setCaretPosition(0); aboutRes.setEditable(false); } } }); st.addMouseListener( new MouseAdapter() { public void mouseClicked(MouseEvent e) { if (e.getClickCount() == 2) { try { setCursor(cbusy); String project = convertToOriginal(st.getSelectedValue()); ResultList thisres = new ResultList(mysettings, project, "show_saved_results"); setCursor(cdone); if (thisres.getStatus().equals("0")) new ShowResultSet(thisres.hash(), project, mysettings); else JOptionPane.showMessageDialog( null, thisres.getStatusMsg(), "Soap Error", JOptionPane.ERROR_MESSAGE); } catch (JembossSoapException eae) { AuthPopup ap = new AuthPopup(mysettings, null); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } } }); sp.add(st); // display retrieves all the files and shows them in a window JPanel resButtonPanel = new JPanel(); JButton showResButton = new JButton("Display"); showResButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { if (st.getSelectedValue() != null) { try { setCursor(cbusy); String project = convertToOriginal(st.getSelectedValue()); ResultList thisres = new ResultList(mysettings, project, "show_saved_results"); setCursor(cdone); if (thisres.getStatus().equals("0")) new ShowResultSet(thisres.hash(), project, mysettings); else JOptionPane.showMessageDialog( null, thisres.getStatusMsg(), "Soap Error", JOptionPane.ERROR_MESSAGE); } catch (JembossSoapException eae) { setCursor(cdone); AuthPopup ap = new AuthPopup(mysettings, null); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } } }); // delete removes the file on the server and edits the list JButton delResButton = new JButton("Delete"); delResButton.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { Object sel[] = st.getSelectedValues(); if (sel != null) { String selList = new String(""); for (int i = 0; i < sel.length; i++) selList = selList.concat(sel[i] + "\n"); int ok = JOptionPane.OK_OPTION; if (sel.length > 1) ok = JOptionPane.showConfirmDialog( null, "Delete the following results:\n" + selList, "Confirm Deletion", JOptionPane.YES_NO_OPTION); if (ok == JOptionPane.OK_OPTION) { try { setCursor(cbusy); selList = convertToOriginal(selList); new ResultList(mysettings, selList, "delete_saved_results"); setCursor(cdone); for (int i = 0; i < sel.length; i++) { JembossProcess jp = epr.getResult(convertToOriginal(sel[i])); epr.removeResult(jp); datasets.removeElement(sel[i]); // amend the list } statusField.setText("Deleted " + sel.length + " result(s)"); aboutRes.setText(""); st.setSelectedIndex(-1); } catch (JembossSoapException eae) { // shouldn't happen AuthPopup ap = new AuthPopup(mysettings, null); ap.setBottomPanel(); ap.setSize(380, 170); ap.pack(); ap.setVisible(true); } } } } }); resButtonPanel.add(delResButton); resButtonPanel.add(showResButton); resButtonStatus.add(resButtonPanel, BorderLayout.CENTER); resButtonStatus.add(statusField, BorderLayout.SOUTH); Container c = getContentPane(); c.add(ss, BorderLayout.WEST); c.add(aboutScroll, BorderLayout.CENTER); c.add(resButtonStatus, BorderLayout.SOUTH); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); pack(); setVisible(true); // add in automatic updates String freq = (String) AdvancedOptions.jobMgr.getSelectedItem(); int ind = freq.indexOf(" "); new ResultsUpdateTimer(Integer.parseInt(freq.substring(0, ind)), datasets, this); statusField.setText("Window refresh rate " + freq); }