From: <za...@us...> - 2006-07-31 12:56:13
|
Revision: 1238 Author: zaister Date: 2006-07-31 05:55:21 -0700 (Mon, 31 Jul 2006) ViewCVS: http://svn.sourceforge.net/pcgen/?rev=1238&view=rev Log Message: ----------- Replace TAB_xxx constants with Java 5 style enumeration. Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/Ability.java Trunk/pcgen/code/src/java/pcgen/core/Constants.java Trunk/pcgen/code/src/java/pcgen/core/GameMode.java Trunk/pcgen/code/src/java/pcgen/core/Globals.java Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java Trunk/pcgen/code/src/java/pcgen/gui/PToolBar.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDescription.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/InfoInventory.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoNaturalWeapons.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRace.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoResources.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpecialAbilities.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpells.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTempMod.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoTemplates.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/TabUtils.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/InfoKnownSpells.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/InfoPreparedSpells.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/InfoSpellBooks.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/spells/InfoSpellsSubTab.java Trunk/pcgen/code/src/java/plugin/lsttokens/gamemode/ShowtabToken.java Trunk/pcgen/code/src/java/plugin/lsttokens/gamemode/tab/ContextToken.java Trunk/pcgen/code/src/java/plugin/lsttokens/gamemode/tab/NameToken.java Trunk/pcgen/code/src/java/plugin/lsttokens/gamemode/tab/StattablehiddencolumnsToken.java Trunk/pcgen/code/src/java/plugin/lsttokens/gamemode/tab/TabToken.java Trunk/pcgen/code/src/java/plugin/lsttokens/gamemode/tab/VisibleToken.java Trunk/pcgen/code/src/java/plugin/pretokens/test/PreFeatTester.java Trunk/pcgen/code/src/test/pcgen/PCGenTestCase.java Added Paths: ----------- Trunk/pcgen/code/src/java/pcgen/util/enumeration/Tab.java Modified: Trunk/pcgen/code/src/java/pcgen/core/Ability.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Ability.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/core/Ability.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -31,6 +31,7 @@ import pcgen.core.utils.ShowMessageDelegate; import pcgen.core.utils.StringKey; import pcgen.util.Logging; +import pcgen.util.enumeration.Tab; import pcgen.util.chooser.ChooserFactory; import pcgen.util.chooser.ChooserInterface; @@ -924,7 +925,7 @@ chooser.setPool(1); chooser.setTitle("Select a " - + SettingsHandler.getGame().getSingularTabName(Constants.TAB_ABILITIES) + + SettingsHandler.getGame().getSingularTabName(Tab.ABILITIES) + " to modify"); Globals.sortChooserLists(abilityList, selectedList); Modified: Trunk/pcgen/code/src/java/pcgen/core/Constants.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Constants.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/core/Constants.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -126,32 +126,6 @@ /** Type: SPELLBOOK */ String s_TYPE_SPELLBOOK= "SPELLBOOK"; - /** Tab names */ - String[] tabNames = - { - "Abilities", - "Campaigns", - "Class", - "Description", - "Domains", - "Feats", - "Inventory", - "Race", - "Skills", - "Spells", - "Summary", - "Gear", - "Equipping", - "Resources", - "TempMod", - "NaturalWeapons", - "Known", - "Prepared", - "Spellbooks", - "Races", - "Templates" - }; - // Encumberence Constants (String) /** LIGHT */ String s_LOAD_LIGHT = "LIGHT"; @@ -320,53 +294,6 @@ /** 4 */ int SOURCEDATE = 5; - // Tabs - /** -1 */ - int TAB_INVALID = -1; - /** 0 */ - int TAB_SABILITIES = 0; - /** 1 */ - int TAB_SOURCES = 1; - /** 2 */ - int TAB_CLASSES = 2; - /** 3 */ - int TAB_DESCRIPTION = 3; - /** 4 */ - int TAB_DOMAINS = 4; - /** 5 */ - int TAB_ABILITIES = 5; - /** 6 */ - int TAB_INVENTORY = 6; - /** 7 */ - int TAB_RACE_MASTER = 7; - /** 8 */ - int TAB_SKILLS = 8; - /** 9 */ - int TAB_SPELLS = 9; - /** 10 */ - int TAB_SUMMARY = 10; - /** 11 */ - int TAB_GEAR = 11; - /** 12 */ - int TAB_EQUIPPING = 12; - /** 13 */ - int TAB_RESOURCES = 13; - /** 14 */ - int TAB_TEMPBONUS = 14; - /** 15 */ - int TAB_NATWEAPONS = 15; - /** 16 */ - int TAB_KNOWN_SPELLS = 16; - /** 17 */ - int TAB_PREPARED_SPELLS = 17; - /** 18 */ - int TAB_SPELLBOOKS = 18; - /** 19 */ - int TAB_RACES = 19; - /** 20 */ - int TAB_TEMPLATES = 20; - - /** For accessing <code>CategorisableStore</code>. */ String ALL_CATEGORIES = "ALL"; // TODO: this is broken in some sad way whereby if you change the case Modified: Trunk/pcgen/code/src/java/pcgen/core/GameMode.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -31,9 +31,18 @@ import pcgen.util.ComparableComparator; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; -import java.util.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.SortedMap; +import java.util.StringTokenizer; +import java.util.TreeMap; + /** * Handles game modes. * @@ -97,7 +106,7 @@ private String rankModFormula = ""; private String addWithMetamagic = ""; private SortedMap<String, RuleCheck> ruleCheckMap = new TreeMap<String, RuleCheck>(); - private TabInfo[] tInfo; + private Map<Tab,TabInfo> tInfo = new HashMap<Tab,TabInfo>(); private boolean allowAutoResize = false; private boolean showClassDefense; private int babAttCyc = 5; //6 @@ -156,7 +165,7 @@ private String statDisplayTextAppend = "+"; private TreeMap<Integer, String> skillRankDisplayText = null; - private boolean [] summaryTabStatColumnVisible; + private boolean [] summaryTabStatColumnVisible = { true, true, true, true, true, true, true }; /** @@ -168,31 +177,12 @@ { name = modeName; - tInfo = new TabInfo[Constants.tabNames.length]; - summaryTabStatColumnVisible = new boolean[Constants.tabNames.length]; - - for (int i = 0; i < tInfo.length; ++i) + for (Tab aTab : Tab.values()) { - tInfo[i] = new TabInfo(); - summaryTabStatColumnVisible[i] = true; + TabInfo ti = new TabInfo(); + ti.tabName = aTab.label(); + tInfo.put(aTab, ti); } - - tInfo[Constants.TAB_SABILITIES].tabName = "in_specialabilities"; - tInfo[Constants.TAB_CLASSES].tabName = "in_class"; - tInfo[Constants.TAB_DESCRIPTION].tabName = "in_descrip"; - tInfo[Constants.TAB_DOMAINS].tabName = "in_domains"; - tInfo[Constants.TAB_ABILITIES].tabName = "in_feats"; - tInfo[Constants.TAB_INVENTORY].tabName = "in_inventory"; - tInfo[Constants.TAB_RACE_MASTER].tabName = "in_race"; - tInfo[Constants.TAB_SKILLS].tabName = "in_skills"; - tInfo[Constants.TAB_SPELLS].tabName = "in_spells"; - tInfo[Constants.TAB_SUMMARY].tabName = "in_summary"; - tInfo[Constants.TAB_SOURCES].tabName = "Source Materials"; - tInfo[Constants.TAB_KNOWN_SPELLS].tabName = "in_known_spells"; - tInfo[Constants.TAB_PREPARED_SPELLS].tabName = "in_prepared_spells"; - tInfo[Constants.TAB_SPELLBOOKS].tabName = "in_spellbooks"; - tInfo[Constants.TAB_RACES].tabName = "in_races"; - tInfo[Constants.TAB_TEMPLATES].tabName = "in_templates"; } /** @@ -428,17 +418,12 @@ /** * Get the Context Path - * @param iTab + * @param aTab * @return Context Path */ - public String getContextPath(final int iTab) + public String getContextPath(final Tab aTab) { - if ((iTab >= 0) && (iTab < tInfo.length)) - { - return tInfo[iTab].contextPath; - } - - return ""; + return tInfo.get(aTab).contextPath; } /** @@ -870,32 +855,32 @@ /** * Set the context for a tab - * @param iTab + * @param aTab * @param argTabContext */ - public void setTabContext(final int iTab, final String argTabContext) + public void setTabContext(final Tab aTab, final String argTabContext) { - tInfo[iTab].contextPath = argTabContext; + tInfo.get(aTab).contextPath = argTabContext; } /** * Set the name of the tab - * @param iTab + * @param aTab * @param argTabName */ - public void setTabName(final int iTab, final String argTabName) + public void setTabName(final Tab aTab, final String argTabName) { - tInfo[iTab].tabName = argTabName; + tInfo.get(aTab).tabName = argTabName; } /** * Get the name of the tab - * @param iTab + * @param aTab * @return tab name */ - public String getTabName(final int iTab) + public String getTabName(final Tab aTab) { - String temp = tInfo[iTab].tabName; + String temp = tInfo.get(aTab).tabName; if (temp.startsWith("in_")) { @@ -907,12 +892,12 @@ /** * Get the singular (e.g. No 's') verson of the tab name - * @param iTab + * @param aTab * @return the singular (e.g. No 's') verson of the tab name */ - public String getSingularTabName(final int iTab) + public String getSingularTabName(final Tab aTab) { - String singularName = getTabName(iTab); + String singularName = getTabName(aTab); if (singularName.endsWith("s")) { singularName = singularName.substring(0, singularName.length() - 1); @@ -925,17 +910,17 @@ * @param tabName * @return tab number */ - public static int getTabNumber(final String tabName) + public static Tab getTab(final String tabName) { - for (int i = 0; i < Constants.tabNames.length; ++i) + for (Tab aTab : Tab.values()) { - if (tabName.equalsIgnoreCase(Constants.tabNames[i])) + if (tabName.equalsIgnoreCase(aTab.toString())) { - return i; + return aTab; } } - return Constants.TAB_INVALID; + return Tab.INVALID; } /** @@ -994,27 +979,22 @@ /** * True if the tab is visible - * @param iTab + * @param aTab * @return True if the tab is visible */ - public boolean getTabShown(final int iTab) + public boolean getTabShown(final Tab aTab) { - if ((iTab >= 0) && (iTab < tInfo.length)) - { - return tInfo[iTab].visible; - } - - return false; + return tInfo.get(aTab).visible; } /** * Set the visibility of a tab - * @param iTab + * @param aTab * @param visible */ - public void setTabVisible(final int iTab, final boolean visible) + public void setTabVisible(final Tab aTab, final boolean visible) { - tInfo[iTab].visible = visible; + tInfo.get(aTab).visible = visible; } /** @@ -1628,8 +1608,8 @@ private static class TabInfo { - String contextPath = ""; String tabName = ""; + String contextPath = ""; boolean visible = true; } Modified: Trunk/pcgen/code/src/java/pcgen/core/Globals.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Globals.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/core/Globals.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -58,6 +58,7 @@ import pcgen.util.Logging; import pcgen.util.chooser.ChooserFactory; import pcgen.util.chooser.ChooserInterface; +import pcgen.util.enumeration.Tab; import pcgen.util.enumeration.Visibility; import pcgen.util.PropertyFactory; @@ -1101,7 +1102,7 @@ */ public static boolean getGameModeShowSpellTab() { - return SettingsHandler.getGame().getTabShown(Constants.TAB_SPELLS); + return SettingsHandler.getGame().getTabShown(Tab.SPELLS); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/MainSource.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -100,6 +100,7 @@ import pcgen.util.Logging; import pcgen.util.PropertyFactory; import pcgen.util.SwingWorker; +import pcgen.util.enumeration.Tab; /** * <code>MainSource</code> . @@ -187,7 +188,7 @@ { // do not remove this // we will use the component's name to save component specific settings - setName(Constants.tabNames[Constants.TAB_SOURCES]); + setName(Tab.SOURCES.toString()); try { Modified: Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -26,6 +26,57 @@ */ package pcgen.gui; +import java.awt.AWTEvent; +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Cursor; +import java.awt.Dimension; +import java.awt.EventQueue; +import java.awt.FlowLayout; +import java.awt.Frame; +import java.awt.MenuComponent; +import java.awt.MenuContainer; +import java.awt.Point; +import java.awt.Toolkit; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentEvent; +import java.awt.event.FocusListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.event.WindowEvent; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; +import java.io.File; +import java.io.FilenameFilter; +import java.io.IOException; +import java.util.ArrayList; +import java.util.EmptyStackException; +import java.util.EventObject; +import java.util.List; +import java.util.Observable; +import java.util.Observer; + +import javax.swing.Box; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JCheckBoxMenuItem; +import javax.swing.JDialog; +import javax.swing.JFileChooser; +import javax.swing.JFrame; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JOptionPane; +import javax.swing.JPanel; +import javax.swing.JTabbedPane; +import javax.swing.SwingUtilities; +import javax.swing.WindowConstants; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import javax.swing.filechooser.FileFilter; +import javax.swing.plaf.TabbedPaneUI; + import gmgen.GMGenSystem; import gmgen.plugin.InitHolder; import gmgen.plugin.InitHolderList; @@ -34,8 +85,30 @@ import gmgen.pluginmgr.GMBMessage; import gmgen.pluginmgr.GMBus; import gmgen.pluginmgr.PluginLoader; -import gmgen.pluginmgr.messages.*; -import pcgen.core.*; +import gmgen.pluginmgr.messages.FetchOpenPCGRequestMessage; +import gmgen.pluginmgr.messages.FileTypeMessage; +import gmgen.pluginmgr.messages.InitHolderListSendMessage; +import gmgen.pluginmgr.messages.NewMessage; +import gmgen.pluginmgr.messages.OpenMessage; +import gmgen.pluginmgr.messages.OpenPCGRequestMessage; +import gmgen.pluginmgr.messages.PauseRefreshMessage; +import gmgen.pluginmgr.messages.PCClosedMessage; +import gmgen.pluginmgr.messages.PCLoadedMessage; +import gmgen.pluginmgr.messages.ResumeRefreshMessage; +import gmgen.pluginmgr.messages.SaveMessage; +import gmgen.pluginmgr.messages.SavePCGNotificationMessage; +import gmgen.pluginmgr.messages.SavePCGRequestMessage; +import gmgen.pluginmgr.messages.StateChangedMessage; +import gmgen.pluginmgr.messages.TabAddMessage; +import gmgen.pluginmgr.messages.WindowClosedMessage; + +import pcgen.core.Constants; +import pcgen.core.CustomData; +import pcgen.core.Equipment; +import pcgen.core.GameMode; +import pcgen.core.Globals; +import pcgen.core.PlayerCharacter; +import pcgen.core.SettingsHandler; import pcgen.core.character.Follower; import pcgen.core.party.PCLoader; import pcgen.core.party.Party; @@ -44,28 +117,19 @@ import pcgen.gui.filter.FilterDialogFactory; import pcgen.gui.filter.FilterFactory; import pcgen.gui.filter.Filterable; -import pcgen.gui.utils.*; +import pcgen.gui.utils.BrowserLauncher; +import pcgen.gui.utils.IconUtilitities; +import pcgen.gui.utils.JOpenRecentMenu; +import pcgen.gui.utils.LinkableHtmlMessage; +import pcgen.gui.utils.Utility; import pcgen.io.PCGIOHandler; import pcgen.io.PCGFile; import pcgen.util.FOPResourceChecker; import pcgen.util.JEPResourceChecker; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; -import javax.swing.*; -import javax.swing.event.ChangeEvent; -import javax.swing.event.ChangeListener; -import javax.swing.filechooser.FileFilter; -import javax.swing.plaf.TabbedPaneUI; -import java.awt.*; -import java.awt.event.*; -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; -import java.io.File; -import java.io.FilenameFilter; -import java.io.IOException; -import java.util.*; -import java.util.List; // WIP please leave boomer70 //import pcgen.core.npcgen.NPCGenerator; @@ -2119,9 +2183,9 @@ GameMode game = SettingsHandler.getGame(); mainSource = new MainSource(); - if ((game != null) && (game.getTabShown(Constants.TAB_SOURCES))) + if ((game != null) && (game.getTabShown(Tab.SOURCES))) { - baseTabbedPane.addTab(game.getTabName(Constants.TAB_SOURCES), mainSource); + baseTabbedPane.addTab(game.getTabName(Tab.SOURCES), mainSource); baseTabbedPane.setToolTipTextAt(0, SettingsHandler.isToolTipTextShown() ? MainSource.SOURCE_MATERIALS_TAB : null); } Modified: Trunk/pcgen/code/src/java/pcgen/gui/PToolBar.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/PToolBar.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/PToolBar.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -26,7 +26,29 @@ */ package pcgen.gui; -import pcgen.core.Constants; +import java.awt.Component; +import java.awt.Dimension; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ComponentAdapter; +import java.awt.event.ComponentEvent; +import java.awt.event.ComponentListener; +import java.awt.event.MouseEvent; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +import java.net.URL; + +import javax.swing.Icon; +import javax.swing.JButton; +import javax.swing.JEditorPane; +import javax.swing.JFrame; +import javax.swing.JScrollPane; +import javax.swing.JTabbedPane; +import javax.swing.JToolBar; + import pcgen.core.SettingsHandler; import pcgen.core.utils.CoreUtility; import pcgen.gui.filter.FilterConstants; @@ -36,18 +58,8 @@ import pcgen.gui.utils.Utility; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; -import javax.swing.*; -import java.awt.Component; -import java.awt.Dimension; -import java.awt.Insets; -import java.awt.event.*; -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; -import java.io.IOException; -import java.net.URL; - /** * @author Mario Bonassin * @version $Revision$ @@ -111,12 +123,12 @@ panelName = curPanel.getName(); } - int index = -1; - + Tab aTab = Tab.INVALID; + if ((panelName != null) && (panelName.length() > 0)) { // Inventory tab has three subpanels - if (panelName.equals(Constants.tabNames[Constants.TAB_INVENTORY])) + if (panelName.equals(Tab.INVENTORY.toString())) { Component subPanel = ((JTabbedPane) curPanel).getSelectedComponent(); @@ -126,13 +138,13 @@ } } - index = pcgen.core.GameMode.getTabNumber(panelName); + aTab = pcgen.core.GameMode.getTab(panelName); } try { File helpFile; - String helpPath = SettingsHandler.getGame().getContextPath(index); + String helpPath = SettingsHandler.getGame().getContextPath(aTab); if (helpPath.equals("")) { Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoClasses.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -25,34 +25,95 @@ */ package pcgen.gui.tabs; -import pcgen.core.*; +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.FlowLayout; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +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.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import javax.swing.BorderFactory; +import javax.swing.DefaultListSelectionModel; +import javax.swing.InputVerifier; +import javax.swing.ListSelectionModel; +import javax.swing.JButton; +import javax.swing.JComponent; +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.JTextField; +import javax.swing.JTree; +import javax.swing.KeyStroke; +import javax.swing.ScrollPaneConstants; +import javax.swing.SwingConstants; +import javax.swing.SwingUtilities; +import javax.swing.border.TitledBorder; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; +import javax.swing.table.TableColumn; +import javax.swing.tree.TreePath; + +import pcgen.core.Constants; +import pcgen.core.GameMode; +import pcgen.core.Globals; +import pcgen.core.PCClass; +import pcgen.core.PlayerCharacter; +import pcgen.core.PObject; +import pcgen.core.RuleConstants; +import pcgen.core.SettingsHandler; +import pcgen.core.SubClass; import pcgen.core.prereq.PrereqHandler; import pcgen.core.utils.MessageType; import pcgen.core.utils.ShowMessageDelegate; -import pcgen.gui.*; +import pcgen.gui.CharacterInfo; +import pcgen.gui.CharacterInfoTab; +import pcgen.gui.GuiConstants; +import pcgen.gui.PCGen_Frame1; +import pcgen.gui.pcGenGUI; +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.Utility; +import pcgen.gui.utils.TreeTableModel; +import pcgen.gui.utils.WholeNumberField; import pcgen.util.Delta; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; -import javax.swing.*; -import javax.swing.border.TitledBorder; -import javax.swing.event.DocumentEvent; -import javax.swing.event.DocumentListener; -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; -import javax.swing.table.TableColumn; -import javax.swing.tree.TreePath; -import java.awt.*; -import java.awt.event.*; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - /** * ??? * @author Bryan McRoberts (mer...@ya...) @@ -151,7 +212,7 @@ // do not remove this // we will use the component's name to save component specific settings - setName(Constants.tabNames[Constants.TAB_CLASSES]); + setName(Tab.CLASSES.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -180,7 +241,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Classes.Order", Constants.TAB_CLASSES); + return SettingsHandler.getPCGenOption(".Panel.Classes.Order", Tab.CLASSES.ordinal()); } public void setTabOrder(int order) @@ -191,13 +252,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_CLASSES); + return game.getTabName(Tab.CLASSES); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_CLASSES); + return game.getTabShown(Tab.CLASSES); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDescription.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDescription.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDescription.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -20,7 +20,64 @@ */ package pcgen.gui.tabs; -import pcgen.core.*; +import java.awt.BorderLayout; +import java.awt.CardLayout; +import java.awt.Dimension; +import java.awt.FlowLayout; +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.ItemEvent; +import java.awt.event.ItemListener; +import java.awt.event.KeyEvent; +import java.awt.event.KeyListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Enumeration; +import java.util.List; + +import javax.swing.BorderFactory; +import javax.swing.DefaultComboBoxModel; +import javax.swing.InputVerifier; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JComponent; +import javax.swing.JEditorPane; +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.JTextField; +import javax.swing.JTextPane; +import javax.swing.JTree; +import javax.swing.KeyStroke; +import javax.swing.SwingUtilities; +import javax.swing.border.TitledBorder; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.tree.DefaultMutableTreeNode; +import javax.swing.tree.DefaultTreeModel; +import javax.swing.tree.TreePath; + +import pcgen.core.Constants; +import pcgen.core.GameMode; +import pcgen.core.Globals; +import pcgen.core.NoteItem; +import pcgen.core.PlayerCharacter; +import pcgen.core.Race; +import pcgen.core.SettingsHandler; +import pcgen.core.SystemCollections; import pcgen.gui.CharacterInfoTab; import pcgen.gui.NameGui; import pcgen.gui.PCGen_Frame1; @@ -32,19 +89,8 @@ import pcgen.util.DecimalNumberField; import pcgen.util.Delta; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; -import javax.swing.*; -import javax.swing.border.TitledBorder; -import javax.swing.event.DocumentEvent; -import javax.swing.event.DocumentListener; -import javax.swing.tree.DefaultMutableTreeNode; -import javax.swing.tree.DefaultTreeModel; -import javax.swing.tree.TreePath; -import java.awt.*; -import java.awt.event.*; -import java.util.*; -import java.util.List; - /** * <code>InfoDescription</code> creates a new tabbed panel. * @@ -54,6 +100,9 @@ public final class InfoDescription extends JPanel implements CharacterInfoTab { static final long serialVersionUID = -8015559748421397718L; + + private static final Tab tab = Tab.DESCRIPTION; + private static boolean bEditingAge = false; private static final int BIO_NOTEID = -2; private static final int DESCRIPTION_NOTEID = -3; @@ -212,7 +261,7 @@ public InfoDescription(PlayerCharacter pc) { this.pc = pc; - setName(Constants.tabNames[Constants.TAB_DESCRIPTION]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -255,7 +304,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Description.Order", Constants.TAB_DESCRIPTION); + return SettingsHandler.getPCGenOption(".Panel.Description.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -266,13 +315,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_DESCRIPTION); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_DESCRIPTION); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoDomain.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -110,6 +110,7 @@ import pcgen.gui.utils.Utility; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; /** * This class is responsible for drawing the domain related window - including @@ -126,6 +127,9 @@ public class InfoDomain extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = -4223585346813683966L; + + private static final Tab tab = Tab.DOMAINS; + private static List<Domain> selectedDomainList = new ArrayList<Domain>(); private static boolean needsUpdate = true; private static int splitOrientation = JSplitPane.HORIZONTAL_SPLIT; @@ -186,7 +190,7 @@ this.pc = pc; // we will use the component's name to save // component specific settings - setName(Constants.tabNames[Constants.TAB_DOMAINS]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -217,7 +221,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Domain.Order", Constants.TAB_DOMAINS); + return SettingsHandler.getPCGenOption(".Panel.Domain.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -228,13 +232,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_DOMAINS); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_DOMAINS); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoEquipping.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -25,6 +25,24 @@ */ package pcgen.gui.tabs; +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; @@ -44,24 +62,6 @@ import java.util.Map; import java.util.StringTokenizer; -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 javax.swing.BorderFactory; import javax.swing.DefaultListSelectionModel; import javax.swing.ImageIcon; @@ -146,6 +146,7 @@ import pcgen.util.chooser.ChooserFactory; import pcgen.util.chooser.ChooserInterface; import pcgen.util.chooser.ChooserRadio; +import pcgen.util.enumeration.Tab; /** * <code>InfoEquipping</code> creates a new tabbed panel that is used to @@ -157,6 +158,9 @@ public class InfoEquipping extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = 6988134124127535195L; + + private static final Tab tab = Tab.EQUIPPING; + private static List<EquipSet> equipSetList = new ArrayList<EquipSet>(); private static List<EquipSet> tempSetList = new ArrayList<EquipSet>(); // private static final String[] loadTypes = { "LIGHT", "MEDIUM", "HEAVY", "OVERLOADED" }; @@ -251,7 +255,7 @@ this.pc = pc; // do not remove this as we will use the component's name // to save component specific settings - setName(Constants.tabNames[Constants.TAB_EQUIPPING]); + setName(tab.toString()); initComponents(); @@ -277,7 +281,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Equipping.Order", Constants.TAB_EQUIPPING); + return SettingsHandler.getPCGenOption(".Panel.Equipping.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -288,13 +292,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_EQUIPPING); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_EQUIPPING); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoFeats.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -116,6 +116,7 @@ import pcgen.util.BigDecimalHelper; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; import pcgen.util.enumeration.Visibility; /** @@ -130,6 +131,8 @@ */ public final class InfoFeats extends FilterAdapterPanel implements CharacterInfoTab { + private static final Tab tab = Tab.ABILITIES; + private static final String NO_QUALIFY_MESSAGE = "You do not meet the prerequisites required to take this " + getSingularTabName() + "."; private static final String DUPLICATE_MESSAGE = "You already have that " + getSingularTabName() + "."; private static String FEAT_FULL_MESSAGE = "You cannot select any more " + getSingularTabName() + "s."; @@ -200,7 +203,7 @@ this.pc = pc; // we will use the name to save component // specific settings in the options.ini file - setName(Constants.tabNames[Constants.TAB_ABILITIES]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -229,7 +232,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Feats.Order", Constants.TAB_ABILITIES); + return SettingsHandler.getPCGenOption(".Panel.Feats.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -240,14 +243,14 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_ABILITIES); + return game.getTabName(tab); } private static String getSingularTabName() { if (singularName == null) { - singularName = SettingsHandler.getGame().getSingularTabName(Constants.TAB_ABILITIES); + singularName = SettingsHandler.getGame().getSingularTabName(tab); } return singularName; } @@ -255,7 +258,7 @@ public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_ABILITIES); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -132,6 +132,7 @@ import pcgen.util.InputInterface; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; /** * @@ -145,6 +146,9 @@ public final class InfoGear extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = -2320970658737297916L; + + private static final Tab tab = Tab.GEAR; + private static boolean needsUpdate = true; private static int splitOrientation = JSplitPane.HORIZONTAL_SPLIT; private static int viewMode = GuiConstants.INFOINVENTORY_VIEW_TYPE_NAME; // keep track of what view mode we're in for Available @@ -243,7 +247,7 @@ this.pc = pc; // we use the component's name to save // component specific settings - setName(Constants.tabNames[Constants.TAB_GEAR]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -272,7 +276,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Gear.Order", Constants.TAB_GEAR); + return SettingsHandler.getPCGenOption(".Panel.Gear.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -283,13 +287,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_GEAR); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_GEAR); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoInventory.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoInventory.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoInventory.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -25,7 +25,18 @@ */ package pcgen.gui.tabs; -import pcgen.core.Constants; +import java.awt.event.ComponentAdapter; +import java.awt.event.ComponentEvent; +import java.awt.event.FocusAdapter; +import java.awt.event.FocusEvent; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JComponent; +import javax.swing.JTabbedPane; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; + import pcgen.core.GameMode; import pcgen.core.PlayerCharacter; import pcgen.core.SettingsHandler; @@ -35,18 +46,8 @@ import pcgen.gui.filter.Filterable; import pcgen.gui.filter.PObjectFilter; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; -import javax.swing.JComponent; -import javax.swing.JTabbedPane; -import javax.swing.event.ChangeEvent; -import javax.swing.event.ChangeListener; -import java.awt.event.ComponentAdapter; -import java.awt.event.ComponentEvent; -import java.awt.event.FocusAdapter; -import java.awt.event.FocusEvent; -import java.util.ArrayList; -import java.util.List; - /** * <code>InfoInventory</code><br> * @author Thomas Behr 16-09-02 @@ -55,11 +56,9 @@ public final class InfoInventory extends JTabbedPane implements Filterable, CharacterInfoTab { static final long serialVersionUID = -4186874622211290063L; - private static final int GEAR_INDEX = 0; - private static final int EQUIPPING_INDEX = 1; - private static final int RESOURCES_INDEX = 2; - private static final int TEMPMOD_INDEX = 3; - private static final int NATURAL_INDEX = 4; + + private static final Tab tab = Tab.INVENTORY; + private InfoEquipping equipment; private InfoGear gear; private InfoNaturalWeapons naturalWeapons; @@ -83,7 +82,7 @@ tempmod = new InfoTempMod(pc); // do not remove this // we will use the component's name to save component specific settings - setName(Constants.tabNames[Constants.TAB_INVENTORY]); + setName(tab.toString()); initComponents(); initActionListeners(); @@ -108,7 +107,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Inventory.Order", Constants.TAB_INVENTORY); + return SettingsHandler.getPCGenOption(".Panel.Inventory.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -119,13 +118,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_INVENTORY); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_INVENTORY); + return game.getTabShown(tab); } /** @@ -206,7 +205,7 @@ **/ public void setFilterMode(int mode) { - if (getSelectedIndex() == GEAR_INDEX) + if (getSelectedIndex() == Tab.GEAR.index()) { gear.setFilterMode(mode); } @@ -218,7 +217,7 @@ **/ public int getFilterMode() { - if (getSelectedIndex() == GEAR_INDEX) + if (getSelectedIndex() == Tab.GEAR.index()) { return gear.getFilterMode(); } @@ -241,7 +240,7 @@ **/ public boolean isMatchAnyEnabled() { - if (getSelectedIndex() == GEAR_INDEX) + if (getSelectedIndex() == Tab.GEAR.index()) { return gear.isMatchAnyEnabled(); } @@ -273,7 +272,7 @@ **/ public boolean isNegateEnabled() { - if (getSelectedIndex() == GEAR_INDEX) + if (getSelectedIndex() == Tab.GEAR.index()) { return gear.isNegateEnabled(); } @@ -305,7 +304,7 @@ **/ public int getSelectionMode() { - if (getSelectedIndex() == GEAR_INDEX) + if (getSelectedIndex() == Tab.GEAR.index()) { return gear.getSelectionMode(); } @@ -355,19 +354,19 @@ { public void stateChanged(ChangeEvent e) { - if (getSelectedIndex() == GEAR_INDEX) + if (getSelectedIndex() == Tab.GEAR.index()) { InfoGear.setNeedsUpdate(true); } - else if (getSelectedIndex() == EQUIPPING_INDEX) + else if (getSelectedIndex() == Tab.EQUIPPING.index()) { InfoEquipping.setNeedsUpdate(true); } - else if (getSelectedIndex() == RESOURCES_INDEX) + else if (getSelectedIndex() == Tab.RESOURCES.index()) { InfoResources.setNeedsUpdate(true); } - else if (getSelectedIndex() == TEMPMOD_INDEX) + else if (getSelectedIndex() == Tab.TEMPBONUS.index()) { InfoTempMod.setNeedsUpdate(true); } @@ -378,20 +377,20 @@ private void initComponents() { readyForRefresh = true; - add(gear, GEAR_INDEX); - setTitleAt(GEAR_INDEX, PropertyFactory.getString("in_Info" + gear.getName())); - add(equipment, EQUIPPING_INDEX); - setTitleAt(EQUIPPING_INDEX, PropertyFactory.getString("in_Info" + equipment.getName())); - add(resources, RESOURCES_INDEX); - setTitleAt(RESOURCES_INDEX, PropertyFactory.getString("in_Info" + resources.getName())); - add(tempmod, TEMPMOD_INDEX); - setTitleAt(TEMPMOD_INDEX, PropertyFactory.getString("in_Info" + tempmod.getName())); + add(gear, Tab.GEAR.index()); + setTitleAt(Tab.GEAR.index(), PropertyFactory.getString("in_Info" + gear.getName())); + add(equipment, Tab.EQUIPPING.index()); + setTitleAt(Tab.EQUIPPING.index(), PropertyFactory.getString("in_Info" + equipment.getName())); + add(resources, Tab.RESOURCES.index()); + setTitleAt(Tab.RESOURCES.index(), PropertyFactory.getString("in_Info" + resources.getName())); + add(tempmod, Tab.TEMPBONUS.index()); + setTitleAt(Tab.TEMPBONUS.index(), PropertyFactory.getString("in_Info" + tempmod.getName())); if (SettingsHandler.showNaturalWeaponTab()) { naturalWeapons = new InfoNaturalWeapons(pc); - add(naturalWeapons, NATURAL_INDEX); - setTitleAt(NATURAL_INDEX, PropertyFactory.getString("in_Info" + naturalWeapons.getName())); + add(naturalWeapons, Tab.NATWEAPONS.index()); + setTitleAt(Tab.NATWEAPONS.index(), PropertyFactory.getString("in_Info" + naturalWeapons.getName())); } addFocusListener(new FocusAdapter() Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoNaturalWeapons.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoNaturalWeapons.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoNaturalWeapons.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -34,7 +34,6 @@ import javax.swing.JScrollPane; import javax.swing.table.DefaultTableModel; -import pcgen.core.Constants; import pcgen.core.Equipment; import pcgen.core.GameMode; import pcgen.core.PlayerCharacter; @@ -45,6 +44,7 @@ import pcgen.gui.filter.FilterFactory; import pcgen.gui.utils.JTableEx; import pcgen.util.Delta; +import pcgen.util.enumeration.Tab; /** * ??? @@ -54,6 +54,8 @@ public class InfoNaturalWeapons extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = 7796493138427983908L; + + private static final Tab tab = Tab.NATWEAPONS; private static boolean needsUpdate = true; private JScrollPane scpNaturalAttacks; private JTableEx tblNaturalAttacks; @@ -70,7 +72,7 @@ this.pc = pc; // do not remove this // we will use the component's name to save component specific settings - setName(Constants.tabNames[Constants.TAB_NATWEAPONS]); + setName(tab.toString()); initComponents(); } @@ -92,7 +94,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.NaturalWeapons.Order", Constants.TAB_NATWEAPONS); + return SettingsHandler.getPCGenOption(".Panel.NaturalWeapons.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -103,13 +105,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_NATWEAPONS); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_NATWEAPONS); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRace.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRace.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRace.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -35,7 +35,6 @@ import javax.swing.JComponent; import javax.swing.JTabbedPane; -import pcgen.core.Constants; import pcgen.core.GameMode; import pcgen.core.PlayerCharacter; import pcgen.core.SettingsHandler; @@ -44,6 +43,7 @@ import pcgen.gui.filter.Filterable; import pcgen.gui.filter.PObjectFilter; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; /** * <code>InfoRace</code> creates a new tabbed panel @@ -52,7 +52,10 @@ * @author Bryan McRoberts (mer...@ya...) * @version $Revision$ **/ -public final class InfoRace extends JTabbedPane implements Filterable, CharacterInfoTab { +public final class InfoRace extends JTabbedPane implements Filterable, CharacterInfoTab +{ + private static final Tab tab = Tab.RACE_MASTER; + private static final int RACES_INDEX = 0; private static final int TEMPLATES_INDEX = 1; @@ -74,7 +77,7 @@ templates = new InfoTemplates(pc); // do not remove this // we will use the component's name to save component specific settings - setName(Constants.tabNames[Constants.TAB_RACE_MASTER]); + setName(tab.toString()); initComponents(); initActionListeners(); @@ -224,7 +227,7 @@ } public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Race.Order", Constants.TAB_RACE_MASTER); + return SettingsHandler.getPCGenOption(".Panel.Race.Order", tab.ordinal()); } public void setTabOrder(int order) { @@ -233,12 +236,12 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_RACE_MASTER); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_RACE_MASTER); + return game.getTabShown(tab); } public void refresh() { Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoRaces.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -103,6 +103,7 @@ import pcgen.gui.utils.WholeNumberField; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; /** * <code>InfoRace</code> creates a new tabbed panel @@ -114,6 +115,9 @@ public class InfoRaces extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = 2565545289875422981L; + + private static final Tab tab = Tab.RACES; + private static boolean needsUpdate = true; // if you change these, you also have to change @@ -173,7 +177,7 @@ this.pc = pc; // do not change/remove this as we use the component's name // to save component specific settings - setName(Constants.tabNames[Constants.TAB_RACES]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -202,7 +206,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Race.Order", Constants.TAB_RACES); + return SettingsHandler.getPCGenOption(".Panel.Race.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -213,13 +217,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_RACES); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_RACES); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoResources.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoResources.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoResources.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -111,6 +111,7 @@ import pcgen.io.PCGIOHandler; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; import static pcgen.gui.HTMLUtils.*; @@ -126,6 +127,9 @@ public class InfoResources extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = 7236403406005940947L; + + private static final Tab tab = Tab.RESOURCES; + private static boolean needsUpdate = true; // table model modes @@ -177,7 +181,7 @@ this.pc = aPC; // do not remove this as we will use the component's name // to save component specific settings - setName(Constants.tabNames[Constants.TAB_RESOURCES]); + setName(tab.toString()); initComponents(); @@ -219,7 +223,7 @@ */ public int getTabOrder() { - return SettingsHandler.getPCGenOption(TAB_ORDER_KEY, Constants.TAB_RESOURCES); + return SettingsHandler.getPCGenOption(TAB_ORDER_KEY, tab.ordinal()); } /** @@ -238,7 +242,7 @@ public String getTabName() { final GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_RESOURCES); + return game.getTabName(tab); } /** @@ -248,7 +252,7 @@ public boolean isShown() { final GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_RESOURCES); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSkills.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -134,6 +134,7 @@ import pcgen.util.PropertyFactory; import pcgen.util.ResetableListIterator; import pcgen.util.StringIgnoreCaseComparator; +import pcgen.util.enumeration.Tab; import pcgen.util.enumeration.Visibility; /** @@ -145,6 +146,9 @@ public class InfoSkills extends FilterAdapterPanel implements CharacterInfoTab { static final long serialVersionUID = -5369872214039221832L; + + private static final Tab tab = Tab.SKILLS; + private static boolean resetSelectedModel = true; private static PCClass previouslySelectedClass = null; private static boolean needsUpdate = true; @@ -230,7 +234,7 @@ this.pc = pc; // do not remove this // we will use the component's name to save component specific settings - setName(Constants.tabNames[Constants.TAB_SKILLS]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -259,7 +263,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Skills.Order", Constants.TAB_SKILLS); + return SettingsHandler.getPCGenOption(".Panel.Skills.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -270,13 +274,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_SKILLS); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_SKILLS); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpecialAbilities.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpecialAbilities.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpecialAbilities.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -26,7 +26,43 @@ */ package pcgen.gui.tabs; -import pcgen.core.*; +import java.awt.BorderLayout; +import java.awt.FlowLayout; +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.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.SortedSet; + +import javax.swing.JButton; +import javax.swing.JComponent; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextArea; + +import pcgen.core.CharacterDomain; +import pcgen.core.Constants; +import pcgen.core.Domain; +import pcgen.core.GameMode; +import pcgen.core.Globals; +import pcgen.core.Language; +import pcgen.core.PCClass; +import pcgen.core.PCTemplate; +import pcgen.core.PlayerCharacter; +import pcgen.core.Race; +import pcgen.core.RuleConstants; +import pcgen.core.SettingsHandler; +import pcgen.core.Skill; +import pcgen.core.SpecialAbility; +import pcgen.core.WeaponProf; import pcgen.core.prereq.PrereqHandler; import pcgen.core.utils.CoreUtility; import pcgen.core.utils.ListKey; @@ -41,18 +77,8 @@ import pcgen.util.PropertyFactory; import pcgen.util.chooser.ChooserFactory; import pcgen.util.chooser.ChooserInterface; +import pcgen.util.enumeration.Tab; -import javax.swing.*; -import java.awt.BorderLayout; -import java.awt.FlowLayout; -import java.awt.GridBagConstraints; -import java.awt.GridBagLayout; -import java.awt.event.*; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.SortedSet; - /** * This class is responsible for drawing Special Ability, Language and Weapon Prefociency sections. * @@ -62,6 +88,9 @@ public final class InfoSpecialAbilities extends JPanel implements CharacterInfoTab { static final long serialVersionUID = -7316622743996841985L; + + private static final Tab tab = Tab.SABILITIES; + private JButton weaponButton = null; private JButton langButton = null; private JButton langButton2 = null; @@ -82,7 +111,7 @@ public InfoSpecialAbilities(PlayerCharacter pc) { this.pc = pc; - setName(Constants.tabNames[Constants.TAB_SABILITIES]); + setName(tab.toString()); initComponents(); initActionListeners(); } @@ -104,7 +133,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Abilities.Order", Constants.TAB_SABILITIES); + return SettingsHandler.getPCGenOption(".Panel.Abilities.Order", tab.ordinal()); } public void setTabOrder(int order) @@ -115,7 +144,7 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_SABILITIES); + return game.getTabName(tab); } public boolean isShown() Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpells.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpells.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSpells.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -37,7 +37,6 @@ import javax.swing.JTabbedPane; import javax.swing.SwingUtilities; -import pcgen.core.Constants; import pcgen.core.GameMode; import pcgen.core.PlayerCharacter; import pcgen.core.SettingsHandler; @@ -49,6 +48,7 @@ import pcgen.gui.tabs.spells.InfoPreparedSpells; import pcgen.gui.tabs.spells.InfoSpellBooks; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; /** * <code>InfoSpells</code> creates a new tabbed panel. @@ -60,6 +60,8 @@ Filterable { static final long serialVersionUID = 755097384157285101L; + + private static final Tab tab = Tab.SPELLS; private static final int KNOWN_INDEX = 0; private static final int PREPARED_INDEX = 1; @@ -88,7 +90,7 @@ // do not remove this as we will use the component's name // to save component specific settings - setName(Constants.tabNames[Constants.TAB_SPELLS]); + setName(tab.toString()); SwingUtilities.invokeLater(new Runnable() { @@ -117,7 +119,7 @@ public int getTabOrder() { - return SettingsHandler.getPCGenOption(".Panel.Spells.Order", Constants.TAB_SPELLS); //$NON-NLS-1$ + return SettingsHandler.getPCGenOption(".Panel.Spells.Order", tab.ordinal()); //$NON-NLS-1$ } public void setTabOrder(int order) @@ -128,13 +130,13 @@ public String getTabName() { GameMode game = SettingsHandler.getGame(); - return game.getTabName(Constants.TAB_SPELLS); + return game.getTabName(tab); } public boolean isShown() { GameMode game = SettingsHandler.getGame(); - return game.getTabShown(Constants.TAB_SPELLS); + return game.getTabShown(tab); } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java 2006-07-31 02:42:38 UTC (rev 1237) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoSummary.java 2006-07-31 12:55:21 UTC (rev 1238) @@ -109,6 +109,7 @@ import pcgen.util.Delta; import pcgen.util.Logging; import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; /** * <code>InfoSummary</code> is a panel which allows the user to enter @@ -119,6 +120,8 @... [truncated message content] |