List of usage examples for javax.swing Box setToolTipText
@BeanProperty(bound = false, preferred = true, description = "The text to display in a tool tip.") public void setToolTipText(String text)
From source file:com.diversityarrays.kdxplore.curate.SampleEntryPanel.java
SampleEntryPanel(CurationData cd, IntFunction<Trait> traitProvider, TypedSampleMeasurementTableModel tsm, JTable table, TsmCellRenderer tsmCellRenderer, JToggleButton showPpiOption, Closure<Void> refreshFieldLayoutView, BiConsumer<Comparable<?>, List<CurationCellValue>> showChangedValue, SampleType[] sampleTypes) { this.curationData = cd; this.traitProvider = traitProvider; this.typedSampleTableModel = tsm; this.typedSampleTable = table; this.showPpiOption = showPpiOption; this.initialTableRowHeight = typedSampleTable.getRowHeight(); this.tsmCellRenderer = tsmCellRenderer; this.refreshFieldLayoutView = refreshFieldLayoutView; this.showChangedValue = showChangedValue; List<SampleType> list = new ArrayList<>(); list.add(NO_SAMPLE_TYPE);//from ww w.j a v a 2 s . c o m for (SampleType st : sampleTypes) { list.add(st); sampleTypeById.put(st.getTypeId(), st); } sampleTypeCombo = new JComboBox<SampleType>(list.toArray(new SampleType[list.size()])); typedSampleTableModel.addTableModelListener(new TableModelListener() { @Override public void tableChanged(TableModelEvent e) { if (TableModelEvent.HEADER_ROW == e.getFirstRow()) { typedSampleTable.setAutoCreateColumnsFromModel(true); everSetData = false; } } }); showStatsAction.putValue(Action.SHORT_DESCRIPTION, Vocab.TOOLTIP_STATS_FOR_KDSMART_SAMPLES()); showStatsOption.setFont(showStatsOption.getFont().deriveFont(Font.BOLD)); showStatsOption.setPreferredSize(new Dimension(30, 30)); JLabel helpPanel = new JLabel(); helpPanel.setHorizontalAlignment(JLabel.CENTER); String html = "<HTML>Either enter a value or select<br>a <i>Source</i> for <b>Value From:</b>"; if (shouldShowSampleType(sampleTypes)) { html += "<BR>You may also select a <i>Sample Type</i> if it is relevant."; } helpPanel.setText(html); singleOrMultiCardPanel.add(helpPanel, CARD_SINGLE); singleOrMultiCardPanel.add(applyToPanel, CARD_MULTI); // singleOrMultiCardPanel.add(multiCellControlsPanel, CARD_MULTI); validationMessage.setBorder(new LineBorder(Color.LIGHT_GRAY)); validationMessage.setForeground(Color.RED); validationMessage.setBackground(new JLabel().getBackground()); validationMessage.setHorizontalAlignment(SwingConstants.CENTER); // validationMessage.setEditable(false); Box setButtons = Box.createHorizontalBox(); setButtons.add(new JButton(deleteAction)); setButtons.add(new JButton(notApplicableAction)); setButtons.add(new JButton(missingAction)); setButtons.add(new JButton(setValueAction)); deleteAction.putValue(Action.SHORT_DESCRIPTION, Vocab.TOOLTIP_SET_UNSET()); notApplicableAction.putValue(Action.SHORT_DESCRIPTION, Vocab.TOOLTIP_SET_NA()); missingAction.putValue(Action.SHORT_DESCRIPTION, Vocab.TOOLTIP_SET_MISSING()); setValueAction.putValue(Action.SHORT_DESCRIPTION, Vocab.TOOLTIP_SET_VALUE()); Box sampleType = Box.createHorizontalBox(); sampleType.add(new JLabel(Vocab.LABEL_SAMPLE_TYPE())); sampleType.add(sampleTypeCombo); statisticsControls = generateStatControls(); setBorder(new TitledBorder(new LineBorder(Color.GREEN.darker().darker()), "Sample Entry Panel")); GBH gbh = new GBH(this); int y = 0; gbh.add(0, y, 2, 1, GBH.HORZ, 1, 1, GBH.CENTER, statisticsControls); ++y; if (shouldShowSampleType(sampleTypes)) { sampleType.setBorder(new LineBorder(Color.RED)); sampleType.setToolTipText("DEVELOPER MODE: sampleType is possible hack for accept/suppress"); gbh.add(0, y, 2, 1, GBH.HORZ, 1, 1, GBH.CENTER, sampleType); ++y; } sampleSourceControls = Box.createHorizontalBox(); sampleSourceControls.add(new JLabel(Vocab.PROMPT_VALUES_FROM())); // sampleSourceControls.add(new JSeparator(JSeparator.VERTICAL)); sampleSourceControls.add(sampleSourceComboBox); sampleSourceControls.add(Box.createHorizontalGlue()); sampleSourceComboBox.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { updateSetValueAction(); } }); gbh.add(0, y, 2, 1, GBH.HORZ, 1, 1, GBH.CENTER, sampleSourceControls); ++y; gbh.add(0, y, 2, 1, GBH.HORZ, 1, 1, GBH.CENTER, valueDescription); ++y; gbh.add(0, y, 1, 1, GBH.NONE, 1, 1, GBH.WEST, showStatsOption); gbh.add(1, y, 1, 1, GBH.HORZ, 2, 1, GBH.CENTER, sampleValueTextField); ++y; gbh.add(0, y, 2, 1, GBH.NONE, 1, 1, GBH.CENTER, setButtons); ++y; gbh.add(0, y, 2, 1, GBH.HORZ, 2, 1, GBH.CENTER, validationMessage); ++y; gbh.add(0, y, 2, 1, GBH.HORZ, 2, 0, GBH.CENTER, singleOrMultiCardPanel); ++y; deleteAction.setEnabled(false); sampleSourceControls.setVisible(false); sampleValueTextField.setGrayWhenDisabled(true); sampleValueTextField.addActionListener(enterKeyListener); sampleValueTextField.getDocument().addDocumentListener(new DocumentListener() { @Override public void removeUpdate(DocumentEvent e) { updateSetValueAction(); } @Override public void insertUpdate(DocumentEvent e) { updateSetValueAction(); } @Override public void changedUpdate(DocumentEvent e) { updateSetValueAction(); } }); setValueAction.setEnabled(false); }