use of javax.swing.ListSelectionModel in project knime-core by knime.
the class AbstractAggregationPanel method addRows.
/**
* @param rows {@link List} of {@link AggregationFunctionRow}s to add to the table model
* @since 2.11
*/
protected void addRows(final List<R> rows) {
if (rows == null) {
throw new IllegalArgumentException("methods must not be null");
}
final T tableModel = getTableModel();
final int rowCountBefore = tableModel.getRowCount();
tableModel.add(rows);
final int rowCountAfter = tableModel.getRowCount();
final JTable table = getTable();
final ListSelectionModel selectionModel = table.getSelectionModel();
if (selectionModel != null) {
// select the fresh added rows
selectionModel.setSelectionInterval(rowCountBefore, rowCountAfter - 1);
// scroll first selected row into view
table.scrollRectToVisible(new Rectangle(table.getCellRect(rowCountBefore, 0, true)));
}
}
use of javax.swing.ListSelectionModel in project knime-core by knime.
the class ColumnSelectionList method setSelectedColumns.
/**
* Selects all given columns in the list. Non-existing columns are ignored.
*
* @param selCols an array with column names. Must not be <code>null</code>.
*/
public void setSelectedColumns(final String... selCols) {
ListSelectionModel selModel = getSelectionModel();
boolean oldvalue = m_selectionChangeAllowed;
m_selectionChangeAllowed = true;
selModel.clearSelection();
for (int i = 0; i < m_listModel.getSize(); i++) {
String name = ((DataColumnSpec) m_listModel.get(i)).getName();
for (int j = 0; j < selCols.length; j++) {
if (name.equals(selCols[j])) {
selModel.addSelectionInterval(i, i);
break;
}
}
}
m_selectionChangeAllowed = oldvalue;
}
use of javax.swing.ListSelectionModel in project knime-core by knime.
the class TableView method gotoCell.
/**
* Scrolls to the given coordinate cell. This method is invoked from the navigation menu. If there is no such
* coordinate it will display an error message.
*
* @param row the row to scroll to
* @param col the col to scroll to (negative for row key)
*/
public void gotoCell(final int row, final int col) {
final TableContentView cView = getContentTable();
final ListSelectionModel colSelModel = cView.getColumnModel().getSelectionModel();
final ListSelectionModel rowSelModel = cView.getSelectionModel();
if (row >= 0) {
try {
cView.getValueAt(row, Math.max(col, 0));
} catch (IndexOutOfBoundsException ioe) {
if (cView.getColumnCount() != 0) {
JOptionPane.showMessageDialog(this, "No such row/col: (" + (row + 1) + ", " + (col + 1) + ")", "Error", JOptionPane.ERROR_MESSAGE);
return;
}
}
rowSelModel.setSelectionInterval(row, row);
} else {
rowSelModel.clearSelection();
}
final Rectangle rec = cView.getCellRect(Math.max(row, 0), Math.max(col, 0), false);
if (col >= 0) {
colSelModel.setSelectionInterval(col, col);
} else {
colSelModel.clearSelection();
}
cView.scrollRectToVisible(rec);
}
use of javax.swing.ListSelectionModel in project vcell by virtualcell.
the class OverlayEditorPanelJAI method initialize.
/**
* This method initializes this
*/
private void initialize() {
this.setSize(734, 710);
final GridBagLayout gridBagLayout_1 = new GridBagLayout();
gridBagLayout_1.rowWeights = new double[] { 0.0, 1.0, 0 };
gridBagLayout_1.columnWeights = new double[] { 1.0 };
gridBagLayout_1.rowHeights = new int[] { 0, 0, 0 };
this.setLayout(gridBagLayout_1);
editROIPanel = new JPanel();
final GridBagLayout gridBagLayout_2 = new GridBagLayout();
gridBagLayout_2.rowHeights = new int[] { 0, 0, 7 };
gridBagLayout_2.columnWidths = new int[] { 0, 7 };
editROIPanel.setLayout(gridBagLayout_2);
final GridBagConstraints gridBagConstraints_6 = new GridBagConstraints();
gridBagConstraints_6.anchor = GridBagConstraints.WEST;
gridBagConstraints_6.insets = new Insets(2, 2, 5, 2);
gridBagConstraints_6.weightx = 1.0;
gridBagConstraints_6.gridy = 0;
gridBagConstraints_6.gridx = 0;
add(editROIPanel, gridBagConstraints_6);
final JLabel infoLabel = new JLabel();
infoLabel.setText("Data Info:");
final GridBagConstraints gridBagConstraints_12 = new GridBagConstraints();
gridBagConstraints_12.insets = new Insets(0, 0, 0, 4);
gridBagConstraints_12.anchor = GridBagConstraints.EAST;
gridBagConstraints_12.gridy = 0;
gridBagConstraints_12.gridx = 0;
editROIPanel.add(infoLabel, gridBagConstraints_12);
textLabel = new JLabel();
textLabel.setPreferredSize(new Dimension(500, 20));
textLabel.setMinimumSize(new Dimension(500, 20));
final GridBagConstraints gridBagConstraints_2 = new GridBagConstraints();
gridBagConstraints_2.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_2.weightx = 1;
gridBagConstraints_2.insets = new Insets(0, 2, 0, 0);
gridBagConstraints_2.anchor = GridBagConstraints.WEST;
gridBagConstraints_2.gridy = 0;
gridBagConstraints_2.gridx = 1;
gridBagConstraints_2.gridwidth = 2;
editROIPanel.add(textLabel, gridBagConstraints_2);
textLabel.setText("No FRAP DataSet loaded.");
autoCropButton = new JButton(new ImageIcon(getClass().getResource("/images/autoCrop.gif")));
autoCropButton.setName("roiAutoCropBtn");
autoCropButton.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
firePropertyChange(FRAP_DATA_AUTOCROP_PROPERTY, null, null);
}
});
clearROIbutton = new JButton(new ImageIcon(getClass().getResource("/images/clearROI.gif")));
clearROIbutton.setEnabled(false);
clearROIbutton.setName("clearROIBtn");
clearROIbutton.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
if (roiComboBox.getItemCount() == 0) {
giveROIRequiredWarning("Clear Domain");
return;
}
firePropertyChange(FRAP_DATA_CLEARROI_PROPERTY, ((ROIMultiPaintManager.ComboboxROIName) roiComboBox.getSelectedItem()), null);
}
});
viewZLabel = new JLabel();
viewZLabel.setText("View Z:");
final GridBagConstraints gridBagConstraints_17 = new GridBagConstraints();
gridBagConstraints_17.insets = new Insets(0, 0, 0, 4);
gridBagConstraints_17.anchor = GridBagConstraints.EAST;
gridBagConstraints_17.gridy = 1;
gridBagConstraints_17.gridx = 0;
editROIPanel.add(viewZLabel, gridBagConstraints_17);
final JPanel panel_1 = new JPanel();
final GridBagLayout gridBagLayout_4 = new GridBagLayout();
gridBagLayout_4.columnWeights = new double[] { 1.0 };
gridBagLayout_4.columnWidths = new int[] { 7 };
panel_1.setLayout(gridBagLayout_4);
final GridBagConstraints gridBagConstraints_18 = new GridBagConstraints();
gridBagConstraints_18.anchor = GridBagConstraints.WEST;
gridBagConstraints_18.insets = new Insets(0, 2, 0, 0);
gridBagConstraints_18.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_18.weightx = 0;
gridBagConstraints_18.gridy = 1;
gridBagConstraints_18.gridx = 1;
editROIPanel.add(panel_1, gridBagConstraints_18);
final GridBagConstraints gridBagConstraints_19 = new GridBagConstraints();
gridBagConstraints_19.insets = new Insets(0, 0, 5, 0);
gridBagConstraints_19.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_19.anchor = GridBagConstraints.WEST;
gridBagConstraints_19.weightx = 1;
gridBagConstraints_19.gridy = 0;
gridBagConstraints_19.gridx = 0;
panel_1.add(getZSlider(), gridBagConstraints_19);
viewTLabel = new JLabel();
viewTLabel.setText("View Time:");
final GridBagConstraints gridBagConstraints_13 = new GridBagConstraints();
gridBagConstraints_13.insets = new Insets(0, 0, 0, 4);
gridBagConstraints_13.anchor = GridBagConstraints.EAST;
gridBagConstraints_13.gridy = 2;
gridBagConstraints_13.gridx = 0;
editROIPanel.add(viewTLabel, gridBagConstraints_13);
final JPanel panel = new JPanel();
panel.setLayout(new GridBagLayout());
final GridBagConstraints gridBagConstraints_15 = new GridBagConstraints();
gridBagConstraints_15.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_15.weightx = 1;
gridBagConstraints_15.insets = new Insets(0, 0, 0, 0);
gridBagConstraints_15.anchor = GridBagConstraints.WEST;
gridBagConstraints_15.gridy = 0;
gridBagConstraints_15.gridx = 0;
panel.add(getTimeSlider(), gridBagConstraints_15);
final GridBagConstraints gridBagConstraints_14 = new GridBagConstraints();
gridBagConstraints_14.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_14.insets = new Insets(0, 2, 0, 0);
gridBagConstraints_14.anchor = GridBagConstraints.WEST;
gridBagConstraints_14.gridy = 2;
gridBagConstraints_14.gridx = 1;
editROIPanel.add(panel, gridBagConstraints_14);
final JPanel editROIButtonPanel = new JPanel();
final GridBagLayout gridBagLayout_3 = new GridBagLayout();
gridBagLayout_3.rowWeights = new double[] { 0.0, 1.0 };
gridBagLayout_3.columnWeights = new double[] { 0.0, 1.0, 0.0, 0.0, 0.0, 0.0 };
gridBagLayout_3.columnWidths = new int[] { 0, 0, 7, 7, 0, 0 };
editROIButtonPanel.setLayout(gridBagLayout_3);
final GridBagConstraints gridBagConstraints_8 = new GridBagConstraints();
gridBagConstraints_8.gridwidth = 2;
gridBagConstraints_8.weightx = 0;
gridBagConstraints_8.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_8.insets = new Insets(0, 2, 0, 0);
gridBagConstraints_8.anchor = GridBagConstraints.WEST;
gridBagConstraints_8.gridy = 3;
gridBagConstraints_8.gridx = 0;
editROIPanel.add(editROIButtonPanel, gridBagConstraints_8);
panel_2 = new JPanel();
GridBagConstraints gbc_panel_2 = new GridBagConstraints();
gbc_panel_2.insets = new Insets(2, 2, 2, 2);
gbc_panel_2.weighty = 1.0;
gbc_panel_2.weightx = 1.0;
gbc_panel_2.fill = GridBagConstraints.BOTH;
gbc_panel_2.gridx = 0;
gbc_panel_2.gridy = 1;
add(panel_2, gbc_panel_2);
GridBagLayout gbl_panel_2 = new GridBagLayout();
gbl_panel_2.columnWidths = new int[] { 0, 0, 0 };
gbl_panel_2.rowHeights = new int[] { 0 };
gbl_panel_2.columnWeights = new double[] { 0, 1.0, 0.0 };
gbl_panel_2.rowWeights = new double[] { 0.0 };
panel_2.setLayout(gbl_panel_2);
panel_3 = new JPanel();
panel_3.setBorder(new LineBorder(new Color(0, 0, 0)));
GridBagConstraints gbc_panel_3 = new GridBagConstraints();
gbc_panel_3.fill = GridBagConstraints.BOTH;
gbc_panel_3.insets = new Insets(2, 2, 2, 2);
gbc_panel_3.gridx = 0;
gbc_panel_3.gridy = 0;
panel_2.add(panel_3, gbc_panel_3);
GridBagLayout gbl_panel_3 = new GridBagLayout();
gbl_panel_3.columnWidths = new int[] { 0, 0 };
gbl_panel_3.rowHeights = new int[] { 0, 0, 0, 0 };
gbl_panel_3.columnWeights = new double[] { 0.0, Double.MIN_VALUE };
gbl_panel_3.rowWeights = new double[] { 0.0, 0.0, 0.0, Double.MIN_VALUE };
panel_3.setLayout(gbl_panel_3);
domainRegionLabel = new JLabel(DOMAIN_LIST_TEXT);
GridBagConstraints gbc_domainRegionLabel = new GridBagConstraints();
gbc_domainRegionLabel.insets = new Insets(0, 0, 2, 0);
gbc_domainRegionLabel.gridx = 0;
gbc_domainRegionLabel.gridy = 0;
panel_3.add(domainRegionLabel, gbc_domainRegionLabel);
scrollPane = new JScrollPane();
GridBagConstraints gbc_scrollPane = new GridBagConstraints();
gbc_scrollPane.insets = new Insets(0, 2, 0, 0);
gbc_scrollPane.weighty = 1.0;
gbc_scrollPane.fill = GridBagConstraints.BOTH;
gbc_scrollPane.gridx = 0;
gbc_scrollPane.gridy = 1;
panel_3.add(scrollPane, gbc_scrollPane);
scrollPane.setPreferredSize(new Dimension(125, 10));
scrollPane.setMinimumSize(new Dimension(125, 10));
scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
resolvedList = new JList();
resolvedList.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
super.mouseClicked(e);
if (showConvertPopup(e, false) == SHOWCONVERT.HANDLED) {
return;
}
if (e.getClickCount() == 2) {
firePropertyChange(FRAP_DATA_FINDROI_PROPERTY, null, resolvedList.getSelectedValue());
}
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
super.mousePressed(e);
if (showConvertPopup(e, false) == SHOWCONVERT.HANDLED) {
return;
}
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
super.mouseReleased(e);
if (showConvertPopup(e, false) == SHOWCONVERT.HANDLED) {
return;
}
}
});
resolvedList.addListSelectionListener(resolvedListSelectionListener);
resolvedList.setCellRenderer(resolvedObjectListCellRenderer);
scrollPane.setViewportView(resolvedList);
mergeButton = new JButton("Auto-Merge");
mergeButton.setToolTipText("Remove regions by merging with neighbor");
mergeButton.setEnabled(false);
mergeButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
resolvedListSelection(true);
}
});
GridBagConstraints gbc_mergeButton = new GridBagConstraints();
gbc_mergeButton.gridx = 0;
gbc_mergeButton.gridy = 2;
panel_3.add(mergeButton, gbc_mergeButton);
GridBagConstraints gbc_jScrollPane2 = new GridBagConstraints();
gbc_jScrollPane2.weighty = 1.0;
gbc_jScrollPane2.weightx = 1.0;
gbc_jScrollPane2.fill = GridBagConstraints.BOTH;
gbc_jScrollPane2.insets = new Insets(2, 2, 2, 2);
gbc_jScrollPane2.gridx = 1;
gbc_jScrollPane2.gridy = 0;
panel_2.add(getJScrollPane2(), gbc_jScrollPane2);
GridBagConstraints gbc_toolButtonPanel = new GridBagConstraints();
gbc_toolButtonPanel.weighty = 1.0;
gbc_toolButtonPanel.insets = new Insets(2, 2, 0, 2);
gbc_toolButtonPanel.anchor = GridBagConstraints.NORTH;
gbc_toolButtonPanel.gridx = 2;
gbc_toolButtonPanel.gridy = 0;
panel_2.add(getToolButtonPanel(), gbc_toolButtonPanel);
roiComboBox = new JComboBox();
roiComboBox.setName("activeROIComboBox");
roiComboBox.setRenderer(new ListCellRenderer() {
private DefaultListCellRenderer listCellRender = new DefaultListCellRenderer();
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
ROIMultiPaintManager.ComboboxROIName comboboxROIName = (ROIMultiPaintManager.ComboboxROIName) value;
if (comboboxROIName == null) {
// return blank
return listCellRender.getListCellRendererComponent(list, null, index, isSelected, cellHasFocus);
}
if (comboboxROIName.getHighlightColor() == null) {
// return text only
return listCellRender.getListCellRendererComponent(list, comboboxROIName.getROIName(), index, isSelected, cellHasFocus);
}
// return text with small color box
Icon icon = new ColorIcon(20, 20, comboboxROIName.getHighlightColor());
JLabel jlable = (JLabel) listCellRender.getListCellRendererComponent(list, icon, index, isSelected, cellHasFocus);
jlable.setText(comboboxROIName.getROIName());
return jlable;
}
});
roiComboBox.addActionListener(ROI_COMBOBOX_ACTIONLISTENER);
lblNewLabel = new JLabel("Active Domain:");
GridBagConstraints gbc_lblNewLabel = new GridBagConstraints();
gbc_lblNewLabel.insets = new Insets(4, 4, 4, 4);
gbc_lblNewLabel.anchor = GridBagConstraints.EAST;
gbc_lblNewLabel.gridx = 0;
gbc_lblNewLabel.gridy = 0;
editROIButtonPanel.add(lblNewLabel, gbc_lblNewLabel);
final GridBagConstraints gridBagConstraints_1 = new GridBagConstraints();
gridBagConstraints_1.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_1.insets = new Insets(4, 4, 5, 5);
gridBagConstraints_1.weightx = 1;
gridBagConstraints_1.gridy = 0;
gridBagConstraints_1.gridx = 1;
editROIButtonPanel.add(roiComboBox, gridBagConstraints_1);
addROIButton = new JButton();
addROIButton.setName("roiAddBtn");
addROIButton.addActionListener(addROIActionListener);
addROIButton.setText("Add Domain...");
final GridBagConstraints gridBagConstraints_3 = new GridBagConstraints();
gridBagConstraints_3.insets = new Insets(4, 4, 5, 5);
gridBagConstraints_3.gridy = 0;
gridBagConstraints_3.gridx = 2;
editROIButtonPanel.add(addROIButton, gridBagConstraints_3);
delROIButton = new JButton();
delROIButton.setName("roiDeleteBtn");
delROIButton.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent e) {
firePropertyChange(FRAP_DATA_DELETEROI_PROPERTY, ((ROIMultiPaintManager.ComboboxROIName) roiComboBox.getSelectedItem()), null);
}
});
delROIButton.setText("Delete Domain...");
delROIButton.setEnabled(false);
final GridBagConstraints gridBagConstraints_4 = new GridBagConstraints();
gridBagConstraints_4.insets = new Insets(4, 4, 5, 5);
gridBagConstraints_4.gridy = 0;
gridBagConstraints_4.gridx = 3;
editROIButtonPanel.add(delROIButton, gridBagConstraints_4);
discardHighlightsButton = new JButton("Clear Selections");
discardHighlightsButton.setEnabled(false);
discardHighlightsButton.setName("clearHighlightsBtn");
discardHighlightsButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
firePropertyChange(FRAP_DATA_DISCARDHIGHLIGHT_PROPERTY, null, null);
}
});
GridBagConstraints gbc_specialActionsButton = new GridBagConstraints();
gbc_specialActionsButton.insets = new Insets(4, 4, 5, 5);
gbc_specialActionsButton.gridx = 4;
gbc_specialActionsButton.gridy = 0;
editROIButtonPanel.add(discardHighlightsButton, gbc_specialActionsButton);
channelComboBox = new JComboBox();
GridBagConstraints gbc_channelComboBox = new GridBagConstraints();
gbc_channelComboBox.insets = new Insets(4, 4, 5, 4);
gbc_channelComboBox.gridx = 5;
gbc_channelComboBox.gridy = 0;
editROIButtonPanel.add(channelComboBox, gbc_channelComboBox);
channelComboBox.addActionListener(channelActionListener);
channelComboBox.setPreferredSize(new Dimension(100, 22));
channelComboBox.setMinimumSize(new Dimension(100, 20));
blendPercentPanel = new JPanel();
blendPercentPanel.setBorder(new LineBorder(new Color(0, 0, 0)));
GridBagConstraints gbc_panel_2a = new GridBagConstraints();
gbc_panel_2a.gridwidth = 6;
gbc_panel_2a.insets = new Insets(4, 4, 4, 4);
gbc_panel_2a.fill = GridBagConstraints.BOTH;
gbc_panel_2a.gridx = 0;
gbc_panel_2a.gridy = 1;
editROIButtonPanel.add(blendPercentPanel, gbc_panel_2a);
GridBagLayout gbl_panel_2a = new GridBagLayout();
blendPercentPanel.setLayout(gbl_panel_2a);
blendPercentROILabel = new JLabel("Domains");
GridBagConstraints gbc_blendPercentROILabel = new GridBagConstraints();
gbc_blendPercentROILabel.anchor = GridBagConstraints.WEST;
gbc_blendPercentROILabel.gridx = 0;
gbc_blendPercentROILabel.gridy = 0;
blendPercentPanel.add(blendPercentROILabel, gbc_blendPercentROILabel);
blendPercentSlider = new JSlider();
blendPercentSlider.setToolTipText("Mix view of Domains and background image");
blendPercentSlider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
setBlendPercent(blendPercentSlider.getValue());
// if(!blendPercentSlider.getValueIsAdjusting()){
// setBlendPercent(blendPercentSlider.getValue());
// }
}
});
GridBagConstraints gbc_blendPercentSlider = new GridBagConstraints();
gbc_blendPercentSlider.fill = GridBagConstraints.HORIZONTAL;
gbc_blendPercentSlider.weightx = 0.5;
gbc_blendPercentSlider.gridx = 1;
gbc_blendPercentSlider.gridy = 0;
blendPercentPanel.add(blendPercentSlider, gbc_blendPercentSlider);
blendPercentImageLabel = new JLabel("Image");
GridBagConstraints gbc_blendPercentImageLabel = new GridBagConstraints();
gbc_blendPercentImageLabel.anchor = GridBagConstraints.EAST;
gbc_blendPercentImageLabel.gridx = 2;
gbc_blendPercentImageLabel.gridy = 0;
blendPercentPanel.add(blendPercentImageLabel, gbc_blendPercentImageLabel);
smoothOrigLabel = new JLabel("Original");
GridBagConstraints gbc_smoothOrigLabel = new GridBagConstraints();
gbc_smoothOrigLabel.insets = new Insets(0, 20, 0, 0);
gbc_smoothOrigLabel.gridx = 3;
gbc_smoothOrigLabel.gridy = 0;
blendPercentPanel.add(smoothOrigLabel, gbc_smoothOrigLabel);
smoothslider = new JSlider();
smoothslider.setToolTipText("Smooth background image");
smoothslider.setSnapToTicks(true);
smoothslider.setPaintTicks(true);
smoothslider.setMajorTickSpacing(1);
smoothslider.setMaximum(10);
smoothslider.setValue(0);
smoothslider.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
if (!smoothslider.getValueIsAdjusting()) {
firePropertyChange(FRAP_DATA_UNDERLAY_SMOOTH_PROPERTY, null, new Integer(smoothslider.getValue()));
}
}
});
GridBagConstraints gbc_smoothslider = new GridBagConstraints();
gbc_smoothslider.fill = GridBagConstraints.HORIZONTAL;
gbc_smoothslider.weightx = 0.5;
gbc_smoothslider.gridx = 4;
gbc_smoothslider.gridy = 0;
blendPercentPanel.add(smoothslider, gbc_smoothslider);
smootherLabel = new JLabel("Smoother");
GridBagConstraints gbc_smootherLabel = new GridBagConstraints();
gbc_smootherLabel.gridx = 5;
gbc_smootherLabel.gridy = 0;
blendPercentPanel.add(smootherLabel, gbc_smootherLabel);
roiDrawButtonGroup.add(selectButton);
roiDrawButtonGroup.add(paintButton);
roiDrawButtonGroup.add(eraseButton);
roiDrawButtonGroup.add(fillButton);
roiDrawButtonGroup.add(cropButton);
BeanUtils.enableComponents(getToolButtonPanel(), false);
BeanUtils.enableComponents(editROIPanel, false);
histogramPanel = new HistogramPanel();
histogramPanel.addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getPropertyName().equals(HistogramPanel.HISTOGRAM_SELECT_PROPERTY)) {
OverlayEditorPanelJAI.this.firePropertyChange(OverlayEditorPanelJAI.FRAP_DATA_HISTOUPDATEHIGHLIGHT_PROPERTY, null, (ListSelectionModel) evt.getNewValue());
} else if (evt.getPropertyName().equals(HistogramPanel.HISTOGRAM_APPLY_ACTION)) {
firePropertyChange(OverlayEditorPanelJAI.FRAP_DATA_UPDATEROI_WITHHIGHLIGHT_PROPERTY, null, null);
}
}
});
histogramPanel.setVisible(false);
histogramPanel.setBorder(new LineBorder(new Color(0, 0, 0)));
GridBagConstraints gbc_histogramButton = new GridBagConstraints();
gbc_histogramButton.fill = GridBagConstraints.BOTH;
gbc_histogramButton.insets = new Insets(2, 2, 2, 2);
gbc_histogramButton.gridx = 0;
gbc_histogramButton.gridy = 2;
add(histogramPanel, gbc_histogramButton);
}
use of javax.swing.ListSelectionModel in project MassBank-web by MassBank.
the class PackageViewPanel method createRecListTable.
/**
* ���R�[�h���X�g�e�[�u���쐬
* @return ���R�[�h���X�g�e�[�u��
*/
private JTable createRecListTable() {
recSorter = new TableSorter(new DefaultTableModel(), specData);
JTable t = new JTable(recSorter) {
@Override
public boolean isCellEditable(int row, int column) {
super.isCellEditable(row, column);
// �Z���ҏW��s�Ƃ���
return false;
}
@Override
public void setValueAt(Object value, int row, int col) {
super.setValueAt(value, row, col);
// �`�F�b�N�{�b�N�X���ҏW���ꂽ�ꍇ�ɍĕ`����s��
if (recTable.getColumnName(col).equals(SearchPage.COL_LABEL_DISABLE)) {
PackageRecData recData = specData.getRecInfo(row);
recData.setDisable(Boolean.parseBoolean(String.valueOf(recTable.getValueAt(row, col))));
specData.setMatchPeakInfo(tolVal, tolUnit);
PackageViewPanel.this.repaint();
int hitCol = recTable.getColumnModel().getColumnIndex(SearchPage.COL_LABEL_HIT);
for (int i = 0; i < recTable.getRowCount(); i++) {
// �ҏW���ꂽ���R�[�h�ɂ����Hit�J�����̒l���A�b�v�f�[�g����
setValueAt(specData.getRecInfo(i).getHitPeakNum(), i, hitCol);
}
}
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
Rectangle2D area = new Rectangle2D.Float();
// �h���b�O���Ƀh���b�O��h��Ԃ��\��
if (!isSortStatus() && dragRowIndex >= 0) {
g2.setPaint(Color.RED);
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.4f));
area.setRect(0, (dragRowIndex * getRowHeight()), getWidth(), getRowHeight());
g2.fill(area);
}
// change color�̏ꍇ�̓I�[�_�[�J�����̍s��h��Ԃ��\��
if (chgColor.isSelected()) {
for (int i = 0; i < recTable.getRowCount(); i++) {
// ��\���̏ꍇ�͐F�Â����Ȃ�
if (Boolean.parseBoolean(String.valueOf(getValueAt(i, getColumnModel().getColumnIndex(SearchPage.COL_LABEL_DISABLE))))) {
continue;
}
g2.setPaint(getColor(i));
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.6f));
area.setRect(getCellRect(i, getColumnModel().getColumnIndex(SearchPage.COL_LABEL_ORDER), false));
g2.fill(area);
}
}
}
};
recSorter.setTableHeader(t.getTableHeader());
t.setMinimumSize(new Dimension(400, 400));
t.setRowSelectionAllowed(true);
t.setColumnSelectionAllowed(false);
t.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
// ���X�i�[�lj�
t.addMouseListener(new TblMouseListener());
// ���X�i�[�lj�
t.addMouseMotionListener(new TblMouseMotionListener());
// �L�[���X�i�[�lj�
t.addKeyListener(new TblKeyListener());
// �I���W�i�������_���[
t.setDefaultRenderer(Object.class, new TblRenderer());
ListSelectionModel lm = t.getSelectionModel();
lm.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
lm.addListSelectionListener(new LmSelectionListener());
// �J�����Z�b�g
String[] columnLabel = { SearchPage.COL_LABEL_ORDER, SearchPage.COL_LABEL_TYPE, SearchPage.COL_LABEL_NAME, SearchPage.COL_LABEL_MATCH, SearchPage.COL_LABEL_ID, SearchPage.COL_LABEL_DISABLE, SearchPage.COL_LABEL_CONTRIBUTOR, SearchPage.COL_LABEL_SCORE, SearchPage.COL_LABEL_HIT, SearchPage.COL_LABEL_PEAK, SearchPage.COL_LABEL_PRECURSOR };
DefaultTableModel model = (DefaultTableModel) recSorter.getTableModel();
model.setColumnIdentifiers(columnLabel);
// �Z�b�g
t.getColumn(t.getColumnName(0)).setPreferredWidth(36);
t.getColumn(t.getColumnName(1)).setPreferredWidth(75);
t.getColumn(t.getColumnName(2)).setPreferredWidth(360);
t.getColumn(t.getColumnName(3)).setPreferredWidth(36);
t.getColumn(t.getColumnName(4)).setPreferredWidth(70);
t.getColumn(t.getColumnName(5)).setPreferredWidth(47);
t.getColumn(t.getColumnName(6)).setPreferredWidth(70);
t.getColumn(t.getColumnName(7)).setPreferredWidth(70);
t.getColumn(t.getColumnName(8)).setPreferredWidth(20);
t.getColumn(t.getColumnName(9)).setPreferredWidth(36);
t.getColumn(t.getColumnName(10)).setPreferredWidth(58);
return t;
}
Aggregations