From: <sou...@us...> - 2006-03-26 07:16:23
|
Revision: 476 Author: soulcatcher Date: 2006-03-25 23:16:10 -0800 (Sat, 25 Mar 2006) ViewCVS: http://svn.sourceforge.net/pcgen/?rev=476&view=rev Log Message: ----------- Equipping is now properly dont acc to the gui standard Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManager.java Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManagerModel.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTemplates.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/SpellModel.java Added Paths: ----------- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTabUtils.java Modified: Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java 2006-03-26 07:16:10 UTC (rev 476) @@ -322,16 +322,16 @@ websiteButton.setEnabled(!SourceUtilities.returnSourceInForm(aCamp, Constants.SOURCEWEB, false).equals("")); StringBuffer sb = new StringBuffer(); + sb.append("<b>") + .append(aCamp.getName()) + .append("</b><br>"); sb.append("<html>"); if(aCamp.getCoverFiles().size() > 0) { CampaignSourceEntry image = (CampaignSourceEntry)aCamp.getCoverFiles().get(0); sb.append("<img src='") .append(image.getFile()) - .append("' align='right'>"); + .append("'><br>"); } - sb.append("<b>") - .append(aCamp.getName()) - .append("</b><br>"); sb.append("<b>TYPE</b>: ") .append(aCamp.getType()); sb.append(" <b>RANK</b>: ") Modified: Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManager.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManager.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManager.java 2006-03-26 07:16:10 UTC (rev 476) @@ -82,6 +82,7 @@ col.setWidth(model.getMColumnDefaultWidth(i + model.getMColumnOffset())); col.setPreferredWidth(model.getMColumnDefaultWidth(i + model.getMColumnOffset())); col.addPropertyChangeListener(new ColumnChangeListener(i + model.getMColumnOffset())); + model.resetMColumn(i + model.getMColumnOffset(), col); colModel.addColumn(col); } } Modified: Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManagerModel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManagerModel.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/TableColumnManagerModel.java 2006-03-26 07:16:10 UTC (rev 476) @@ -2,6 +2,8 @@ import java.util.List; +import javax.swing.table.TableColumn; + /** * Interface to manage table columns */ @@ -46,4 +48,11 @@ * @param width */ public void setMColumnDefaultWidth(int col, int width); + + /** + * Sets any column specific renderers/editors + * @param col + * @param width + */ + public void resetMColumn(int col, TableColumn column); } Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java 2006-03-26 07:16:10 UTC (rev 476) @@ -1011,7 +1011,7 @@ center.add(splitPane, BorderLayout.CENTER); // Top Left Pane - Available Classes - leftPane.add(createFilterPane(avaLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); + leftPane.add(InfoTabUtils.createFilterPane(avaLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); JScrollPane scrollPane = new JScrollPane(availableTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); JButton columnButton = new JButton(); @@ -1052,60 +1052,6 @@ rightPane.add(rightBottomPanel, BorderLayout.SOUTH); } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - int i = 0; - - if(treeLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - } - - if(treeCb != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - } - - if(filterLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - } - - if(filterText != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - } - - if(clearButton != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(0, 2, 0, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - } - return filterPanel; - } - private boolean maybeSetExperience(int xp) { pc.setXP(xp); @@ -2063,6 +2009,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoClasses.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } private class ClassPopupListener extends MouseAdapter Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java 2006-03-26 07:16:10 UTC (rev 476) @@ -826,7 +826,7 @@ splitPane.setDividerLocation(350); center.add(splitPane, BorderLayout.CENTER); - leftPane.add(createFilterPane(new JLabel(PropertyFactory.getString("in_irSortDeities")), viewComboBox, new JLabel("Filter:"), textDeityQFilter, clearDeityQFilterButton), BorderLayout.NORTH); + leftPane.add(InfoTabUtils.createFilterPane(new JLabel(PropertyFactory.getString("in_irSortDeities")), viewComboBox, new JLabel("Filter:"), textDeityQFilter, clearDeityQFilterButton), BorderLayout.NORTH); JScrollPane scrollPane = new JScrollPane(deityTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); JButton columnButton = new JButton(); @@ -848,7 +848,7 @@ rightPane.setLayout(new BorderLayout()); - rightPane.add(createFilterPane(null, null, new JLabel("Filter:"), textDomainQFilter, clearDomainQFilterButton), BorderLayout.NORTH); + rightPane.add(InfoTabUtils.createFilterPane(null, null, new JLabel("Filter:"), textDomainQFilter, clearDomainQFilterButton), BorderLayout.NORTH); JPanel rightBottom = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 1)); domSelected = new JLabel(PropertyFactory.getString("in_domainSelected") + ": "); @@ -879,52 +879,6 @@ rightPane.add(scrollPane2); } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - int i = 0; - - if(treeLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - } - - if(treeCb != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - } - - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - - Utility.buildConstraints(c, i++, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(0, 2, 0, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - - return filterPanel; - } - private void initActionListeners() { addComponentListener(new ComponentAdapter() @@ -2248,6 +2202,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoDomain.deity.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } /** @@ -2458,6 +2417,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoDomain.domain.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java 2006-03-26 07:16:10 UTC (rev 476) @@ -25,7 +25,89 @@ */ package pcgen.gui.tabs; -import pcgen.core.*; +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Component; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentAdapter; +import java.awt.event.ComponentEvent; +import java.awt.event.FocusAdapter; +import java.awt.event.FocusEvent; +import java.awt.event.KeyEvent; +import java.awt.event.KeyListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.io.Serializable; +import java.math.BigDecimal; +import java.net.URL; +import java.util.ArrayList; +import java.util.Collections; +import java.util.EventObject; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.StringTokenizer; + +import javax.swing.BorderFactory; +import javax.swing.DefaultListSelectionModel; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JComponent; +import javax.swing.JFileChooser; +import javax.swing.JLabel; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JPopupMenu; +import javax.swing.JScrollPane; +import javax.swing.JSplitPane; +import javax.swing.JTable; +import javax.swing.JTextField; +import javax.swing.JTree; +import javax.swing.KeyStroke; +import javax.swing.ListSelectionModel; +import javax.swing.ScrollPaneConstants; +import javax.swing.SwingConstants; +import javax.swing.SwingUtilities; +import javax.swing.border.TitledBorder; +import javax.swing.event.CellEditorListener; +import javax.swing.event.ChangeEvent; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; +import javax.swing.table.DefaultTableCellRenderer; +import javax.swing.table.TableCellEditor; +import javax.swing.table.TableColumn; +import javax.swing.tree.TreePath; +import javax.swing.tree.TreeSelectionModel; + +import pcgen.core.Constants; +import pcgen.core.Equipment; +import pcgen.core.EquipmentList; +import pcgen.core.GameMode; +import pcgen.core.Globals; +import pcgen.core.PObject; +import pcgen.core.PlayerCharacter; +import pcgen.core.Race; +import pcgen.core.SettingsHandler; +import pcgen.core.SystemCollections; +import pcgen.core.WeaponProf; import pcgen.core.bonus.BonusObj; import pcgen.core.character.EquipSet; import pcgen.core.character.EquipSlot; @@ -37,36 +119,36 @@ import pcgen.gui.CharacterInfoTab; import pcgen.gui.GuiConstants; import pcgen.gui.PCGen_Frame1; +import pcgen.gui.TableColumnManager; +import pcgen.gui.TableColumnManagerModel; import pcgen.gui.filter.FilterAdapterPanel; import pcgen.gui.filter.FilterConstants; import pcgen.gui.filter.FilterFactory; import pcgen.gui.panes.FlippingSplitPane; -import pcgen.gui.utils.*; +import pcgen.gui.utils.AbstractTreeTableModel; +import pcgen.gui.utils.ClickHandler; +import pcgen.gui.utils.IconUtilitities; +import pcgen.gui.utils.JComboBoxEx; +import pcgen.gui.utils.JLabelPane; +import pcgen.gui.utils.JTreeTable; +import pcgen.gui.utils.JTreeTableMouseAdapter; +import pcgen.gui.utils.JTreeTableSorter; +import pcgen.gui.utils.LabelTreeCellRenderer; +import pcgen.gui.utils.PObjectNode; +import pcgen.gui.utils.ResizeColumnListener; +import pcgen.gui.utils.TreeTableModel; +import pcgen.gui.utils.Utility; import pcgen.io.ExportHandler; -import pcgen.util.*; +import pcgen.util.BigDecimalHelper; +import pcgen.util.FOPHandler; +import pcgen.util.InputFactory; +import pcgen.util.InputInterface; +import pcgen.util.Logging; +import pcgen.util.PropertyFactory; import pcgen.util.chooser.ChooserFactory; import pcgen.util.chooser.ChooserInterface; import pcgen.util.chooser.ChooserRadio; -import javax.swing.*; -import javax.swing.border.TitledBorder; -import javax.swing.event.CellEditorListener; -import javax.swing.event.ChangeEvent; -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; -import javax.swing.table.DefaultTableCellRenderer; -import javax.swing.table.TableCellEditor; -import javax.swing.table.TableColumn; -import javax.swing.tree.TreePath; -import javax.swing.tree.TreeSelectionModel; -import java.awt.*; -import java.awt.event.*; -import java.io.*; -import java.math.BigDecimal; -import java.net.URL; -import java.util.*; -import java.util.List; - /** * <code>InfoEquipping</code> creates a new tabbed panel that is used to * allow different combinations of equipment for printing on csheets @@ -152,6 +234,11 @@ private Map equipAddMap = new HashMap(); private Map equipNotMap = new HashMap(); + private final JLabel lblQFilter = new JLabel("Filter:"); + private JTextField textQFilter = new JTextField(); + private JButton clearQFilterButton = new JButton("Clear"); + private static Integer saveViewMode = null; + private PlayerCharacter pc; private int serial = 0; private boolean readyForRefresh = false; @@ -2913,6 +3000,14 @@ private void initActionListeners() { + // make sure we update when switching tabs + this.addFocusListener(new FocusAdapter() + { + public void focusGained(FocusEvent evt) + { + refresh(); + } + }); addComponentListener(new ComponentAdapter() { public void componentShown(ComponentEvent evt) @@ -3016,6 +3111,28 @@ viewComboBoxActionPerformed(); } }); + textQFilter.getDocument().addDocumentListener(new DocumentListener() + { + public void changedUpdate(DocumentEvent evt) + { + setQFilter(); + } + public void insertUpdate(DocumentEvent evt) + { + setQFilter(); + } + public void removeUpdate(DocumentEvent evt) + { + setQFilter(); + } + }); + clearQFilterButton.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent evt) + { + clearQFilter(); + } + }); } /** @@ -3092,147 +3209,93 @@ } } + buildTopPanel(); + + buildBottomPanel(); + } + + private void buildTopPanel() { // build topPane which will contain leftPane and rightPane // leftPane will have two panels and a scrollregion // rightPane will have one panel and a scrollregion topPane.setLayout(new BorderLayout()); - GridBagLayout gridbag = new GridBagLayout(); - GridBagConstraints c = new GridBagConstraints(); - JPanel leftPane = new JPanel(); - JPanel rightPane = new JPanel(); - leftPane.setLayout(gridbag); - rightPane.setLayout(gridbag); + JPanel leftPane = new JPanel(new BorderLayout()); + JPanel rightPane = new JPanel(new BorderLayout()); splitPane = new FlippingSplitPane(splitOrientation, leftPane, rightPane); splitPane.setOneTouchExpandable(true); splitPane.setDividerSize(10); topPane.add(splitPane, BorderLayout.CENTER); - // build the left pane - // for the availabe spells table and info - Utility.buildConstraints(c, 0, 0, 1, 1, 0, 0); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.NORTH; + leftPane.add(InfoTabUtils.createFilterPane(avaLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); - JPanel aPanel = new JPanel(); - gridbag.setConstraints(aPanel, c); + // the available equipment sets panel + JScrollPane scrollPane = new JScrollPane(availableTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); + JButton columnButton = new JButton(); + scrollPane.setCorner(ScrollPaneConstants.UPPER_RIGHT_CORNER, columnButton); + columnButton.setText("^"); + new TableColumnManager(availableTable, columnButton, availableModel); + leftPane.add(scrollPane, BorderLayout.CENTER); - //aPanel.setBorder(BorderFactory.createEtchedBorder()); - aPanel.add(avaLabel); - aPanel.add(viewComboBox); - + JPanel bottomLeftPane = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 1)); Utility.setDescription(addEquipButton, PropertyFactory.getString("in_ieAddEqBut")); addEquipButton.setEnabled(false); - aPanel.add(addEquipButton); + bottomLeftPane.add(addEquipButton); + Utility.setDescription(bottomLeftPane, PropertyFactory.getString("in_ieAddEqRight")); + leftPane.add(bottomLeftPane, BorderLayout.SOUTH); - Utility.setDescription(aPanel, PropertyFactory.getString("in_ieAddEqRight")); - leftPane.add(aPanel); - - // the available equipment sets panel - Utility.buildConstraints(c, 0, 2, 1, 1, 10, 10); - c.fill = GridBagConstraints.BOTH; - c.anchor = GridBagConstraints.NORTH; - c.ipadx = 1; - - JScrollPane scrollPane = new JScrollPane(availableTable); - gridbag.setConstraints(scrollPane, c); - leftPane.add(scrollPane); - // now build the right pane // for the selected (equipment) table - gridbag = new GridBagLayout(); - c = new GridBagConstraints(); - rightPane.setLayout(gridbag); - - Utility.buildConstraints(c, 0, 0, 1, 1, 0, 0); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.NORTH; - aPanel = new JPanel(); - gridbag.setConstraints(aPanel, c); - - //aPanel.setBorder(BorderFactory.createEtchedBorder()); + JPanel topRightPane = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 1)); JLabel selProfileLabel = new JLabel(PropertyFactory.getString("in_ieEquipSet") + ":"); - aPanel.add(selProfileLabel); - + topRightPane.add(selProfileLabel); equipSetTextField.setPreferredSize(new Dimension(100, 20)); - aPanel.add(equipSetTextField); - + topRightPane.add(equipSetTextField); addEquipSetButton = new JButton(PropertyFactory.getString("in_add")); - - //addEquipSetButton.setPreferredSize(new Dimension(60, 20)); - aPanel.add(addEquipSetButton); - + topRightPane.add(addEquipSetButton); delEquipSetButton = new JButton(PropertyFactory.getString("in_ieDel")); + topRightPane.add(delEquipSetButton); - //delEquipSetButton.setPreferredSize(new Dimension(60, 20)); - aPanel.add(delEquipSetButton); + rightPane.add(topRightPane, BorderLayout.NORTH); - rightPane.add(aPanel); + JScrollPane scrollPane2 = new JScrollPane(selectedTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); + JButton columnButton2 = new JButton(); + scrollPane2.setCorner(ScrollPaneConstants.UPPER_RIGHT_CORNER, columnButton2); + columnButton2.setText("^"); + new TableColumnManager(selectedTable, columnButton2, selectedModel); + rightPane.add(scrollPane2, BorderLayout.CENTER); - Utility.buildConstraints(c, 0, 1, 1, 1, 0, 0); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.NORTH; - - JPanel bPanel = new JPanel(); - gridbag.setConstraints(bPanel, c); - - //bPanel.setBorder(BorderFactory.createEtchedBorder()); - - /****** - ****** - ****** need to continue I18N from here on - ****** - ****** - ******/ + + JPanel bottomRightPane = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 1)); Utility.setDescription(setNoteButton, "Add additional info to this item"); setNoteButton.setEnabled(false); - bPanel.add(setNoteButton); + bottomRightPane.add(setNoteButton); Utility.setDescription(setQtyButton, "Click to change number of items"); setQtyButton.setEnabled(false); - bPanel.add(setQtyButton); + bottomRightPane.add(setQtyButton); Utility.setDescription(delEquipButton, "Click to remove selected equipment from this set"); delEquipButton.setEnabled(false); - bPanel.add(delEquipButton); - rightPane.add(bPanel); + bottomRightPane.add(delEquipButton); + rightPane.add(bottomRightPane, BorderLayout.SOUTH); + + // add the sorter tables to that clicking on the TableHeader + // actualy does something (gawd damn it's slow!) + availableSort = new JTreeTableSorter(availableTable, (MyPONode) availableModel.getRoot(), availableModel); + selectedSort = new JTreeTableSorter(selectedTable, (MyPONode) selectedModel.getRoot(), selectedModel); + } - Utility.buildConstraints(c, 0, 2, 1, 1, 10, 10); - c.fill = GridBagConstraints.BOTH; - c.anchor = GridBagConstraints.NORTH; - c.ipadx = 1; - scrollPane = new JScrollPane(selectedTable); - gridbag.setConstraints(scrollPane, c); - - //scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); - //selectedTable.setShowHorizontalLines(true); - rightPane.add(scrollPane); - - availableTable.setColAlign(COL_TYPE, SwingConstants.RIGHT); - availableTable.setColAlign(COL_QTY, SwingConstants.CENTER); - availableTable.setColAlign(COL_COST, SwingConstants.RIGHT); - availableTable.setColAlign(COL_LOCATION, SwingConstants.RIGHT); - selectedTable.setColAlign(COL_TYPE, SwingConstants.RIGHT); - selectedTable.setColAlign(COL_QTY, SwingConstants.CENTER); - selectedTable.getColumnModel().getColumn(COL_TYPE).setCellRenderer(new ColorRenderer()); - selectedTable.getColumnModel().getColumn(COL_LOCATION).setCellRenderer(new ColorRenderer()); - selectedTable.getColumnModel().getColumn(COL_QTY).setCellEditor(new QuantityEditor()); - selectedTable.getColumnModel().getColumn(COL_COST).setCellEditor(new BonusEditor()); - + private void buildBottomPanel() { // ---------- build Bottom Panel ---------------- // botPane will contain a bLeftPane and a bRightPane // bLeftPane will contain a scrollregion (equipment info) // bRightPane will contain a scrollregion (character Info) botPane.setLayout(new BorderLayout()); - gridbag = new GridBagLayout(); - c = new GridBagConstraints(); - - JPanel bLeftPane = new JPanel(); + JPanel bLeftPane = new JPanel(new BorderLayout()); JPanel bRightPane = new JPanel(); - bLeftPane.setLayout(gridbag); - bRightPane.setLayout(gridbag); asplit = new FlippingSplitPane(JSplitPane.HORIZONTAL_SPLIT, bLeftPane, bRightPane); asplit.setOneTouchExpandable(true); @@ -3242,12 +3305,8 @@ // Bottom left panel // Create a Weight Panel - Utility.buildConstraints(c, 0, 0, 1, 1, 0, 0); - c.fill = GridBagConstraints.BOTH; - c.anchor = GridBagConstraints.CENTER; - JPanel wPanel = new JPanel(); - gridbag.setConstraints(wPanel, c); + JPanel wPanel = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 1)); totalWeight.setEditable(false); totalWeight.setOpaque(false); totalWeight.setBorder(null); @@ -3262,24 +3321,22 @@ wPanel.add(loadWeight); // create an equipment info scroll area - Utility.buildConstraints(c, 0, 1, 1, 1, 2, 2); - c.fill = GridBagConstraints.BOTH; - c.anchor = GridBagConstraints.CENTER; - JScrollPane sScroll = new JScrollPane(); - gridbag.setConstraints(sScroll, c); - TitledBorder sTitle = BorderFactory.createTitledBorder("Equipment Info"); sTitle.setTitleJustification(TitledBorder.CENTER); sScroll.setBorder(sTitle); infoLabel.setBackground(topPane.getBackground()); sScroll.setViewportView(infoLabel); - bLeftPane.add(wPanel); - bLeftPane.add(sScroll); + bLeftPane.add(wPanel, BorderLayout.NORTH); + bLeftPane.add(sScroll, BorderLayout.CENTER); // Bottom right panel // create a template select and view panel + GridBagLayout gridbag = new GridBagLayout(); + GridBagConstraints c = new GridBagConstraints(); + bRightPane.setLayout(gridbag); + Utility.buildConstraints(c, 0, 0, 1, 1, 1, 1); c.fill = GridBagConstraints.HORIZONTAL; c.anchor = GridBagConstraints.WEST; @@ -3333,23 +3390,9 @@ // now add the entire mess (centered of course) this.setLayout(new BorderLayout()); - this.add(bsplit, BorderLayout.CENTER); - - // make sure we update when switching tabs - this.addFocusListener(new FocusAdapter() - { - public void focusGained(FocusEvent evt) - { - refresh(); - } - }); - - // add the sorter tables to that clicking on the TableHeader - // actualy does something (gawd damn it's slow!) - availableSort = new JTreeTableSorter(availableTable, (MyPONode) availableModel.getRoot(), availableModel); - selectedSort = new JTreeTableSorter(selectedTable, (MyPONode) selectedModel.getRoot(), selectedModel); + this.add(bsplit, BorderLayout.CENTER); } - + private final List locationChoices(Equipment eqI, List containers) { // Some Equipment locations are based on the number of hands @@ -3767,6 +3810,42 @@ } } + private void clearQFilter() + { + availableModel.clearQFilter(); + if (saveViewMode != null) + { + viewMode = saveViewMode.intValue(); + saveViewMode = null; + } + availableModel.resetModel(viewMode, MODEL_AVAIL); + clearQFilterButton.setEnabled(false); + viewComboBox.setEnabled(true); + forceRefresh(); + } + + private void setQFilter() + { + String aString = textQFilter.getText(); + + if (aString.length() == 0) + { + clearQFilter(); + return; + } + availableModel.setQFilter(aString); + + if (saveViewMode == null) + { + saveViewMode = new Integer(viewMode); + } + viewMode = GuiConstants.INFOEQUIPPING_VIEW_NAME; + availableModel.resetModel(viewMode, MODEL_AVAIL); + clearQFilterButton.setEnabled(true); + viewComboBox.setEnabled(false); + forceRefresh(); + } + /** * Previews the EquipSets through selected template in the Browser **/ @@ -4099,14 +4178,18 @@ * Leafs are like files and non-leafs are like directories * The leafs contain an Object that we want to know about (Equipment) **/ - private final class EquipModel extends AbstractTreeTableModel + private final class EquipModel extends AbstractTreeTableModel implements TableColumnManagerModel { // if you change/add/remove entries to nameList // you also need to change the static COL_XXX defines // at the begining of this file private String[] avaNameList = new String[]{ "Name", "Type", "Qty", "Weight", "Cost" }; private String[] selNameList = new String[]{ "Item", "Type", "Qty", "Location", "Temp Bonus" }; + private final int[] avaDefaultWidth = { 200, 100, 100, 100, 100, 100 }; + private final int[] selDefaultWidth = { 200, 100, 100, 100, 100, 100 }; + private List displayList = null; + // Types of the columns. private int modelType = MODEL_AVAIL; @@ -4126,6 +4209,18 @@ modelType = model; resetModel(mode, model); + String[] colNameList = getNameList(); + displayList = new ArrayList(); + displayList.add(new Boolean(true)); + displayList.add(new Boolean(getColumnViewOption(modelType + "." + colNameList[1], true))); + displayList.add(new Boolean(getColumnViewOption(modelType + "." + colNameList[2], true))); + displayList.add(new Boolean(getColumnViewOption(modelType + "." + colNameList[3], true))); + if(modelType == 0) { + displayList.add(new Boolean(getColumnViewOption(modelType + "." + colNameList[4], true))); + } + else { + displayList.add(new Boolean(getColumnViewOption(modelType + "." + colNameList[4], false))); + } } /** @@ -4673,15 +4768,22 @@ // just by equipment name case GuiConstants.INFOEQUIPPING_VIEW_NAME: setRoot(avaRoot); + String qFilter = this.getQFilter(); // iterate thru all PC's equip // and fill out the tree for (Iterator fI = pc.getEquipmentMasterList().iterator(); fI.hasNext();) { final Equipment aEq = (Equipment) fI.next(); - MyPONode aFN = new MyPONode(aEq); - aFN.setParent(avaRoot); - avaRoot.addChild(aFN, true); + if (qFilter == null || + ( aEq.getName().toLowerCase().indexOf(qFilter) >= 0 || + aEq.getType().toLowerCase().indexOf(qFilter) >= 0 )) + { + MyPONode aFN = new MyPONode(aEq); + aFN.setParent(avaRoot); + avaRoot.addChild(aFN, true); + } + } break; // end VIEW_NAME @@ -4778,6 +4880,93 @@ fireTreeNodesChanged(super.getRoot(), new TreePath(super.getRoot())); } } + + private String[] getNameList() { + String[] colNameList = null; + if(modelType == MODEL_AVAIL) { + colNameList = avaNameList; + } + else { + colNameList = selNameList; + } + return colNameList; + } + + private int[] getWidthList() { + int[] colWidthList = null; + if(modelType == MODEL_AVAIL) { + colWidthList = avaDefaultWidth; + } + else { + colWidthList = selDefaultWidth; + } + return colWidthList; + } + + public List getMColumnList() { + String[] colNameList = getNameList(); + List retList = new ArrayList(); + for(int i = 1; i < colNameList.length; i++) { + retList.add(colNameList[i]); + } + return retList; + } + + public boolean isMColumnDisplayed(int col) { + return ((Boolean)displayList.get(col)).booleanValue(); + } + + public void setMColumnDisplayed(int col, boolean disp) { + String[] colNameList = getNameList(); + setColumnViewOption(modelType + "." + colNameList[col], disp); + displayList.set(col, new Boolean(disp)); + } + + public int getMColumnOffset() { + return 1; + } + + public int getMColumnDefaultWidth(int col) { + String[] colNameList = getNameList(); + int[] colDefaultWidth = getWidthList(); + return SettingsHandler.getPCGenOption("InfoEquipping.sizecol." + modelType + "." + colNameList[col], colDefaultWidth[col]); + } + + public void setMColumnDefaultWidth(int col, int width) { + String[] colNameList = getNameList(); + SettingsHandler.setPCGenOption("InfoEquipping.sizecol." + modelType + "." + colNameList[col], width); + } + + public void resetMColumn(int num, TableColumn column) { + if(modelType == MODEL_AVAIL) { + + } + else { + switch (num) + { + case COL_TYPE: + column.setCellRenderer(new ColorRenderer()); + break; + case COL_LOCATION: + column.setCellRenderer(new ColorRenderer()); + break; + case COL_QTY: + column.setCellEditor(new QuantityEditor()); + break; + case COL_COST: + column.setCellEditor(new BonusEditor()); + break; + } + } + } + + private boolean getColumnViewOption(String colName, boolean defaultVal) { + return SettingsHandler.getPCGenOption("InfoEquipping.viewcol." + modelType + "." + colName, defaultVal); + } + + private void setColumnViewOption(String colName, boolean val) { + SettingsHandler.setPCGenOption("InfoEquipping.viewcol." + modelType + "." + colName, val); + } } private class EquipPopupListener extends MouseAdapter Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java 2006-03-26 07:16:10 UTC (rev 476) @@ -1229,7 +1229,7 @@ leftPane.setLayout(new BorderLayout()); JLabel avaLabel = new JLabel("Available: "); - leftPane.add(createFilterPane(avaLabel, viewAvailComboBox, lblAvailableQFilter, textAvailableQFilter, clearAvailableQFilterButton), BorderLayout.NORTH); + leftPane.add(InfoTabUtils.createFilterPane(avaLabel, viewAvailComboBox, lblAvailableQFilter, textAvailableQFilter, clearAvailableQFilterButton), BorderLayout.NORTH); JScrollPane scrollPane = new JScrollPane(availableTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); leftPane.add(scrollPane, BorderLayout.CENTER); @@ -1246,7 +1246,7 @@ rightPane.setLayout(new BorderLayout()); JLabel selLabel = new JLabel("Selected: "); - rightPane.add(createFilterPane(selLabel, viewSelectComboBox, lblSelectedQFilter, textSelectedQFilter, clearSelectedQFilterButton), BorderLayout.NORTH); + rightPane.add(InfoTabUtils.createFilterPane(selLabel, viewSelectComboBox, lblSelectedQFilter, textSelectedQFilter, clearSelectedQFilterButton), BorderLayout.NORTH); scrollPane = new JScrollPane(selectedTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); rightPane.add(scrollPane, BorderLayout.CENTER); @@ -1304,45 +1304,6 @@ return panel; } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - - Utility.buildConstraints(c, 0, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - - Utility.buildConstraints(c, 1, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - - Utility.buildConstraints(c, 2, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - - Utility.buildConstraints(c, 3, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - - Utility.buildConstraints(c, 4, 0, 1, 1, 0, 0); - c.insets = new Insets(0, 2, 0, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - - return filterPanel; - } - private void removeFeat() { String aString = null; @@ -1522,7 +1483,17 @@ private static final int MODEL_TYPE_SELECTED = 1; // Names of the columns. - private String[] names = { "Feat", "Type", "Cost", "Mult", "Stack", "Requirements", "Description", "Choices", "Source" }; + private String[] names = { + "Feat", + "Type", + "Cost", + "Mult", + "Stack", + "Requirements", + "Description", + "Choices", + "Source" + }; private int[] widths = { 100, 100, 100, 100, 100, 100, 100, 100, 100 }; // Types of the columns. @@ -1545,15 +1516,17 @@ displayList.add(new Boolean(getColumnViewOption(names[i++], false))); displayList.add(new Boolean(getColumnViewOption(names[i++], false))); displayList.add(new Boolean(getColumnViewOption(names[i++], false))); - displayList.add(new Boolean(getColumnViewOption(names[i++], false))); - displayList.add(new Boolean(getColumnViewOption(names[i++], false))); if(available) { - displayList.add(new Boolean(getColumnViewOption(names[i++], false))); displayList.add(new Boolean(getColumnViewOption(names[i++], true))); + displayList.add(new Boolean(getColumnViewOption(names[i++], false))); + displayList.add(new Boolean(getColumnViewOption(names[i++], false))); + displayList.add(new Boolean(getColumnViewOption(names[i++], false))); } else { + displayList.add(new Boolean(getColumnViewOption(names[i++], false))); + displayList.add(new Boolean(getColumnViewOption(names[i++], false))); displayList.add(new Boolean(getColumnViewOption(names[i++], true))); displayList.add(new Boolean(getColumnViewOption(names[i++], false))); } @@ -2405,6 +2378,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoFeats.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } private class FeatPopupListener extends MouseAdapter Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java 2006-03-26 07:16:10 UTC (rev 476) @@ -1233,45 +1233,7 @@ return riPanel; } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - Utility.buildConstraints(c, 0, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - - Utility.buildConstraints(c, 1, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - - Utility.buildConstraints(c, 2, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - - Utility.buildConstraints(c, 3, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - - Utility.buildConstraints(c, 4, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - - return filterPanel; - } - /** * Creates the EquipmentModel that will be used. **/ @@ -2040,7 +2002,7 @@ leftPane.setLayout(new BorderLayout()); JLabel avaLabel = new JLabel("Available: "); - leftPane.add(createFilterPane(avaLabel, viewComboBox, lblAvailableQFilter, textAvailableQFilter, clearAvailableQFilterButton), BorderLayout.NORTH); + leftPane.add(InfoTabUtils.createFilterPane(avaLabel, viewComboBox, lblAvailableQFilter, textAvailableQFilter, clearAvailableQFilterButton), BorderLayout.NORTH); JScrollPane scrollPane = new JScrollPane(availableTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); leftPane.add(scrollPane, BorderLayout.CENTER); @@ -2061,7 +2023,7 @@ rightPane.setLayout(new BorderLayout()); JLabel selLabel = new JLabel("Selected: "); - rightPane.add(createFilterPane(selLabel, viewSelectComboBox, lblSelectedQFilter, textSelectedQFilter, clearSelectedQFilterButton), BorderLayout.NORTH); + rightPane.add(InfoTabUtils.createFilterPane(selLabel, viewSelectComboBox, lblSelectedQFilter, textSelectedQFilter, clearSelectedQFilterButton), BorderLayout.NORTH); scrollPane = new JScrollPane(selectedTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); rightPane.add(scrollPane, BorderLayout.CENTER); @@ -3909,6 +3871,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoGear.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } private static final class QuantityEditor extends JTextField implements TableCellEditor Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java 2006-03-26 07:16:10 UTC (rev 476) @@ -697,7 +697,7 @@ mainPane.setLayout(new BorderLayout()); topPane.add(mainPane, BorderLayout.CENTER); - mainPane.add(createFilterPane(sortLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); + mainPane.add(InfoTabUtils.createFilterPane(sortLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); JScrollPane scrollPane = new JScrollPane(raceTable); raceTable.setColAlign(3, SwingConstants.CENTER); @@ -749,60 +749,6 @@ botPane.add(scroll); } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - int i = 0; - - if(treeLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - } - - if(treeCb != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - } - - if(filterLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - } - - if(filterText != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - } - - if(clearButton != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(0, 2, 0, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - } - return filterPanel; - } - /** * selectes the race **/ @@ -1669,6 +1615,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoRaces.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } private class RacePopupListener extends MouseAdapter Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java 2006-03-26 07:16:10 UTC (rev 476) @@ -526,45 +526,6 @@ return new ExclusiveSkillFilter(); } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - - Utility.buildConstraints(c, 0, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - - Utility.buildConstraints(c, 1, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - - Utility.buildConstraints(c, 2, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - - Utility.buildConstraints(c, 3, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - - Utility.buildConstraints(c, 4, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - - return filterPanel; - } - /** * Creates the ClassModel that will be used. */ @@ -1224,7 +1185,7 @@ // Top Left - Available leftPane.setLayout(new BorderLayout()); - leftPane.add(createFilterPane(avaLabel, viewComboBox, lblAvailableQFilter, textAvailableQFilter, clearAvailableQFilterButton), BorderLayout.NORTH); + leftPane.add(InfoTabUtils.createFilterPane(avaLabel, viewComboBox, lblAvailableQFilter, textAvailableQFilter, clearAvailableQFilterButton), BorderLayout.NORTH); JScrollPane scrollPane = new JScrollPane(availableTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); leftPane.add(scrollPane, BorderLayout.CENTER); @@ -1240,7 +1201,7 @@ // Right Pane - Selected rightPane.setLayout(new BorderLayout()); - rightPane.add(createFilterPane(selLabel, viewSelectComboBox, lblSelectedQFilter, textSelectedQFilter, clearSelectedQFilterButton), BorderLayout.NORTH); + rightPane.add(InfoTabUtils.createFilterPane(selLabel, viewSelectComboBox, lblSelectedQFilter, textSelectedQFilter, clearSelectedQFilterButton), BorderLayout.NORTH); scrollPane = new JScrollPane(selectedTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); rightPane.add(scrollPane, BorderLayout.CENTER); @@ -3097,6 +3058,11 @@ private boolean getColumnViewOption(String colName, boolean defaultVal) { return SettingsHandler.getPCGenOption("InfoSkills.viewcol." + colName, defaultVal); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } Added: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTabUtils.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTabUtils.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTabUtils.java 2006-03-26 07:16:10 UTC (rev 476) @@ -0,0 +1,75 @@ +package pcgen.gui.tabs; + +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.JButton; +import javax.swing.JComboBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; + +import pcgen.gui.GuiConstants; +import pcgen.gui.utils.Utility; + +public class InfoTabUtils { + public static JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) + { + GridBagConstraints c = new GridBagConstraints(); + JPanel filterPanel = new JPanel(new GridBagLayout()); + int i = 0; + + if(treeLabel != null) + { + Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); + c.insets = new Insets(1, 2, 1, 2); + c.fill = GridBagConstraints.NONE; + c.anchor = GridBagConstraints.LINE_START; + filterPanel.add(treeLabel, c); + } + + if(treeCb != null) + { + Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); + c.insets = new Insets(1, 2, 1, 2); + c.fill = GridBagConstraints.NONE; + c.anchor = GridBagConstraints.LINE_START; + filterPanel.add(treeCb, c); + } + + if(filterLabel != null) + { + Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); + c.insets = new Insets(1, 2, 1, 2); + c.fill = GridBagConstraints.NONE; + c.anchor = GridBagConstraints.LINE_START; + filterPanel.add(filterLabel, c); + } + + if(filterText != null) + { + Utility.buildConstraints(c, i++, 0, 1, 1, 95, 0); + c.insets = new Insets(1, 2, 1, 2); + c.fill = GridBagConstraints.HORIZONTAL; + c.anchor = GridBagConstraints.LINE_START; + filterPanel.add(filterText, c); + } + + if(clearButton != null) + { + Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); + c.insets = new Insets(0, 2, 0, 2); + c.fill = GridBagConstraints.NONE; + c.anchor = GridBagConstraints.LINE_START; + clearButton.setEnabled(false); + filterPanel.add(clearButton, c); + } + return filterPanel; + } + +} Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTemplates.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTemplates.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTemplates.java 2006-03-26 07:16:10 UTC (rev 476) @@ -448,7 +448,7 @@ // - available templates // Header - leftPane.add(createFilterPane(sortLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); + leftPane.add(InfoTabUtils.createFilterPane(sortLabel, viewComboBox, lblQFilter, textQFilter, clearQFilterButton), BorderLayout.NORTH); // Data - All Available Templates Table availablePane = new JScrollPane(availableTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); @@ -471,7 +471,7 @@ // - selected templates // Header - rightPane.add(createFilterPane(selSortLabel, viewSelComboBox, null, null, null), BorderLayout.NORTH); + rightPane.add(InfoTabUtils.createFilterPane(selSortLabel, viewSelComboBox, null, null, null), BorderLayout.NORTH); // Data - Selected Templates table selectedPane = new JScrollPane(selectedTable, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); @@ -510,60 +510,6 @@ mainPane.add(scroll); } - private JPanel createFilterPane(JLabel treeLabel, JComboBox treeCb, JLabel filterLabel, JTextField filterText, JButton clearButton) - { - GridBagConstraints c = new GridBagConstraints(); - JPanel filterPanel = new JPanel(new GridBagLayout()); - int i = 0; - - if(treeLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeLabel, c); - } - - if(treeCb != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(treeCb, c); - } - - if(filterLabel != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterLabel, c); - } - - if(filterText != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 95, 0); - c.insets = new Insets(1, 2, 1, 2); - c.fill = GridBagConstraints.HORIZONTAL; - c.anchor = GridBagConstraints.LINE_START; - filterPanel.add(filterText, c); - } - - if(clearButton != null) - { - Utility.buildConstraints(c, i++, 0, 1, 1, 0, 0); - c.insets = new Insets(0, 2, 0, 2); - c.fill = GridBagConstraints.NONE; - c.anchor = GridBagConstraints.LINE_START; - clearButton.setEnabled(false); - filterPanel.add(clearButton, c); - } - return filterPanel; - } - public void setPc(PlayerCharacter pc) { if(this.pc != pc || pc.getSerial() > serial) @@ -1394,6 +1340,11 @@ private void setColumnViewOption(String colName, boolean val) { SettingsHandler.setPCGenOption("InfoTemplates.viewcol." + colName, val); } + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } private class TemplatePopupListener extends MouseAdapter Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/SpellModel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/SpellModel.java 2006-03-26 07:11:59 UTC (rev 475) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/SpellModel.java 2006-03-26 07:16:10 UTC (rev 476) @@ -26,6 +26,7 @@ import java.util.Iterator; import java.util.List; +import javax.swing.table.TableColumn; import javax.swing.tree.TreePath; import pcgen.core.CharacterDomain; @@ -1182,4 +1183,10 @@ } return nameSb.toString(); } + + + public void resetMColumn(int col, TableColumn column) { + // TODO Auto-generated method stub + + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |