X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=core%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Fgui%2Fdialogs%2Fpreset%2FComponentPresetTable.java;h=cad447f1d669aac2d05405e192a89e4c8b5d9143;hb=2bddccc8c2e80651f15e0b6c22c23f113c17610a;hp=175e08585095c9d0733493d4c07890a825d8ed21;hpb=5dae291b96c5e0870c82a4907039f5fc19ebc7dc;p=debian%2Fopenrocket diff --git a/core/src/net/sf/openrocket/gui/dialogs/preset/ComponentPresetTable.java b/core/src/net/sf/openrocket/gui/dialogs/preset/ComponentPresetTable.java index 175e0858..cad447f1 100644 --- a/core/src/net/sf/openrocket/gui/dialogs/preset/ComponentPresetTable.java +++ b/core/src/net/sf/openrocket/gui/dialogs/preset/ComponentPresetTable.java @@ -8,6 +8,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; +import java.util.Set; import javax.swing.JCheckBoxMenuItem; import javax.swing.JMenu; @@ -38,13 +39,17 @@ public class ComponentPresetTable extends JTable { private final TableRowSorter sorter; private List presets; + private final ComponentPreset.Type presetType; + private Set favorites; private final AbstractTableModel tableModel; private final XTableColumnModel tableColumnModel; private final ComponentPresetTableColumn[] columns; - public ComponentPresetTable(List presets, List> visibleColumnKeys) { + public ComponentPresetTable(final ComponentPreset.Type presetType, List presets, List> visibleColumnKeys) { super(); this.presets = presets; + this.presetType = presetType; + this.favorites = Application.getPreferences().getComponentFavorites(presetType); this.columns = new ComponentPresetTableColumn[ComponentPreset.ORDERED_KEY_LIST.size()+1]; @@ -62,7 +67,7 @@ public class ComponentPresetTable extends JTable { @Override public Object getValueAt(int rowIndex, int columnIndex) { - return myColumns[columnIndex].getValueFromPreset(ComponentPresetTable.this.presets.get(rowIndex)); + return myColumns[columnIndex].getValueFromPreset(favorites,ComponentPresetTable.this.presets.get(rowIndex)); } @Override @@ -72,7 +77,8 @@ public class ComponentPresetTable extends JTable { return; } ComponentPreset preset = ComponentPresetTable.this.presets.get(rowIndex); - Application.getComponentPresetDao().setFavorite(preset, (Boolean) aValue); + Application.getComponentPresetDao().setFavorite(preset, presetType, (Boolean) aValue); + ComponentPresetTable.this.updateFavorites(); } @Override @@ -164,9 +170,15 @@ public class ComponentPresetTable extends JTable { public void updateData( List presets ) { this.presets = presets; + this.favorites = Application.getPreferences().getComponentFavorites(presetType); this.tableModel.fireTableDataChanged(); } + public void updateFavorites() { + this.favorites = Application.getPreferences().getComponentFavorites(presetType); + this.tableModel.fireTableDataChanged(); + } + private void doPopup(MouseEvent evt ) { // Figure out what column header was clicked on.