List of usage examples for javax.swing.border TitledBorder TitledBorder
public TitledBorder(Border border, String title)
From source file:SwingDnDTest.java
public SwingDnDFrame() { setTitle("SwingDnDTest"); JTabbedPane tabbedPane = new JTabbedPane(); JList list = SampleComponents.list(); tabbedPane.addTab("List", list); JTable table = SampleComponents.table(); tabbedPane.addTab("Table", table); JTree tree = SampleComponents.tree(); tabbedPane.addTab("Tree", tree); JFileChooser fileChooser = new JFileChooser(); tabbedPane.addTab("File Chooser", fileChooser); JColorChooser colorChooser = new JColorChooser(); tabbedPane.addTab("Color Chooser", colorChooser); final JTextArea textArea = new JTextArea(4, 40); JScrollPane scrollPane = new JScrollPane(textArea); scrollPane.setBorder(new TitledBorder(new EtchedBorder(), "Drag text here")); JTextField textField = new JTextField("Drag color here"); textField.setTransferHandler(new TransferHandler("background")); tabbedPane.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent e) { textArea.setText(""); }/* ww w . ja v a 2s .c om*/ }); tree.setDragEnabled(true); table.setDragEnabled(true); list.setDragEnabled(true); fileChooser.setDragEnabled(true); colorChooser.setDragEnabled(true); textField.setDragEnabled(true); add(tabbedPane, BorderLayout.NORTH); add(scrollPane, BorderLayout.CENTER); add(textField, BorderLayout.SOUTH); pack(); }
From source file:MemoryMonitor.java
public MemoryMonitor() { setLayout(new BorderLayout()); setBorder(new TitledBorder(new EtchedBorder(), "Memory Monitor")); add(surf = new Surface()); controls = new JPanel(); controls.setPreferredSize(new Dimension(135, 80)); Font font = new Font("serif", Font.PLAIN, 10); JLabel label = new JLabel("Sample Rate"); label.setFont(font);/* w w w . j a v a2 s .c o m*/ label.setForeground(Color.red); controls.add(label); tf = new JTextField("1000"); tf.setPreferredSize(new Dimension(45, 20)); controls.add(tf); controls.add(label = new JLabel("ms")); label.setFont(font); label.setForeground(Color.red); controls.add(dateStampCB); dateStampCB.setFont(font); addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent e) { removeAll(); if ((doControls = !doControls)) { surf.stop(); add(controls); } else { try { surf.sleepAmount = Long.parseLong(tf.getText().trim()); } catch (Exception ex) { } surf.start(); add(surf); } validate(); repaint(); } }); }
From source file:net.daboross.outputtablesclient.gui.OutputInterface.java
private void createTable(String tableKey) { String displayName = application.getOutput().getNameTable().get(tableKey); if (displayName == null) { Output.logError("Warning! No known display name for table %s", tableKey); displayName = tableKey;//from w w w .j ava2s. co m } JPanel tablePanel = new JPanel(new WrapLayout()); Border lineBorder = new LineBorder(new Color(0, 0, 0)); TitledBorder titleBorder = new TitledBorder(lineBorder, displayName); tableKeyToTableTitledBoarder.put(tableKey, titleBorder); Border spaceBorder = new EmptyBorder(5, 5, 5, 5); Border compoundBorder = new CompoundBorder(titleBorder, spaceBorder); tablePanel.setBorder(compoundBorder); tableKeyToTablePanel.put(tableKey, tablePanel); JToggleButton toggleButton = new JToggleButton(displayName); TableToggleListener listener = new TableToggleListener(toggleButton, tableKey); toggleButton.addItemListener(listener); listener.initialAdd(); tableKeyToTableButton.put(tableKey, toggleButton); toggleButtonPanel.removeAll(); for (JToggleButton button : tableKeyToTableButton.values()) { toggleButtonPanel.add(button, toggleButtonConstraints); } tableKeyAndKeyToValuePanel.put(tableKey, new HashMap<>()); tableKeyAndKeyToValueLabel.put(tableKey, new HashMap<>()); }
From source file:es.emergya.ui.gis.popups.SDSDialog.java
public SDSDialog(Recurso r) { super();/*w w w . ja v a 2s . c o m*/ setAlwaysOnTop(true); setResizable(false); iconTransparente = LogicConstants.getIcon("48x48_transparente"); iconEnviando = LogicConstants.getIcon("anim_enviando"); destino = r; setDefaultCloseOperation(DO_NOTHING_ON_CLOSE); addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { super.windowClosing(e); cancel.doClick(); } }); // setPreferredSize(new Dimension(400, 150)); setTitle(i18n.getString("window.sds.titleBar") + " " + r.getIdentificador()); try { setIconImage(((BasicWindow) GoClassLoader.getGoClassLoader().load(BasicWindow.class)).getFrame() .getIconImage()); } catch (Throwable e) { LOG.error("There is no icon image", e); } JPanel base = new JPanel(); base.setBackground(Color.WHITE); base.setLayout(new BoxLayout(base, BoxLayout.Y_AXIS)); // Icono del titulo JPanel title = new JPanel(new FlowLayout(FlowLayout.LEADING)); final JLabel titleLabel = new JLabel(i18n.getString("window.sds.title"), LogicConstants.getIcon("tittleventana_icon_enviarsds"), JLabel.LEFT); titleLabel.setFont(LogicConstants.deriveBoldFont(12f)); title.add(titleLabel); title.setOpaque(false); base.add(title); // Espacio para el mensaje sds = new JTextArea(7, 40); sds.setLineWrap(true); final JScrollPane sdsp = new JScrollPane(sds); sdsp.setOpaque(false); sdsp.setBorder(new TitledBorder(BorderFactory.createLineBorder(Color.BLACK), i18n.getString("Admin.message") + "\t (0/" + maxChars + ")")); sds.setDocument(new PlainDocument() { @Override public void insertString(int offs, String str, AttributeSet a) throws BadLocationException { if (this.getLength() + str.length() <= maxChars) { super.insertString(offs, str, a); } } }); sds.getDocument().addDocumentListener(new DocumentListener() { @Override public void removeUpdate(DocumentEvent e) { updateChars(e); } @Override public void insertUpdate(DocumentEvent e) { updateChars(e); } @Override public void changedUpdate(DocumentEvent e) { updateChars(e); } private void updateChars(DocumentEvent e) { ((TitledBorder) sdsp.getBorder()).setTitle( i18n.getString("Admin.message") + "\t (" + sds.getText().length() + "/" + maxChars + ")"); sdsp.repaint(); send.setEnabled(!sds.getText().isEmpty()); notification.setForeground(Color.WHITE); notification.setText("PLACEHOLDER"); } }); base.add(sdsp); // Area para mensajes JPanel notificationArea = new JPanel(); notificationArea.setOpaque(false); notification = new JLabel("TEXT"); notification.setForeground(Color.WHITE); notificationArea.add(notification); base.add(notificationArea); JPanel buttons = new JPanel(); buttons.setOpaque(false); buttons.setLayout(new BoxLayout(buttons, BoxLayout.X_AXIS)); send = new JButton(i18n.getString("Buttons.send"), LogicConstants.getIcon("ventanacontextual_button_enviarsds")); send.addActionListener(this); send.setEnabled(false); buttons.add(send); buttons.add(Box.createHorizontalGlue()); progressIcon = new JLabel(iconTransparente); buttons.add(progressIcon); buttons.add(Box.createHorizontalGlue()); cancel = new JButton(i18n.getString("Buttons.cancel"), LogicConstants.getIcon("button_cancel")); cancel.addActionListener(this); buttons.add(cancel); base.add(buttons); getContentPane().add(base); pack(); int x; int y; Container myParent; try { myParent = ((BasicWindow) GoClassLoader.getGoClassLoader().load(BasicWindow.class)).getFrame() .getContentPane(); java.awt.Point topLeft = myParent.getLocationOnScreen(); Dimension parentSize = myParent.getSize(); Dimension mySize = getSize(); if (parentSize.width > mySize.width) x = ((parentSize.width - mySize.width) / 2) + topLeft.x; else x = topLeft.x; if (parentSize.height > mySize.height) y = ((parentSize.height - mySize.height) / 2) + topLeft.y; else y = topLeft.y; setLocation(x, y); } catch (Throwable e1) { LOG.error("There is no basic window!", e1); } this.addWindowListener(new WindowAdapter() { @Override public void windowOpened(WindowEvent arg0) { deleteErrorMessage(); } @Override public void windowClosed(WindowEvent arg0) { deleteErrorMessage(); } private void deleteErrorMessage() { SwingWorker<Object, Object> sw = new SwingWorker<Object, Object>() { @Override protected Object doInBackground() throws Exception { if (bandejaSalida != null) { MessageGenerator.remove(bandejaSalida.getId()); } bandejaSalida = null; return null; } @Override protected void done() { super.done(); SDSDialog.this.sds.setText(""); SDSDialog.this.sds.setEnabled(true); SDSDialog.this.sds.repaint(); SDSDialog.this.progressIcon.setIcon(iconTransparente); SDSDialog.this.progressIcon.repaint(); SDSDialog.this.notification.setText(""); SDSDialog.this.notification.repaint(); } }; sw.execute(); } }); }
From source file:br.org.acessobrasil.ases.ferramentas_de_reparo.vista.corretor_eventos.PanelCorretorEventos.java
/** * Cria uma borda com ttulo dentro dos padres * //from w ww. j a v a 2s .co m * @param titulo * @return */ private Border criaBorda(String titulo) { Border bordaLinhaPreta = BorderFactory.createLineBorder(new Color(0, 0, 0), 1); Border borda = BorderFactory.createCompoundBorder(BorderFactory.createEmptyBorder(5, 5, 10, 5), new TitledBorder(bordaLinhaPreta, titulo)); Border bordaFinal = BorderFactory.createCompoundBorder(borda, BorderFactory.createEmptyBorder(0, 4, 4, 5)); return bordaFinal; }
From source file:net.openbyte.gui.WelcomeFrame.java
private void initComponents() { // JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents // Generated using JFormDesigner Evaluation license - Gary Lee scrollPane1 = new JScrollPane(); list1 = new JList(); button1 = new JButton(); label2 = new JLabel(); button2 = new JButton(); button3 = new JButton(); button4 = new JButton(); button5 = new JButton(); scrollPane2 = new JScrollPane(); xImagePanel1 = new JXImagePanel(); button6 = new JButton(); button7 = new JButton(); button8 = new JButton(); //======== this ======== setTitle("Welcome to OpenByte"); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); setResizable(false);/*w w w .j a va 2 s .c o m*/ Container contentPane = getContentPane(); contentPane.setLayout(null); //======== scrollPane1 ======== { scrollPane1.setBorder(new TitledBorder(LineBorder.createGrayLineBorder(), "Recent Projects")); //---- list1 ---- list1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); list1.setBackground(new Color(240, 240, 240)); list1.addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { list1ValueChanged(e); } }); scrollPane1.setViewportView(list1); } contentPane.add(scrollPane1); scrollPane1.setBounds(15, 10, 165, 340); //---- button1 ---- button1.setText("Open Project"); button1.setEnabled(false); button1.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button1ActionPerformed(e); } }); contentPane.add(button1); button1.setBounds(105, 355, 110, button1.getPreferredSize().height); //---- label2 ---- label2.setText("Media"); contentPane.add(label2); label2.setBounds(new Rectangle(new Point(605, 210), label2.getPreferredSize())); //---- button2 ---- button2.setText("Minecraft Forums"); button2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button2ActionPerformed(e); } }); contentPane.add(button2); button2.setBounds(500, 230, 151, button2.getPreferredSize().height); //---- button3 ---- button3.setText("GitHub"); button3.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button3ActionPerformed(e); } }); contentPane.add(button3); button3.setBounds(500, 260, 150, button3.getPreferredSize().height); //---- button4 ---- button4.setText("+"); button4.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button4ActionPerformed(e); } }); contentPane.add(button4); button4.setBounds(15, 355, 45, button4.getPreferredSize().height); //---- button5 ---- button5.setText("-"); button5.setEnabled(false); button5.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button5ActionPerformed(e); } }); contentPane.add(button5); button5.setBounds(60, 355, 40, button5.getPreferredSize().height); //======== scrollPane2 ======== { scrollPane2.setBorder(null); scrollPane2.setViewportView(xImagePanel1); } contentPane.add(scrollPane2); scrollPane2.setBounds(210, 25, 445, 160); //---- button6 ---- button6.setText("Preferences"); button6.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button6ActionPerformed(e); } }); contentPane.add(button6); button6.setBounds(500, 290, 150, 30); //---- button7 ---- button7.setText("About"); button7.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button7ActionPerformed(e); } }); contentPane.add(button7); button7.setBounds(500, 320, 150, 30); //---- button8 ---- button8.setText("Plugins"); button8.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { button8ActionPerformed(e); } }); contentPane.add(button8); button8.setBounds(500, 350, 150, 30); { // compute preferred size Dimension preferredSize = new Dimension(); for (int i = 0; i < contentPane.getComponentCount(); i++) { Rectangle bounds = contentPane.getComponent(i).getBounds(); preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width); preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height); } Insets insets = contentPane.getInsets(); preferredSize.width += insets.right; preferredSize.height += insets.bottom; contentPane.setMinimumSize(preferredSize); contentPane.setPreferredSize(preferredSize); } setSize(675, 425); setLocationRelativeTo(getOwner()); // JFormDesigner - End of component initialization //GEN-END:initComponents }
From source file:dk.dma.epd.common.prototype.gui.route.RoutePropertiesDialogCommon.java
/** * Initializes the user interface//from w ww . j a v a 2 s. co m */ private void initGui() { Insets insets1 = new Insets(5, 5, 0, 5); Insets insets2 = new Insets(5, 25, 0, 5); Insets insets3 = new Insets(5, 5, 0, 0); Insets insets4 = new Insets(5, 0, 0, 5); Insets insets5 = new Insets(5, 5, 5, 5); Insets insets6 = new Insets(5, 25, 5, 5); Insets insets10 = new Insets(10, 10, 10, 10); JPanel content = new JPanel(new GridBagLayout()); getContentPane().add(content); // ******************************** // ** Route properties panel // ******************************** JPanel routeProps = new JPanel(new GridBagLayout()); routeProps.setBorder(new TitledBorder(new LineBorder(Color.black), "Route Properties")); content.add(routeProps, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, WEST, NONE, insets10, 0, 0)); // Auto-completion List<String> strings = new ArrayList<>(); strings.add("Copenhagen"); strings.add("Oslo"); AutoCompleteDecorator.decorate(originTxT, strings, false); AutoCompleteDecorator.decorate(destinationTxT, strings, false); // Column 1 widgets int gridY = 0; nameTxT.setEditable(!readOnlyRoute); nameTxT.getDocument().addDocumentListener(new TextFieldChangeListener(nameTxT)); routeProps.add(new JLabel("Name:"), new GridBagConstraints(0, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); routeProps.add(fixSize(nameTxT, 120), new GridBagConstraints(1, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); originTxT.setEditable(!readOnlyRoute); originTxT.getDocument().addDocumentListener(new TextFieldChangeListener(originTxT)); routeProps.add(new JLabel("Origin:"), new GridBagConstraints(0, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); routeProps.add(fixSize(originTxT, 120), new GridBagConstraints(1, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); destinationTxT.setEnabled(!readOnlyRoute); destinationTxT.getDocument().addDocumentListener(new TextFieldChangeListener(destinationTxT)); routeProps.add(new JLabel("Destination:"), new GridBagConstraints(0, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); routeProps.add(fixSize(destinationTxT, 120), new GridBagConstraints(1, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); distanceTxT.setEditable(false); routeProps.add(new JLabel("Total Distance:"), new GridBagConstraints(0, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); routeProps.add(fixSize(distanceTxT, 120), new GridBagConstraints(1, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); // Column 2 widgets gridY = 0; int h = (int) departurePicker.getPreferredSize().getHeight(); initDatePicker(departurePicker, departureSpinner); routeProps.add(new JLabel("Estimated Time of Departure:"), new GridBagConstraints(2, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets2, 0, 0)); routeProps.add(fixSize(departurePicker, 120), new GridBagConstraints(3, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets3, 0, 0)); routeProps.add(fixSize(departureSpinner, 60, h), new GridBagConstraints(4, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets4, 0, 0)); initDatePicker(arrivalPicker, arrivalSpinner); routeProps.add(new JLabel("Estimated Time of Arrival:"), new GridBagConstraints(2, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets2, 0, 0)); routeProps.add(fixSize(arrivalPicker, 120), new GridBagConstraints(3, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets3, 0, 0)); routeProps.add(fixSize(arrivalSpinner, 60, h), new GridBagConstraints(4, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets4, 0, 0)); inrouteTxT.setEditable(false); routeProps.add(new JLabel("Estimated Time in-route:"), new GridBagConstraints(2, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets2, 0, 0)); routeProps.add(fixSize(inrouteTxT, 180), new GridBagConstraints(3, gridY++, 2, 1, 0.0, 0.0, WEST, NONE, insets1, 0, 0)); etaCalculationTime.setEnabled(!readOnlyRoute); etaCalculationTime.addActionListener(this); routeProps.add(new JLabel("Calculate TTG/ETA using:"), new GridBagConstraints(2, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets6, 0, 0)); routeProps.add(fixSize(etaCalculationTime, 180), new GridBagConstraints(3, gridY++, 2, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); allSpeeds.setEnabled(!readOnlyRoute); allSpeedsBtn.setEnabled(!readOnlyRoute); routeProps.add(new JLabel("Speed all legs: "), new GridBagConstraints(2, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets2, 0, 0)); routeProps.add(fixSize(allSpeeds, 60), new GridBagConstraints(3, gridY, 1, 1, 0.0, 0.0, WEST, NONE, insets3, 0, 0)); routeProps.add(fixSize(allSpeedsBtn, 60, h), new GridBagConstraints(4, gridY++, 1, 1, 0.0, 0.0, WEST, NONE, insets4, 0, 0)); routeProps.add(new JLabel(""), new GridBagConstraints(5, 0, 1, 1, 1.0, 0.0, WEST, HORIZONTAL, insets2, 0, 0)); // ******************************** // ** Route detail panel // ******************************** routeTableModel = createRouteTableModel(); routeDetailTable = new DeltaTable(routeTableModel, DELTA_START_COL_INDEX); routeDetailTable.setTableFont(routeDetailTable.getTableFont().deriveFont(10.0f)); routeDetailTable.setNonEditableBgColor(UIManager.getColor("Table.background").darker().darker()); routeDetailTable.addListSelectionListener(this); // Set the minimum column widths for (int x = 0; x < COL_MIN_WIDTHS.length; x++) { routeDetailTable.getColumn(x).setMinWidth(COL_MIN_WIDTHS[x]); } // Configure lock column routeDetailTable.fixColumnWidth(0, COL_MIN_WIDTHS[0]); routeDetailTable.getColumn(0).setCellRenderer(new LockTableCell.CustomBooleanCellRenderer()); routeDetailTable.getColumn(0).setCellEditor(new LockTableCell.CustomBooleanCellEditor()); // Configure ETA column routeDetailTable.getColumn(7).setCellEditor(new EtaEditor()); // Configure heading column JComboBox<Heading> headingCombo = new JComboBox<>(Heading.values()); headingCombo.setFont(headingCombo.getFont().deriveFont(10.0f)); routeDetailTable.getColumn(10).setCellEditor(new DefaultCellEditor(headingCombo)); JPanel routeTablePanel = new JPanel(new BorderLayout()); routeTablePanel.add(routeDetailTable, BorderLayout.CENTER); routeTablePanel.setBorder(new TitledBorder(new LineBorder(Color.black), "Route Details")); content.add(routeTablePanel, new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0, NORTHWEST, BOTH, insets10, 0, 0)); // ******************************** // ** Button panel // ******************************** JPanel btnPanel = new JPanel(new GridBagLayout()); content.add(btnPanel, new GridBagConstraints(0, 2, 1, 1, 1.0, 0.0, NORTHWEST, HORIZONTAL, insets10, 0, 0)); btnZoomToRoute.addActionListener(this); btnZoomToWp.addActionListener(this); btnDelete.addActionListener(this); btnActivate.addActionListener(this); btnClose.addActionListener(this); cbVisible.addActionListener(this); allSpeedsBtn.addActionListener(this); getRootPane().setDefaultButton(btnClose); btnPanel.add(btnZoomToRoute, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); btnPanel.add(btnZoomToWp, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); btnPanel.add(btnDelete, new GridBagConstraints(2, 0, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); btnPanel.add(btnActivate, new GridBagConstraints(3, 0, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); btnPanel.add(cbVisible, new GridBagConstraints(4, 0, 1, 1, 0.0, 0.0, WEST, NONE, insets5, 0, 0)); btnPanel.add(btnClose, new GridBagConstraints(5, 0, 1, 1, 1.0, 0.0, EAST, NONE, insets5, 0, 0)); }
From source file:net.sf.jabref.gui.plaintextimport.TextInputDialog.java
private JPanel setUpFieldListPanel() { JPanel inputPanel = new JPanel(); // Panel Layout GridBagLayout gbl = new GridBagLayout(); GridBagConstraints con = new GridBagConstraints(); con.weightx = 0;/*ww w . j a v a 2 s.c o m*/ con.insets = new Insets(5, 5, 0, 5); con.fill = GridBagConstraints.HORIZONTAL; inputPanel.setLayout(gbl); // Border TitledBorder titledBorder1 = new TitledBorder(BorderFactory.createLineBorder(new Color(153, 153, 153), 2), Localization.lang("Work options")); inputPanel.setBorder(titledBorder1); inputPanel.setMinimumSize(new Dimension(10, 10)); JScrollPane fieldScroller = new JScrollPane(fieldList); fieldScroller.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); // insert buttons insertButton.addActionListener(event -> insertTextForTag(override.isSelected())); // Radio buttons append.setToolTipText(Localization.lang("Append the selected text to BibTeX field")); append.setMnemonic(KeyEvent.VK_A); append.setSelected(true); override.setToolTipText(Localization.lang("Override the BibTeX field by the selected text")); override.setMnemonic(KeyEvent.VK_O); override.setSelected(false); //Group the radio buttons. ButtonGroup group = new ButtonGroup(); group.add(append); group.add(override); JPanel radioPanel = new JPanel(new GridLayout(0, 1)); radioPanel.add(append); radioPanel.add(override); // insert sub components JLabel label1 = new JLabel(Localization.lang("Available BibTeX fields")); con.gridwidth = GridBagConstraints.REMAINDER; gbl.setConstraints(label1, con); inputPanel.add(label1); con.gridwidth = GridBagConstraints.REMAINDER; con.gridheight = 8; con.weighty = 1; con.fill = GridBagConstraints.BOTH; gbl.setConstraints(fieldScroller, con); inputPanel.add(fieldScroller); con.fill = GridBagConstraints.HORIZONTAL; con.weighty = 0; con.gridwidth = 2; gbl.setConstraints(radioPanel, con); inputPanel.add(radioPanel); con.gridwidth = GridBagConstraints.REMAINDER; gbl.setConstraints(insertButton, con); inputPanel.add(insertButton); return inputPanel; }
From source file:com.t3.macro.api.functions.input.ColumnPanel.java
/** Creates a group of radio buttons. */ public JComponent createRadioControl(VarSpec vs) { int listIndex = vs.optionValues.getNumeric("SELECT"); if (listIndex < 0 || listIndex >= vs.valueList.size()) listIndex = 0;// w w w . j a v a 2 s . co m ButtonGroup bg = new ButtonGroup(); Box box = (vs.optionValues.optionEquals("ORIENT", "H")) ? Box.createHorizontalBox() : Box.createVerticalBox(); // If the prompt is suppressed by SPAN=TRUE, use it as the border title String title = ""; if (vs.optionValues.optionEquals("SPAN", "TRUE")) title = vs.prompt; box.setBorder(new TitledBorder(new EtchedBorder(), title)); int radioCount = 0; for (String value : vs.valueList) { JRadioButton radio = new JRadioButton(value, false); bg.add(radio); box.add(radio); if (listIndex == radioCount) radio.setSelected(true); radioCount++; } return box; }
From source file:net.rptools.maptool.launcher.MapToolLauncher.java
private JPanel buildBasicPanel() { final JPanel p = new JPanel(); p.setLayout(new BorderLayout()); // BASIC: Top panel final JPanel logoPanel = new JPanel(); logoPanel.setLayout(new FlowLayout()); logoPanel.setBorder(// ww w. ja v a 2s . com new TitledBorder(new LineBorder(Color.BLACK), CopiedFromOtherJars.getText("msg.logoPanel.border"))); //$NON-NLS-1$ jlMTLogo.setIcon(icon); logoPanel.add(jlMTLogo); // BASIC: Middle panel final JPanel memPanel = new JPanel(); memPanel.setLayout(new GridLayout(3, 2)); memPanel.setBorder(new LineBorder(Color.WHITE)); jtfMaxMem.setHorizontalAlignment(SwingConstants.RIGHT); jtfMaxMem.setInfo(CopiedFromOtherJars.getText("msg.info.javaMaxMem", DEFAULT_MAXMEM)); //$NON-NLS-1$ jtfMaxMem.setToolTipText(CopiedFromOtherJars.getText("msg.tooltip.javaMaxMem")); //$NON-NLS-1$ jtfMaxMem.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { jtfMaxMemActionPerformed(evt); } }); jtfMaxMem.addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent evt) { jtfMaxMemFocusLost(evt); } @Override public void focusGained(FocusEvent evt) { jtfMaxMemFocusLost(evt); } }); jtfMaxMem.addKeyListener(new InputValidator()); jtfMinMem.setHorizontalAlignment(SwingConstants.RIGHT); jtfMinMem.setInfo(CopiedFromOtherJars.getText("msg.info.javaMinMem", DEFAULT_MINMEM)); //$NON-NLS-1$ jtfMinMem.setToolTipText(CopiedFromOtherJars.getText("msg.tooltip.javaMinMem")); //$NON-NLS-1$ jtfMinMem.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { jtfMinMemActionPerformed(evt); } }); jtfMinMem.addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent evt) { jtfMinMemFocusLost(evt); } @Override public void focusGained(FocusEvent evt) { jtfMinMemFocusLost(evt); } }); jtfMinMem.addKeyListener(new InputValidator()); jtfStackSize.setHorizontalAlignment(SwingConstants.RIGHT); jtfStackSize.setInfo(CopiedFromOtherJars.getText("msg.info.javaStackSize", DEFAULT_STACKSIZE)); //$NON-NLS-1$ jtfStackSize.setToolTipText(CopiedFromOtherJars.getText("msg.tooltip.javaStackSize")); //$NON-NLS-1$ jtfStackSize.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { jtfStackSizeActionPerformed(evt); } }); jtfStackSize.addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent evt) { jtfStackSizeFocusLost(evt); } @Override public void focusGained(FocusEvent evt) { jtfStackSizeFocusLost(evt); } }); jtfStackSize.addKeyListener(new InputValidator()); memPanel.add(jtfMaxMem); memPanel.add(jtfMinMem); memPanel.add(jtfStackSize); // BASIC: Bottom panel final JPanel southPanel = new JPanel(); southPanel.setLayout(new BorderLayout()); final JPanel cbPanel = new JPanel(); cbPanel.setLayout(new GridLayout(2, 1)); cbPanel.setBorder(new LineBorder(Color.GRAY)); jcbPromptUser.setSelected(true); jcbPromptUser.setText(CopiedFromOtherJars.getText("msg.info.promptAtNextLaunch")); //$NON-NLS-1$ jcbPromptUser.setToolTipText(CopiedFromOtherJars.getText("msg.tooltip.promptAtNextLaunch")); //$NON-NLS-1$ jcbPromptUser.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent e) { promptUser = jcbPromptUser.isSelected(); } }); jbMTJar.setText(jbMTJarText); jbMTJar.setToolTipText(CopiedFromOtherJars.getText("msg.tooltip.registerMapToolJar")); //$NON-NLS-1$ jbMTJar.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { final JFileChooser jfc = new JFileChooser(); jfc.setFileSelectionMode(JFileChooser.FILES_ONLY); FileFilter filter = new FileNameExtensionFilter( CopiedFromOtherJars.getText("msg.chooser.javaExecutable"), "jar"); //$NON-NLS-1$ //$NON-NLS-2$ jfc.addChoosableFileFilter(filter); jfc.setFileFilter(filter); if (IS_MAC) { filter = new FileNameExtensionFilter( CopiedFromOtherJars.getText("msg.chooser.appleApplicationBundle"), "app"); //$NON-NLS-1$ //$NON-NLS-2$ jfc.addChoosableFileFilter(filter); } jfc.setCurrentDirectory(mapToolJarDir); final int returnVal = jfc.showOpenDialog(jbMTJar); if (returnVal == JFileChooser.APPROVE_OPTION) { final File f = jfc.getSelectedFile(); final String fileName = f.getName(); if (IS_MAC && fileName.endsWith(".app")) { //$NON-NLS-1$ File jarDir = new File(f.getParentFile(), fileName); if (jarDir.isDirectory()) { jarDir = new File(jarDir, "Contents/Resources/Java"); //$NON-NLS-1$ if (jarDir.isDirectory()) { mapToolJarDir = jarDir; mapToolJarName = fileName.replace(".app", ".jar"); //$NON-NLS-1$ //$NON-NLS-2$ } else { logMsg(Level.SEVERE, "{0} does not contain 'Contents/Resources/Java' like it should!", //$NON-NLS-1$ "msg.chooser.badAppLocation", jarDir); //$NON-NLS-1$ return; } } else { logMsg(Level.SEVERE, "{0} is not a directory and it should be!", //$NON-NLS-1$ "msg.chooser.badAppLocation", jarDir); //$NON-NLS-1$ return; } } else { mapToolJarName = fileName; mapToolJarDir = f.getParentFile(); } logMsg(Level.INFO, f.toString(), null); jbMTJar.setText(fileName.replace(".jar", EMPTY)); //$NON-NLS-1$ if (fileName.toLowerCase().startsWith("maptool-")) { // We expect the name matches 'maptool-1.3.b89.jar' mapToolVersion = " " + fileName.substring(8, 11); } else { logMsg(Level.SEVERE, "Cannot determine MapTool version number from JAR filename: {0}", //$NON-NLS-1$ "msg.info.noMapToolVersion", fileName); mapToolVersion = EMPTY; } jbLaunch.setEnabled(true); updateCommand(); jbLaunch.requestFocusInWindow(); } } }); cbPanel.add(jcbPromptUser); cbPanel.add(jbMTJar); southPanel.add(cbPanel, BorderLayout.CENTER); p.add(memPanel, BorderLayout.CENTER); p.add(logoPanel, BorderLayout.NORTH); p.add(southPanel, BorderLayout.SOUTH); p.setBorder(new LineBorder(Color.BLACK)); return p; }