// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.plugins.tageditor.tagspec.ui; import javax.swing.JTable; import javax.swing.ListSelectionModel; import javax.swing.table.TableColumnModel; import javax.swing.table.TableModel; public class TagsTable extends JTable { /** * initialize the table */ protected void init() { setAutoResizeMode(JTable.AUTO_RESIZE_OFF); setRowSelectionAllowed(true); setSelectionMode(ListSelectionModel.SINGLE_SELECTION); } public TagsTable(TableModel model, TableColumnModel columnModel) { super(model, columnModel); init(); } /** * adjusts the width of the columns for the tag name and the tag value * to the width of the scroll panes viewport. * * Note: {@see #getPreferredScrollableViewportSize()} did not work as expected * * @param scrollPaneWidth the width of the scroll panes viewport */ public void adjustColumnWidth(int scrollPaneWidth) { TableColumnModel tcm = getColumnModel(); int width = scrollPaneWidth; width = width / 2; if (width > 0) { tcm.getColumn(0).setMinWidth(width); tcm.getColumn(0).setMaxWidth(width); tcm.getColumn(1).setMinWidth(width); tcm.getColumn(1).setMaxWidth(width); } } }