Changeset 2145 in josm for trunk/src/org/openstreetmap/josm/gui
- Timestamp:
- 2009-09-16T17:45:50+02:00 (17 years ago)
- Location:
- trunk/src/org/openstreetmap/josm/gui/dialogs
- Files:
-
- 2 edited
-
FilterDialog.java (modified) (6 diffs)
-
PropertiesDialog.java (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java
r2125 r2145 6 6 import static org.openstreetmap.josm.tools.I18n.trn; 7 7 8 import javax.swing.JCheckBox; 8 9 import javax.swing.JPanel; 9 10 import javax.swing.JTable; 10 11 import javax.swing.table.JTableHeader; 12 import javax.swing.table.DefaultTableCellRenderer; 13 import javax.swing.event.TableModelListener; 14 import javax.swing.event.TableModelEvent; 15 import javax.swing.table.TableCellRenderer; 11 16 import javax.swing.ListSelectionModel; 12 17 import javax.swing.JPopupMenu; 13 import javax.swing.table.AbstractTableModel;14 18 import javax.swing.JScrollPane; 15 19 20 import java.awt.Component; 16 21 import java.awt.FlowLayout; 17 22 import java.awt.BorderLayout; … … 38 43 * @author Petr_Dlouhý 39 44 */ 40 public class FilterDialog extends ToggleDialog implements DataChangeListener, LayerChangeListener { 45 public class FilterDialog extends ToggleDialog implements DataChangeListener, LayerChangeListener, TableModelListener { 41 46 private JTable userTable; 42 47 private Filters filters = new Filters(); … … 121 126 122 127 protected String[] columnToolTips = { 123 tr("Filter elements"), 124 tr("Disable elements"), 128 tr("Enable filter"), 129 tr("Hide elements"), 130 null, 125 131 tr("Apply also for children"), 126 132 tr("Inverse filter"), 127 null,128 133 tr("Filter mode") 129 134 }; … … 145 150 } 146 151 }; 147 152 153 filters.addTableModelListener(this); 154 148 155 userTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); 149 156 … … 160 167 userTable.getColumnModel().getColumn(5).setResizable(false); 161 168 169 userTable.setDefaultRenderer(Boolean.class, new BooleanRenderer()); 170 userTable.setDefaultRenderer(String.class, new StringRenderer()); 171 172 tableChanged(null); 173 162 174 pnl.add(new JScrollPane(userTable), BorderLayout.CENTER); 163 175 … … 187 199 filters.filter(); 188 200 } 201 202 class StringRenderer extends DefaultTableCellRenderer { 203 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,int row,int column) { 204 Filters model = (Filters)table.getModel(); 205 Component cell = (Component)super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); 206 cell.setEnabled(model.isCellEnabled(row, column)); 207 return cell; 208 } 209 } 210 211 class BooleanRenderer extends JCheckBox implements TableCellRenderer { 212 public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,int row,int column) { 213 Filters model = (Filters)table.getModel(); 214 setSelected((Boolean)value); 215 setEnabled(model.isCellEnabled(row, column)); 216 setHorizontalAlignment(javax.swing.SwingConstants.CENTER); 217 return this; 218 } 219 } 220 221 public void tableChanged(TableModelEvent e){ 222 setTitle("Filter Hidden:" + filters.hiddenCount + " Disabled:" + filters.disabledCount); 223 } 189 224 } -
trunk/src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java
r2120 r2145 750 750 if (Main.main.getCurrentDataSet() != null) { 751 751 for (Relation r : Main.main.getCurrentDataSet().relations) { 752 if (!r.isFiltered() && r.isUsable()) {752 if (!r.isFiltered() && !r.incomplete && !r.isDeleted()) { 753 753 for (RelationMember m : r.getMembers()) { 754 754 if (newSelection.contains(m.getMember())) {
Note:
See TracChangeset
for help on using the changeset viewer.
