From: <th...@us...> - 2008-10-18 23:43:43
|
Revision: 8116 http://pcgen.svn.sourceforge.net/pcgen/?rev=8116&view=rev Author: thpr Date: 2008-10-18 23:43:37 +0000 (Sat, 18 Oct 2008) Log Message: ----------- remove dead code Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/base/util/AbstractMapToList.java Trunk/pcgen/code/src/java/pcgen/cdom/util/ListKeyMapToList.java Modified: Trunk/pcgen/code/src/java/pcgen/base/util/AbstractMapToList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/util/AbstractMapToList.java 2008-10-18 23:27:28 UTC (rev 8115) +++ Trunk/pcgen/code/src/java/pcgen/base/util/AbstractMapToList.java 2008-10-18 23:43:37 UTC (rev 8116) @@ -163,45 +163,6 @@ } /** - * Adds the given value to the List at the given position, for the given - * key. The null value cannot be used as a key in a AbstractMapToList. This - * method will automatically initialize the list for the given key if there - * is not already a List for that key. Any necessary null values will be - * inserted if the given value is larger than the current length of the - * list. - * - * This method is reference-semantic and this AbstractMapToList will - * maintain a strong reference to both the key object and the value object - * given as arguments to this method. - * - * @param key - * The key indicating which List the given object should be added - * to. - * @param value - * The value to be added to the List for the given key. - * @param loc - * The position at which the value will be added to the list. - * @return The value previously at the given position, otherwise null. - */ - public V addToListAt(K key, V value, int loc) - { - /* - * Note there is no requirement that a Key is added before this method - * is called - */ - if (!containsListFor(key)) - { - initializeListFor(key); - } - List<V> list = mapToList.get(key); - while (list.size() <= loc) - { - list.add(null); - } - return list.set(loc, value); - } - - /** * Adds all of the Lists in the given MapToList to this MapToList. The * resulting lists are independent, however, since MapToList is * reference-semantic, the List keys and values in each list are identical. Modified: Trunk/pcgen/code/src/java/pcgen/cdom/util/ListKeyMapToList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/util/ListKeyMapToList.java 2008-10-18 23:27:28 UTC (rev 8115) +++ Trunk/pcgen/code/src/java/pcgen/cdom/util/ListKeyMapToList.java 2008-10-18 23:43:37 UTC (rev 8116) @@ -143,32 +143,6 @@ } /** - * Adds the given value to the List at the given position, for the given - * ListKey. The null value cannot be used as a key in a ListKeyMapToList. - * This method will automatically initialize the list for the given key if - * there is not already a List for that key. Any necessary null values will - * be inserted if the given value is larger than the current length of the - * list. - * - * This method is reference-semantic and this ListKeyMapToList will maintain - * a strong reference to both the key object and the value object given as - * arguments to this method. - * - * @param key - * The ListKey indicating which List the given object should be - * added to. - * @param value - * The value to be added to the List for the given key. - * @param loc - * The position at which the value will be added to the list. - * @return The value previously at the given position, otherwise null. - */ - public <T> T addToListAt(ListKey<T> key, T value, int loc) - { - return (T) map.addToListAt(key, value, loc); - } - - /** * Returns true if this ListKeyMapToList contains a List for the given * ListKey. This method returns false if the given key is not in this * ListKeyMapToList. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-10-26 01:09:14
|
Revision: 8209 http://pcgen.svn.sourceforge.net/pcgen/?rev=8209&view=rev Author: jdempsey Date: 2008-10-26 01:09:06 +0000 (Sun, 26 Oct 2008) Log Message: ----------- FReq: Copy gamemode preferences Issue#: 1929959 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/GameMode.java Trunk/pcgen/code/src/java/pcgen/gui/CharacterInfo.java Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties Added Paths: ----------- Trunk/pcgen/code/src/java/pcgen/gui/prefs/CopySettingsPanel.java Modified: Trunk/pcgen/code/src/java/pcgen/core/GameMode.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2008-10-25 20:59:22 UTC (rev 8208) +++ Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2008-10-26 01:09:06 UTC (rev 8209) @@ -3544,4 +3544,10 @@ { this.bonusStatAllowsStack = bonusStatAllowsStack; } + + @Override + public String toString() + { + return name; + } } \ No newline at end of file Modified: Trunk/pcgen/code/src/java/pcgen/gui/CharacterInfo.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/CharacterInfo.java 2008-10-25 20:59:22 UTC (rev 8208) +++ Trunk/pcgen/code/src/java/pcgen/gui/CharacterInfo.java 2008-10-26 01:09:06 UTC (rev 8209) @@ -69,6 +69,7 @@ // private InfoAbility infoFeats; private InfoDomain infoDomain; private InfoSpells infoSpells; + private InfoCharacterSheet infoCharacterSheet; private JTabbedPane characterInfoTabbedPane = new JTabbedPane(); private PlayerCharacter pc; private static Set<CharacterInfoTab> updateSet = new HashSet<CharacterInfoTab>(); @@ -93,6 +94,7 @@ // infoFeats = new InfoAbility(pc); infoDomain = new InfoDomain(pc); infoSpells = new InfoSpells(pc); + infoCharacterSheet = new InfoCharacterSheet(pc); setName(""); //$NON-NLS-1$ try { @@ -247,6 +249,14 @@ } /** + * Get the character sheet panel + * @return character sheet panel + */ + public InfoCharacterSheet infoCharacterSheet() { + return infoCharacterSheet; + } + + /** * Get the info skills * @return info skills */ @@ -376,7 +386,7 @@ addTab(infoSpells()); addTab(infoInventory()); addTab(infoDesc()); - addTab(new InfoCharacterSheet(pc)); + addTab(infoCharacterSheet); for (int i = 0; i < tempTabList.size(); i++) { CharacterInfoTab tab = (CharacterInfoTab) tempTabList.get(i); addTab(tab); Modified: Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java 2008-10-25 20:59:22 UTC (rev 8208) +++ Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java 2008-10-26 01:09:06 UTC (rev 8209) @@ -63,6 +63,7 @@ import pcgen.core.utils.MessageType; import pcgen.core.utils.ShowMessageDelegate; import pcgen.gui.panes.FlippingSplitPane; +import pcgen.gui.prefs.CopySettingsPanel; import pcgen.gui.prefs.ExperiencePanel; import pcgen.gui.prefs.MonsterPanel; import pcgen.gui.prefs.PCGenPrefsPanel; @@ -515,6 +516,9 @@ // "Experience" private PCGenPrefsPanel experiencePanel; + // "Copy Settings" + private CopySettingsPanel copySettingsPanel; + //Plugins private static PreferencesComponent compInst; private PreferencesPluginsPanel pluginsPanel; @@ -1127,6 +1131,9 @@ break; } + // Copy Settings + copySettingsPanel.setOptionsBasedOnControls(); + // Now get any panels affected to refresh CharacterInfo ci = PCGen_Frame1.getCharacterPane(); if (ci != null) @@ -1572,6 +1579,12 @@ break; } + + // Copy Settings + copySettingsPanel.applyOptionValuesToControls(); + copySettingsPanel.registerAffectedPanel(experiencePanel); + //TODO: Need to add stats and langages tabs + } private JPanel buildAbilitiesPanel() @@ -3170,6 +3183,7 @@ DefaultMutableTreeNode characterNode; DefaultMutableTreeNode pcGenNode; DefaultMutableTreeNode appearanceNode; + DefaultMutableTreeNode gameModeNode; // Build the settings panel settingsPanel = new JPanel(); @@ -3229,6 +3243,16 @@ settingsPanel.add(buildSourcesPanel(), in_sources); rootNode.add(pcGenNode); + String in_gamemode = PropertyFactory.getString("in_mnuSettingsCampaign"); + gameModeNode = new DefaultMutableTreeNode(in_gamemode); + settingsPanel.add(buildEmptyPanel("", PropertyFactory + .getString("in_Prefs_gameModeTip")), in_gamemode); + + gameModeNode.add(new DefaultMutableTreeNode(PropertyFactory.getString("in_Prefs_copy"))); + copySettingsPanel = new CopySettingsPanel(); + settingsPanel.add(copySettingsPanel, copySettingsPanel.getTitle()); + rootNode.add(gameModeNode); + DefaultMutableTreeNode pluginNode = new DefaultMutableTreeNode("Plugins"); Added: Trunk/pcgen/code/src/java/pcgen/gui/prefs/CopySettingsPanel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/prefs/CopySettingsPanel.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/gui/prefs/CopySettingsPanel.java 2008-10-26 01:09:06 UTC (rev 8209) @@ -0,0 +1,233 @@ +/* + * CopySettingsPanel.java + * Copyright 2008 (C) James Dempsey + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Created on 20/10/2008 21:59:06 + * + * $Id: $ + */ +package pcgen.gui.prefs; + +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.BorderFactory; +import javax.swing.JButton; +import javax.swing.JLabel; +import javax.swing.border.Border; +import javax.swing.border.TitledBorder; + +import pcgen.core.GameMode; +import pcgen.core.SettingsHandler; +import pcgen.core.SystemCollections; +import pcgen.core.utils.MessageType; +import pcgen.core.utils.ShowMessageDelegate; +import pcgen.gui.CharacterInfo; +import pcgen.gui.PCGen_Frame1; +import pcgen.gui.utils.JComboBoxEx; +import pcgen.gui.utils.Utility; +import pcgen.util.PropertyFactory; + +/** + * The Class <code>CopySettingsPanel</code> is responsible for + * allowing game mode dependent settings to be copied from another + * gamemode. + * + * Last Editor: $Author: $ + * Last Edited: $Date: $ + * + * @author James Dempsey <jde...@us...> + * @version $Revision: $ + */ +@SuppressWarnings("serial") +public class CopySettingsPanel extends PCGenPrefsPanel +{ + private static String in_copy_settings = + PropertyFactory.getString("in_Prefs_copy"); + + private JComboBoxEx gameModeSelect = new JComboBoxEx(); + private JButton copyButton = + new JButton(PropertyFactory.getString("in_copy")); + + private List<PCGenPrefsPanel> affectedPanels = + new ArrayList<PCGenPrefsPanel>(); + + /** + * Instantiates a new copy settings panel. + */ + public CopySettingsPanel() + { + GridBagLayout gridbag = new GridBagLayout(); + GridBagConstraints c = new GridBagConstraints(); + JLabel label; + Border etched = null; + TitledBorder title1 = + BorderFactory.createTitledBorder(etched, in_copy_settings); + + title1.setTitleJustification(TitledBorder.LEFT); + this.setBorder(title1); + gridbag = new GridBagLayout(); + this.setLayout(gridbag); + c = new GridBagConstraints(); + c.fill = GridBagConstraints.HORIZONTAL; + c.anchor = GridBagConstraints.NORTHWEST; + c.insets = new Insets(2, 2, 2, 2); + + gameModeSelect.setAllItems(SystemCollections + .getUnmodifiableGameModeList().toArray()); + gameModeSelect.sortItems(); + + Utility.buildConstraints(c, 0, 1, 1, 1, 0, 0); + label = new JLabel(PropertyFactory.getString("in_Prefs_copyFrom")); + gridbag.setConstraints(label, c); + this.add(label); + Utility.buildConstraints(c, 2, 1, 1, 1, 0, 0); + gridbag.setConstraints(gameModeSelect, c); + this.add(gameModeSelect); + Utility.buildConstraints(c, 3, 1, 1, 1, 0, 0); + label = + new JLabel(PropertyFactory.getFormattedString( + "in_Prefs_copyTo", SettingsHandler.getGame().getName())); + gridbag.setConstraints(label, c); + this.add(label); + Utility.buildConstraints(c, 4, 1, 1, 1, 0, 0); + gridbag.setConstraints(copyButton, c); + this.add(copyButton); + + copyButton.addActionListener(new CopyButtonListener()); + + Utility.buildConstraints(c, 0, 2, 4, 1, 0, 0); + label = new JLabel(PropertyFactory.getString("in_Prefs_copyDesc")); + + gridbag.setConstraints(label, c); + this.add(label); + + Utility.buildConstraints(c, 5, 20, 1, 1, 1, 1); + c.fill = GridBagConstraints.BOTH; + label = new JLabel(" "); + gridbag.setConstraints(label, c); + this.add(label); + } + + /* (non-Javadoc) + * @see pcgen.gui.prefs.PCGenPrefsPanel#getTitle() + */ + @Override + public String getTitle() + { + return in_copy_settings; + } + + /* (non-Javadoc) + * @see pcgen.gui.prefs.PreferencesPanel#applyPreferences() + */ + @Override + public void setOptionsBasedOnControls() + { + // Do nothing + } + + /* (non-Javadoc) + * @see pcgen.gui.prefs.PreferencesPanel#initPreferences() + */ + @Override + public void applyOptionValuesToControls() + { + // Do nothing + } + + /** + * Register the other settings panels that can be affected by this + * class. + * + * @param xpPanel The ExperiencePanel instance + */ + public void registerAffectedPanel(PCGenPrefsPanel panel) + { + affectedPanels .add(panel); + } + + /** + * Handler for the Copy button. + */ + private final class CopyButtonListener implements ActionListener + { + + /* (non-Javadoc) + * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent) + */ + public void actionPerformed(ActionEvent actionEvent) + { + GameMode gmFrom = (GameMode) gameModeSelect.getSelectedItem(); + GameMode gmTo = SettingsHandler.getGame(); + + // Copy the settings from one mode to the other + gmTo.setAllStatsValue(gmFrom.getAllStatsValue()); + gmTo + .setRollMethodExpressionByName(gmFrom.getRollMethodExpressionName()); + if (gmTo + .getPurchaseMethodByName(gmFrom.getPurchaseModeMethodName()) != null) + { + gmTo.setPurchaseMethodName(gmFrom.getPurchaseModeMethodName()); + } + gmTo.setRollMethod(gmFrom.getRollMethod()); + gmTo.selectUnitSet(gmFrom.getUnitSet().getName()); + if (gmTo.getAvailXpTableNames().contains(gmFrom.getXpTableName())) + { + gmTo.setXpTableName(gmFrom.getXpTableName()); + } + String currentICS = + SettingsHandler.getPCGenOption("InfoCharacterSheet." + + gmTo.getName() + ".CurrentSheet", ""); + String fromGmICS = + SettingsHandler.getPCGenOption("InfoCharacterSheet." + + gmFrom.getName() + ".CurrentSheet", currentICS); + SettingsHandler.setPCGenOption("InfoCharacterSheet." + + gmTo.getName() + ".CurrentSheet", fromGmICS); + + + // Refresh the affected settings panels + for (PCGenPrefsPanel panel : affectedPanels) + { + panel.applyOptionValuesToControls(); + } + + // + // Update affected character tabs + // + final CharacterInfo characterPane = PCGen_Frame1.getCharacterPane(); + if (characterPane != null) + { + characterPane.setPaneForUpdate(characterPane.infoSummary()); + characterPane.setPaneForUpdate(characterPane.infoCharacterSheet()); + characterPane.setRefresh(true); + characterPane.refresh(); + } + + // Let the user know it is done + ShowMessageDelegate.showMessageDialog(PropertyFactory + .getString("in_Prefs_copyDone"), PropertyFactory + .getString("in_Prefs_pcgen"), MessageType.INFORMATION); + + } + } +} Modified: Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2008-10-25 20:59:22 UTC (rev 8208) +++ Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2008-10-26 01:09:06 UTC (rev 8209) @@ -3212,6 +3212,16 @@ in_Prefs_weaponProfPrintout=Weapon Proficiencies on the Output Sheet +in_Prefs_copy=Copy Settings + +in_Prefs_copyFrom=Copy preferences from + +in_Prefs_copyTo= to game mode {0} + +in_Prefs_copyDesc=<HTML>The following items will be copied:<br>\n<UL><LI>Preview character sheet</LI>\n<LI>Character Stats Score Generation</LI>\n<LI>Experience Table</LI></UL></HTML> + +in_Prefs_copyDone=Settings have been copied. + #ToolBar Tips in_Prefs_postExportCommandStandard=Post Export Command (Standard) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <tm...@us...> - 2008-10-28 14:22:23
|
Revision: 8231 http://pcgen.svn.sourceforge.net/pcgen/?rev=8231&view=rev Author: tmilam Date: 2008-10-28 13:11:15 +0000 (Tue, 28 Oct 2008) Log Message: ----------- FReq: allow saving options.ini to standard location on Mac Issue#: 1726549 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/Globals.java Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java Modified: Trunk/pcgen/code/src/java/pcgen/core/Globals.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Globals.java 2008-10-28 11:42:28 UTC (rev 8230) +++ Trunk/pcgen/code/src/java/pcgen/core/Globals.java 2008-10-28 13:11:15 UTC (rev 8231) @@ -180,6 +180,11 @@ /** whether or not the GUI is used (false for command line) */ private static boolean useGUI = true; + /** whether or not we are running on a Mac */ + public static final boolean isMacPlatform = System.getProperty("os.name").equals("Mac OS X"); + /** default location for options.ini on a Mac */ + public static final String defaultMacOptionsPath = System.getProperty("user.home") + "/Library/Preferences/pcgen"; + private static final Comparator<PObject> pObjectComp = new Comparator<PObject>() { public int compare(final PObject o1, final PObject o2) @@ -2754,6 +2759,11 @@ // use the users "home" directory + .pcgen return System.getProperty("user.home") + File.separator + ".pcgen" + File.separator + aString; } + else if (fType.equals("mac_user")) + { + // use the users "home" directory + standard Mac settings + return System.getProperty("user.home") + "/Library/Preferences/pcgen" + File.separator + aString; + } else { // use the specified directory Modified: Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2008-10-28 11:42:28 UTC (rev 8230) +++ Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2008-10-28 13:11:15 UTC (rev 8231) @@ -582,7 +582,12 @@ public static String getFilePaths() { - return getFilepathProp().getProperty("pcgen.filepaths", "user"); //$NON-NLS-1$ //$NON-NLS-2$ + String def_type = "user"; + if (Globals.isMacPlatform) + { + def_type = "mac_user"; + } + return getFilepathProp().getProperty("pcgen.filepaths", def_type); //$NON-NLS-1$ //$NON-NLS-2$ } public static Properties getFilepathProp() @@ -1780,7 +1785,12 @@ if ((fType == null) || (fType.length() < 1)) { // make sure we have a default - fType = "pcgen"; + if (Globals.isMacPlatform) + { + fType = "mac_user"; + } else { + fType = "pcgen"; + } } if (fType.equals("pcgen")) @@ -1792,6 +1802,10 @@ return new File(System.getProperty("user.home") + File.separator + ".pcgen"); } + else if (fType.equals("mac_user")) + { + return new File(Globals.defaultMacOptionsPath); + } return getPcgenFilesDir(); } @@ -2665,7 +2679,7 @@ final String header = getPropertiesFileHeader( "# filepaths.ini -- location of other .ini files set in pcgen"); - if (!fType.equals("pcgen") && !fType.equals("user")) //$NON-NLS-1$ //$NON-NLS-2$ + if (!fType.equals("pcgen") && !fType.equals("user") && !fType.equals("mac_user")) //$NON-NLS-1$ //$NON-NLS-2$ { if (fType != null) { @@ -2696,6 +2710,25 @@ } } + // if it's the standard Mac user directory, we need to make sure + // that the $HOME/Library/Preferences/pcgen directory exists + if (fType.equals("mac_user")) //$NON-NLS-1$ + { + final String aLoc = Globals.defaultMacOptionsPath; + final File aFile = new File(aLoc); + + if (!aFile.exists()) + { + // Directory doesn't exist, so create it + aFile.mkdir(); + Logging.errorPrint(PropertyFactory.getFormattedString("SettingsHandler.dir.does.not.exist", aLoc)); //$NON-NLS-1$ + } + else if (!aFile.isDirectory()) + { + ShowMessageDelegate.showMessageDialog( PropertyFactory.getFormattedString("SettingsHandler.is.not.a.directory", aLoc), Constants.s_APPNAME, MessageType.ERROR); //$NON-NLS-1$ //$NON-NLS-2$ + } + } + FileOutputStream out = null; try @@ -3207,7 +3240,14 @@ if ((fType == null) || (fType.length() < 1)) { // make sure we have a default - fType = "user"; //$NON-NLS-1$ + if (Globals.isMacPlatform) + { + fType = "mac_user"; //$NON-NLS-1$ + } + else + { + fType = "user"; //$NON-NLS-1$ + } } if (fType.equals("pcgen")) //$NON-NLS-1$ @@ -3218,6 +3258,10 @@ { setPcgenFilesDir(new File(System.getProperty("user.home") + File.separator + ".pcgen")); //$NON-NLS-1$ //$NON-NLS-2$ } + else if (fType.equals("mac_user")) //$NON-NLS-1$ + { + setPcgenFilesDir(new File(Globals.defaultMacOptionsPath)); + } else { setPcgenFilesDir(new File(fType)); Modified: Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java 2008-10-28 11:42:28 UTC (rev 8230) +++ Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java 2008-10-28 13:11:15 UTC (rev 8231) @@ -161,7 +161,7 @@ // if on Mac then set the Frame so the Application menu will work // tmilam 21 Jan 2006 - if (System.getProperty("os.name").equals("Mac OS X")) + if (Globals.isMacPlatform) { try { Class[] cargs = new Class[]{PCGen_Frame1.class}; @@ -247,7 +247,7 @@ // sk4p 12 Dec 2002 // Moved into separate class // tmilam 21 Jan 2006 - if (System.getProperty("os.name").equals("Mac OS X")) + if (Globals.isMacPlatform) { try { Class.forName("pcgen.gui.MacGUI").getDeclaredMethod("initialize", (Class[])null).invoke((Object[]) null, (Object[])null); @@ -765,13 +765,16 @@ final JPanel allPanel = new JPanel(new BorderLayout()); ButtonGroup rGroup = new ButtonGroup(); + JRadioButton rMButton = new JRadioButton("Mac User Dir", "mac_user" + .equals(SettingsHandler.getFilePaths())); JRadioButton rPButton = new JRadioButton("PCGen Dir", "pcgen" .equals(SettingsHandler.getFilePaths())); JRadioButton rUButton = new JRadioButton("Home Dir", "user" .equals(SettingsHandler.getFilePaths())); JRadioButton rSButton = new JRadioButton("Select a directory", !"pcgen" .equals(SettingsHandler.getFilePaths()) - && !"user".equals(SettingsHandler.getFilePaths())); + && !"user".equals(SettingsHandler.getFilePaths()) + && !"mac_user".equals(SettingsHandler.getFilePaths())); final JTextField textField = new JTextField(String.valueOf(SettingsHandler.getPcgenFilesDir())); textField.setEditable(false); textField.setMinimumSize(new Dimension(90, 25)); @@ -779,17 +782,43 @@ { textField.setText(System.getProperty("user.home") + File.separator + ".pcgen"); } + else if ("mac_user".equals(SettingsHandler.getFilePaths())) + { + textField.setText(Globals.defaultMacOptionsPath); + } final JButton dirButton = new JButton("..."); dirButton.setEnabled(false); + if (Globals.isMacPlatform) + { + // only add if on Mac platform + rGroup.add(rMButton); + } rGroup.add(rPButton); rGroup.add(rUButton); rGroup.add(rSButton); aPanel.add(aLabel); + if (Globals.isMacPlatform) + { + // only add if on Mac platform + bPanel.add(rMButton); + } bPanel.add(rPButton); bPanel.add(rUButton); cPanel.add(rSButton, BorderLayout.NORTH); + if (Globals.isMacPlatform) + { + // only add if on Mac platform + rMButton.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent evt) + { + SettingsHandler.setFilePaths("mac_user"); + textField.setText(Globals.defaultMacOptionsPath); + } + }); + } rPButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-10-31 02:52:03
|
Revision: 8263 http://pcgen.svn.sourceforge.net/pcgen/?rev=8263&view=rev Author: thpr Date: 2008-10-31 02:51:56 +0000 (Fri, 31 Oct 2008) Log Message: ----------- [ 2168755 ] [5.15.4] AssociationSupport is not cloned with Equipment Issue#: 2168755 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/base/util/DoubleKeyMapToList.java Trunk/pcgen/code/src/java/pcgen/core/AssociationSupport.java Trunk/pcgen/code/src/java/pcgen/core/Equipment.java Modified: Trunk/pcgen/code/src/java/pcgen/base/util/DoubleKeyMapToList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/util/DoubleKeyMapToList.java 2008-10-31 01:44:41 UTC (rev 8262) +++ Trunk/pcgen/code/src/java/pcgen/base/util/DoubleKeyMapToList.java 2008-10-31 02:51:56 UTC (rev 8263) @@ -19,6 +19,7 @@ */ package pcgen.base.util; +import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Iterator; @@ -109,12 +110,12 @@ if (cl1 == null) { throw new IllegalArgumentException( - "First underlying Class cannot be null for DoubleKeyMap"); + "First underlying Class cannot be null for DoubleKeyMapToList"); } if (cl2 == null) { throw new IllegalArgumentException( - "Second underlying Class cannot be null for DoubleKeyMap"); + "Second underlying Class cannot be null for DoubleKeyMapToList"); } firstClass = cl1; secondClass = cl2; @@ -158,6 +159,37 @@ } /** + * Adds all of the Objects in the given list to the (internal) List for the + * given keys. The null value cannot be used as a key in a + * DoubleKeyMapToList. This method will automatically initialize the list + * for the given key if there is not already a List for that key. + * + * This method is reference-semantic and this DoubleKeyMapToList will + * maintain a strong reference to both the key objects and the objects in + * the given list. + * + * @param key1 + * The primary key indicating which List the given objects should + * be added to. + * @param key2 + * The secondary key indicating which List the given objects + * should be added to. + * @param list + * A Collection containing the items to be added to the List for + * the given keys. + */ + public void addAllToListFor(K1 key1, K2 key2, Collection<V> value) + { + MapToList<K2, V> localMap = mtmtl.get(key1); + if (localMap == null) + { + localMap = GenericMapToList.getMapToList(secondClass); + mtmtl.put(key1, localMap); + } + localMap.addAllToListFor(key2, value); + } + + /** * Returns a copy of the List contained in this DoubleKeyMapToList for the * given keys. This method returns null if the given key is not in this * DoubleKeyMapToList. Modified: Trunk/pcgen/code/src/java/pcgen/core/AssociationSupport.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/AssociationSupport.java 2008-10-31 01:44:41 UTC (rev 8262) +++ Trunk/pcgen/code/src/java/pcgen/core/AssociationSupport.java 2008-10-31 02:51:56 UTC (rev 8263) @@ -25,11 +25,13 @@ import pcgen.cdom.enumeration.AssociationKey; import pcgen.cdom.enumeration.AssociationListKey; -public class AssociationSupport +public class AssociationSupport implements Cloneable { - private final DoubleKeyMapToList assocMTL = new DoubleKeyMapToList(IdentityHashMap.class, IdentityHashMap.class); - private final DoubleKeyMap assocMap = new DoubleKeyMap(IdentityHashMap.class, IdentityHashMap.class); + private DoubleKeyMapToList assocMTL = new DoubleKeyMapToList( + IdentityHashMap.class, IdentityHashMap.class); + private DoubleKeyMap assocMap = new DoubleKeyMap(IdentityHashMap.class, + IdentityHashMap.class); public <T> void addAssoc(Object obj, AssociationListKey<T> ak, T o) { @@ -85,4 +87,25 @@ { return (T) assocMap.get(obj, ak); } + + public AssociationSupport clone() throws CloneNotSupportedException + { + AssociationSupport as = (AssociationSupport) super.clone(); + as.assocMTL = assocMTL.clone(); + as.assocMap = assocMap.clone(); + return as; + } + + public void convertAssociations(Object oldTarget, Object newTarget) + { + for (Object secKey : assocMap.getSecondaryKeySet(oldTarget)) + { + assocMap.put(newTarget, secKey, assocMap.remove(oldTarget, secKey)); + } + for (Object secKey : assocMTL.getSecondaryKeySet(oldTarget)) + { + assocMTL.addAllToListFor(newTarget, secKey, assocMTL.removeListFor( + oldTarget, secKey)); + } + } } Modified: Trunk/pcgen/code/src/java/pcgen/core/Equipment.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Equipment.java 2008-10-31 01:44:41 UTC (rev 8262) +++ Trunk/pcgen/code/src/java/pcgen/core/Equipment.java 2008-10-31 02:51:56 UTC (rev 8263) @@ -2749,8 +2749,9 @@ eq.d_containedEquipment = new ArrayList<Equipment>(d_containedEquipment); - eq.eqModifierList = cloneEqModList(true); - eq.altEqModifierList = cloneEqModList(false); + eq.assocSupt = assocSupt.clone(); + eq.eqModifierList = cloneEqModList(eq, true); + eq.altEqModifierList = cloneEqModList(eq, false); } catch (CloneNotSupportedException e) { ShowMessageDelegate.showMessageDialog(e.getMessage(), Constants.s_APPNAME, MessageType.ERROR); @@ -4226,7 +4227,7 @@ || !("".equals(pickChildType(aTypeList, aQuant))); } - private List<EquipmentModifier> cloneEqModList(final boolean primary) { + private List<EquipmentModifier> cloneEqModList(Equipment other, boolean primary) { final List<EquipmentModifier> clonedList = new ArrayList<EquipmentModifier>(); @@ -4235,7 +4236,9 @@ // only make a copy if we need to add qualifiers to modifier if (eqMod.getChoiceString().length() != 0) { - eqMod = eqMod.clone(); + EquipmentModifier newEqMod = eqMod.clone(); + other.assocSupt.convertAssociations(eqMod, newEqMod); + eqMod = newEqMod; } clonedList.add(eqMod); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-11-08 01:44:12
|
Revision: 8353 http://pcgen.svn.sourceforge.net/pcgen/?rev=8353&view=rev Author: jdempsey Date: 2008-11-08 01:44:07 +0000 (Sat, 08 Nov 2008) Log Message: ----------- Fix bug: Filter by Source broken Issue#: 2219261 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/gui/filter/SourceFilter.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java Modified: Trunk/pcgen/code/src/java/pcgen/gui/filter/SourceFilter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/filter/SourceFilter.java 2008-11-07 23:25:27 UTC (rev 8352) +++ Trunk/pcgen/code/src/java/pcgen/gui/filter/SourceFilter.java 2008-11-08 01:44:07 UTC (rev 8353) @@ -69,7 +69,7 @@ return false; } - final String sourceStr = pObject.getSourceEntry().getFormattedString( SourceEntry.SourceFormat.LONG, true ); + final String sourceStr = pObject.getSourceEntry().getFormattedString( SourceEntry.SourceFormat.MEDIUM, true ); if (detailLevel == LOW) { return normalizeSource(sourceStr).equals(source); Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2008-11-07 23:25:27 UTC (rev 8352) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2008-11-08 01:44:07 UTC (rev 8353) @@ -555,7 +555,13 @@ { EquipmentList.autoGenerateEquipment(); } - + + for (Campaign campaign : aSelectedCampaignsList) + { + sourcesSet.add(campaign.getSourceEntry().getFormattedString( + SourceEntry.SourceFormat.MEDIUM, true)); + } + // Show the licenses showLicensesIfNeeded(); showSponsorsIfNeeded(); @@ -1485,14 +1491,6 @@ } }); - // Loop through, performing a swap sort - for (Campaign campaign : aSelectedCampaignsList) - { - sourcesSet.add(campaign.getSourceEntry().getFormattedString( - SourceEntry.SourceFormat.LONG, true)); - } - - // end of campaign sort } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-11-09 21:54:07
|
Revision: 8365 http://pcgen.svn.sourceforge.net/pcgen/?rev=8365&view=rev Author: thpr Date: 2008-11-09 21:54:03 +0000 (Sun, 09 Nov 2008) Log Message: ----------- minor updates Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/base/formula/Formula.java Trunk/pcgen/code/src/java/pcgen/cdom/choiceset/QualifiedDecorator.java Modified: Trunk/pcgen/code/src/java/pcgen/base/formula/Formula.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/formula/Formula.java 2008-11-09 20:00:34 UTC (rev 8364) +++ Trunk/pcgen/code/src/java/pcgen/base/formula/Formula.java 2008-11-09 21:54:03 UTC (rev 8365) @@ -63,6 +63,11 @@ return true; } + @Override + public String toString() + { + return "0"; + } }; /** @@ -87,6 +92,12 @@ { return true; } + + @Override + public String toString() + { + return "1"; + } }; Modified: Trunk/pcgen/code/src/java/pcgen/cdom/choiceset/QualifiedDecorator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/choiceset/QualifiedDecorator.java 2008-11-09 20:00:34 UTC (rev 8364) +++ Trunk/pcgen/code/src/java/pcgen/cdom/choiceset/QualifiedDecorator.java 2008-11-09 21:54:03 UTC (rev 8365) @@ -59,4 +59,17 @@ return returnSet; } + @Override + public boolean equals(Object obj) + { + return (obj instanceof QualifiedDecorator) + && ((QualifiedDecorator<?>) obj).set.equals(set); + } + + @Override + public int hashCode() + { + return 1 - set.hashCode(); + } + } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-11-14 01:05:23
|
Revision: 8424 http://pcgen.svn.sourceforge.net/pcgen/?rev=8424&view=rev Author: thpr Date: 2008-11-14 01:05:18 +0000 (Fri, 14 Nov 2008) Log Message: ----------- [ 2279048 ] Feat increase on load from saved file Issue#: 2279048 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java Trunk/pcgen/code/src/java/pcgen/core/bonus/BonusObj.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java Modified: Trunk/pcgen/code/src/java/pcgen/core/PCClass.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2008-11-14 00:19:52 UTC (rev 8423) +++ Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2008-11-14 01:05:18 UTC (rev 8424) @@ -1509,6 +1509,7 @@ // + aBuf.toString()); BonusObj bon = Bonus.newBonus(aBuf.toString()); bon.setCreatorObject(this); + bon.setSaveToPCG(false); aPC.addAssoc(this, AssociationListKey.BONUS, bon); } } Modified: Trunk/pcgen/code/src/java/pcgen/core/bonus/BonusObj.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/bonus/BonusObj.java 2008-11-14 00:19:52 UTC (rev 8423) +++ Trunk/pcgen/code/src/java/pcgen/core/bonus/BonusObj.java 2008-11-14 01:05:18 UTC (rev 8424) @@ -72,6 +72,7 @@ private String stringRepresentation = null; private boolean addOnceOnly = false; private String tokenSource = null; + private boolean saveToPCG = true; /** An enum for the possible stacking modifiers a bonus can have */ public enum StackType { @@ -1117,6 +1118,15 @@ // TODO Auto-generated method stub return super.hashCode(); } + + public void setSaveToPCG(boolean b) + { + saveToPCG = b; + } + public boolean saveToPCG() + { + return saveToPCG; + } } Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java 2008-11-14 00:19:52 UTC (rev 8423) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java 2008-11-14 01:05:18 UTC (rev 8424) @@ -928,7 +928,10 @@ { for (final BonusObj save : list) { - specials.put(key, "BONUS|" + save); + if (save.saveToPCG()) + { + specials.put(key, "BONUS|" + save); + } } } for (int i = 1; i <= pcClass.getLevel(); i++) @@ -938,7 +941,10 @@ { for (final BonusObj save : list) { - specials.put(key, "BONUS|" + save); + if (save.saveToPCG()) + { + specials.put(key, "BONUS|" + save); + } } } } @@ -1465,9 +1471,12 @@ { for (final BonusObj save : list) { - buffer.append('|'); - buffer.append(TAG_SAVE).append(':'); - buffer.append(EntityEncoder.encode("BONUS|" + save)); + if (save.saveToPCG()) + { + buffer.append('|'); + buffer.append(TAG_SAVE).append(':'); + buffer.append(EntityEncoder.encode("BONUS|" + save)); + } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-11-14 22:40:06
|
Revision: 8428 http://pcgen.svn.sourceforge.net/pcgen/?rev=8428&view=rev Author: jdempsey Date: 2008-11-14 22:40:00 +0000 (Fri, 14 Nov 2008) Log Message: ----------- PCGen Source Loading is too complex - Hide and unhide sources (the other half) Issue#: 1625030 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties Modified: Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2008-11-14 17:04:42 UTC (rev 8427) +++ Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2008-11-14 22:40:00 UTC (rev 8428) @@ -235,6 +235,9 @@ // private static boolean showNatWeaponTab = false; + private static String hiddenSources = ""; //$NON-NLS-1$ + private static String quickLaunchSources = ""; //$NON-NLS-1$ + public static void setAbilitiesShownAsATab(final boolean showAbilitiesAsTab) { abilitiesShownAsTab = showAbilitiesAsTab; @@ -1167,6 +1170,7 @@ setGrittyACMode(getPCGenOption("grittyACMode", false)); //$NON-NLS-1$ setGUIUsesOutputNameEquipment(getPCGenOption("GUIUsesOutputNameEquipment", false)); //$NON-NLS-1$ setGUIUsesOutputNameSpells(getPCGenOption("GUIUsesOutputNameSpells", false)); //$NON-NLS-1$ + setHiddenSources(getPCGenOption("hiddenSources", "")); //$NON-NLS-1$ //$NON-NLS-2$ setHideMonsterClasses(getPCGenOption("hideMonsterClasses", false)); //$NON-NLS-1$ setHPMaxAtFirstLevel(getPCGenOption("hpMaxAtFirstLevel", true)); //$NON-NLS-1$ setHPMaxAtFirstClassLevel(getPCGenOption("hpMaxAtFirstClassLevel", false)); //$NON-NLS-1$ @@ -1214,6 +1218,7 @@ setPrereqFailColor(getPCGenOption("prereqFailColor", Color.red.getRGB())); //$NON-NLS-1$ setPrereqQualifyColor(getPCGenOption("prereqQualifyColor", Color.black.getRGB())); //$NON-NLS-1$ setPreviewTabShown(getPCGenOption("previewTabShown", true)); //$NON-NLS-1$ + setQuickLaunchSources(getPCGenOption("quickLaunchSources", "")); //$NON-NLS-1$ //$NON-NLS-2$ setRaceTab_ListMode(getPCGenOption("RaceTab.ListMode", GuiConstants.INFORACE_VIEW_NAME)); //$NON-NLS-1$ setRanStartingWizard(getPCGenOption("ranStartingWizard", false)); //$NON-NLS-1$ setROG(getPCGenOption("isROG", false)); //$NON-NLS-1$ @@ -1639,6 +1644,8 @@ setPCGenOption("weaponProfPrintout", SettingsHandler.getWeaponProfPrintout()); //$NON-NLS-1$ setPCGenOption("debugFeats", debugFeats); //$NON-NLS-1$ setPCGenOption("outputDeprecationMessages", outputDeprecationMessages()); + setPCGenOption("hiddenSources", getHiddenSources()); + setPCGenOption("quickLaunchSources", getQuickLaunchSources()); } public static void setPCGenOption(final String optionName, final int optionValue) @@ -3495,4 +3502,36 @@ { outputDeprecationMessages = b; } + + /** + * @return the hiddenSources + */ + public static String getHiddenSources() + { + return hiddenSources; + } + + /** + * @param hiddenSources the hiddenSources to set + */ + public static void setHiddenSources(String hiddenSources) + { + SettingsHandler.hiddenSources = hiddenSources; + } + + /** + * @return the quickLaunchSources + */ + public static String getQuickLaunchSources() + { + return quickLaunchSources; + } + + /** + * @param quickLaunchSources the quickLaunchSources to set + */ + public static void setQuickLaunchSources(String quickLaunchSources) + { + SettingsHandler.quickLaunchSources = quickLaunchSources; + } } Modified: Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2008-11-14 17:04:42 UTC (rev 8427) +++ Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2008-11-14 22:40:00 UTC (rev 8428) @@ -261,6 +261,10 @@ in_mn_copy=p +in_hide=Hide + +in_unhide=Unhide + #Universal Skill related in_rank=Rank @@ -4183,3 +4187,5 @@ in_qsrc_intro=Select a Source to load, or define a new set of sources in_qsrc_err_none_selected=You must select a source to load from the list. + +in_qsrc_unhide_title=Unhide Sources \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-11-16 20:11:22
|
Revision: 8448 http://pcgen.svn.sourceforge.net/pcgen/?rev=8448&view=rev Author: jdempsey Date: 2008-11-16 20:11:16 +0000 (Sun, 16 Nov 2008) Log Message: ----------- PCGen Source Loading is too complex - Set simple source dialog as default - Add preference to allow use of the old source materials tab - Add Source info tab to guide new users and show what sources are loaded Issue#: 1625030 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java Trunk/pcgen/code/src/java/pcgen/gui/prefs/SourcesPanel.java Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties Trunk/pcgen/code/src/java/pcgen/gui/sources/SourceSelectionUtils.java Trunk/pcgen/code/src/java/pcgen/util/enumeration/Tab.java Added Paths: ----------- Trunk/pcgen/code/src/java/pcgen/gui/sources/InfoPanel.java Modified: Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -228,7 +228,8 @@ private static boolean showTipOfTheDay = true; private static boolean isGMGen = false; private static boolean showSingleBoxPerBundle = false; - + private static boolean useAdvancedSourceSelect = false; + // // Hide this tab from general consumption, until I get it working. // Then this routine can be removed and the tab will show always @@ -1261,6 +1262,7 @@ setTemplateTab_ListMode(getPCGenOption("TemplateTab.availableListMode", GuiConstants.INFOTEMPLATE_VIEW_NAME)); //$NON-NLS-1$ setToolTipTextShown(getPCGenOption("toolTipTextShown", true)); //$NON-NLS-1$ setUseHigherLevelSlotsDefault(getPCGenOption("useHigherLevelSlotsDefault", false)); //$NON-NLS-1$ + setUseAdvancedSourceSelect(getPCGenOption("useAdvancedSourceSelect", false)); //$NON-NLS-1$ setUseWaitCursor(getPCGenOption("useWaitCursor", true)); //$NON-NLS-1$ setWantToLoadMasterworkAndMagic(getPCGenOption("loadMasterworkAndMagicFromLst", false)); //$NON-NLS-1$ setWeaponProfPrintout(getPCGenOption("weaponProfPrintout", Constants.PRINTOUT_WEAPONPROF)); //$NON-NLS-1$ @@ -1643,9 +1645,10 @@ setPCGenOption("validateBonuses", validateBonuses); //$NON-NLS-1$ setPCGenOption("weaponProfPrintout", SettingsHandler.getWeaponProfPrintout()); //$NON-NLS-1$ setPCGenOption("debugFeats", debugFeats); //$NON-NLS-1$ - setPCGenOption("outputDeprecationMessages", outputDeprecationMessages()); - setPCGenOption("hiddenSources", getHiddenSources()); - setPCGenOption("quickLaunchSources", getQuickLaunchSources()); + setPCGenOption("outputDeprecationMessages", outputDeprecationMessages()); //$NON-NLS-1$ + setPCGenOption("hiddenSources", getHiddenSources()); //$NON-NLS-1$ + setPCGenOption("quickLaunchSources", getQuickLaunchSources()); //$NON-NLS-1$ + setPCGenOption("useAdvancedSourceSelect", useAdvancedSourceSelect()); //$NON-NLS-1$ } public static void setPCGenOption(final String optionName, final int optionValue) @@ -1656,7 +1659,7 @@ public static void setPCGenOption(final String optionName, final String optionValue) { if (optionValue==null) { - getOptions().remove("pcgen.options." + optionName); + getOptions().remove("pcgen.options." + optionName); //$NON-NLS-1$ } else { getOptions().setProperty("pcgen.options." + optionName, optionValue); //$NON-NLS-1$ @@ -3534,4 +3537,20 @@ { SettingsHandler.quickLaunchSources = quickLaunchSources; } + + /** + * @return the useAdvancedSourceSelect + */ + public static boolean useAdvancedSourceSelect() + { + return useAdvancedSourceSelect; + } + + /** + * @param useAdvancedSourceSelect the useAdvancedSourceSelect to set + */ + public static void setUseAdvancedSourceSelect(boolean useAdvancedSourceSelect) + { + SettingsHandler.useAdvancedSourceSelect = useAdvancedSourceSelect; + } } Modified: Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/gui/PCGen_Frame1.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -112,6 +112,7 @@ import pcgen.core.utils.ShowMessageDelegate; import pcgen.gui.filter.FilterFactory; import pcgen.gui.filter.Filterable; +import pcgen.gui.sources.InfoPanel; import pcgen.gui.sources.MainSource; import pcgen.gui.utils.IconUtilitities; import pcgen.gui.utils.LinkableHtmlMessage; @@ -188,6 +189,7 @@ * @see MainSource */ private MainSource mainSource; + private InfoPanel infoPanel; /** Menubar for the main application. */ private PCGenMenuBar pcgenMenuBar; @@ -317,6 +319,14 @@ } /** + * @return the infoPanel + */ + public InfoPanel getInfoPanel() + { + return infoPanel; + } + + /** * Get an instance of this class * @return instance of PCGen_Frame1 */ @@ -1249,8 +1259,9 @@ private void handleNewMessage() { final int currTab = baseTabbedPane.getSelectedIndex(); - if (currTab >= FIRST_CHAR_TAB - || baseTabbedPane.getSelectedComponent() == mainSource) + if (currTab < 0 || currTab >= FIRST_CHAR_TAB + || baseTabbedPane.getSelectedComponent() == mainSource + || baseTabbedPane.getSelectedComponent() instanceof InfoPanel) { // seize the focus to cause focus listeners to fire // How does this work with the toolbar button?? --bko XXX @@ -2392,12 +2403,19 @@ GameMode game = SettingsHandler.getGame(); mainSource = new MainSource(); - if ((game != null) && (game.getTabShown(Tab.SOURCES))) + if ((game != null) && (game.getTabShown(Tab.SOURCES)) && SettingsHandler.useAdvancedSourceSelect()) { baseTabbedPane.addTab(game.getTabName(Tab.SOURCES), mainSource); baseTabbedPane.setToolTipTextAt(0, SettingsHandler .isToolTipTextShown() ? MainSource.SOURCE_MATERIALS_TAB : null); } + else + { + infoPanel = new InfoPanel(); + baseTabbedPane.addTab(game.getTabName(Tab.INFO), infoPanel); + baseTabbedPane.setToolTipTextAt(0, SettingsHandler + .isToolTipTextShown() ? MainSource.SOURCE_MATERIALS_TAB : null); + } this.getContentPane().add(panelSouth, BorderLayout.SOUTH); panelSouth.add(statusBar, BorderLayout.SOUTH); @@ -3024,7 +3042,7 @@ */ public static void setCharacterPane(CharacterInfo theCharacterPane) { - PCGen_Frame1.characterPane = characterPane; + PCGen_Frame1.characterPane = theCharacterPane; } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/gui/pcGenGUI.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -67,6 +67,7 @@ import pcgen.core.utils.MessageWrapper; import pcgen.core.utils.ShowMessageConsoleObserver; import pcgen.core.utils.ShowMessageDelegate; +import pcgen.gui.sources.SourceSelectionDialog; import pcgen.gui.utils.DialogInputInterface; import pcgen.gui.utils.Hyperactive; import pcgen.gui.utils.IconUtilitities; @@ -235,6 +236,15 @@ { showTipOfTheDay(); } + + if (!SettingsHandler.useAdvancedSourceSelect()) + { + PCGen_Frame1.setMessageAreaText("Source Selection..."); + + SourceSelectionDialog dialog = + new SourceSelectionDialog(frame, false); + dialog.setVisible(true); + } } /** Modified: Trunk/pcgen/code/src/java/pcgen/gui/prefs/SourcesPanel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/prefs/SourcesPanel.java 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/gui/prefs/SourcesPanel.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -27,17 +27,14 @@ import java.awt.Insets; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.List; import javax.swing.BorderFactory; import javax.swing.JCheckBox; import javax.swing.JLabel; -import javax.swing.JPanel; import javax.swing.border.Border; import javax.swing.border.TitledBorder; import pcgen.cdom.base.Constants; -import pcgen.core.GameMode; import pcgen.core.Globals; import pcgen.core.SettingsHandler; import pcgen.core.SourceEntry; @@ -75,6 +72,7 @@ private JComboBoxEx sourceOptions = new JComboBoxEx(); private JCheckBox loadURL = new JCheckBox(); private JCheckBox allowOverride = new JCheckBox(); + private JCheckBox useAdvancedSourceSelect = new JCheckBox(); /** * Instantiates a new monster panel. @@ -201,6 +199,14 @@ gridbag.setConstraints(allowOverride, c); this.add(allowOverride); + Utility.buildConstraints(c, 0, 11, 3, 1, 0, 0); + label = new JLabel(PropertyFactory.getString("in_Prefs_useAdvancedSourceSelect") + ": "); + gridbag.setConstraints(label, c); + this.add(label); + Utility.buildConstraints(c, 3, 11, 1, 1, 0, 0); + gridbag.setConstraints(useAdvancedSourceSelect, c); + this.add(useAdvancedSourceSelect); + Utility.buildConstraints(c, 5, 20, 1, 1, 1, 1); c.fill = GridBagConstraints.BOTH; label = new JLabel(" "); @@ -234,6 +240,7 @@ SettingsHandler.setShowSponsors(showSponsors.isSelected()); SettingsHandler.setLoadURLs(loadURL.isSelected()); SettingsHandler.setAllowOverride(allowOverride.isSelected()); + SettingsHandler.setUseAdvancedSourceSelect(useAdvancedSourceSelect.isSelected()); switch (sourceOptions.getSelectedIndex()) { @@ -283,7 +290,7 @@ showSponsors.setSelected(SettingsHandler.showSponsors()); loadURL.setSelected(SettingsHandler.isLoadURLs()); allowOverride.setSelected(SettingsHandler.isAllowOverride()); - + useAdvancedSourceSelect.setSelected(SettingsHandler.useAdvancedSourceSelect()); switch (Globals.getSourceDisplay()) { Modified: Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2008-11-16 20:11:16 UTC (rev 8448) @@ -3183,6 +3183,8 @@ in_Prefs_allowOverride=Allow newer sources to override duplicate object from older sources +in_Prefs_useAdvancedSourceSelect=Use advanced source selection + #Preferences dialogs in_Prefs_urlBlocked=Use at your own risk!\nIt's possible that malicious files could be downloaded and\nput the security of your system at risk.\nOnly download files you trust and protect\nyour system with anti-virus software. @@ -4181,11 +4183,19 @@ in_Src_Bad_Combo_Load=The sources you have selected are not compatible.\nPlease resolve the conflict and then Load Sources. # Source Selection dialog -in_mnuSettingsSources=Quick Source Loading Demo +in_mnuSettingsSources=Load Sources in_qsrc_title=Load Sources in_qsrc_intro=Select a Source to load, or define a new set of sources in_qsrc_err_none_selected=You must select a source to load from the list. -in_qsrc_unhide_title=Unhide Sources \ No newline at end of file +in_qsrc_unhide_title=Unhide Sources + +in_source_info=Info + +in_si_intro=<html><h3>You are using the following source material</h3></html> +in_si_gamemode=Game Mode +in_si_sources=Source Materials +in_si_nosources=None.<br>Please use the <b>Settings > Load Sources</b> menu to load source materials before continuing. +in_si_whatnext=<html><h3>Wondering what to do next?</h3> You can:<UL><li>Use the <img src="{0}"> <b>File > New</b> menu to create a new character;<li>Use the <img src="{1}"> <b>File > New NPC</b> to create a random character;<li>Use the <img src="{2}"> <b>File > Open</b> to load a previously saved character.</UL><html> Added: Trunk/pcgen/code/src/java/pcgen/gui/sources/InfoPanel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/sources/InfoPanel.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/gui/sources/InfoPanel.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -0,0 +1,169 @@ +/* + * InfoPanel.java + * Copyright 2008 (C) James Dempsey + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Created on 16/11/2008 3:34:16 PM + * + * $Id: $ + */ + +package pcgen.gui.sources; + +import java.awt.Color; +import java.awt.GridBagConstraints; +import java.awt.Insets; +import java.net.URI; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import javax.swing.BorderFactory; +import javax.swing.JLabel; +import javax.swing.JPanel; + +import pcgen.core.Campaign; +import pcgen.core.Globals; +import pcgen.core.SettingsHandler; +import pcgen.gui.utils.IconUtilitities; +import pcgen.gui.utils.JLabelPane; +import pcgen.gui.utils.Utility; +import pcgen.persistence.PersistenceManager; +import pcgen.util.PropertyFactory; +import pcgen.util.enumeration.Tab; + + +/** + * The Class <code>InfoPanel</code> provides a guide for first time + * users on what to do next and what sources are loaded. + * + * Last Editor: $Author: $ + * Last Edited: $Date: $ + * + * @author James Dempsey <jde...@us...> + * @version $Revision: $ + */ +@SuppressWarnings("serial") +public class InfoPanel extends JPanel +{ + private JLabelPane infoPane = new JLabelPane(); + private JLabelPane gameMode = new JLabelPane(); + private JLabelPane sourceList = new JLabelPane(); + + public InfoPanel() + { + setName(Tab.INFO.label()); + + initComponents(); + refreshDisplay(); + } + + private void initComponents() + { + setLayout(new java.awt.GridBagLayout()); + + GridBagConstraints gbc = new GridBagConstraints(); + gbc.fill = GridBagConstraints.HORIZONTAL; + gbc.anchor = GridBagConstraints.NORTHWEST; + gbc.insets = new Insets(4, 4, 4, 4); + + JPanel sourcesPanel = new JPanel(); + sourcesPanel.setBorder(BorderFactory.createLineBorder(Color.black)); + sourcesPanel.setLayout(new java.awt.GridBagLayout()); + + JLabel jLabel1 = new JLabel(PropertyFactory.getString("in_si_intro")); + Utility.buildRelativeConstraints(gbc, GridBagConstraints.REMAINDER, 1, + 0.0, 0.0); + sourcesPanel.add(jLabel1, gbc); + + jLabel1 = new JLabel(PropertyFactory.getString("in_si_gamemode")); + Utility.buildRelativeConstraints(gbc, 1, 1, + 0.0, 0.0); + sourcesPanel.add(jLabel1, gbc); + gameMode.setOpaque(false); + gameMode.setText(SettingsHandler.getGame().getName()); + gameMode.setEditable(false); + Utility.buildRelativeConstraints(gbc, GridBagConstraints.REMAINDER, 1, + 0.0, 0.0); + sourcesPanel.add(gameMode, gbc); + + jLabel1 = new JLabel(PropertyFactory.getString("in_si_sources")); + Utility.buildRelativeConstraints(gbc, 1, 1, + 0.0, 0.0); + sourcesPanel.add(jLabel1, gbc); + sourceList.setOpaque(false); + sourceList.setEditable(false); + Utility.buildRelativeConstraints(gbc, GridBagConstraints.REMAINDER, 1, + 0.0, 0.0); + sourcesPanel.add(sourceList, gbc); + + Utility.buildRelativeConstraints(gbc, GridBagConstraints.REMAINDER, 1, + 0.0, 0.0); + add(sourcesPanel, gbc); + + infoPane.setOpaque(false); + infoPane.setContentType("text/html"); //$NON-NLS-1$ + infoPane.setText(PropertyFactory.getFormattedString("in_si_whatnext", + IconUtilitities.class.getResource(IconUtilitities.RESOURCE_URL+"New16.gif"), + IconUtilitities.class.getResource(IconUtilitities.RESOURCE_URL+"NewNPC16.gif"), + IconUtilitities.class.getResource(IconUtilitities.RESOURCE_URL+"Open16.gif"))); + infoPane.setEditable(false); + + Utility.buildRelativeConstraints(gbc, GridBagConstraints.REMAINDER, GridBagConstraints.REMAINDER, + 0.0, 0.0); + add(infoPane, gbc); + } + + /** + * Refresh the info panel display to reflect the current source loaded status. + */ + public void refreshDisplay() + { + gameMode.setText(SettingsHandler.getGame().getName()); + + List<String> selectedCampaigns = new ArrayList<String>(); + List<URI> campaigns = + PersistenceManager.getInstance().getChosenCampaignSourcefiles(); + for (URI element : campaigns) + { + final Campaign aCampaign = Globals.getCampaignByURI(element); + + if (aCampaign != null) + { + String name = aCampaign.getDisplayName(); + if (!selectedCampaigns.contains(name) && aCampaign.isLoaded()) + { + selectedCampaigns.add(name); + } + } + } + Collections.sort(selectedCampaigns); + + StringBuffer buff = new StringBuffer(); + for (String name : selectedCampaigns) + { + buff.append(name).append("<br>"); + } + if (buff.length() > 0) + { + sourceList.setText(buff.toString()); + } + else + { + sourceList.setText(PropertyFactory.getString("in_si_nosources")); + } + } +} Modified: Trunk/pcgen/code/src/java/pcgen/gui/sources/SourceSelectionUtils.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/sources/SourceSelectionUtils.java 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/gui/sources/SourceSelectionUtils.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -34,6 +34,7 @@ import pcgen.core.utils.MessageType; import pcgen.core.utils.ShowMessageDelegate; import pcgen.gui.PCGen_Frame1; +import pcgen.gui.PersistenceObserver; import pcgen.persistence.PersistenceLayerException; import pcgen.persistence.PersistenceManager; import pcgen.util.Logging; @@ -148,10 +149,12 @@ // Show that we are loading... oldStatus = PCGen_Frame1.getInst().getMainSource() .showLoadingSources(); - //PersistenceObserver observer = new PersistenceObserver(); - //pManager.addObserver( observer ); + final PersistenceObserver observer = new PersistenceObserver(); + pManager.addObserver( observer ); + Logging.registerHandler( observer.getHandler() ); pManager.loadCampaigns(selectedCampaigns); - //pManager.deleteObserver( observer ); + Logging.removeHandler( observer.getHandler() ); + pManager.deleteObserver( observer ); } catch (PersistenceLayerException e) @@ -164,6 +167,11 @@ // Show that we are done PCGen_Frame1.getInst().getMainSource().showSourcesLoaded( oldStatus); + InfoPanel infoPanel = PCGen_Frame1.getInst().getInfoPanel(); + if (infoPanel != null) + { + infoPanel.refreshDisplay(); + } PCGen_Frame1 parent = pcgen.gui.PCGen_Frame1.getInst(); if ((parent != null) && Globals.displayListsHappy()) Modified: Trunk/pcgen/code/src/java/pcgen/util/enumeration/Tab.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/util/enumeration/Tab.java 2008-11-16 19:00:06 UTC (rev 8447) +++ Trunk/pcgen/code/src/java/pcgen/util/enumeration/Tab.java 2008-11-16 20:11:16 UTC (rev 8448) @@ -25,7 +25,8 @@ SPELLBOOKS("Spellbooks", "in_spellbooks"), RACES("Races", "in_races"), TEMPLATES("Templates", "in_templates"), - CHARACTERSHEET("Character Sheet", "in_character_sheet"); + CHARACTERSHEET("Character Sheet", "in_character_sheet"), + INFO("SourceInfo", "in_source_info"); private final String text; private final String label; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-11-24 12:09:58
|
Revision: 8482 http://pcgen.svn.sourceforge.net/pcgen/?rev=8482&view=rev Author: jdempsey Date: 2008-11-24 12:09:47 +0000 (Mon, 24 Nov 2008) Log Message: ----------- Allow CHOOSE to be used in races - Save and reload choice Issue#: 2330943 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java Modified: Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-11-24 05:03:09 UTC (rev 8481) +++ Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-11-24 12:09:47 UTC (rev 8482) @@ -6408,16 +6408,16 @@ if (!isImporting()) { Globals.getBioSet().randomize("AGE.HT.WT", this); + + ChooserUtilities.modChoices( + race, + new ArrayList(), + new ArrayList(), + true, + this, + true, + null); } - - boolean choiceMade = ChooserUtilities.modChoices( - race, - new ArrayList(), - new ArrayList(), - true, - this, - true, - null); // Get existing classes final List<PCClass> existingClasses = Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java 2008-11-24 05:03:09 UTC (rev 8481) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java 2008-11-24 12:09:47 UTC (rev 8482) @@ -1682,6 +1682,30 @@ { buffer.append(TAG_RACE).append(':'); buffer.append(EntityEncoder.encode(thePC.getRace().getKeyName())); + List<FixedStringList> assocList = thePC.getDetailedAssociations(thePC.getRace()); + if (assocList != null && !assocList.isEmpty()) + { + buffer.append(TAG_SEPARATOR); + buffer.append(TAG_APPLIEDTO).append(TAG_END); + boolean first = true; + for (FixedStringList assocArray : assocList) + { + if (assocArray.size() > 1) + { + buffer.append(TAG_MULTISELECT).append(':'); + } + for (String assoc : assocArray) + { + if (!first) + { + buffer.append(Constants.COMMA); + } + first = false; + buffer.append(EntityEncoder.encode(assoc)); + } + } + } + buffer.append(LINE_SEP); } Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-11-24 05:03:09 UTC (rev 8481) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-11-24 12:09:47 UTC (rev 8482) @@ -3296,6 +3296,60 @@ msgKey, race_name); warnings.add(msg); } + else if (aString.startsWith(TAG_APPLIEDTO)) + { + final StringTokenizer aTok = + new StringTokenizer(aString.substring(TAG_APPLIEDTO + .length()+1), TAG_SEPARATOR, false); + Race race = thePC.getRace(); + while (aTok.hasMoreTokens()) + { + final String appliedToKey = aTok.nextToken(); + if (appliedToKey.startsWith(TAG_MULTISELECT)) + { + // + // Should be in the form: + // MULTISELECCT:maxcount:#chosen:choice1:choice2:...:choicen + // + final StringTokenizer msTok = + new StringTokenizer(appliedToKey, TAG_END, false); + + if (msTok.countTokens() > 2) + { + msTok.nextToken(); // should be TAG_MULTISELECT + + final int maxChoices = + Integer.parseInt(sTok.nextToken()); + msTok.nextToken(); // toss this--number of choices made + + final FixedStringList array = new FixedStringList(maxChoices); + while (msTok.hasMoreTokens()) + { + array.add(msTok.nextToken()); + } + + thePC.addAssociation(race, array); + } + else + { + final String msg = + PropertyFactory + .getFormattedString( + "Warnings.PCGenParser.IllegalRaceIgnored", //$NON-NLS-1$ + line); + warnings.add(msg); + } + } + else if (!thePC.containsAssociated(race, appliedToKey)) + { + String[] assoc = appliedToKey.split(Constants.COMMA, -1); + for (String string : assoc) + { + thePC.addAssociation(race, string); + } + } + } + } else { final String msg = This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-11-24 17:12:06
|
Revision: 8484 http://pcgen.svn.sourceforge.net/pcgen/?rev=8484&view=rev Author: thpr Date: 2008-11-24 17:11:54 +0000 (Mon, 24 Nov 2008) Log Message: ----------- change how domain spell point is stored in order to keep it out of PCClass (this removes one more situation that requires a clone) Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/AssociationKey.java Trunk/pcgen/code/src/java/pcgen/core/PCClass.java Trunk/pcgen/code/src/java/pcgen/core/analysis/DomainApplication.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/AssociationKey.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/AssociationKey.java 2008-11-24 17:05:14 UTC (rev 8483) +++ Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/AssociationKey.java 2008-11-24 17:11:54 UTC (rev 8484) @@ -83,6 +83,8 @@ public static final AssociationKey<String> DC_FORMULA = new AssociationKey<String>(); + public static final AssociationKey<Integer> DOMAIN_SPELL_COUNT = new AssociationKey<Integer>(); + private static CaseInsensitiveMap<AssociationKey<?>> map = null; private AssociationKey() Modified: Trunk/pcgen/code/src/java/pcgen/core/PCClass.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2008-11-24 17:05:14 UTC (rev 8483) +++ Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2008-11-24 17:11:54 UTC (rev 8484) @@ -1202,9 +1202,10 @@ } } - // make sure any slots due from specialties (including domains) are - // added + // make sure any slots due from specialties total += getSafe(IntegerKey.KNOWN_SPELLS_FROM_SPECIALTY); + // (including domains) are added + total += aPC.getAssoc(this, AssociationKey.DOMAIN_SPELL_COUNT); return total; } @@ -2530,8 +2531,9 @@ if (total > 0 && spellLevel > 0) { // make sure any slots due from specialties + total += getSafe(IntegerKey.KNOWN_SPELLS_FROM_SPECIALTY); // (including domains) are added - total += getSafe(IntegerKey.KNOWN_SPELLS_FROM_SPECIALTY); + total += aPC.getAssoc(this, AssociationKey.DOMAIN_SPELL_COUNT); } return total; Modified: Trunk/pcgen/code/src/java/pcgen/core/analysis/DomainApplication.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/analysis/DomainApplication.java 2008-11-24 17:05:14 UTC (rev 8483) +++ Trunk/pcgen/code/src/java/pcgen/core/analysis/DomainApplication.java 2008-11-24 17:11:54 UTC (rev 8484) @@ -85,15 +85,8 @@ { if (SpellLevel.levelForKey(gcs, "DOMAIN", keyName, pc) < maxLevel) { - if (aClass - .getSafe(IntegerKey.KNOWN_SPELLS_FROM_SPECIALTY) == 0) - { - aClass - .put( - IntegerKey.KNOWN_SPELLS_FROM_SPECIALTY, - 1); - break; - } + pc.setAssoc(aClass, AssociationKey.DOMAIN_SPELL_COUNT, 1); + break; } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-11-26 11:21:10
|
Revision: 8501 http://pcgen.svn.sourceforge.net/pcgen/?rev=8501&view=rev Author: jdempsey Date: 2008-11-26 11:21:04 +0000 (Wed, 26 Nov 2008) Log Message: ----------- Allow CHOOSE to be used in templates - Save and reload choice Issue#: 2332545 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java Modified: Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-11-26 02:28:49 UTC (rev 8500) +++ Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-11-26 11:21:04 UTC (rev 8501) @@ -8313,18 +8313,19 @@ } } - // Do chooser (if any) - boolean choiceMade = ChooserUtilities.modChoices( - inTmpl, - new ArrayList(), - new ArrayList(), - true, - this, - true, - null); if (!isImporting()) { + // Do chooser (if any) + boolean choiceMade = ChooserUtilities.modChoices( + inTmpl, + new ArrayList(), + new ArrayList(), + true, + this, + true, + null); + getSpellList(); inTmpl.globalChecks(this); } Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java 2008-11-26 02:28:49 UTC (rev 8500) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Creator.java 2008-11-26 11:21:04 UTC (rev 8501) @@ -2204,6 +2204,29 @@ buffer.append(']'); } } + List<FixedStringList> assocList = thePC.getDetailedAssociations(template); + if (assocList != null && !assocList.isEmpty()) + { + buffer.append(TAG_SEPARATOR); + buffer.append(TAG_APPLIEDTO).append(TAG_END); + boolean first = true; + for (FixedStringList assocArray : assocList) + { + if (assocArray.size() > 1) + { + buffer.append(TAG_MULTISELECT).append(':'); + } + for (String assoc : assocArray) + { + if (!first) + { + buffer.append(Constants.COMMA); + } + first = false; + buffer.append(EntityEncoder.encode(assoc)); + } + } + } buffer.append(']').append(LINE_SEP); } Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-11-26 02:28:49 UTC (rev 8500) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-11-26 11:21:04 UTC (rev 8501) @@ -3299,57 +3299,8 @@ } else if (aString.startsWith(TAG_APPLIEDTO)) { - final StringTokenizer aTok = - new StringTokenizer(aString.substring(TAG_APPLIEDTO - .length()+1), TAG_SEPARATOR, false); Race race = thePC.getRace(); - while (aTok.hasMoreTokens()) - { - final String appliedToKey = aTok.nextToken(); - if (appliedToKey.startsWith(TAG_MULTISELECT)) - { - // - // Should be in the form: - // MULTISELECCT:maxcount:#chosen:choice1:choice2:...:choicen - // - final StringTokenizer msTok = - new StringTokenizer(appliedToKey, TAG_END, false); - - if (msTok.countTokens() > 2) - { - msTok.nextToken(); // should be TAG_MULTISELECT - - final int maxChoices = - Integer.parseInt(sTok.nextToken()); - msTok.nextToken(); // toss this--number of choices made - - final FixedStringList array = new FixedStringList(maxChoices); - while (msTok.hasMoreTokens()) - { - array.add(msTok.nextToken()); - } - - thePC.addAssociation(race, array); - } - else - { - final String msg = - PropertyFactory - .getFormattedString( - "Warnings.PCGenParser.IllegalRaceIgnored", //$NON-NLS-1$ - line); - warnings.add(msg); - } - } - else if (!thePC.containsAssociated(race, appliedToKey)) - { - String[] assoc = appliedToKey.split(Constants.COMMA, -1); - for (String string : assoc) - { - thePC.addAssociation(race, string); - } - } - } + parseAppliedTo(line, aString, race); } else { @@ -3374,6 +3325,69 @@ // adjust for more information according to PCGVer1Creator.appendRaceLine } + /** + * Parse an applied to element, indicating a value associated with the + * item, generally the result of a chooser. + * + * @param line The line being parsed, only for error reporting. + * @param aString The APPLIEDTO element + * @param pObj The object that this data is to be added to. + */ + private void parseAppliedTo(final String line, + final String aString, PObject pObj) + { + final StringTokenizer aTok = + new StringTokenizer(aString.substring(TAG_APPLIEDTO + .length()+1), TAG_SEPARATOR, false); + while (aTok.hasMoreTokens()) + { + final String appliedToKey = aTok.nextToken(); + if (appliedToKey.startsWith(TAG_MULTISELECT)) + { + // + // Should be in the form: + // MULTISELECCT:maxcount:#chosen:choice1:choice2:...:choicen + // + final StringTokenizer msTok = + new StringTokenizer(appliedToKey, TAG_END, false); + + if (msTok.countTokens() > 2) + { + msTok.nextToken(); // should be TAG_MULTISELECT + + final int maxChoices = + Integer.parseInt(msTok.nextToken()); + msTok.nextToken(); // toss this--number of choices made + + final FixedStringList array = new FixedStringList(maxChoices); + while (msTok.hasMoreTokens()) + { + array.add(msTok.nextToken()); + } + + thePC.addAssociation(pObj, array); + } + else + { + final String msg = + PropertyFactory + .getFormattedString( + "Warnings.PCGenParser.IllegalRaceIgnored", //$NON-NLS-1$ + line); + warnings.add(msg); + } + } + else if (!thePC.containsAssociated(pObj, appliedToKey)) + { + String[] assoc = appliedToKey.split(Constants.COMMA, -1); + for (String string : assoc) + { + thePC.addAssociation(pObj, string); + } + } + } + } + private void parseFavoredClassLine(final String line) { String favClass = EntityEncoder.decode(line.substring(TAG_FAVOREDCLASS.length() + 1)); @@ -4315,6 +4329,56 @@ } } } + else if (TAG_APPLIEDTO.equals(childTag)) + { + child.getText(); + final String appliedToKey = child.getText(); + if (appliedToKey.startsWith(TAG_MULTISELECT)) + { + // + // Should be in the form: + // MULTISELECCT:maxcount:#chosen:choice1:choice2:...:choicen + // + final StringTokenizer msTok = + new StringTokenizer(appliedToKey, TAG_END, false); + + if (msTok.countTokens() > 2) + { + msTok.nextToken(); // should be TAG_MULTISELECT + + final int maxChoices = + Integer.parseInt(msTok.nextToken()); + msTok.nextToken(); // toss this--number of choices made + + final FixedStringList array = new FixedStringList(maxChoices); + while (msTok.hasMoreTokens()) + { + array.add(msTok.nextToken()); + } + + thePC.addAssociation(aPCTemplate, array); + } + else + { + final String msg = + PropertyFactory + .getFormattedString( + "Warnings.PCGenParser.IllegalTemplateIgnored", //$NON-NLS-1$ + line); + warnings.add(msg); + } + } + else if (!thePC.containsAssociated(aPCTemplate, appliedToKey)) + { + String[] assoc = appliedToKey.split(Constants.COMMA, -1); + for (String string : assoc) + { + thePC.addAssociation(aPCTemplate, string); + } + } + + } + } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-04 02:55:01
|
Revision: 8531 http://pcgen.svn.sourceforge.net/pcgen/?rev=8531&view=rev Author: thpr Date: 2008-12-04 02:54:51 +0000 (Thu, 04 Dec 2008) Log Message: ----------- Avoid false positive message in [ 2385081 ] SEVERE Reference to Constructed <Entity> is ambiguous Issue#: 2385081 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2008-12-04 02:42:14 UTC (rev 8530) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2008-12-04 02:54:51 UTC (rev 8531) @@ -372,6 +372,28 @@ /** * Gets the object represented by the given identifier. Will return null if * an object with the given identifier is not present in this + * AbstractReferenceManufacturer. Does not make any test to check if the + * given identifier has multiple matching objects. + * + * Note that this is testing *object* presence. This will not return an + * object if a reference for the given identifier has been requested; it + * will only return true if an object with the given identifier has actually + * been constructed by or imported into this AbstractReferenceManufacturer. + * + * @param val + * identifier of the object to be returned + * @return The object stored in this AbstractReferenceManufacturer with the + * given identifier, or null if this AbstractReferenceManufacturer + * does not contain an object with the given identifier. + */ + public T getActiveObject(String val) + { + return active.get(val); + } + + /** + * Gets the object represented by the given identifier. Will return null if + * an object with the given identifier is not present in this * AbstractReferenceManufacturer. * * Note that this is testing *object* presence. This will not return an Modified: Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java 2008-12-04 02:42:14 UTC (rev 8530) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java 2008-12-04 02:54:51 UTC (rev 8531) @@ -110,6 +110,25 @@ /** * Gets the object represented by the given identifier. Will return null if * an object with the given identifier is not present in this + * ReferenceManufacturer. Does not make a test to establish if the given + * identifier is unique - must act silently. + * + * Note that this is testing *object* presence. This will not return an + * object if a reference for the given identifier has been requested; it + * will only return true if an object with the given identifier has actually + * been constructed by or imported into this ReferenceManufacturer. + * + * @param key + * identifier of the object to be returned + * @return The object stored in this ReferenceManufacturer with the given + * identifier, or null if this ReferenceManufacturer does not + * contain an object with the given identifier. + */ + public T getActiveObject(String key); + + /** + * Gets the object represented by the given identifier. Will return null if + * an object with the given identifier is not present in this * ReferenceManufacturer. * * Note that this is testing *object* presence. This will not return an Modified: Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java 2008-12-04 02:42:14 UTC (rev 8530) +++ Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java 2008-12-04 02:54:51 UTC (rev 8531) @@ -172,13 +172,13 @@ public <T extends CDOMObject> T silentlyGetConstructedCDOMObject( Class<T> c, String val) { - return getManufacturer(c).getObject(val); + return getManufacturer(c).getActiveObject(val); } public <T extends CDOMObject & CategorizedCDOMObject<T>> T silentlyGetConstructedCDOMObject( Class<T> c, Category<T> cat, String val) { - return getManufacturer(c, cat).getObject(val); + return getManufacturer(c, cat).getActiveObject(val); } // public <T extends CDOMObject & CategorizedCDOMObject<T>> CDOMSingleRef<T> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-05 03:52:42
|
Revision: 8545 http://pcgen.svn.sourceforge.net/pcgen/?rev=8545&view=rev Author: thpr Date: 2008-12-05 03:52:32 +0000 (Fri, 05 Dec 2008) Log Message: ----------- [ 2374684 ] BONUS keeps adding each reload in SUBSTITUTIONCLASS Implementing the fix in this method, as I can't even get SUBSTITUTIONCLASS to work in 5.14.1 to see if it was previously working/broken Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/pclevelinfo/PCLevelInfo.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java Modified: Trunk/pcgen/code/src/java/pcgen/core/pclevelinfo/PCLevelInfo.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/pclevelinfo/PCLevelInfo.java 2008-12-05 03:20:07 UTC (rev 8544) +++ Trunk/pcgen/code/src/java/pcgen/core/pclevelinfo/PCLevelInfo.java 2008-12-05 03:52:32 UTC (rev 8545) @@ -129,7 +129,7 @@ public void setSkillPointsGained(final int arg) { final int bonusPoints = getBonusSkillPool(); - skillPointsGained = arg + bonusPoints; + setFixedSkillPointsGained(arg + bonusPoints); } /** @@ -363,4 +363,9 @@ } return clone; } + + public void setFixedSkillPointsGained(int arg) + { + skillPointsGained = arg; + } } Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-12-05 03:20:07 UTC (rev 8544) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-12-05 03:52:32 UTC (rev 8545) @@ -1786,7 +1786,7 @@ } else if ((pcl != null) && TAG_SKILLPOINTSGAINED.equals(tag)) { - pcl.setSkillPointsGained(Integer.parseInt(element.getText())); + pcl.setFixedSkillPointsGained(Integer.parseInt(element.getText())); } else if ((pcl != null) && TAG_SKILLPOINTSREMAINING.equals(tag)) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-06 00:08:06
|
Revision: 8572 http://pcgen.svn.sourceforge.net/pcgen/?rev=8572&view=rev Author: thpr Date: 2008-12-06 00:07:55 +0000 (Sat, 06 Dec 2008) Log Message: ----------- prep work for EQMOD token update Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/ListKey.java Trunk/pcgen/code/src/java/pcgen/core/Equipment.java Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/ListKey.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/ListKey.java 2008-12-06 00:03:44 UTC (rev 8571) +++ Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/ListKey.java 2008-12-06 00:07:55 UTC (rev 8572) @@ -252,6 +252,7 @@ public static final ListKey<PersistentTransitionChoice<?>> REMOVE = new ListKey<PersistentTransitionChoice<?>>(); public static final ListKey<Type> TYPE = new ListKey<Type>(); public static final ListKey<BaseKit> KIT_TASKS = new ListKey<BaseKit>(); + public static final ListKey<EquipmentModifier> EQMOD = new ListKey<EquipmentModifier>(); public static final ListKey<CDOMSingleRef<Race>> APPLIED_RACE = new ListKey<CDOMSingleRef<Race>>(); private static CaseInsensitiveMap<ListKey<?>> map = null; Modified: Trunk/pcgen/code/src/java/pcgen/core/Equipment.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Equipment.java 2008-12-06 00:03:44 UTC (rev 8571) +++ Trunk/pcgen/code/src/java/pcgen/core/Equipment.java 2008-12-06 00:07:55 UTC (rev 8572) @@ -189,8 +189,6 @@ private BigDecimal costMod = BigDecimal.ZERO; - private List<EquipmentModifier> eqModifierList = new ArrayList<EquipmentModifier>(); - private EquipmentCollection d_parent; private List<Equipment> d_containedEquipment = new ArrayList<Equipment>(); @@ -211,8 +209,6 @@ private String containerContentsString = ""; - private List<EquipmentModifier> altEqModifierList = new ArrayList<EquipmentModifier>(); - private String appliedBonusName = ""; private String bonusType; @@ -642,12 +638,9 @@ aList.addAll(getBonusListOfType(pc, aType, aName)); - final List<EquipmentModifier> eqModList = getEqModifierList(bPrimary); - - if (!eqModList.isEmpty()) { - for (EquipmentModifier eqMod : eqModList) { - aList.addAll(eqMod.getBonusListOfType(this, aType, aName)); - } + for (EquipmentModifier eqMod : getEqModifierList(bPrimary)) + { + aList.addAll(eqMod.getBonusListOfType(this, aType, aName)); } return aList; @@ -732,33 +725,47 @@ // eg. in the case of adamantine armor, want to add // the cost of the metal before the armor gets resized. // - for (EquipmentModifier eqMod : eqModifierList) { - int iCount = getSelectCorrectedAssociationCount(eqMod); + EquipmentHead head = getEquipmentHeadReference(1); + if (head != null) + { + for (EquipmentModifier eqMod : head.getSafeListFor(ListKey.EQMOD)) + { + int iCount = getSelectCorrectedAssociationCount(eqMod); - if (iCount < 1) { - iCount = 1; + if (iCount < 1) + { + iCount = 1; + } + + Formula baseCost = eqMod.getSafe(FormulaKey.BASECOST); + Number bc = baseCost.resolve(this, true, aPC, ""); + final BigDecimal eqModCost = new BigDecimal(bc.toString()); + c = c.add(eqModCost.multiply(new BigDecimal(Integer + .toString(getSafe(IntegerKey.BASE_QUANTITY) * iCount)))); + c = c.add(EqModCost.addItemCosts(eqMod, aPC, "ITEMCOST", + getSafe(IntegerKey.BASE_QUANTITY) * iCount, this)); } - - Formula baseCost = eqMod.getSafe(FormulaKey.BASECOST); - Number bc = baseCost.resolve(this, true, aPC, ""); - final BigDecimal eqModCost = new BigDecimal(bc.toString()); - c = c.add(eqModCost.multiply(new BigDecimal(Integer - .toString(getSafe(IntegerKey.BASE_QUANTITY) * iCount)))); - c = c.add(EqModCost.addItemCosts(eqMod, aPC, "ITEMCOST", getSafe(IntegerKey.BASE_QUANTITY) * iCount, this)); } + EquipmentHead althead = getEquipmentHeadReference(2); + if (althead != null) + { + for (EquipmentModifier eqMod : althead.getSafeListFor(ListKey.EQMOD)) + { + int iCount = getSelectCorrectedAssociationCount(eqMod); - for (EquipmentModifier eqMod : altEqModifierList) { - int iCount = getSelectCorrectedAssociationCount(eqMod); + if (iCount < 1) + { + iCount = 1; + } - if (iCount < 1) { - iCount = 1; + Formula baseCost = eqMod.getSafe(FormulaKey.BASECOST); + Number bc = baseCost.resolve(this, false, aPC, ""); + final BigDecimal eqModCost = new BigDecimal(bc.toString()); + c = c.add(eqModCost.multiply(new BigDecimal(Integer + .toString(getSafe(IntegerKey.BASE_QUANTITY) * iCount)))); + c = c.add(EqModCost.addItemCosts(eqMod, aPC, "ITEMCOST", + getSafe(IntegerKey.BASE_QUANTITY) * iCount, this)); } - - Formula baseCost = eqMod.getSafe(FormulaKey.BASECOST); - Number bc = baseCost.resolve(this, false, aPC, ""); - final BigDecimal eqModCost = new BigDecimal(bc.toString()); - c = c.add(eqModCost.multiply(new BigDecimal(Integer.toString(getSafe(IntegerKey.BASE_QUANTITY) * iCount)))); - c = c.add(EqModCost.addItemCosts(eqMod, aPC, "ITEMCOST", iCount, this)); } // c has cost of the item's modifications at the item's original size @@ -779,27 +786,53 @@ BigDecimal c1 = BigDecimal.ZERO; int iPlus = 0; - for (EquipmentModifier eqMod : eqModifierList) { - int iCount = getSelectCorrectedAssociationCount(eqMod); + if (head != null) + { + for (EquipmentModifier eqMod : head.getSafeListFor(ListKey.EQMOD)) { + int iCount = getSelectCorrectedAssociationCount(eqMod); - if (iCount < 1) { - iCount = 1; - } + if (iCount < 1) { + iCount = 1; + } - BigDecimal eqModCost; - Formula cost = eqMod.getSafe(FormulaKey.COST); - String costFormula = cost.toString(); - Pattern pat = Pattern.compile("BASECOST"); - Matcher mat; + BigDecimal eqModCost; + Formula cost = eqMod.getSafe(FormulaKey.COST); + String costFormula = cost.toString(); + Pattern pat = Pattern.compile("BASECOST"); + Matcher mat; - if (hasAssociations(eqMod) - && !costFormula.equals(EqModCost.getCost(eqMod, getFirstAssociation(eqMod)))) { - eqModCost = BigDecimal.ZERO; + if (hasAssociations(eqMod) + && !costFormula.equals(EqModCost.getCost(eqMod, getFirstAssociation(eqMod)))) { + eqModCost = BigDecimal.ZERO; - for (String assoc : getAssociationList(eqMod)) - { - mat = pat.matcher(EqModCost.getCost(eqMod, assoc)); + for (String assoc : getAssociationList(eqMod)) + { + mat = pat.matcher(EqModCost.getCost(eqMod, assoc)); + // make string (BASECOST/X) which will be substituted into + // the cost string which is then converted to a number + StringBuffer sB = new StringBuffer("(BASECOST/"); + sB.append(getSafe(IntegerKey.BASE_QUANTITY)); + sB.append(")"); + + String s = mat.replaceAll(sB.toString()); + String v = getVariableValue(s, "", true, aPC).toString(); + + final BigDecimal thisModCost = new BigDecimal(v); + + eqModCost = eqModCost.add(thisModCost); + + if (!EqModCost.getCostDouble(eqMod)) { + nonDoubleCost = nonDoubleCost.add(thisModCost); + } else { + modifierCosts.add(thisModCost); + } + } + + iCount = 1; + } else { + mat = pat.matcher(cost.toString()); + // make string (BASECOST/X) which will be substituted into // the cost string which is then converted to a number StringBuffer sB = new StringBuffer("(BASECOST/"); @@ -808,46 +841,23 @@ String s = mat.replaceAll(sB.toString()); String v = getVariableValue(s, "", true, aPC).toString(); - - final BigDecimal thisModCost = new BigDecimal(v); - eqModCost = eqModCost.add(thisModCost); + eqModCost = new BigDecimal(v); if (!EqModCost.getCostDouble(eqMod)) { - nonDoubleCost = nonDoubleCost.add(thisModCost); + nonDoubleCost = nonDoubleCost.add(eqModCost); } else { - modifierCosts.add(thisModCost); + modifierCosts.add(eqModCost); } } - iCount = 1; - } else { - mat = pat.matcher(cost.toString()); - - // make string (BASECOST/X) which will be substituted into - // the cost string which is then converted to a number - StringBuffer sB = new StringBuffer("(BASECOST/"); - sB.append(getSafe(IntegerKey.BASE_QUANTITY)); - sB.append(")"); - - String s = mat.replaceAll(sB.toString()); - String v = getVariableValue(s, "", true, aPC).toString(); - - eqModCost = new BigDecimal(v); - - if (!EqModCost.getCostDouble(eqMod)) { - nonDoubleCost = nonDoubleCost.add(eqModCost); - } else { - modifierCosts.add(eqModCost); + // Per D20 FAQ adjustments for special materials are per piece; + if (eqMod.isType("BaseMaterial")) { + eqModCost = eqModCost.multiply(new BigDecimal(getSafe(IntegerKey.BASE_QUANTITY))); } + c1 = c1.add(eqModCost); + iPlus += (eqMod.getSafe(IntegerKey.PLUS) * iCount); } - - // Per D20 FAQ adjustments for special materials are per piece; - if (eqMod.isType("BaseMaterial")) { - eqModCost = eqModCost.multiply(new BigDecimal(getSafe(IntegerKey.BASE_QUANTITY))); - } - c1 = c1.add(eqModCost); - iPlus += (eqMod.getSafe(IntegerKey.PLUS) * iCount); } // @@ -858,19 +868,22 @@ } int altPlus = 0; - for (EquipmentModifier eqMod : altEqModifierList) { - int iCount = getSelectCorrectedAssociationCount(eqMod); + if (althead != null) + { + for (EquipmentModifier eqMod : althead.getSafeListFor(ListKey.EQMOD)) { + int iCount = getSelectCorrectedAssociationCount(eqMod); - if (iCount < 1) { - iCount = 1; + if (iCount < 1) { + iCount = 1; + } + + Formula cost = eqMod.getSafe(FormulaKey.BASECOST); + Number bc = cost.resolve(this, false, aPC, ""); + final BigDecimal eqModCost = new BigDecimal(bc.toString()); + c1 = c1.add(eqModCost.multiply(new BigDecimal(Integer + .toString(getSafe(IntegerKey.BASE_QUANTITY) * iCount)))); + altPlus += (eqMod.getSafe(IntegerKey.PLUS) * iCount); } - - Formula cost = eqMod.getSafe(FormulaKey.BASECOST); - Number bc = cost.resolve(this, false, aPC, ""); - final BigDecimal eqModCost = new BigDecimal(bc.toString()); - c1 = c1.add(eqModCost.multiply(new BigDecimal(Integer - .toString(getSafe(IntegerKey.BASE_QUANTITY) * iCount)))); - altPlus += (eqMod.getSafe(IntegerKey.PLUS) * iCount); } calculatingCost = false; @@ -995,12 +1008,9 @@ * * @return The eqModifierList value */ - public List<EquipmentModifier> getEqModifierList(final boolean bPrimary) { - if (bPrimary) { - return eqModifierList; - } - - return altEqModifierList; + public List<EquipmentModifier> getEqModifierList(final boolean bPrimary) + { + return getEquipmentHead(bPrimary ? 1 : 2).getSafeListFor(ListKey.EQMOD); } /** @@ -1016,7 +1026,7 @@ final boolean bPrimary) { usePrimaryCache = false; - getEqModifierList(bPrimary).add(eqMod); + getEquipmentHead(bPrimary ? 1 : 2).addToListFor(ListKey.EQMOD, eqMod); setDirty(true); } @@ -1166,12 +1176,28 @@ return getName(); } - final List<EquipmentModifier> modList = - new ArrayList<EquipmentModifier>(eqModifierList); - - final List<EquipmentModifier> altModList = - new ArrayList<EquipmentModifier>(altEqModifierList); - + final List<EquipmentModifier> modList; + EquipmentHead head = getEquipmentHeadReference(1); + if (head == null) + { + modList = Collections.emptyList(); + } + else + { + modList = head.getSafeListFor(ListKey.EQMOD); + } + + EquipmentHead althead = getEquipmentHeadReference(2); + final List<EquipmentModifier> altModList; + if (althead == null) + { + altModList = Collections.emptyList(); + } + else + { + altModList = althead.getSafeListFor(ListKey.EQMOD); + } + final List<EquipmentModifier> commonList = new ArrayList<EquipmentModifier>(); @@ -1329,11 +1355,13 @@ return; } - final EquipmentModifier magicMod1 = getMagicBonus(eqModifierList); - final EquipmentModifier magicMod2 = getMagicBonus(altEqModifierList); - - if (magicMod1 != null || magicMod2 != null) { - commonList.remove(eqMaster); + for (EquipmentHead head : heads) + { + if (getMagicBonus(head.getListFor(ListKey.EQMOD)) != null) + { + commonList.remove(eqMaster); + break; + } } } @@ -1913,9 +1941,13 @@ public int getSlots(final PlayerCharacter aPC) { int iSlots = getSafe(IntegerKey.SLOTS); - for (EquipmentModifier eqMod : eqModifierList) { - iSlots += (int) eqMod.bonusTo(aPC, "EQM", "HANDS", this); - iSlots += (int) eqMod.bonusTo(aPC, "EQM", "SLOTS", this); + EquipmentHead head = getEquipmentHeadReference(1); + if (head != null) + { + for (EquipmentModifier eqMod : head.getSafeListFor(ListKey.EQMOD)) { + iSlots += (int) eqMod.bonusTo(aPC, "EQM", "HANDS", this); + iSlots += (int) eqMod.bonusTo(aPC, "EQM", "SLOTS", this); + } } if (iSlots < 0) { @@ -1948,25 +1980,42 @@ * @return special properties of an Equipment. */ public String getSpecialProperties(final PlayerCharacter aPC) { - final List<EquipmentModifier> list1 = new ArrayList<EquipmentModifier>( - eqModifierList); - final List<EquipmentModifier> list2 = new ArrayList<EquipmentModifier>( - altEqModifierList); + final List<EquipmentModifier> modList; + EquipmentHead head = getEquipmentHeadReference(1); + if (head == null) + { + modList = Collections.emptyList(); + } + else + { + modList = head.getSafeListFor(ListKey.EQMOD); + } + + EquipmentHead althead = getEquipmentHeadReference(2); + final List<EquipmentModifier> altModList; + if (althead == null) + { + altModList = Collections.emptyList(); + } + else + { + altModList = althead.getSafeListFor(ListKey.EQMOD); + } final List<EquipmentModifier> comn = new ArrayList<EquipmentModifier>(); - extractListFromCommon(comn, list1); + extractListFromCommon(comn, modList); - removeCommonFromList(list2, comn, + removeCommonFromList(altModList, comn, "SPROP: eqMod expected but not found: "); final String common = StringUtil.join( getSpecialAbilityTimesList(getSpecialAbilityList(comn, aPC)), ", "); final String saList1 = StringUtil.join( - getSpecialAbilityTimesList(getSpecialAbilityList(list1, aPC)), + getSpecialAbilityTimesList(getSpecialAbilityList(modList, aPC)), ", "); final String saList2 = StringUtil.join( - getSpecialAbilityTimesList(getSpecialAbilityList(list2, aPC)), + getSpecialAbilityTimesList(getSpecialAbilityList(altModList, aPC)), ", "); final StringBuffer sp = new StringBuffer(); @@ -2215,15 +2264,6 @@ } /** - * Remove all equipment modifiers (EQMOD) from this equipment item. - */ - public void clearAllEqModifiers() { - if (eqModifierList != null) { - eqModifierList.clear(); - } - } - - /** * Add an equipment modifier and its associated information eg: * Bane|Vermin|Fey eg: Keen Adds a feature to the EqModifier attribute of * the Equipment object @@ -2345,8 +2385,8 @@ } List<CDOMSingleRef<EquipmentModifier>> replaces = eqMod.getListFor(ListKey.REPLACED_KEYS); - List<EquipmentModifier> eqModList = getEqModifierList(bPrimary); + EquipmentHead head = getEquipmentHead(bPrimary ? 1 : 2); if (replaces != null) { // @@ -2356,11 +2396,11 @@ { EquipmentModifier mod = ref.resolvesTo(); String key = mod.getKeyName(); - for (int i = eqModList.size() - 1; i >= 0; --i) { - final EquipmentModifier aMod = eqModList.get(i); + for (EquipmentModifier aMod : head.getListFor(ListKey.EQMOD)) + { if (key.equalsIgnoreCase(aMod.getKeyName())) { - eqModList.remove(i); + head.removeFromListFor(ListKey.EQMOD, aMod); if (bPrimary) { usePrimaryCache = false; } else { @@ -2373,11 +2413,10 @@ } if (eqMod.isType("BaseMaterial")) { - for (int i = eqModList.size() - 1; i >= 0; --i) { - final EquipmentModifier aMod = eqModList.get(i); - + for (EquipmentModifier aMod : head.getListFor(ListKey.EQMOD)) + { if (aMod.isType("BaseMaterial")) { - eqModList.remove(i); + head.removeFromListFor(ListKey.EQMOD, aMod); if (bPrimary) { usePrimaryCache = false; } else { @@ -2387,11 +2426,10 @@ } } } else if (eqMod.isType("MagicalEnhancement")) { - for (int i = eqModList.size() - 1; i >= 0; --i) { - final EquipmentModifier aMod = eqModList.get(i); - + for (EquipmentModifier aMod : head.getListFor(ListKey.EQMOD)) + { if (aMod.isType("MagicalEnhancement")) { - eqModList.remove(i); + head.removeFromListFor(ListKey.EQMOD, aMod); if (bPrimary) { usePrimaryCache = false; } else { @@ -2421,7 +2459,7 @@ aMod = eqMod; } - eqModList.add(aMod); + head.addToListFor(ListKey.EQMOD, aMod); if (bPrimary) { usePrimaryCache = false; } else { @@ -2446,7 +2484,7 @@ } if (allRemoved) { - eqModList.remove(aMod); + head.removeFromListFor(ListKey.EQMOD, aMod); if (bPrimary) { usePrimaryCache = false; } else { @@ -2455,8 +2493,6 @@ } } - Globals.sortPObjectListByName(eqModList); - setBase(aPC); } @@ -2495,9 +2531,6 @@ addEqModifier(aEqModName, bPrimary, isLoading); } } - - List<EquipmentModifier> eqModList = getEqModifierList(bPrimary); - Globals.sortPObjectListByName(eqModList); } /** @@ -2603,28 +2636,21 @@ */ public int calcPlusForCosting() { int iPlus = 0; - int iCount; - for (EquipmentModifier eqMod : eqModifierList) { - iCount = getSelectCorrectedAssociationCount(eqMod); + for (EquipmentHead head : heads) + { + for (EquipmentModifier eqMod : head.getSafeListFor(ListKey.EQMOD)) + { + int iCount = getSelectCorrectedAssociationCount(eqMod); - if (iCount < 1) { - iCount = 1; - } + if (iCount < 1) + { + iCount = 1; + } - iPlus += (iCount * eqMod.getSafe(IntegerKey.PLUS)); - } - - for (EquipmentModifier eqMod : altEqModifierList) { - iCount = getSelectCorrectedAssociationCount(eqMod); - - if (iCount < 1) { - iCount = 1; + iPlus += (iCount * eqMod.getSafe(IntegerKey.PLUS)); } - - iPlus += (iCount * eqMod.getSafe(IntegerKey.PLUS)); } - return iPlus; } @@ -2747,8 +2773,12 @@ new ArrayList<Equipment>(d_containedEquipment); eq.assocSupt = assocSupt.clone(); - eq.eqModifierList = cloneEqModList(eq, true); - eq.altEqModifierList = cloneEqModList(eq, false); + eq.getEquipmentHead(1).removeListFor(ListKey.EQMOD); + eq.getEquipmentHead(2).removeListFor(ListKey.EQMOD); + eq.getEquipmentHead(1).addAllToListFor(ListKey.EQMOD, + cloneEqModList(eq, true)); + eq.getEquipmentHead(2).addAllToListFor(ListKey.EQMOD, + cloneEqModList(eq, false)); } catch (CloneNotSupportedException e) { ShowMessageDelegate.showMessageDialog(e.getMessage(), Constants.s_APPNAME, MessageType.ERROR); @@ -3257,7 +3287,6 @@ final boolean bPrimary, PlayerCharacter pc) { - final List<EquipmentModifier> eqModList = getEqModifierList(bPrimary); final EquipmentModifier aMod = getEqModifierKeyed(eqMod.getKeyName(), bPrimary); @@ -3269,7 +3298,7 @@ // Remove the modifier if all associated choices are deleted if (!hasAssociations(aMod) || !EquipmentChoiceDriver.getChoice(0, this, aMod, false, pc)) { - eqModList.remove(aMod); + getEquipmentHead(bPrimary ? 1 : 2).removeFromListFor(ListKey.EQMOD, aMod); if (bPrimary) { usePrimaryCache = false; } else { Modified: Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-12-06 00:03:44 UTC (rev 8571) +++ Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-12-06 00:07:55 UTC (rev 8572) @@ -5719,9 +5719,8 @@ } head.put(IntegerKey.CRIT_MULT, eqm.getAltCritMultiplier()); head.put(IntegerKey.CRIT_RANGE, eqm.getRawCritRange(false)); - eqm.getEqModifierList(true).clear(); - eqm.getEqModifierList(true) - .addAll(eqm.getEqModifierList(false)); + head.removeListFor(ListKey.EQMOD); + head.addAllToListFor(ListKey.EQMOD, eqm.getEqModifierList(false)); // Add "Head 2 only" to the name of the weapon eqm.setWholeItemName(eqm.getName()); Modified: Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-12-06 00:03:44 UTC (rev 8571) +++ Trunk/pcgen/code/src/java/pcgen/io/PCGVer2Parser.java 2008-12-06 00:07:55 UTC (rev 8572) @@ -49,6 +49,7 @@ import pcgen.cdom.enumeration.ObjectKey; import pcgen.cdom.enumeration.StringKey; import pcgen.cdom.enumeration.Type; +import pcgen.cdom.inst.EquipmentHead; import pcgen.cdom.list.ClassSpellList; import pcgen.cdom.list.CompanionList; import pcgen.cdom.list.DomainSpellList; @@ -4849,7 +4850,11 @@ { // We clear out any eqmods that the base item has as the // EQMODs on the saved item override them. - aEquip.clearAllEqModifiers(); + EquipmentHead head = aEquip.getEquipmentHeadReference(1); + if (head != null) + { + head.removeListFor(ListKey.EQMOD); + } aEquip.load(customProperties, "$", "=", thePC); //$NON-NLS-1$ //$NON-NLS-2$ } else This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-06 02:22:18
|
Revision: 8577 http://pcgen.svn.sourceforge.net/pcgen/?rev=8577&view=rev Author: thpr Date: 2008-12-06 01:30:17 +0000 (Sat, 06 Dec 2008) Log Message: ----------- docs Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java Trunk/pcgen/code/src/java/pcgen/base/util/FixedStringList.java Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMListObject.java Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMObjectUtilities.java Trunk/pcgen/code/src/java/pcgen/cdom/base/Category.java Trunk/pcgen/code/src/java/pcgen/cdom/base/ChoiceActor.java Trunk/pcgen/code/src/java/pcgen/cdom/base/MasterListInterface.java Trunk/pcgen/code/src/java/pcgen/cdom/base/PersistentChoiceActor.java Modified: Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -30,6 +30,12 @@ public final class StringUtil { + /** + * Provides a Comparator for Strings that sorts in Case Sensitive Order. + * While this is generally the default for Strings (and thus this might seem + * extraneous), it is valueable as it can be used by other objects as a + * counterpart to String.CASE_INSENSITIVE_ORDER + */ public static final Comparator<String> CASE_SENSITIVE_ORDER = new Comparator<String>() { public int compare(String o1, String o2) Modified: Trunk/pcgen/code/src/java/pcgen/base/util/FixedStringList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/util/FixedStringList.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/base/util/FixedStringList.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -38,6 +38,11 @@ List<String>, RandomAccess { + /** + * Provides a Comparator for FixedStringList objects that will sort the + * contents in a Case Sensitive order. Note that null sorts first (before + * any non-null Strings) + */ public static final Comparator<FixedStringList> CASE_SENSITIVE_ORDER = new Comparator<FixedStringList>() { public int compare(FixedStringList o1, FixedStringList o2) @@ -47,6 +52,11 @@ } }; + /** + * Provides a Comparator for FixedStringList objects that will sort the + * contents in a Case Insensitive order. Note that null sorts first (before + * any non-null Strings) + */ public static final Comparator<FixedStringList> CASE_INSENSITIVE_ORDER = new Comparator<FixedStringList>() { public int compare(FixedStringList o1, FixedStringList o2) @@ -261,6 +271,13 @@ return array.length + 29 * (array[0] == null ? 0 : array[0].hashCode()); } + /** + * Returns true is this FixedStringList is equal to the given Object, + * ignoring case in the underlying String objects. This method is consistent + * with the equalsIgnoreCase behavior defined in java.lang.String + * + * @see java.util.AbstractList#equals(java.lang.Object) + */ public boolean equalsIgnoreCase(FixedStringList o) { int thisArrayLength = array.length; @@ -290,6 +307,13 @@ return true; } + /** + * Compares FixedStringList objects with the given String Comparator. Note + * that a FixedStringList is sorted first on the size of the + * FixedStringList, rather than on the contents. Note that relative to the + * contents of a FixedStringList (tested after size), null sorts first + * (before any non-null Strings). + */ public static int compare(FixedStringList a, FixedStringList b, Comparator<String> c) { Modified: Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMListObject.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMListObject.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMListObject.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -65,6 +65,11 @@ return false; } + /** + * Returns a String representation of this CDOMListObject + * + * @see java.lang.Object#toString() + */ @Override public String toString() { Modified: Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMObjectUtilities.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMObjectUtilities.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/cdom/base/CDOMObjectUtilities.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -20,7 +20,6 @@ import java.util.Collection; import java.util.Comparator; - /** * CDOMObjectUtilities is a utility class designed to provide utility methods * when working with pcgen.cdom.base.CDOMObject Objects @@ -28,10 +27,13 @@ public final class CDOMObjectUtilities { - public static final Comparator<CDOMObject> CDOM_SORTER = - new Comparator<CDOMObject>() + /** + * Provides a Comparator that is capable of sorting CDOMObjects. This + * sorting is performed based on the Key name of the CDOMObjects. + */ + public static final Comparator<CDOMObject> CDOM_SORTER = new Comparator<CDOMObject>() { - + public int compare(CDOMObject arg0, CDOMObject arg1) { return compareKeys(arg0, arg1); @@ -40,7 +42,7 @@ private CDOMObjectUtilities() { - //Utility class should not be constructed + // Utility class should not be constructed } /** @@ -85,6 +87,22 @@ return result.toString(); } + /** + * Compares the Keys of two CDOMObjects. Returns a negative integer if the + * key for the first object sorts before the key for the second object. Note + * that null sorts last (though a CDOMObject should never return null from a + * call to getKeyName(), this is error protected). This comparison is case + * sensitive. + * + * @param arg0 + * The first CDOMObject, for which the key will be compared + * @param arg1 + * The second CDOMObject, for which the key will be compared + * @return a negative integer if the key for the first object sorts before + * the key for the second object; a positive integer if the key for + * the first object sorts after the key for the second object, or 0 + * if the keys are equal + */ public static int compareKeys(CDOMObject arg0, CDOMObject arg1) { String base = arg0.getKeyName(); Modified: Trunk/pcgen/code/src/java/pcgen/cdom/base/Category.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/base/Category.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/cdom/base/Category.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -30,8 +30,21 @@ public interface Category<T extends CategorizedCDOMObject<T>> { + /** + * Returns the Parent Category for the current Category. Returns null if the + * current Category is a "root" Category. + * + * @return the Parent Category for the current Category; null if the current + * Category is a "root" Category. + */ Category<T> getParentCategory(); + /** + * Returns the key name of the Category. + * + * @return The key name of the Category. + * + */ String getKeyName(); } Modified: Trunk/pcgen/code/src/java/pcgen/cdom/base/ChoiceActor.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/base/ChoiceActor.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/cdom/base/ChoiceActor.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -19,9 +19,45 @@ import pcgen.core.PlayerCharacter; +/** + * A ChoiceActor is an object that can limit and apply choices of a particular + * type of object to a PlayerCharacter. This is typically an object that will + * act after a selection has been made by a user through a TransitionChoice + * object. + * + * @param <T> + * The type of object that this ChoiceActor can apply to a + * PlayerCharacter + */ public interface ChoiceActor<T> { + /** + * Applies the given choice to the given PlayerCharacter. + * + * @param choice + * The choice being applied to the given PlayerCharacter + * @param pc + * The PlayerCharacter to which the given choice should be + * applied. + */ public void applyChoice(CDOMObject owner, T choice, PlayerCharacter pc); - + + /** + * Returns true if the given choice should be allowed for the + * PlayerCharacter under the provided stacking conditions. + * + * @param choice + * The choice being tested to see if it should be allowed for the + * given PlayerCharacter + * @param pc + * The PlayerCharacter to be used in determining if the given + * choice is allowed. + * @param allowStack + * True if the given choice should be allowed to stack (meaning + * the PC can have more than one isntance of the choice); false + * otherwise + * @return true if the given choice should be allowed for the + * PlayerCharacter under the provided stacking conditions. + */ public boolean allow(T choice, PlayerCharacter pc, boolean allowStack); } Modified: Trunk/pcgen/code/src/java/pcgen/cdom/base/MasterListInterface.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/base/MasterListInterface.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/cdom/base/MasterListInterface.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -20,13 +20,63 @@ import java.util.Collection; import java.util.Set; +/** + * A MasterListInterface is an object that stores data that is reasonably global + * to a dataset, and that impacts all objects in that rules dataset. For + * example, the initialized contents of ClassSpellLists (formed through the + * CLASSES: token in Spell LST files) are stored in the master lists. Local + * changes (e.g. those from SPELLLEVEL) are not stored in the + * MasterListInterface, but in the object granting the modifications to the + * given List. + */ public interface MasterListInterface { - public <T extends CDOMObject> Set<CDOMReference> getActiveLists(); + /** + * Returns a Set of all Active Lists defined in the MasterListInterface. + * Lists are returned regardless of their Class (ClassSpellList, etc.) and + * regardless of the underlying Class (e.g. Spell, Skill) + * + * @return A Set of all Active Lists defined in the MasterListInterface. + */ + public Set<CDOMReference> getActiveLists(); + /** + * Returns a Collection of AssociatedPrereqObjects containing the + * associations for the lists underlying the given CDOMReference and the + * given Object on the list. + * + * @param <T> + * The type of object contained within the List for which the + * associations are being returned + * @param key1 + * A CDOMReference containing one or more CDOMLists for which the + * associations for the given Object should be returned + * @param key2 + * The CDOMObject for which the associations on the lists + * contained within the given CDOMReference should be returned + * @return a Collection of AssociatedPrereqObjects containing the + * associations for the lists underlying the given CDOMReference and + * the given Object on the list. + */ public <T extends CDOMObject> Collection<AssociatedPrereqObject> getAssociations( CDOMReference<? extends CDOMList<T>> key1, T key2); + /** + * Returns a Collection of AssociatedPrereqObjects containing the + * associations for the given list and the given Object on the list. + * + * @param <T> + * The type of object contained within the List for which the + * associations are being returned + * @param key1 + * A CDOMList for which the associations for the given Object + * should be returned + * @param key2 + * The CDOMObject for which the associations on the CDOMList + * should be returned + * @return a Collection of AssociatedPrereqObjects containing the + * associations for the given list and the given Object on the list. + */ public <T extends CDOMObject> Collection<AssociatedPrereqObject> getAssociations( CDOMList<T> key1, T key2); } Modified: Trunk/pcgen/code/src/java/pcgen/cdom/base/PersistentChoiceActor.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/base/PersistentChoiceActor.java 2008-12-06 01:29:45 UTC (rev 8576) +++ Trunk/pcgen/code/src/java/pcgen/cdom/base/PersistentChoiceActor.java 2008-12-06 01:30:17 UTC (rev 8577) @@ -19,11 +19,65 @@ import pcgen.core.PlayerCharacter; +/** + * A PersistentChoiceActor is a ChoiceActor that is designed to be saved and + * restored with a PlayerCharacter. This is used in situations where certain + * relationship information (e.g. associations) needs to be uniquely restored + * when a PlayerCharacter is loaded from a persistent state (such as a save + * file) + * + * @param <T> + * The type of object that this PersistentChoiceActor can apply to a + * PlayerCharacter + */ public interface PersistentChoiceActor<T> extends ChoiceActor<T> { + /** + * Encodes the given choice into a String sufficient to uniquely identify + * the choice. This may not sufficiently encode to be stored into a file or + * format which restricts certain characters (such as URLs), it simply + * encodes into an identifying String. There is no guarantee that this + * encoding is human readable, simply that the encoding is uniquely + * identifing such that the decodeChoice method of the PersistentChoiceActor + * is capable of decoding the String into the choice object. + * + * @param choice + * The choice which should be encoded into a String sufficient to + * identify the choice. + * + * @return A String sufficient to uniquely identify the choice. + */ public String encodeChoice(Object choice); + /** + * Decodes a given String into a choice of the appropriate type. The String + * format to be passed into this method is defined solely by the return + * result of the encodeChoice method. There is no guarantee that the + * encoding is human readable, simply that the encoding is uniquely + * identifing such that this method is capable of decoding the String into + * the choice object. + * + * @param s + * The String which should be decoded to provide the choice of + * the appropriate type. + * + * @return A choice object of the appropriate type that was encoded in the + * given String. + */ public T decodeChoice(String s); - + + /** + * Restores a choice to a PlayerCharacter. This method re-applies a choice + * when a PlayerCharacter is restored from a persistent state (the + * applyChoice method of ChoiceActor having been used to first apply the + * choice to a PlayerCharacter). + * + * @param pc + * The PlayerCharacter to which the choice should be restored. + * @param owner + * The owning object of the choice being restored. + * @param choice + * The choice being restored to the given PlayerCharacter. + */ public void restoreChoice(PlayerCharacter pc, CDOMObject owner, T choice); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-07 03:24:52
|
Revision: 8587 http://pcgen.svn.sourceforge.net/pcgen/?rev=8587&view=rev Author: thpr Date: 2008-12-07 03:24:47 +0000 (Sun, 07 Dec 2008) Log Message: ----------- remove dead code Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/BioSet.java Trunk/pcgen/code/src/java/pcgen/core/CampaignURL.java Trunk/pcgen/code/src/java/pcgen/core/Equipment.java Trunk/pcgen/code/src/java/pcgen/core/EquipmentChoice.java Trunk/pcgen/code/src/java/pcgen/core/EquipmentCollection.java Trunk/pcgen/code/src/java/pcgen/core/EquipmentList.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/core/Movement.java Trunk/pcgen/code/src/java/pcgen/core/PCClass.java Trunk/pcgen/code/src/java/pcgen/core/PObject.java Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java Trunk/pcgen/code/src/java/pcgen/core/SourceEntry.java Trunk/pcgen/code/src/java/pcgen/core/StatList.java Trunk/pcgen/code/src/java/pcgen/core/character/SpellInfo.java Trunk/pcgen/code/src/java/pcgen/core/prereq/PrereqHandler.java Trunk/pcgen/code/src/java/pcgen/core/prereq/Prerequisite.java Trunk/pcgen/code/src/java/pcgen/core/utils/CoreUtility.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/PCClassLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/PreParserFactory.java Removed Paths: ------------- Trunk/pcgen/code/src/java/pcgen/core/ChoiceInfo.java Trunk/pcgen/code/src/java/pcgen/core/SpellFilter.java Trunk/pcgen/code/src/java/pcgen/core/Variable.java Trunk/pcgen/code/src/java/pcgen/core/VariableList.java Trunk/pcgen/code/src/java/pcgen/core/analysis/LanguageSupport.java Modified: Trunk/pcgen/code/src/java/pcgen/core/BioSet.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/BioSet.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/BioSet.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -218,21 +218,6 @@ } /** - * Add the supplied line to the race map. The race map contains an array - * with an entry for each age set. The supplied index is used to ensure - * that the value is placed in the correct age bracket. - * - * @param region The region the race is defined in. - * @param race The race to be updated. - * @param tag The tag to be entered. Must be in the form key:value - * @param ageSetIndex The age set to be updated. - */ - public void addToRaceMap(final String region, final String race, final String tag, final int ageSetIndex) - { - addToMap(raceMap, region, race, tag, ageSetIndex); - } - - /** * Add the supplied line to the user map. The user map contains an array with * an entry for each age set. The supplied index is used to ensure that the * value is placed in the correct age bracket. @@ -244,11 +229,6 @@ */ public void addToUserMap(final String region, final String race, final String tag, final int ageSetIndex) { - addToMap(userMap, region, race, tag, ageSetIndex); - } - - private static void addToMap(final Map<String, List<String>> map, final String region, final String race, final String tag, final int ageSetIndex) - { final int x = tag.indexOf(':'); if (x < 0) @@ -260,7 +240,7 @@ final String key = region + "." + race + "." + tag.substring(0, x); final String value = tag.substring(x + 1); - List<String> r = map.get(key); + List<String> r = userMap.get(key); if (r == null) { @@ -273,7 +253,7 @@ } r.set(ageSetIndex, value); - map.put(key, r); + userMap.put(key, r); } /** Modified: Trunk/pcgen/code/src/java/pcgen/core/CampaignURL.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/CampaignURL.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/CampaignURL.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -48,13 +48,13 @@ } /** The kind of url */ - private URLKind urlKind; + private final URLKind urlKind; /** The name of the url (only for ecommerce sites) */ - private String urlName; + private final String urlName; /** The URL itself */ - private URL url; + private final URL url; /** The displayed description of the url */ - private String urlDesc; + private final String urlDesc; /** * Instantiates a new campaign url. @@ -82,14 +82,6 @@ } /** - * @param urlKind the urlKind to set - */ - void setUrlKind(URLKind urlKind) - { - this.urlKind = urlKind; - } - - /** * @return the urlName */ public String getUrlName() @@ -98,14 +90,6 @@ } /** - * @param urlName the urlName to set - */ - void setUrlName(String urlName) - { - this.urlName = urlName; - } - - /** * @return the url */ public URL getUrl() @@ -114,14 +98,6 @@ } /** - * @param url the url to set - */ - void setUrl(URL url) - { - this.url = url; - } - - /** * @return the urlDesc */ public String getUrlDesc() @@ -129,14 +105,6 @@ return urlDesc; } - /** - * @param urlDesc the urlDesc to set - */ - void setUrlDesc(String urlDesc) - { - this.urlDesc = urlDesc; - } - /* (non-Javadoc) * @see java.lang.Comparable#compareTo(java.lang.Object) */ Deleted: Trunk/pcgen/code/src/java/pcgen/core/ChoiceInfo.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/ChoiceInfo.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/ChoiceInfo.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -1,75 +0,0 @@ -/* - * ChoiceInfo.java - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Current Version: $Revision$ - * Last Editor: $Author$ - * Last Edited: $Date: 2006-03-22 22:52:02 +0000 (Wed, 22 Mar 2006) $ - * - * Copyright 2006 Andrew Wilson <nu...@so...> - */ -package pcgen.core; - -/** - * This tiny little class implements a way to associate prerequisites with a - * simple string. This is a subclass of AbilityInfo so we can reuse some of - * its code - * - * @author Andrew Wilson <nu...@so...> - */ -public class ChoiceInfo extends AbilityInfo -{ - - /** - * Make a new object to hold info about a string and some associated - * prerequisites. - * - * @param key the Key of the Ability - * @param delim the Ability's category - */ - public ChoiceInfo(String key, char delim) - { - super(); - - this.category = "NONE"; - - if (delim == '[') { - this.delim = '['; - } - - this.extractPrereqs(key); - } - - public final Ability getAbility() - { - return null; - } - - /** - * Compares this AbilityInfo Object with an Object passed in. The object - * passed in should be either an AbilityInfo Object or a PObject. - * - * @param obj the object to test against - * - * @return the result of the compare, negative integer if this should sort - * before - */ - public int compareTo(Object obj) - { - return this.keyName.compareTo(obj.toString()); - } - -} Modified: Trunk/pcgen/code/src/java/pcgen/core/Equipment.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Equipment.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/Equipment.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -2712,20 +2712,6 @@ } /** - * Clears all child types - */ - public void clearChildTypes() { - d_childTypes.clear(); - } - - /** - * Removes all items from this container. - */ - public void clearContainedEquipment() { - d_containedEquipment.clear(); - } - - /** * Description of the Method * * @return Description of the Return Value @@ -2802,17 +2788,6 @@ } /** - * contains - * - * @param e The equipmet to check for - * - * @return true if containedEquipment contains the passed item - */ - public boolean containsContainedEquipment(final Equipment e) { - return d_containedEquipment.contains(e); - } - - /** * DR for equipment * * @param aPC The PC thta has the Equipment @@ -3261,18 +3236,6 @@ } /** - * Removes a child from the Equipment - * - * @param aPC - * The PC carrying the item - * @param childIndex - * The number of the child to remove - */ - public void removeChild(final PlayerCharacter aPC, final int childIndex) { - removeChild(aPC, getChild(childIndex)); - } - - /** * Description of the Method * * @param eqMod @@ -3649,10 +3612,6 @@ return aType.toString(); } - boolean equalTo(final Object o) { - return super.equals(o); - } - boolean save(final BufferedWriter output) { FileAccess.write(output, "BASEITEM:" + formatSaveLine('\t', ':')); FileAccess.newLine(output); @@ -4079,24 +4038,6 @@ } /** - * Checks whether the proposed type is one that is accepted - * - * @param aString - * Description of the Parameter - * @return The acceptsTypes value - */ - private boolean acceptsType(final String aString) { - for (Capacity cap : getSafeListFor(ListKey.CAPACITY)) - { - if (cap.getType().equalsIgnoreCase(aString)) - { - return true; - } - } - return false; - } - - /** * Add a piece of Equipement * * @param e the Equipement to add Modified: Trunk/pcgen/code/src/java/pcgen/core/EquipmentChoice.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/EquipmentChoice.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/EquipmentChoice.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -57,6 +57,9 @@ private int maxValue = 0; private int incValue = 1; private int maxSelect = 0; + /* + * CONSIDER This is never read, which is probably a bug - thpr Dec 6, 2008 + */ private int pool = 0; private String title = null; Modified: Trunk/pcgen/code/src/java/pcgen/core/EquipmentCollection.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/EquipmentCollection.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/EquipmentCollection.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -74,11 +74,4 @@ * @param child */ void insertChild(PlayerCharacter aPC, Object child); - - /** - * Remove the i'th child. - * @param aPC - * @param i - */ - void removeChild(PlayerCharacter aPC, int i); } Modified: Trunk/pcgen/code/src/java/pcgen/core/EquipmentList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/EquipmentList.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/EquipmentList.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -323,25 +323,6 @@ } /** - * Return an equipment object from the passed-in list matching the passed-in - * name. - * - * @param name - * the name to match - * @param aList - * the list to search in - * @return the Equipment object matching the name - */ - public static Equipment getEquipmentNamed(final String name, final List<Equipment> aList) { - for ( Equipment eq : aList ) - { - if (eq.getName().equalsIgnoreCase(name)) { return eq; } - } - - return null; - } - - /** * Get an Equipment object from the list matching the passed-in type(s). * * @param eqIterator @@ -584,23 +565,6 @@ } } - static EquipmentModifier getQualifiedModifierNamed(final String aName, final List<String> aType) { - for (EquipmentModifier aEqMod : Globals.getContext().ref.getConstructedCDOMObjects(EquipmentModifier.class)) - { - if (aEqMod.getDisplayName().equals(aName)) { - if (aEqMod.isType("All")) { return aEqMod; } - - for (Iterator<String> e2 = aType.iterator(); e2.hasNext();) { - final String t = e2.next(); - - if (aEqMod.isType(t)) { return aEqMod; } - } - } - } - - return null; - } - private static EquipmentModifier getModifierNamed(final String aName) { for (EquipmentModifier eqMod : Globals.getContext().ref.getConstructedCDOMObjects(EquipmentModifier.class)) { Modified: Trunk/pcgen/code/src/java/pcgen/core/GameMode.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -75,7 +75,6 @@ private Map<String, Map<String, LevelInfo>> levelInfo = new HashMap<String, Map<String, LevelInfo>>(); private List<String> loadStrings = new ArrayList<String>(); private List<String> skillMultiplierLevels = new ArrayList<String>(); - private List<String> wcStepsList = new ArrayList<String>(); private List<WieldCategory> wieldCategoryList = new ArrayList<WieldCategory>(); private Map<String, List<String>> ACTypeAddMap = new HashMap<String, List<String>>(); private Map<String, List<String>> ACTypeRemoveMap = new HashMap<String, List<String>>(); @@ -1321,23 +1320,6 @@ wieldCategoryList.add(wCat); } - /** - * The "steps" up or down in the Wield Category chain - * @param aLine - **/ - public void addWieldCategorySteps(final String aLine) - { - wcStepsList.clear(); - - final StringTokenizer aTok = new StringTokenizer(aLine, "|"); - - while (aTok.hasMoreTokens()) - { - final String aName = aTok.nextToken(); - wcStepsList.add(aName); - } - } - public int compareTo(final Object obj) { if (obj != null) @@ -2079,17 +2061,6 @@ } /** - * Add to the bonus spell map - * @param level - * @param baseStatScore - * @param statRange - */ - public void addToBonusSpellMap(final String level, final String baseStatScore, final String statRange) - { - bonusSpellMap.put(level, baseStatScore + '|' + statRange); - } - - /** * Get the bonus spell map * @return the bonus spell map */ @@ -2954,16 +2925,6 @@ /** */ - public void setSkillTabColumnVisible(final int columnIndex, final boolean bVisible) - { - if ((columnIndex >= 0) && (columnIndex < skillTabColumnVisible.length)) - { - skillTabColumnVisible[columnIndex] = bVisible; - } - } - - /** - */ public boolean getSkillTabColumnVisible(final int columnIndex) { if ((columnIndex >= 0) && (columnIndex < skillTabColumnVisible.length)) @@ -3067,18 +3028,6 @@ } /** - * Checks if a bonus type should stack for this game mode. - * - * @param aBonusType The bonus type - * - * @return <tt>true</tt> if bonuses of this type stack. - */ - public boolean bonusStacks( final String aBonusType ) - { - return bonusStackList.indexOf(aBonusType) != -1; // e.g. Dodge - } - - /** * Adds an <tt>AbilityCategory</tt> definition to the game mode. * * @param aCategory The <tt>AbilityCategory</tt> to add. Modified: Trunk/pcgen/code/src/java/pcgen/core/Globals.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Globals.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/Globals.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -40,7 +40,6 @@ import java.util.MissingResourceException; import java.util.Random; import java.util.ResourceBundle; -import java.util.Set; import java.util.SortedSet; import java.util.StringTokenizer; import java.util.TreeMap; @@ -502,40 +501,7 @@ } return Collections.unmodifiableList(companionModMap.get(cList)); } - - /** - * Get companion modifier. - * @param aString - * @return companion mod - */ - public static CompanionMod getCompanionMod(final String aString) - { - if (aString.length() <= 0) - { - return null; - } - StringTokenizer aTok = new StringTokenizer(aString.substring(9), "=", false); - final String classes = aTok.nextToken(); - final int level = Integer.parseInt(aTok.nextToken()); - for ( CompanionMod cMod : getAllCompanionMods() ) - { - aTok = new StringTokenizer(classes, ",", false); - - while (aTok.hasMoreTokens()) - { - final String cString = aTok.nextToken(); - - if (cMod.getLevel(cString) == level) - { - return cMod; - } - } - } - - return null; - } - /** * Gets a <tt>Collection</tt> of all <tt>CompanionMod</tt>s registered in * the system. @@ -794,11 +760,6 @@ * @param aKey The key of the Ability to remove * @return true or false */ - public static boolean removeAbilityKeyed( final AbilityCategory aCategory, final String aKey ) - { - return abilityStore.removeKeyed(aCategory.getKeyName(), aKey); - } - // TODO - Remove this version public static boolean removeAbilityKeyed( final String aCategory, final String aKey ) { @@ -949,28 +910,6 @@ return getPObjectsOfType(abilityList, aType); } - public static Collection<String> getAbilityTypes(final AbilityCategory aCategory, final boolean visibleOnly) - { - final Set<String> typeList = new TreeSet<String>(); - for ( final Categorisable c : getUnmodifiableAbilityList(aCategory.getKeyName()) ) - { - Ability ability = null; - if ( c instanceof Ability ) - { - ability = (Ability)c; - } - else if ( c instanceof AbilityInfo ) - { - ability = ((AbilityInfo)c).getAbility(); - } - for (Type t : ability.getTrueTypeList(visibleOnly)) - { - typeList.add(t.toString()); - } - } - return Collections.unmodifiableSet(typeList); - } - /** * Get game mode AC abbreviation * @return game mode AC abbreviation @@ -2320,19 +2259,6 @@ return aList; } - /** - * Sort Pcgen Object list by key - * - * @param aList The list to be sorted. - * @return Sorted list of Pcgen Objects - */ - public static <T extends PObject> List<T> sortPObjectListByKey(final List<T> aList) - { - Collections.sort(aList, pObjectStringComp); - - return aList; - } - static String getBonusFeatString() { return SettingsHandler.getGame().getBonusFeatLevels().get(0); } @@ -2550,29 +2476,6 @@ return adjustDamage(aDamage, sizeInt(sBaseSize), sizeInt(sNewSize)); } - /** - * Efficiently search for a PObject in a list with a particular key. The list - * must be sorted by key, otherwise the search may fail find entries in the list. - * - * @param aList The list to be searched, must be sorted by key. - * @param keyName The key to be found. - * @return The object found, or null if not found. - */ - static <T extends PObject> T binarySearchPObject(final List<T> aList, final String keyName) - { - if ((keyName == null) || (keyName.length() <= 0)) - { - return null; - } - - int index = Collections.binarySearch(aList, keyName, pObjectStringComp); - if ( index >= 0 ) - { - return aList.get(index); - } - return null; - } - static double calcEncumberedMove(final Load load, final double moveInt, final boolean checkLoad) { return calcEncumberedMove(load, moveInt, checkLoad, null); Modified: Trunk/pcgen/code/src/java/pcgen/core/Movement.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Movement.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/Movement.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -226,16 +226,6 @@ } /** - * Get a movement type at a particular index - * @param x - * @return a movement type - */ - public String getMovementTypeAt(int x) - { - return movementTypes[x]; - } - - /** * Get the movement types * @return the movement types */ @@ -245,16 +235,6 @@ } /** - * Get the movement at index x - * @param x - * @return the movement at index x - */ - public double getMovementAt(int x) - { - return movements[x].doubleValue(); - } - - /** * Get the movement at index i * @param i * @return the movement at index i or 0 @@ -339,31 +319,6 @@ return movelabel.toString(); } - /** - * Converts this Movement object into a format suitable for storage in an - * LST or equivalent file. This method should be the complement of the - * static getMovementFrom() method. - * - * @return a String in LST/PCC file format, suitable for persistent storage - */ - public String toLSTString() - { - StringBuilder txt = new StringBuilder(); - txt.append("\tMOVE"); - switch (moveRatesFlag) - { - case 2: // MOVECLONE: - txt.append("CLONE"); - break; - - default: // MOVE: - break; - } - txt.append(':'); - addTokenContents(txt); - return txt.toString(); - } - public void addTokenContents(StringBuilder txt) { if (moveRatesFlag == 2) Modified: Trunk/pcgen/code/src/java/pcgen/core/PCClass.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/PCClass.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -1951,28 +1951,6 @@ return cr == null ? 0 : cr.resolve(aPC, getQualifiedKey()).floatValue(); } - /* - * PCCLASSLEVELONLY Since this is level dependent it only makes sense there. - */ - public String classLevelString() - { - StringBuffer aString = new StringBuffer(); - - if (!getSubClassKey().equals(Constants.s_NONE) - && !"".equals(getSubClassKey())) - { - aString.append(getSubClassKey()); - } - else - { - aString.append(getKeyName()); - } - - aString = aString.append(' ').append(level); - - return aString.toString(); - } - @Override public PCClass clone() { Modified: Trunk/pcgen/code/src/java/pcgen/core/PObject.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PObject.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/PObject.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -617,59 +617,6 @@ } /** - * Returns true if the PC has a bonus that is currently applied - * @param aPC - * @param anObj - * @return true if the PC has a bonus that is currently applied - */ - public boolean passesPreApplied(final PlayerCharacter aPC, final PObject anObj) - { - if (!aPC.getUseTempMods()) - { - return false; - } - - // If anObj is null, use this objects tempBonusList - if (anObj == null) - { - for (BonusObj aBonus : getTempBonusList()) - { - final Object abT = aBonus.getTargetObject(); - - if (abT instanceof PlayerCharacter) - { - final PlayerCharacter bPC = (PlayerCharacter) abT; - - if (aBonus.isApplied() && (bPC == aPC)) - { - return true; - } - } - } - - return false; - } - - // else use the anObj's tempBonusList - for (BonusObj aBonus : anObj.getTempBonusList()) - { - final Object abT = aBonus.getTargetObject(); - - if (abT instanceof Equipment) - { - final Equipment aTarget = (Equipment) abT; - - if (aBonus.isApplied() && aTarget.equals(anObj)) - { - return true; - } - } - } - - return false; - } - - /** * Remove all abilities gained via a level * @param aLevel */ Modified: Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -3488,15 +3488,6 @@ } /** - * Clear temp bonus filters - * - */ - public void clearTempBonusFilters() - { - tempBonusFilters.clear(); - } - - /** * set temp bonus filter * * @param aBonusStr @@ -4217,17 +4208,6 @@ /** * Cache the output index of an automatic equipment item. - * @param key The key of the equipment item. - * @param index The output index. - */ - public void cacheOutputIndex(String key, int index) - { - Logging.debugPrint("Caching " + key + " - " + index + " direct"); - autoEquipOutputOrderCache.put(key, index); - } - - /** - * Cache the output index of an automatic equipment item. * @param item The equipment item. */ public void cacheOutputIndex(Equipment item) @@ -4619,16 +4599,6 @@ return iSize; } - /** - * @param aBonus - * This will be used when I expand the functionality of the - * TempBonus tab. Please leave -- JSC 08/08/03 - */ - public void removeActiveBonus(final BonusObj aBonus) - { - activeBonusList.remove(aBonus); - } - public void removeEquipment(final Equipment eq) { if (eq.isType(Constants.s_TYPE_SPELLBOOK)) @@ -5954,14 +5924,6 @@ Constants.FEAT_CATEGORY, featName, Ability.Nature.ANY); } - public Ability getFeatNamed(final String featName, - final Ability.Nature featType) - { - return AbilityUtilities.getAbilityFromList(AbilityUtilities - .getAggregateAbilitiesListForKey(Constants.FEAT_CATEGORY, this), - Constants.FEAT_CATEGORY, featName, featType); - } - /** * Searches the characters feats for an Ability object which is a clone of * the same Base ability as the Ability passed in @@ -6666,22 +6628,6 @@ * caster level. * * @param spellType - * The type of spellcaster (i.e. "ARCANE" or "Divine") - * @param minLevel - * The desired caster level - * @return boolean - */ - public boolean isSpellCaster(final String spellType, final int minLevel) - { - return isSpellCaster(spellType, minLevel, false) > 0; - } - - /** - * Method will go through the list of classes that the player character has - * and see if they are a spell caster of the desired type and of the desired - * caster level. - * - * @param spellType * The type of spellcaster (i.e. "Arcane" or "Divine") * @param minLevel * The desired caster level @@ -6734,20 +6680,6 @@ return classTotal; } - public boolean isSpellCastermax(final int maxLevel) - { - for (PCClass pcClass : classList) - { - if (pcClass.get(StringKey.SPELLTYPE) != null - && (pcClass.getLevel() <= maxLevel)) - { - return true; - } - } - - return false; - } - public void getSpellList() { // all non-spellcaster spells are added to race @@ -6906,34 +6838,6 @@ } /** - * Computes the Caster Level for a Class - * - * @param aClass - * @return class caster level - */ - public int getClassCasterLevel(final PCClass aClass) - { - final int casterLevel = - getVariableValue("CASTERLEVEL", "CLASS:" + aClass.getKeyName()) - .intValue(); - return casterLevel; - } - - /** - * Computes the Caster Level for a race - * - * @param aRace - * @return race caster level - */ - public int getRaceCasterLevel(final Race aRace) - { - final int casterLevel = - getVariableValue("CASTERLEVEL", "RACE:" + aRace.getKeyName()) - .intValue(); - return casterLevel; - } - - /** * Calculates total bonus from all stats * * @param aType @@ -6949,61 +6853,6 @@ } /** - * return bonus from Temporary Bonuses - * - * @param aType - * @param aName - * @return temp bonus to - */ - public double getTempBonusTo(String aType, String aName) - { - double bonus = 0; - - if (!getUseTempMods()) - { - return bonus; - } - - aType = aType.toUpperCase(); - aName = aName.toUpperCase(); - - for (BonusObj bonusObj : getTempBonusList()) - { - final String bString = bonusObj.toString(); - - if ((bString.indexOf(aType) < 0) || (bString.indexOf(aName) < 0)) - { - continue; - } - - final Object tarObj = bonusObj.getTargetObject(); - final Object creObj = bonusObj.getCreatorObject(); - - if ((creObj == null) || (tarObj == null)) - { - continue; - } - - if (!(creObj instanceof CDOMObject) - || !(tarObj instanceof PlayerCharacter)) - { - continue; - } - - final PlayerCharacter bPC = (PlayerCharacter) tarObj; - - if (bPC != this) - { - continue; - } - - bonus += bonusObj.resolve(this, "").doubleValue(); - } - - return bonus; - } - - /** * Parses through all templates to calculate total bonus * * @param aType @@ -11184,20 +11033,6 @@ * * @param featType * String category of feat to list. - * @return List of Feats. - */ - public List<String> getAvailableFeatNames(final String featType) - { - return (getAvailableFeatNames(featType, false)); - } - - /** - * Returns the list of names of available feats of given type. That is, all - * feats from the global list, which match the given featType, the character - * qualifies for, and the character does not already have. - * - * @param featType - * String category of feat to list. * @param autoQualify * assume PC qualifies for feat. Used for virtual feats * @return List of Feats. @@ -11382,31 +11217,6 @@ return false; } - /** - * return the index of CharacterDomain matching domainName else return -1 - * - * @param domainKey - * @return character domain index - * @deprecated 10/21/06 thpr as part of PCClass rebuilding - */ - @Deprecated - public int getCharacterDomainIndex(final String domainKey) - { - for (int i = 0; i < characterDomainList.size(); ++i) - { - final CharacterDomain aCD = characterDomainList.get(i); - final Domain aDomain = aCD.getDomain(); - - if ((aDomain != null) - && aDomain.getKeyName().equalsIgnoreCase(domainKey)) - { - return i; - } - } - - return -1; - } - public void addFreeLanguage(final Language aLang) { this.languages.add(aLang); @@ -13216,179 +13026,6 @@ } /** - * returns the level of the highest spell in a given spellbook Yes, divine - * casters can have a "spellbook" - * - * @param aString - * @return spell levels in book - */ - int countSpellLevelsInBook(final String aString) - { - int levelNum = 0; - - final StringTokenizer aTok = new StringTokenizer(aString, "."); - final int classNum = Integer.parseInt(aTok.nextToken()); - final int sbookNum = Integer.parseInt(aTok.nextToken()); - - String bookName = Globals.getDefaultSpellBook(); - - if (sbookNum > 0) - { - bookName = getSpellBooks().get(sbookNum); - } - - final PObject aObject = getSpellClassAtIndex(classNum); - - if (aObject != null) - { - for (levelNum = 0; levelNum >= 0; ++levelNum) - { - final List<CharacterSpell> aList = - getCharacterSpells(aObject, null, bookName, levelNum); - - if (aList.size() < 1) - { - break; - } - } - } - - return levelNum; - } - - /** - * returns the number of spells based on class, level and spellbook - * - * @param aString - * @return int - */ - int countSpellListBook(final String aString) - { - final int dot = aString.lastIndexOf('.'); - int spellCount = 0; - - if (dot < 0) - { - for (PCClass pcClass : classList) - { - spellCount += getAssocCount(pcClass, AssociationListKey.CHARACTER_SPELLS); - } - } - else - { - final int classNum = Integer.parseInt(aString.substring(17, dot)); - final int levelNum = - Integer.parseInt(aString.substring(dot + 1, aString - .length() - 1)); - - final PObject aObject = getSpellClassAtIndex(classNum); - - if (aObject != null) - { - final List<CharacterSpell> aList = - getCharacterSpells(aObject, null, Globals.getDefaultSpellBook(), levelNum); - spellCount = aList.size(); - } - } - - return spellCount; - } - - /** - * returns the number of times a spell is memorised Tag looks like: - * (SPELLTIMES%class.%book.%level.%spell) aString looks - * like: SPELLTIMES2.-1.4.15 - * - * where . is a full stop (or period if you are from USA ;p) - * - * heavily stolen from replaceTokenSpellMem in ExportHandler.java - * - * @param aString - * @return spell times - */ - int countSpellTimes(final String aString) - { - boolean found = false; - final StringTokenizer aTok = - new StringTokenizer(aString.substring(10), "."); - final int classNum = Integer.parseInt(aTok.nextToken()); - final int bookNum = Integer.parseInt(aTok.nextToken()); - final int spellLevel = Integer.parseInt(aTok.nextToken()); - final int spellNumber = Integer.parseInt(aTok.nextToken()); - - final PObject aObject = getSpellClassAtIndex(classNum); - String bookName = Globals.getDefaultSpellBook(); - - if (bookNum > 0) - { - bookName = getSpellBooks().get(bookNum); - } - - if ((aObject != null) || (classNum == -1)) - { - if (classNum == -1) - { - bookName = Globals.getDefaultSpellBook(); - } - - if (!"".equals(bookName)) - { - SpellInfo si = null; - - if (classNum == -1) - { - final List<CharacterSpell> charSpellList = - new ArrayList<CharacterSpell>(); - - for (PCClass pcClass : getClassList()) - { - final List<CharacterSpell> bList = - getCharacterSpells( - pcClass, null, bookName, -1); - - for (CharacterSpell cs : bList) - { - if (!charSpellList.contains(cs)) - { - charSpellList.add(cs); - } - } - } - - Collections.sort(charSpellList); - - if (spellNumber < charSpellList.size()) - { - final CharacterSpell cs = - charSpellList.get(spellNumber); - si = cs.getSpellInfoFor(bookName, -1, -1); - found = true; - } - } - else if (aObject != null) - { - final List<CharacterSpell> charSpells = - getCharacterSpells(aObject, null, bookName, spellLevel); - - if (spellNumber < charSpells.size()) - { - final CharacterSpell cs = charSpells.get(spellNumber); - si = cs.getSpellInfoFor(bookName, spellLevel, -1); - found = true; - } - } - - if (found && (si != null)) - { - return si.getTimes(); - } - } - } - - return 0; - } - - /** * Counts the number of spells inside a spellbook Yes, divine casters can * have a "spellbook" * @@ -14892,17 +14529,6 @@ setDirty(true); } - /** - * Remove the string for the characteristic - * - * @param key - * @return string removed - */ - public String removeStringFor(StringKey key) - { - return stringChar.remove(key); - } - private Float getEquippedQty(EquipSet eSet, Equipment eqI) { final String rPath = eSet.getIdPath(); @@ -15014,105 +14640,6 @@ } /** - * Returns a list of String locations the sepcified Equipment can be - * equipped to. - * - * @param eqSet - * @param eqI - * @param containers - * @return - */ - public List<String> getEquippableLocations(EquipSet eqSet, Equipment eqI, - List<String> containers) - { - // Some Equipment locations are based on the number of hands - int hands = getHands(); - - List<String> aList = new ArrayList<String>(); - - if (eqI.isWeapon()) - { - if (eqI.isUnarmed()) - { - aList.add(Constants.S_UNARMED); - } - else if (eqI.isShield()) - { - aList.add(Constants.S_SHIELD); - } - else if (eqI.isWeaponOutsizedForPC(this)) - { - // do nothing for outsized weapons - } - else - { - if (eqI.isWeaponOneHanded(this)) - { - aList = getWeaponLocationChoices(hands, Constants.S_BOTH); - } - else - { - aList.add(Constants.S_BOTH); - } - - if (eqI.isMelee() && eqI.isDouble()) - { - aList.add(Constants.S_DOUBLE); - } - } - } - else - { - String locName = getSingleLocation(eqI); - - if (locName.length() != 0) - { - aList.add(locName); - } - else - { - aList.add(Constants.S_EQUIPPED); - } - } - - if (!eqI.isUnarmed()) - { - aList.add(Constants.S_CARRIED); - aList.add(Constants.S_NOTCARRIED); - } - - // - // Generate a list of containers - // - if (containers != null) - { - if (eqSet != null) - { - final String idPath = eqSet.getIdPath(); - - // process all EquipSet Items - for (EquipSet es : getEquipSet()) - { - String esID = - es.getParentIdPath() + EquipSet.PATH_SEPARATOR; - String abID = idPath + EquipSet.PATH_SEPARATOR; - - if (esID.startsWith(abID)) - { - Equipment eq = es.getItem(); - if ((eq != null) && eq.isContainer()) - { - containers.add(eq.getName()); - } - } - } - } - } - - return aList; - } - - /** * returns true if you can put Equipment into a location in EquipSet * * @param eSet @@ -15844,17 +15371,6 @@ theAbilities.put(aCategory, Ability.Nature.NORMAL, null); } - public int getNumberOfRealAbilities(final AbilityCategory aCategory) - { - final List<Ability> abilities = - theAbilities.get(aCategory, Ability.Nature.NORMAL); - if (abilities == null) - { - return 0; - } - return abilities.size(); - } - public HashMap<Ability.Nature, Set<Ability>> getAbilitiesSet() { @@ -16003,23 +15519,6 @@ } /** - * Returns the Feat definition searching by name, as contained in the <b> - * chosen</b> feat list. - * - * @param featName - * String key of the feat to check for. - * - * @return the Feat (not the CharacterFeat) searched for, <code>null</code> - * if not found. - */ - - public Ability getRealFeatNamed(final String featName) - { - return AbilityUtilities.getAbilityFromList(realAbilities - .get(AbilityCategory.FEAT), "FEAT", featName, Ability.Nature.ANY); - } - - /** * Does the character have this feat (not virtual or auto). * * @param aFeat @@ -16247,17 +15746,6 @@ setDirty(true); } - public void setAbilities(final AbilityCategory aCategory, final double arg) - { - if (aCategory == AbilityCategory.FEAT) - { - setFeats(arg); - return; - } - - // TODO: What about other types of ability pools? - } - public void setUserPoolBonus(final AbilityCategory aCategory, final BigDecimal anAmount) { @@ -16485,16 +15973,6 @@ return BigDecimal.valueOf(spent); } - public double getUsedAbilityCount(final AbilityCategory aCategory) - { - if (aCategory == AbilityCategory.FEAT) - { - return getUsedFeatCount(); - } - - return getAbilityPoolSpent(aCategory).doubleValue(); - } - private void setVirtualFeatsStable(final boolean stable) { virtualFeatsStable = stable; @@ -16590,27 +16068,6 @@ } - // TODO - Consolidate the various getXXXAbility functions to take a ability - // type parameter. - public Ability getVirtualAbilityKeyed(final AbilityCategory aCategory, - final String aKey) - { - if (aCategory == AbilityCategory.FEAT) - { - return getVirtualFeatKeyed(aKey); - } - - final List<Ability> abilities = getVirtualAbilityList(aCategory); - for (final Ability ability : abilities) - { - if (ability.getKeyName().equals(aKey)) - { - return ability; - } - } - return null; - } - public int addAbility(final PCLevelInfo LevelInfo, final AbilityCategory aCategory, final String aKey, final boolean addIt, final boolean singleChoice) @@ -16902,11 +16359,6 @@ return ret; } - boolean isAutomaticAbilitiesStable(final AbilityCategory aCategory) - { - return theAbilities.get(aCategory, Ability.Nature.AUTOMATIC) != null; - } - public List<Ability> getVirtualFeatList() { return getVirtualAbilityList(AbilityCategory.FEAT); Modified: Trunk/pcgen/code/src/java/pcgen/core/SourceEntry.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/SourceEntry.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/SourceEntry.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -67,23 +67,6 @@ } /** - * Constructs a new <tt>SourceEntry</tt> from the specified <tt>Map</tt> - * - * <p>The Map should contain key values for the fields and the data for the - * values. - * - * @param aSourceMap A Map of source format - source value pairs. - * - * @throws ParseException If an invalid date is specified. - */ - public SourceEntry( final Map<String, String> aSourceMap ) - throws ParseException - { - theSourceBook = Source.getSource( aSourceMap ); - thePageNumber = aSourceMap.get( SourceFormat.PAGE ); - } - - /** * Takes a <tt>Map</tt> of source type tags and values and sets the values * of the <tt>SourceEntry</tt> from it. * Deleted: Trunk/pcgen/code/src/java/pcgen/core/SpellFilter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/SpellFilter.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/SpellFilter.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -1,86 +0,0 @@ -/* - * SpellProhibitor.java - * Copyright 2005 (c) Tom Parker <th...@so...> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Created on November 3, 2006 - * - * Current Ver: $Revision: 1522 $ - * Last Editor: $Author: thpr $ - * Last Edited: $Date: 2006-10-24 18:40:09 -0400 (Tue, 24 Oct 2006) $ - * - */ -package pcgen.core; - -public class SpellFilter { - - private String spellName; - - private String spellType; - - private int spellLevel = -1; - - public void setSpellLevel(int spellLevel) { - this.spellLevel = spellLevel; - } - - public void setSpellName(String spellName) { - this.spellName = spellName; - } - - public void setSpellType(String spellType) { - this.spellType = spellType; - } - - public boolean isEmpty() { - return spellLevel < 0 && spellType == null && spellName == null; - } - - public boolean matchesFilter(String spellKey, int testSpellLevel) { - if (spellLevel >= 0 && testSpellLevel != spellLevel) { - return false; - } - if (spellType != null && !Globals.getSpellKeyed(spellKey).isType(spellType)) { - return false; - } - if (spellName != null && !spellName.equals(spellKey)) { - return false; - } - return true; - } - - @Override - public String toString() { - StringBuffer sb = new StringBuffer(); - if (spellLevel >= 0) { - sb.append("LEVEL=").append(spellLevel); - } - if (spellType != null) { - if (sb.length() != 0) { - sb.append(","); - } - sb.append("TYPE=").append(spellType); - } - if (spellName != null) { - if (sb.length() != 0) { - sb.append(","); - } - sb.append(spellName); - } - return sb.toString(); - } - -} Modified: Trunk/pcgen/code/src/java/pcgen/core/StatList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/StatList.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/StatList.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -129,20 +129,6 @@ return ownerPC.getVariableValue(aString, "").intValue(); } - public String getPenaltyVar(final String aStat) - { - final int x = getIndexOfStatFor(aStat); - - if (x == -1) - { - return ""; - } - - final PCStat stat = stats.get(x); - - return stat.getPenaltyVar(); - } - public int getStatModFor(final String aStat) { final int x = getIndexOfStatFor(aStat); Deleted: Trunk/pcgen/code/src/java/pcgen/core/Variable.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/Variable.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/Variable.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -1,100 +0,0 @@ -/* - * Variable.java - * Copyright 2001 (C) Bryan McRoberts <mer...@ya...> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @author Scott Ellsworth - */ -package pcgen.core; - - -/** - * A Variable is something that alters a computed variable within pcgen - * Examples include stats, saves, and base attack bonuses. - * @author Scott Ellsworth - * @version $Revision$ - */ -public class Variable -{ - /** The name of the variable. */ - private String name; - /** The formula which should be used to calculate the value of the variable. */ - private String value; - /** The level at which the variable should be applied, 0 if always.*/ - private int level; - - /** - * Create a new variable definition. - * @param level The level at which the variable should be applied, 0 if always. - * @param variableName The name of the variable. - * @param defaultFormula The formula which should be used to calculate its value. - */ - public Variable(final int level, final String variableName, final String defaultFormula) - { - this.level = level; - name = variableName; - value = defaultFormula; - } - - /** - * @return The definition of the variable (level, name and value). - */ - public String getDefinition() - { - return level + "|" + name + "|" + value; - } - - /** - * @return The variable's level. - */ - public int getLevel() - { - return level; - } - - /** - * @return The variable's name. - */ - public String getName() - { - return name; - } - - /** - * @return The variable's name in upper case. - */ - public String getUpperName() - { - return name.toUpperCase(); - } - - /** - * @return Returns the variable's value. - */ - public String getValue() - { - return value; - } - - /** - * @param value The value to set. - */ - public void setValue(final String value) - { - this.value = value; - } - -} Deleted: Trunk/pcgen/code/src/java/pcgen/core/VariableList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/VariableList.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/VariableList.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -1,206 +0,0 @@ -/* - * VariableList.java - * Copyright 2001 (C) Bryan McRoberts <mer...@ya...> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @author Scott Ellsworth - */ -package pcgen.core; - -import java.util.*; - -/** - * <code>VariableList</code> encapsulates a list of Variable objects - * along with various methods to aid in the efficient processing of - * the variables. - * - * Last Editor: $Author$ - * Last Edited: $Date$ - * - * @author Scott Ellsworth - * @version $Revision$ - */ -public class VariableList implements Cloneable -{ - /** The list of variables. */ - private ArrayList<Variable> list = new ArrayList<Variable>(); - /** A read-only copy of the variable list for external use. */ - private List<Variable> unmodifiableList = Collections.unmodifiableList(list); - /** The set of the names in the variable list. */ - private Set<String> nameSet = null; - - /** - * Retrieve the definition of the variable at the specified - * location in the list. - * - * @param i The index of the location to be retrieved. - * @return The definition of the variable. - */ - public final String getDefinition(final int i) - { - final Variable v = list.get(i); - - return v.getDefinition(); - } - - /** - * Retrieve the variable at the specified location in the list. - * - * @param i The index of the location to be retrieved. - * @return The variable. - */ - public final Variable getVariable(final int i) - { - final Variable v = list.get(i); - - return v; - } - - /** - * Retrieve a read-only set of the variable names contained in the - * list. - * - * @return The set of names. - */ - public final Set<String> getVariableNamesAsUnmodifiableSet() - { - if (nameSet == null) - { - cacheNames(); - } - - return Collections.unmodifiableSet(nameSet); - } - - /** - * Add a new Variable to the list. - * - * @param level The level at which the variable should be applied, 0 if always. - * @param variableName The name of the variable. - * @param defaultFormula The formula which should be used to calculate its value. - */ - public final void add(final int level, final String variableName, final String defaultFormula) - { - final Variable v = new Variable(level, variableName, defaultFormula); - list.add(v); - clearNameCache(); - } - - /** - * Remove all entries from the list of variables. - */ - public void clear() - { - list.clear(); - nameSet = null; - } - - /** - * @see java.lang.Object#clone() - */ - @Override - public Object clone() throws CloneNotSupportedException - { - final VariableList retVal = (VariableList) super.clone(); - retVal.list = (ArrayList<Variable>) list.clone(); - - return retVal; - } - - /** - * Check if a named variable is held. - * - * @param variableName The name to be checked for. - * @return True if the variable is present, false otherwise. - */ - public final boolean hasVariableNamed(final String variableName) - { - final String upperName = variableName.toUpperCase(); - - if (nameSet == null) - { - cacheNames(); - } - - return nameSet.contains(upperName); - } - - /** - * Retrieve an iterator over a read-only copy of the variable list. - * - * @return The iterator. - */ - public final Iterator<Variable> iterator() - { - return unmodifiableList.iterator(); - } - - /** - * Set a specific index in the list to a new Variable. - * - * @param idx The index to be set. - * @param level The level at which the variable should be applied, 0 if always. - * @param variableName The name of the variable. - * @param defaultFormula The formula which should be used to calculate its value. - */ - public final void set(final int idx, final int level, final String variableName, final String defaultFormula) - { - final Variable v = new Variable(level, variableName, defaultFormula); - list.set(idx, v); - clearNameCache(); - } - - /** - * Retrieve the number of entries in the list. - * @return The size of the list. - */ - public final int size() - { - return list.size(); - } - - /** - * Add all entries from another VariableList to this VariableList. Note the - * added entries will be shared with both lists. - * @param vOther The list of Variables to be added. - */ - protected final void addAll(final VariableList vOther) - { - list.addAll(vOther.list); - clearNameCache(); - } - - /** - * Populate nameSet, the set of the names in the variable list. - */ - private final void cacheNames() - { - nameSet = new HashSet<String>(); - - for ( Variable v : list ) - { - nameSet.add(v.getUpperName()); - } - } - - /** - * Clear nameSet, the set of the names in the variable list. - */ - private final void clearNameCache() - { - nameSet = null; - } -} Deleted: Trunk/pcgen/code/src/java/pcgen/core/analysis/LanguageSupport.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/analysis/LanguageSupport.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/analysis/LanguageSupport.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -1,79 +0,0 @@ -/* - * Copyright 2008 (C) Tom Parker <th...@us...> - * Derived from PObject.java - * Copyright 2001 (C) Bryan McRoberts <mer...@ya...> - * - * This library is free software; you can redistribute it and/or modify it under - * the terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 2.1 of the License, or (at your option) - * any later version. - * - * This library is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS - * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more - * details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with this library; if not, write to the Free Software Foundation, Inc., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ -package pcgen.core.analysis; - -import java.util.SortedSet; -import java.util.StringTokenizer; -import java.util.TreeSet; - -import pcgen.core.Globals; -import pcgen.core.Language; -import pcgen.rules.context.AbstractReferenceContext; -import pcgen.util.Logging; - -public class LanguageSupport -{ - - /** - * Returns a list of Language objects from a string of choices. The method - * will expand "ALL" or "ANY" into all languages and TYPE= into all - * languages of that type - * @param stringList Pipe separated list of language choices - * @return Sorted list of Language objects - */ - public static SortedSet<Language> getLanguagesFromString(final String stringList) - { - SortedSet<Language> list = new TreeSet<Language>(); - - final StringTokenizer tokens = new StringTokenizer(stringList, "|", false); - - AbstractReferenceContext ref = Globals.getContext().ref; - while (tokens.hasMoreTokens()) - { - final String aLang = tokens.nextToken(); - if ("ALL".equals(aLang)) - { - list.addAll(ref.getConstructedCDOMObjects(Language.class)); - return list; - } - else if (aLang.startsWith("TYPE=") || aLang.startsWith("TYPE.")) - { - list.addAll(Globals.getPObjectsOfType(ref - .getConstructedCDOMObjects(Language.class), aLang - .substring(5))); - } - else - { - Language languageKeyed = ref - .silentlyGetConstructedCDOMObject(Language.class, aLang); - if (languageKeyed == null) - { - Logging.debugPrint("Someone expected Language: " + aLang + " to exist: it doesn't"); - } - else - { - list.add(languageKeyed); - } - } - } - return list; - } - -} Modified: Trunk/pcgen/code/src/java/pcgen/core/character/SpellInfo.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/character/SpellInfo.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/character/SpellInfo.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -57,14 +57,6 @@ private int actualSpellPointCost = 0; private int numPages = 0; - /** - * added package-private constructor to enforce usage of public constructor - */ - SpellInfo() - { - // Empty Constructor - } - SpellInfo(final CharacterSpell owner, final int actualLevel, final int times, final String book) { Modified: Trunk/pcgen/code/src/java/pcgen/core/prereq/PrereqHandler.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/prereq/PrereqHandler.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/prereq/PrereqHandler.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -29,14 +29,12 @@ import java.util.Collection; -import java.util.List; import pcgen.cdom.base.CDOMObject; import pcgen.core.Ability; import pcgen.core.Equipment; import pcgen.core.Globals; import pcgen.core.PCClass; -import pcgen.core.PObject; import pcgen.core.PlayerCharacter; import pcgen.core.RuleConstants; import pcgen.persistence.PersistenceLayerException; @@ -160,38 +158,6 @@ return true; } - public static boolean passesAtLeastOne(final List<Prerequisite> prereqList, final PlayerCharacter character, final PObject caller) - { - if (prereqList == null) - { - return true; - } - for ( Prerequisite element : prereqList ) - { - if (passes(element, character, caller)) - { - return true; - } - } - return false; - } - - public static boolean passesAtLeastOne(final List<Prerequisite> prereqList, final Equipment equip, PlayerCharacter currentPC) - { - if (prereqList == null) - { - return true; - } - for ( Prerequisite element : prereqList ) - { - if (passes(element, equip, currentPC)) - { - return true; - } - } - return false; - } - /** * Returns true if the character passes the prereq * @param prereq The prerequisite to pass Modified: Trunk/pcgen/code/src/java/pcgen/core/prereq/Prerequisite.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/prereq/Prerequisite.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/prereq/Prerequisite.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -577,18 +577,6 @@ && (categoryName == null || categoryName.equals(other.categoryName)); } - boolean deprecated = false; - - public void setDeprecated() - { - deprecated = true; - } - - public boolean isDeprecated() - { - return deprecated; - } - /** * Checks if a character is required to test this prerequisite. * Modified: Trunk/pcgen/code/src/java/pcgen/core/utils/CoreUtility.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/utils/CoreUtility.java 2008-12-07 03:23:41 UTC (rev 8586) +++ Trunk/pcgen/code/src/java/pcgen/core/utils/CoreUtility.java 2008-12-07 03:24:47 UTC (rev 8587) @@ -26,10 +26,8 @@ import java.net.URL; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.Collections; import java.util.Comparator; -import java.util.Iterator; import java.util.List; import java.util.regex.Pattern; @@ -123,68 +121,8 @@ } /** - * Converts an array of Objects into a List of Objects - * - * @param array - * the array to be converted. If this array is null then this - * method will return an empty list; - * - * @return The list containing the objects passed in. - * - * CONSIDER This should really be eliminated, as the only value over - * Arrays.asList is the null check... - thpr 11/3/06 - */ - public static <T> List<T> arrayToList(final T[] array) - { - if (array == null) - { - return new ArrayList<T>(); - } - - final List<T> list = new ArrayList<T>(array.length); - list.addAll(Arrays.asList(array)); - return list; - } - - /** - * Verifies that a string is all numeric (integer). - * - * @param numString - * String to check if all numeric [integer] - * @return true if the String is numeric, else false - */ - public static boolean isIntegerString(final String numString) - { - boolean result; - - try - { - Integer.parseInt(numString); - result = true; - } - catch (NumberFormatException nfe) - { - result = false; - } - - return result; - } - - /** * return true if the protocol of the URL represented is FTP or HTTP * - * @param URLString - * the URL to test for a network protocol - * @return true if the string begins with FTP or HTTP - */ - public static boolean isNetURL(final String URLString) - { - return (URLString.startsWith("http:") || URLString.startsWith("ftp:")); - } - - /** - * return true if the protocol of the URL represented is FTP or HTTP - * * @param url * the URL object to test for a network protocol * @return true if the protocol of this URL is FTP or HTTP @@ -196,19 +134,6 @@ } /** - * return true if the proto... [truncated message content] |
From: <th...@us...> - 2008-12-07 03:48:31
|
Revision: 8588 http://pcgen.svn.sourceforge.net/pcgen/?rev=8588&view=rev Author: thpr Date: 2008-12-07 03:48:26 +0000 (Sun, 07 Dec 2008) Log Message: ----------- remove more dead code Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/FormulaKey.java Trunk/pcgen/code/src/java/pcgen/cdom/list/WeaponProfList.java Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java Trunk/pcgen/code/src/java/pcgen/core/QualifiedObject.java Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillRankControl.java Trunk/pcgen/code/src/java/pcgen/io/exporttoken/EqToken.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/AbstractPrerequisiteListParser.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/PreParserFactory.java Trunk/pcgen/code/src/java/pcgen/rules/persistence/TokenSupport.java Removed Paths: ------------- Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyIterator.java Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyNoniteratingList.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/utils/PObjectHelper.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/FormulaKey.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/FormulaKey.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/cdom/enumeration/FormulaKey.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -62,8 +62,6 @@ public static final FormulaKey SELECT = getConstant("SELECT", Formula.ONE); - public static final FormulaKey POOL = getConstant("POOL"); - public static final FormulaKey NUMCHOICES = getConstant("NUMCHOICES"); public static final FormulaKey SIZE; Modified: Trunk/pcgen/code/src/java/pcgen/cdom/list/WeaponProfList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/list/WeaponProfList.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/cdom/list/WeaponProfList.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -18,8 +18,6 @@ package pcgen.cdom.list; import pcgen.cdom.base.CDOMListObject; -import pcgen.cdom.base.CDOMReference; -import pcgen.cdom.reference.CDOMDirectSingleRef; import pcgen.core.WeaponProf; /** @@ -29,15 +27,6 @@ public class WeaponProfList extends CDOMListObject<WeaponProf> { - public static final CDOMReference<WeaponProfList> STARTING; - - static - { - WeaponProfList wpl = new WeaponProfList(); - wpl.setName("*Starting"); - STARTING = CDOMDirectSingleRef.getRef(wpl); - } - /** * Returns the WeaponProf Class object (WeaponProf.class) * Modified: Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/core/PlayerCharacter.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -14553,43 +14553,6 @@ } /** - * This method gets a list of locations for a weapon - * - * @param hands - * @param multiHand - * @return weapon location choices - */ - private static List<String> getWeaponLocationChoices(final int hands, - final String multiHand) - { - final List<String> result = new ArrayList<String>(hands + 2); - - if (hands > 0) - { - result.add(Constants.S_PRIMARY); - - for (int i = 1; i < hands; ++i) - { - if (i > 1) - { - result.add(Constants.S_SECONDARY + ' ' + i); - } - else - { - result.add(Constants.S_SECONDARY); - } - } - - if (multiHand.length() > 0) - { - result.add(multiHand); - } - } - - return result; - } - - /** * If an item can only go in one location, return the name of that location * to add to an EquipSet * @@ -15297,17 +15260,6 @@ && virtualFeatsStable && aggregateFeatsStable; } - public boolean isAggregateAbilitiesStable(final AbilityCategory aCategory) - { - if (aCategory == AbilityCategory.FEAT) - { - return isAggregateFeatsStable(); - } - return theAbilities.get(aCategory, Ability.Nature.NORMAL) != null - && theAbilities.get(aCategory, Ability.Nature.AUTOMATIC) != null - && theAbilities.get(aCategory, Ability.Nature.VIRTUAL) != null; - } - /** * Sets a 'stable' list of automatic feats * @@ -16061,13 +16013,6 @@ return null; } - public Ability getVirtualFeatKeyed(final String aKey) - { - return AbilityUtilities.getAbilityFromList(getVirtualFeatList(), - "FEAT", aKey, Ability.Nature.ANY); - - } - public int addAbility(final PCLevelInfo LevelInfo, final AbilityCategory aCategory, final String aKey, final boolean addIt, final boolean singleChoice) Modified: Trunk/pcgen/code/src/java/pcgen/core/QualifiedObject.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/QualifiedObject.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/core/QualifiedObject.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -124,8 +124,6 @@ // TODO Auto-generated method stub return result.toString(); } - - /** * Create the qualified object @@ -174,29 +172,6 @@ return new QualifiedObject<String>( obj, prereqs ); } - public static class LevelAwareQualifiedObject<AT> extends QualifiedObject<AT> - { - public final int level; - - public LevelAwareQualifiedObject(int lvl) - { - super(); - level = lvl; - } - - public LevelAwareQualifiedObject(int lvl, AT anObj, List<Prerequisite> aPrereqList) - { - super(anObj, aPrereqList); - level = lvl; - } - - public LevelAwareQualifiedObject(int lvl, AT anObj) - { - super(anObj); - level = lvl; - } - } - @Override public boolean equals(Object obj) { Modified: Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillRankControl.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillRankControl.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillRankControl.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -125,20 +125,6 @@ * * @param rankMod * @param aClass - * @param aPC - * @return message - */ - public static String modRanks(double rankMod, PCClass aClass, - PlayerCharacter aPC, Skill sk) - { - return modRanks(rankMod, aClass, false, aPC, sk); - } - - /** - * Modify the rank - * - * @param rankMod - * @param aClass * @param ignorePrereqs * @param aPC * @return message Deleted: Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyIterator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyIterator.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyIterator.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -1,61 +0,0 @@ -/* - * EmptyIterator.java - * Copyright 2001 (C) Bryan McRoberts <mer...@ya...> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * @author Scott Ellsworth - */ -package pcgen.core.utils; - -import java.util.Iterator; -import java.util.NoSuchElementException; - -/** - * An iterator subclass for empty lists. - * DO NOT DELETE - * @author Scott Ellsworth - * @version $Revision$ - */ -public class EmptyIterator<T> implements Iterator<T> -{ - /** instance of this class */ - public static final EmptyIterator EMPTY_ITERATOR = new EmptyIterator(); - - private EmptyIterator() - { - // Empty Constructor - } - - public static <T> EmptyIterator<T> emptyIterator() - { - return EMPTY_ITERATOR; - } - - public boolean hasNext() - { - return false; - } - - public T next() - { - throw new NoSuchElementException(); - } - - public void remove() - { - throw new UnsupportedOperationException(); - } -} Deleted: Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyNoniteratingList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyNoniteratingList.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/core/utils/EmptyNoniteratingList.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -1,68 +0,0 @@ -/* - * EmptyNoniteratingList.java - * Copyright 2001 (C) Bryan McRoberts <mer...@ya...> - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ -package pcgen.core.utils; - -import java.io.Serializable; -import java.util.AbstractList; -import java.util.Iterator; -import java.util.List; -import java.util.NoSuchElementException; - -/** - * A List subclass containing no data that returns a singleton iterator - * DO NOT DELETE - * @author Scott Ellsworth - * @version $Revision$ - */ -public class EmptyNoniteratingList<T> extends AbstractList<T> implements Serializable -{ - /** instance of this class */ - public static final List EMPTY_LIST = new EmptyNoniteratingList(); - private static final long serialVersionUID = 8842843931221139166L; - - private EmptyNoniteratingList() - { - // Empty Constructor - } - - public List<T> emptyList() - { - return EMPTY_LIST; - } - - public boolean contains(final Object obj) - { - return false; - } - - public T get(final int index) - { - throw new NoSuchElementException("Index: " + index); - } - - public Iterator<T> iterator() - { - return EmptyIterator.emptyIterator(); - } - - public int size() - { - return 0; - } -} Modified: Trunk/pcgen/code/src/java/pcgen/io/exporttoken/EqToken.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/io/exporttoken/EqToken.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/io/exporttoken/EqToken.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -780,17 +780,6 @@ } /** - * Get OutputName Token - * @param eq - * @param pc - * @return OutputName Token - */ - public static String getOutputNameToken(Equipment eq, PlayerCharacter pc) - { - return getNameToken(eq, pc); - } - - /** * Get QTY Token * @param eq * @return QTY Token @@ -914,18 +903,6 @@ } /** - * Get Total Weight Token - * @param pc - * @param eq - * @return Total Weight Token - */ - public static String getTotalWeightToken(PlayerCharacter pc, Equipment eq) - { - return BigDecimalHelper.trimZeros(getTotalWeightTokenDouble(pc, eq) - + ""); - } - - /** * Get Total Weight Token as double * @param pc * @param eq @@ -938,18 +915,6 @@ } /** - * Get TotalWt Token - * @param pc - * @param eq - * @return TotalWt Token - */ - public static String getTotalWtToken(PlayerCharacter pc, Equipment eq) - { - return BigDecimalHelper.trimZeros(Double - .toString(getTotalWtTokenDouble(pc, eq))); - } - - /** * Get TotalWt Token as double * @param pc * @param eq @@ -982,17 +947,6 @@ } /** - * Get TotalWT Token - * @param pc - * @param eq - * @return TotalWT Token - */ - public static String getWtToken(PlayerCharacter pc, Equipment eq) - { - return BigDecimalHelper.trimZeros(eq.getWeight(pc).toString()); - } - - /** * Get TotalWT Token as double * @param pc * @param eq Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/AbstractPrerequisiteListParser.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/AbstractPrerequisiteListParser.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/AbstractPrerequisiteListParser.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -26,7 +26,6 @@ */ package pcgen.persistence.lst.prereq; -import java.util.ArrayList; import java.util.Iterator; import pcgen.core.prereq.Prerequisite; @@ -315,120 +314,4 @@ subreq.setOperator(PrerequisiteOperator.GTEQ); } } - - protected void parsePrereqOldStyleList(Prerequisite prereq, String kind, - String formula) - { - // TEMPLATE:Cyrohydra|Lernaean Cryohydra - // <prereq min="1"> - // <prereq kind="template" key="Cyrohydra" /> - // <prereq kind="template" key="Lernaean Cryohydra" /> - // </prereq> - - String[] templates = formula.split(",|\\|"); - int templatesLength = templates.length; - for (int i = templatesLength - 1; i >= 0; --i) - { - if ("CHECKMULT".equalsIgnoreCase(templates[i])) - { - prereq.setCountMultiples(true); - --templatesLength; - } - } - - // - // Only 1 non-CHECKMULT entry? - // - if (templatesLength == 1) - { - int i; - int min = 1; - for (i = 0; i < templates.length; ++i) - { - if ("CHECKMULT".equalsIgnoreCase(templates[i])) - { - continue; - } - - String[] lastElements = templates[i].split("="); - if (lastElements.length == 2) - { - try - { - // Parse the number off of the end of the element - min = Integer.parseInt(lastElements[1]); - - // replace the element in the list with the name (less the "=n"); - templates[i] = lastElements[0]; - } - catch (NumberFormatException nfe) - { - // TODO Handle this? - } - } - break; - } - prereq.setKind(kind.toLowerCase()); - prereq.setKey(templates[i]); - prereq.setOperator(PrerequisiteOperator.GTEQ); - prereq.setOperand(Integer.toString(min)); - } - else - { - // Need to handle - // PRECLASSLEVELMAX:Fighter,SPELLCASTER=2" - // PRECLASSLEVELMAX:Rogue=5,Fighter,SPELLCASTER=2,Monk=3 - // - prereq.setKind(null); - prereq.setOperator(PrerequisiteOperator.GTEQ); - // - // TODO: there's got to be a better way to do this, than using this HACK. - // There are probably more cases than PRECLASSLEVELMAX that require this treatment... - // - Byngl Sept 27, 2005 - // - if ("classlevelmax".equalsIgnoreCase(kind)) - { - prereq.setOperand(Integer.toString(templates.length)); - } - else - { - prereq.setOperand("1"); - } - - int lastEqIdx = -1; - - ArrayList<Prerequisite> prereqs = - new ArrayList<Prerequisite>(templatesLength); - for (int i = 0; i < templates.length; ++i) - { - if ("CHECKMULT".equalsIgnoreCase(templates[i])) - { - continue; - } - - final Prerequisite subPrereq = new Prerequisite(); - subPrereq.setKind(kind.toLowerCase()); - final int eqIdx = templates[i].indexOf('='); - if (eqIdx >= 0) - { - final String oper = templates[i].substring(eqIdx + 1); - templates[i] = templates[i].substring(0, eqIdx); - subPrereq.setOperand(oper); - // - // Need to go back through the prereq list and update the operand for all those without one - // - for (int updateIdx = lastEqIdx + 1; updateIdx < i; ++updateIdx) - { - prereqs.get(updateIdx).setOperand(oper); - } - lastEqIdx = i; - } - subPrereq.setKey(templates[i]); - prereqs.add(subPrereq); - } - prereq.setPrerequisites(prereqs); - - } - } - } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/PreParserFactory.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/PreParserFactory.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/prereq/PreParserFactory.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -25,17 +25,15 @@ */ package pcgen.persistence.lst.prereq; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; -import pcgen.core.PCClass; -import pcgen.core.PObject; import pcgen.core.prereq.Prerequisite; import pcgen.core.prereq.PrerequisiteOperator; import pcgen.persistence.PersistenceLayerException; -import java.util.List; import pcgen.util.Logging; -import java.util.ArrayList; /** * @author wardc @@ -197,24 +195,4 @@ return (token.startsWith("PRE") || token.startsWith("!PRE")) && (token.indexOf(":") > 0); } - - /** - * Create a level prerequisite - * @param obj The PObject that will 'own; the prereq. - * @param level The minimum level - * @return A prerequisite object - * @throws PersistenceLayerException If the prereq could nto be created. - */ - public static Prerequisite createLevelPrereq(PObject obj, int level) - throws PersistenceLayerException - { - PreParserFactory factory = PreParserFactory.getInstance(); - String preLevelString = "PRELEVEL:MIN=" + level; //$NON-NLS-1$ - if (obj instanceof PCClass) - { - // Classes handle this differently - preLevelString = "PRECLASS:1," + obj.getKeyName() + "=" + level; //$NON-NLS-1$ //$NON-NLS-2$ - } - return factory.parse(preLevelString); - } } Deleted: Trunk/pcgen/code/src/java/pcgen/persistence/lst/utils/PObjectHelper.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/utils/PObjectHelper.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/utils/PObjectHelper.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -1,58 +0,0 @@ -/* - * PObjectHelper.java - * Copyright 2004 (C) Bryan McRoberts mer...@ya... - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Created on April 21, 2004, 2:15 PM - * - * $Id$ - */ -package pcgen.persistence.lst.utils; - -import pcgen.core.PObject; - -/** - * @author ??? - * @version $Revision$ - */ -public final class PObjectHelper -{ - private PObject object; - private String tag; - private int level; - - public PObjectHelper(PObject obj, String aTag, int anInt) - { - object = obj; - tag = aTag; - level = anInt; - } - - public PObject getObject() - { - return object; - } - - public String getTag() - { - return tag; - } - - public int getInt() - { - return level; - } -} Modified: Trunk/pcgen/code/src/java/pcgen/rules/persistence/TokenSupport.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/persistence/TokenSupport.java 2008-12-07 03:24:47 UTC (rev 8587) +++ Trunk/pcgen/code/src/java/pcgen/rules/persistence/TokenSupport.java 2008-12-07 03:48:26 UTC (rev 8588) @@ -43,8 +43,6 @@ public class TokenSupport { - public static final Class<CDOMObject> CDOM_OBJECT_CLASS = CDOMObject.class; - public DoubleKeyMapToList<Class<?>, String, CDOMToken<?>> tokenCache = new DoubleKeyMapToList<Class<?>, String, CDOMToken<?>>(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-07 04:12:24
|
Revision: 8592 http://pcgen.svn.sourceforge.net/pcgen/?rev=8592&view=rev Author: thpr Date: 2008-12-07 04:12:19 +0000 (Sun, 07 Dec 2008) Log Message: ----------- KIT token updates, part 3 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/content/KnownSpellIdentifier.java Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillLanguage.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/content/KnownSpellIdentifier.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/content/KnownSpellIdentifier.java 2008-12-07 04:03:52 UTC (rev 8591) +++ Trunk/pcgen/code/src/java/pcgen/cdom/content/KnownSpellIdentifier.java 2008-12-07 04:12:19 UTC (rev 8592) @@ -17,8 +17,17 @@ */ package pcgen.cdom.content; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; + +import pcgen.base.util.HashMapToList; +import pcgen.cdom.base.CDOMList; import pcgen.cdom.base.CDOMReference; import pcgen.cdom.base.ConcretePrereqObject; +import pcgen.cdom.list.ClassSpellList; +import pcgen.core.Globals; +import pcgen.core.analysis.SpellLevel; import pcgen.core.spell.Spell; /** @@ -49,7 +58,8 @@ * * @param sr * The CDOMReference containing the spells to be part of this - * KnownSpellIdentifier + * KnownSpellIdentifier. May be null if + * this KnownSpellIdentifier is not limited by Spell key. * @param levelLimit * The spell level of this KnownSpellIdentifier. May be null if * this KnownSpellIdentifier is not limited by level. @@ -58,9 +68,10 @@ */ public KnownSpellIdentifier(CDOMReference<Spell> sr, Integer levelLimit) { - if (sr == null) + if (sr == null && levelLimit == null) { - throw new IllegalArgumentException("Spell Reference cannot be null"); + throw new IllegalArgumentException( + "Known Spell Identifier cannot have null spell reference and level limit"); } ref = sr; spellLevel = levelLimit; @@ -84,8 +95,8 @@ */ public boolean matchesFilter(Spell s, int testSpellLevel) { - return ref.contains(s) - && (spellLevel == null || testSpellLevel == spellLevel); + return (ref == null || ref.contains(s)) + && (spellLevel == null || testSpellLevel == spellLevel); } /** @@ -111,6 +122,32 @@ return spellLevel; } + public Collection<Spell> getContainedSpells(List<ClassSpellList> list) + { + if (ref == null) + { + return Globals.getSpellsIn(spellLevel, list); + } + List<Spell> spellList = new ArrayList<Spell>(); + for (Spell sp : ref.getContainedObjects()) + { + HashMapToList<CDOMList<Spell>, Integer> hml = + SpellLevel.getMasterLevelInfo(null, sp); + for (CDOMList<Spell> cdomList : hml.getKeySet()) + { + if (list.contains(cdomList)) + { + if (spellLevel == null + || hml.getListFor(cdomList).contains(spellLevel)) + { + spellList.add(sp); + } + } + } + } + return spellList; + } + /** * Returns the consistent-with-equals hashCode for this KnownSpellIdentifier * @@ -146,6 +183,10 @@ { return other.spellLevel == null && ref.equals(other.ref); } + if (ref == null) + { + return other.ref == null && spellLevel.equals(other.spellLevel); + } return spellLevel.equals(other.spellLevel) && ref.equals(other.ref); } Modified: Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillLanguage.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillLanguage.java 2008-12-07 04:03:52 UTC (rev 8591) +++ Trunk/pcgen/code/src/java/pcgen/core/analysis/SkillLanguage.java 2008-12-07 04:12:19 UTC (rev 8592) @@ -146,7 +146,7 @@ * @param available The list of languages that can be selected from * @param excludedLangs The list of languages that cannot be selected. */ - private static void buildLanguageListsForSkill(PlayerCharacter aPC, + public static void buildLanguageListsForSkill(PlayerCharacter aPC, Skill languageSkill, List<Language> selected, List<Language> available, List<Language> excludedLangs) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jde...@us...> - 2008-12-22 01:25:39
|
Revision: 8645 http://pcgen.svn.sourceforge.net/pcgen/?rev=8645&view=rev Author: jdempsey Date: 2008-12-22 01:25:37 +0000 (Mon, 22 Dec 2008) Log Message: ----------- Add types to loops and remove unnecessary toString on String Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java Trunk/pcgen/code/src/java/pcgen/core/levelability/LevelAbility.java Trunk/pcgen/code/src/java/pcgen/gui/InfoSkillsSorters.java Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java Modified: Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java 2008-12-22 01:23:32 UTC (rev 8644) +++ Trunk/pcgen/code/src/java/pcgen/base/lang/StringUtil.java 2008-12-22 01:25:37 UTC (rev 8645) @@ -122,14 +122,14 @@ boolean needjoin = false; - for (Object obj : strings) + for (String obj : strings) { if (needjoin) { result.append(separator); } needjoin = true; - result.append(obj.toString()); + result.append(obj); } return result.toString(); Modified: Trunk/pcgen/code/src/java/pcgen/core/levelability/LevelAbility.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/levelability/LevelAbility.java 2008-12-22 01:23:32 UTC (rev 8644) +++ Trunk/pcgen/code/src/java/pcgen/core/levelability/LevelAbility.java 2008-12-22 01:25:37 UTC (rev 8645) @@ -333,7 +333,7 @@ * @param selectedList * @param aPC */ - private void processDomain(final List selectedList, final PlayerCharacter aPC) + private void processDomain(final List<String> selectedList, final PlayerCharacter aPC) { int aLevel; @@ -369,7 +369,7 @@ dnum = 1; } - final Iterator i = selectedList.iterator(); + final Iterator<String> i = selectedList.iterator(); while ((dnum > 0) && i.hasNext()) { @@ -401,7 +401,7 @@ * * @param selectedList treats the first entry of the list as a Type to add */ - private void processType(final List selectedList) + private void processType(final List<String> selectedList) { if (selectedList.size() > 0) { Modified: Trunk/pcgen/code/src/java/pcgen/gui/InfoSkillsSorters.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/InfoSkillsSorters.java 2008-12-22 01:23:32 UTC (rev 8644) +++ Trunk/pcgen/code/src/java/pcgen/gui/InfoSkillsSorters.java 2008-12-22 01:25:37 UTC (rev 8645) @@ -317,7 +317,7 @@ public boolean nodeGoHere(PObjectNode node, Skill skill) { String skillType; - for (Iterator it = skill.getSubtypeIterator(); it.hasNext();) + for (Iterator<Type> it = skill.getSubtypeIterator(); it.hasNext();) { skillType = it.next().toString(); if (!Globals.isSkillTypeHidden(skillType)) @@ -388,7 +388,7 @@ public boolean nodeGoHere(PObjectNode node, Skill skill) { String skillType; - for (Iterator it = skill.getSubtypeIterator(); it.hasNext();) + for (Iterator<Type> it = skill.getSubtypeIterator(); it.hasNext();) { skillType = it.next().toString(); if (!Globals.isSkillTypeHidden(skillType)) Modified: Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java 2008-12-22 01:23:32 UTC (rev 8644) +++ Trunk/pcgen/code/src/java/pcgen/gui/tabs/InfoGear.java 2008-12-22 01:25:37 UTC (rev 8645) @@ -2145,10 +2145,10 @@ for (int i = 0; i < aList.size(); i++) { cc[i] = new PObjectNode(); - cc[i].setItem(aList.get(i).toString()); + cc[i].setItem(aList.get(i)); cc[i].setParent((PObjectNode) typeSubtypeRoot); dc[i] = new PObjectNode(); - dc[i].setItem(aList.get(i).toString()); + dc[i].setItem(aList.get(i)); dc[i].setParent((PObjectNode) typeRoot); } @@ -2204,7 +2204,7 @@ for (int i = 0; i < bList.size(); i++) { ec[i] = new PObjectNode(); - ec[i].setItem(bList.get(i).toString()); + ec[i].setItem(bList.get(i)); ec[i].setParent((PObjectNode) allTypeRoot); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-23 23:07:44
|
Revision: 8662 http://pcgen.svn.sourceforge.net/pcgen/?rev=8662&view=rev Author: thpr Date: 2008-12-23 22:10:44 +0000 (Tue, 23 Dec 2008) Log Message: ----------- fix 8659 (other files :) ) Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java Modified: Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java 2008-12-23 22:10:07 UTC (rev 8661) +++ Trunk/pcgen/code/src/java/pcgen/gui/editor/SourceBasePanel.java 2008-12-23 22:10:44 UTC (rev 8662) @@ -137,7 +137,7 @@ theCampaign.put(StringKey.SOURCE_SHORT, pubNameShort.getText().trim()); theCampaign.put(StringKey.SOURCE_WEB, pubNameWeb.getText().trim()); theCampaign.put(ObjectKey.IS_OGL, isOGL.getSelectedObjects() != null); - theCampaign.setIsD20(isD20.getSelectedObjects() != null); + theCampaign.put(ObjectKey.IS_D20, isD20.getSelectedObjects() != null); theCampaign.put(ObjectKey.SHOW_IN_MENU, showInMenu.getSelectedObjects() != null); theCampaign.put(ObjectKey.IS_LICENSED, isLicensed.getSelectedObjects() != null); theCampaign.put(StringKey.INFO_TEXT, infoText.getText().trim()); @@ -204,7 +204,7 @@ pubNameShort.setCaretPosition(0); pubNameWeb.setCaretPosition(0); isOGL.setSelected(theCampaign.getSafe(ObjectKey.IS_OGL)); - isD20.setSelected(theCampaign.isD20()); + isD20.setSelected(theCampaign.getSafe(ObjectKey.IS_D20)); isLicensed.setSelected(theCampaign.getSafe(ObjectKey.IS_LICENSED)); showInMenu.setSelected(theCampaign.getSafe(ObjectKey.SHOW_IN_MENU)); infoText.setText(theCampaign.getSafe(StringKey.INFO_TEXT)); Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2008-12-23 22:10:07 UTC (rev 8661) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2008-12-23 22:10:44 UTC (rev 8662) @@ -1292,7 +1292,7 @@ // Update whether licenses need shown showOGL |= campaign.getSafe(ObjectKey.IS_OGL); - showD20 |= campaign.isD20(); + showD20 |= campaign.getSafe(ObjectKey.IS_D20); showLicensed |= campaign.getSafe(ObjectKey.IS_LICENSED); if (campaign.getSafe(ObjectKey.IS_LICENSED)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2008-12-24 02:22:02
|
Revision: 8671 http://pcgen.svn.sourceforge.net/pcgen/?rev=8671&view=rev Author: thpr Date: 2008-12-24 01:48:12 +0000 (Wed, 24 Dec 2008) Log Message: ----------- [ 2391299 ] Unconstructed Reference with INCLUDE Issue#: 2391299 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2008-12-24 01:47:43 UTC (rev 8670) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2008-12-24 01:48:12 UTC (rev 8671) @@ -101,7 +101,7 @@ * also stores the reference so that it can be appropriately resolved when * resolveReferences() is called. */ - private final Map<String, SRT> referenced = new TreeMap<String, SRT>( + private final Map<String, WeakReference<SRT>> referenced = new TreeMap<String, WeakReference<SRT>>( String.CASE_INSENSITIVE_ORDER); /** @@ -287,28 +287,32 @@ public void resolveReferences() { List<String> throwaway = new ArrayList<String>(); - for (Entry<String, SRT> me1 : referenced.entrySet()) + for (Entry<String, WeakReference<SRT>> me1 : referenced.entrySet()) { - T activeObj = active.get(me1.getKey()); - if (activeObj == null) + SRT value = me1.getValue().get(); + if (value != null) { - String reduced = AbilityUtilities.getUndecoratedName(me1 - .getKey(), throwaway); - activeObj = active.get(reduced); + T activeObj = active.get(me1.getKey()); if (activeObj == null) { - Logging.errorPrint("Unable to Resolve: " + refClass + " " - + me1.getKey()); + String reduced = AbilityUtilities.getUndecoratedName(me1 + .getKey(), throwaway); + activeObj = active.get(reduced); + if (activeObj == null) + { + Logging.errorPrint("Unable to Resolve: " + refClass + " " + + me1.getKey()); + } + else + { + value.addResolution(activeObj); + } } else { - me1.getValue().addResolution(activeObj); + value.addResolution(activeObj); } } - else - { - me1.getValue().addResolution(activeObj); - } } for (T obj : getAllObjects()) { @@ -669,12 +673,17 @@ } } - SRT ref = referenced.get(val); - if (ref == null) + WeakReference<SRT> wr = referenced.get(val); + if (wr != null) { - ref = getLocalReference(val); - referenced.put(val, ref); + SRT ref = wr.get(); + if (ref != null) + { + return ref; + } } + SRT ref = getLocalReference(val); + referenced.put(val, new WeakReference<SRT>(ref)); return ref; } @@ -792,21 +801,31 @@ } } List<String> throwaway = new ArrayList<String>(); - for (String s : referenced.keySet()) + for (Iterator<Entry<String, WeakReference<SRT>>> it = referenced.entrySet().iterator(); it.hasNext();) { - if (!active.containsKey(s) && !deferred.contains(s)) + Entry<String, WeakReference<SRT>> me = it.next(); + SRT value = me.getValue().get(); + if (value == null) { - String undec = AbilityUtilities - .getUndecoratedName(s, throwaway); - if (!active.containsKey(undec) && !deferred.contains(undec)) + it.remove(); + } + else + { + String s = me.getKey(); + if (!active.containsKey(s) && !deferred.contains(s)) { - if (s.charAt(0) != '*') + String undec = AbilityUtilities + .getUndecoratedName(s, throwaway); + if (!active.containsKey(undec) && !deferred.contains(undec)) { - Logging.errorPrint("Unconstructed Reference: " - + getReferenceDescription() + " " + s); - returnGood = false; + if (s.charAt(0) != '*') + { + Logging.errorPrint("Unconstructed Reference: " + + getReferenceDescription() + " " + s); + returnGood = false; + } + constructObject(s); } - constructObject(s); } } } @@ -906,7 +925,16 @@ protected Collection<SRT> getReferenced() { - return referenced.values(); + List<SRT> list = new ArrayList<SRT>(); + for (WeakReference<SRT> wr : referenced.values()) + { + SRT ref = wr.get(); + if (ref != null) + { + list.add(ref); + } + } + return list; } /** Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2008-12-24 01:47:43 UTC (rev 8670) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2008-12-24 01:48:12 UTC (rev 8671) @@ -540,6 +540,14 @@ classLoader.loadSubLines(context); + /* + * This is technically bad behavior, but we at least want to provide + * the hint here since we are using WeakReferences as a container + * for references to ensure those that are not used are not + * resolved. + */ + System.gc(); + context.resolveDeferredTokens(); context.ref.buildDeferredObjects(); context.ref.buildDerivedObjects(); Modified: Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java 2008-12-24 01:47:43 UTC (rev 8670) +++ Trunk/pcgen/code/src/java/pcgen/rules/context/AbstractReferenceContext.java 2008-12-24 01:48:12 UTC (rev 8671) @@ -249,6 +249,12 @@ public <T extends CDOMObject> boolean forget(T obj) { + OneToOneMap<CDOMObject, String> map = abbMap.get(obj.getClass()); + if (map != null) + { + map.remove(obj); + } + if (CategorizedCDOMObject.class.isAssignableFrom(obj.getClass())) { Class cl = obj.getClass(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2009-01-02 18:41:54
|
Revision: 8831 http://pcgen.svn.sourceforge.net/pcgen/?rev=8831&view=rev Author: thpr Date: 2009-01-02 18:41:48 +0000 (Fri, 02 Jan 2009) Log Message: ----------- [ 2062577 ] Need method to track references Issue#: 2062577 Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java Trunk/pcgen/code/src/java/pcgen/core/GameMode.java Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties Added Paths: ----------- Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedEvent.java Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedListener.java Trunk/pcgen/code/src/java/pcgen/rules/context/TrackingReferenceContext.java Modified: Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2009-01-02 17:47:19 UTC (rev 8830) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -27,6 +27,8 @@ import java.util.TreeMap; import java.util.Map.Entry; +import javax.swing.event.EventListenerList; + import pcgen.base.lang.CaseInsensitiveString; import pcgen.base.lang.UnreachableError; import pcgen.base.util.FixedStringList; @@ -143,6 +145,12 @@ private final List<WeakReference<T>> manufactured = new ArrayList<WeakReference<T>>(); /** + * The EventListenerList which contains the listeners to this + * AbstractReferenceManufacturer. + */ + private final transient EventListenerList listenerList = new EventListenerList(); + + /** * Constructs a new AbstractReferenceManufacturer for the given Class. * * @param cl @@ -822,6 +830,7 @@ { Logging.errorPrint("Unconstructed Reference: " + getReferenceDescription() + " " + s); + fireUnconstuctedEvent(value); returnGood = false; } constructObject(s); @@ -1009,4 +1018,44 @@ } return obj; } + + public void addUnconstructedListener(UnconstructedListener listener) + { + listenerList.add(UnconstructedListener.class, listener); + } + + public synchronized UnconstructedListener[] getUnconstructedListeners() + { + return listenerList.getListeners(UnconstructedListener.class); + } + + public void removeUnconstructedListener(UnconstructedListener listener) + { + listenerList.remove(UnconstructedListener.class, listener); + } + + private void fireUnconstuctedEvent(CDOMSingleRef<?> ref) + { + Object[] listeners = listenerList.getListenerList(); + /* + * This list is decremented from the end of the list to the beginning in + * order to maintain consistent operation with how Java AWT and Swing + * listeners are notified of Events (they are in reverse order to how + * they were added to the Event-owning object). + */ + UnconstructedEvent uEvent = null; + for (int i = listeners.length - 2; i >= 0; i -= 2) + { + if (listeners[i] == UnconstructedListener.class) + { + // Lazily create event + if (uEvent == null) + { + uEvent = new UnconstructedEvent(this, ref); // NOPMD + } + ((UnconstructedListener) listeners[i + 1]) + .unconstructedReferenceFound(uEvent); + } + } + } } Modified: Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java 2009-01-02 17:47:19 UTC (rev 8830) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/ReferenceManufacturer.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -319,4 +319,11 @@ * identifier. */ public T constructNowIfNecessary(String name); + + public void addUnconstructedListener(UnconstructedListener listener); + + public UnconstructedListener[] getUnconstructedListeners(); + + public void removeUnconstructedListener(UnconstructedListener listener); + } Added: Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedEvent.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedEvent.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedEvent.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -0,0 +1,42 @@ +/* + * Copyright 2009 (C) Tom Parker <th...@us...> + * + * This library is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 2.1 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package pcgen.cdom.reference; + +import java.util.EventObject; + +public class UnconstructedEvent extends EventObject +{ + private final CDOMSingleRef<?> reference; + + public UnconstructedEvent(Object arg0, CDOMSingleRef<?> ref) + { + super(arg0); + if (ref == null) + { + throw new IllegalArgumentException( + "UnconstructedEvent cannot be null"); + } + reference = ref; + } + + public CDOMSingleRef<?> getReference() + { + return reference; + } + +} Added: Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedListener.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedListener.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/UnconstructedListener.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -0,0 +1,25 @@ +/* + * Copyright 2009 (C) Tom Parker <th...@us...> + * + * This library is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 2.1 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package pcgen.cdom.reference; + +import java.util.EventListener; + +public interface UnconstructedListener extends EventListener +{ + public void unconstructedReferenceFound(UnconstructedEvent e); +} Modified: Trunk/pcgen/code/src/java/pcgen/core/GameMode.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2009-01-02 17:47:19 UTC (rev 8830) +++ Trunk/pcgen/code/src/java/pcgen/core/GameMode.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -49,6 +49,7 @@ import pcgen.rules.context.LoadContext; import pcgen.rules.context.ReferenceContext; import pcgen.rules.context.RuntimeLoadContext; +import pcgen.rules.context.TrackingReferenceContext; import pcgen.util.ComparableComparator; import pcgen.util.Logging; import pcgen.util.PropertyFactory; @@ -3312,7 +3313,7 @@ } private ConsolidatedListCommitStrategy masterLCS = new ConsolidatedListCommitStrategy(); - private LoadContext context = new RuntimeLoadContext(new ReferenceContext(), masterLCS); + private LoadContext context = new RuntimeLoadContext(getRefContext(), masterLCS); private GameReferenceContext gameRefContext = new GameReferenceContext(); private LoadContext modeContext = new RuntimeLoadContext(gameRefContext, masterLCS); private String defaultSourceTitle; @@ -3320,7 +3321,7 @@ public void clearLoadContext() { masterLCS = new ConsolidatedListCommitStrategy(); - ReferenceContext referenceContext = new ReferenceContext(); + ReferenceContext referenceContext = getRefContext(); for (TransparentReferenceManufacturer<? extends CDOMObject> rm : gameRefContext .getAllManufacturers()) { @@ -3329,6 +3330,18 @@ context = new RuntimeLoadContext(referenceContext, masterLCS); } + private ReferenceContext getRefContext() + { + if (SettingsHandler.inputUnconstructedMessages()) + { + return new TrackingReferenceContext(); + } + else + { + return new ReferenceContext(); + } + } + private <T extends CDOMObject> void resolveReferenceManufacturer( ReferenceContext rc, TransparentReferenceManufacturer<T> rm) { Modified: Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2009-01-02 17:47:19 UTC (rev 8830) +++ Trunk/pcgen/code/src/java/pcgen/core/SettingsHandler.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -1254,6 +1254,7 @@ setShowImagePreview(getPCGenOption("showImagePreview", true)); //$NON-NLS-1$ setShowSingleBoxPerBundle(getPCGenOption("showSingleBoxPerBundle", false)); //$NON-NLS-1$ setOutputDeprecationMessages(getPCGenOption("outputDeprecationMessages", true)); + setInputUnconstructedMessages(getPCGenOption("inputUnconstructedMessages", false)); setShowStatDialogAtLevelUp(getPCGenOption("showStatDialogAtLevelUp", true)); //$NON-NLS-1$ setShowTipOfTheDay(getPCGenOption("showTipOfTheDay", true)); //$NON-NLS-1$ setShowToolBar(getPCGenOption("showToolBar", true)); //$NON-NLS-1$ @@ -1658,6 +1659,7 @@ setPCGenOption("weaponProfPrintout", SettingsHandler.getWeaponProfPrintout()); //$NON-NLS-1$ setPCGenOption("debugFeats", debugFeats); //$NON-NLS-1$ setPCGenOption("outputDeprecationMessages", outputDeprecationMessages()); //$NON-NLS-1$ + setPCGenOption("inputUnconstructedMessages", inputUnconstructedMessages()); //$NON-NLS-1$ setPCGenOption("hiddenSources", getHiddenSources()); //$NON-NLS-1$ setPCGenOption("quickLaunchSources", getQuickLaunchSources()); //$NON-NLS-1$ setPCGenOption("useAdvancedSourceSelect", useAdvancedSourceSelect()); //$NON-NLS-1$ @@ -3518,6 +3520,18 @@ outputDeprecationMessages = b; } + private static boolean inputUnconstructedMessages = true; + + public static boolean inputUnconstructedMessages() + { + return inputUnconstructedMessages; + } + + public static void setInputUnconstructedMessages(boolean b) + { + inputUnconstructedMessages = b; + } + /** * @return the hiddenSources */ Modified: Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java 2009-01-02 17:47:19 UTC (rev 8830) +++ Trunk/pcgen/code/src/java/pcgen/gui/PreferencesDialog.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -212,8 +212,10 @@ PropertyFactory.getString("in_Prefs_output"); private static String in_input = PropertyFactory.getString("in_Prefs_input"); - private static String in_printDeprecation = - PropertyFactory.getString("in_Prefs_printDeprecation"); + private static String in_printDeprecation = PropertyFactory + .getString("in_Prefs_printDeprecation"); + private static String in_printUnconstructed = PropertyFactory + .getString("in_Prefs_printUnconstructed"); private static String in_outputSheetEqSet = PropertyFactory.getString("in_Prefs_templateEqSet"); private static String in_pcgen = @@ -399,6 +401,7 @@ // Input private JCheckBox printDeprecationMessages = new JCheckBox(); + private JCheckBox printUnconstructedDetail = new JCheckBox(); // Location private JTextField browserPath; @@ -858,7 +861,9 @@ // Input SettingsHandler.setOutputDeprecationMessages(printDeprecationMessages - .isSelected()); + .isSelected()); + SettingsHandler.setInputUnconstructedMessages(printUnconstructedDetail + .isSelected()); // Location -- added 10 April 2000 by sage_sam SettingsHandler.setBrowserPath(browserPath.getText()); @@ -1210,7 +1215,9 @@ // Input printDeprecationMessages.setSelected(SettingsHandler - .outputDeprecationMessages()); + .outputDeprecationMessages()); + printUnconstructedDetail.setSelected(SettingsHandler + .inputUnconstructedMessages()); // Output paperType.setSelectedIndex(Globals.getSelectedPaper()); @@ -1910,6 +1917,13 @@ gridbag.setConstraints(printDeprecationMessages, c); inputPanel.add(printDeprecationMessages); + Utility.buildConstraints(c, 0, 28, 3, 1, 0, 0); + printUnconstructedDetail = + new JCheckBox(in_printUnconstructed, SettingsHandler + .inputUnconstructedMessages()); + gridbag.setConstraints(printUnconstructedDetail, c); + inputPanel.add(printUnconstructedDetail); + return inputPanel; } Modified: Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2009-01-02 17:47:19 UTC (rev 8830) +++ Trunk/pcgen/code/src/java/pcgen/gui/prop/LanguageBundle.properties 2009-01-02 18:41:48 UTC (rev 8831) @@ -3121,6 +3121,8 @@ in_Prefs_printDeprecation=Show Format Deprecation Messages +in_Prefs_printUnconstructed=Show Detail for Unconstructed References + in_Prefs_output=Output in_Prefs_outputSheetHTMLDefault=Default HTML Output Sheet Added: Trunk/pcgen/code/src/java/pcgen/rules/context/TrackingReferenceContext.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/context/TrackingReferenceContext.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/rules/context/TrackingReferenceContext.java 2009-01-02 18:41:48 UTC (rev 8831) @@ -0,0 +1,131 @@ +/* + * Copyright 2009 (C) Tom Parker <th...@us...> + * + * This library is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 2.1 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package pcgen.rules.context; + +import java.net.URI; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.TreeSet; + +import pcgen.base.util.DoubleKeyMapToList; +import pcgen.cdom.base.CDOMObject; +import pcgen.cdom.base.CategorizedCDOMObject; +import pcgen.cdom.base.Category; +import pcgen.cdom.reference.CDOMSingleRef; +import pcgen.cdom.reference.ReferenceManufacturer; +import pcgen.cdom.reference.UnconstructedEvent; +import pcgen.cdom.reference.UnconstructedListener; +import pcgen.util.Logging; + +public class TrackingReferenceContext extends ReferenceContext implements + UnconstructedListener +{ + + private DoubleKeyMapToList<CDOMSingleRef<?>, URI, String> track = new DoubleKeyMapToList<CDOMSingleRef<?>, URI, String>(); + + @Override + public <T extends CDOMObject & CategorizedCDOMObject<T>> CDOMSingleRef<T> getCDOMReference( + Class<T> c, Category<T> cat, String val) + { + CDOMSingleRef<T> ref = super.getCDOMReference(c, cat, val); + StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace(); + String source = null; + for (int i = 0; i < stackTrace.length; i++) + { + String className = stackTrace[i].getClassName(); + if (className.startsWith("plugin.lsttokens")) + { + source = className; + break; + } + } + track.addToListFor(ref, getSourceURI(), source); + return ref; + } + + @Override + public <T extends CDOMObject> CDOMSingleRef<T> getCDOMReference(Class<T> c, + String val) + { + CDOMSingleRef<T> ref = super.getCDOMReference(c, val); + StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace(); + String source = null; + for (int i = 0; i < stackTrace.length; i++) + { + String className = stackTrace[i].getClassName(); + if (className.startsWith("plugin.lsttokens")) + { + source = className; + break; + } + } + track.addToListFor(ref, getSourceURI(), source); + return ref; + } + + private Set<ReferenceManufacturer<?, ?>> listening = new HashSet<ReferenceManufacturer<?, ?>>(); + + @Override + public <T extends CDOMObject & CategorizedCDOMObject<T>> ReferenceManufacturer<T, ? extends CDOMSingleRef<T>> getManufacturer( + Class<T> cl, Category<T> cat) + { + ReferenceManufacturer<T, ? extends CDOMSingleRef<T>> mfg = super + .getManufacturer(cl, cat); + if (!listening.contains(mfg)) + { + mfg.addUnconstructedListener(this); + listening.add(mfg); + } + return mfg; + } + + @Override + public <T extends CDOMObject> ReferenceManufacturer<T, ? extends CDOMSingleRef<T>> getManufacturer( + Class<T> cl) + { + ReferenceManufacturer<T, ? extends CDOMSingleRef<T>> mfg = super + .getManufacturer(cl); + if (!listening.contains(mfg)) + { + mfg.addUnconstructedListener(this); + listening.add(mfg); + } + return mfg; + } + + public void unconstructedReferenceFound(UnconstructedEvent e) + { + CDOMSingleRef<?> ref = e.getReference(); + Set<URI> uris = track.getSecondaryKeySet(ref); + if (uris == null) + { + // Shouldn't happen, but this is reporting, not critical, so be safe + return; + } + for (URI uri : uris) + { + List<String> tokens = track.getListFor(ref, uri); + Set<String> tokenNames = new TreeSet<String>(); + tokenNames.addAll(tokens); + Logging.errorPrint(" Was used in " + uri + " in tokens: " + + tokenNames); + } + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <th...@us...> - 2009-01-02 21:05:52
|
Revision: 8834 http://pcgen.svn.sourceforge.net/pcgen/?rev=8834&view=rev Author: thpr Date: 2009-01-02 21:05:47 +0000 (Fri, 02 Jan 2009) Log Message: ----------- This checkin does two things: (1) Fixes stateful information issues (relates to SOURCEDATE problems) (2) Updates load context to be more flexible to editor load context Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java Trunk/pcgen/code/src/java/pcgen/core/CustomData.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/AbilityLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/CampaignOutput.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/CompanionModLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/FeatLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/GenericLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/KitLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/LanguageLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstObjectFileLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/PCClassLoader.java Trunk/pcgen/code/src/java/pcgen/persistence/lst/SpellLoader.java Trunk/pcgen/code/src/java/pcgen/rules/context/EditorLoadContext.java Trunk/pcgen/code/src/java/pcgen/rules/context/LoadContext.java Trunk/pcgen/code/src/java/pcgen/rules/context/RuntimeLoadContext.java Added Paths: ----------- Trunk/pcgen/code/src/java/pcgen/base/util/KeyMap.java Added: Trunk/pcgen/code/src/java/pcgen/base/util/KeyMap.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/util/KeyMap.java (rev 0) +++ Trunk/pcgen/code/src/java/pcgen/base/util/KeyMap.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -0,0 +1,248 @@ +/* + * Copyright 2008 (C) Tom Parker <th...@us...> + * + * This library is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 2.1 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package pcgen.base.util; + +import java.util.Collection; +import java.util.HashSet; +import java.util.IdentityHashMap; +import java.util.Map; +import java.util.Set; +import java.util.TreeMap; + +/** + * Creates a Map which is intended to only possess a given Key or Value one + * time. Each Key references a single Value and each Value may only be + * referenced by a single Key. In this way, any Value can be determined uniquely + * for any Key and any Key can be determined uniquely for any Value. + * + * @param <V> + * The Class of the Value for this KeyMap + */ +public class KeyMap<V> +{ + + /** + * The underlying map used to store references from the Keys to the Values. + */ + private final Map<String, V> forwardMap; + + /** + * The underlying map used to store references from the Values back to the + * Keys. + */ + private final Map<V, String> reverseMap; + + /** + * Creates a new, empty DoubleKeyMap using HashMap as the underlying Map + * class for both the primary and secondary underlying Map + */ + public KeyMap() + { + forwardMap = new TreeMap<String, V>(String.CASE_INSENSITIVE_ORDER); + reverseMap = new IdentityHashMap<V, String>(); + } + + /** + * Clears the KeyMap (removes all keys and values) + */ + public void clear() + { + forwardMap.clear(); + reverseMap.clear(); + } + + /** + * Returns true if the KeyMap contains the given Key. + * + * @param key + * the Key to be tested to determine if it is present in the + * KeyMap + * @return true if the KeyMap contains the given Key; false otherwise + */ + public boolean containsKey(Object key) + { + return forwardMap.containsKey(key); + } + + /** + * Returns true if the KeyMap contains the given Value. + * + * @param value + * the Value to be tested to determine if it is present in the + * KeyMap + * @return true if the KeyMap contains the given Value; false otherwise + */ + public boolean containsValue(Object value) + { + return reverseMap.containsKey(value); + } + + /** + * Returns the Value in the KeyMap for the given Key. + * + * @param key + * the Key for which the Value should be returned + * @return V the Value stored in the KeyMap for the given Key; null if the + * given Key is not contained within the KeyMap + */ + public V get(Object key) + { + return forwardMap.get(key); + } + + /** + * Returns the Key in the KeyMap for the given Value. + * + * @param key + * the Value for which the Key should be returned + * @return V the Key in the KeyMap for the given Value; null if the given + * Value is not contained within the KeyMap + */ + public String getKeyFor(Object key) + { + return reverseMap.get(key); + } + + /** + * Returns true if the KeyMap is empty; false otherwise + * + * @return true if the KeyMap is empty; false otherwise + */ + public boolean isEmpty() + { + return forwardMap.isEmpty(); + } + + /** + * Returns a Set of the keys for this KeyMap + * + * Note: This Set is reference-semantic. The ownership of the Set is + * transferred to the calling Object; therefore, changes to the returned Set + * will NOT impact the KeyMap. + * + * @return A Set of the keys for this KeyMap + */ + public Set<String> keySet() + { + return new HashSet<String>(forwardMap.keySet()); + } + + /** + * Put the given value into this KeyMap for the given key. + * + * If this KeyMap already contained a mapping for the given key, the + * previous value is returned. Otherwise, null is returned. + * + * If this KeyMap already contained a key mapping to the given value, the + * previous mapping is destroyed without warning. + * + * @param key + * The key for storing the given value + * @param value + * The value to be stored for the given key + * @return Object The previous value stored for the given key; null if the + * given key did not previously have a mapping + */ + public V put(String key, V value) + { + V old = forwardMap.put(key, value); + reverseMap.remove(old); + reverseMap.put(value, key); + return old; + } + + /** + * Copies the key/value combinations from the given Map into this KeyMap. + * + * If this KeyMap already contained a mapping for the any of the key + * combinations in the given KeyMap, the previous value is overwritten. + * + * If the given Map contains a Key or Value more than once, then the *last* + * instance of that Key or Value in the Map (as determined by the iterator + * of the given Map) will be stored in the KeyMap. + * + * @param m + * The Map for which the key/value combinations should be placed + * into this KeyMap + * @throws NullPointerException + * if the given Map is null + */ + public void putAll(Map<? extends String, ? extends V> m) + { + for (Map.Entry<? extends String, ? extends V> me : m.entrySet()) + { + put(me.getKey(), me.getValue()); + } + } + + /** + * Removes the value from KeyMap for the given key. Returns the value that + * was removed from the KeyMap. If this KeyMap did not have a mapping for + * the given key, null is returned. + * + * @param key + * The key used to identify which object to remove from thsi + * KeyMap + * @return Object The value previously mapped to the given keys + */ + public V remove(Object key) + { + if (key == null) + { + return null; + } + V value = forwardMap.remove(key); + reverseMap.remove(value); + return value; + } + + /** + * Returns the number of entries (key-value pairs) in the KeyMap. + * + * @return the number of entries (key-value pairs) in the KeyMap + */ + public int size() + { + return forwardMap.size(); + } + + /** + * Returns a Collection of the values for this KeyMap. + * + * Note: This Collection is reference-semantic. The ownership of the + * Collection is transferred to the calling Object; therefore, changes to + * the returned Collection will NOT impact the KeyMap. + * + * @return A Collection of the values for this KeyMap + */ + public Collection<V> values() + { + return new HashSet<V>(reverseMap.keySet()); + } + + /** + * Returns a String representation of this KeyMap, primarily for purposes of + * debugging. It is strongly advised that no dependency on this method be + * created, as the return value may be changed without warning. + */ + @Override + public String toString() + { + return "KeyMap: " + forwardMap.toString(); + } +} Modified: Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/cdom/reference/AbstractReferenceManufacturer.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -33,6 +33,7 @@ import pcgen.base.lang.UnreachableError; import pcgen.base.util.FixedStringList; import pcgen.base.util.HashMapToInstanceList; +import pcgen.base.util.KeyMap; import pcgen.cdom.base.CDOMObject; import pcgen.cdom.enumeration.StringKey; import pcgen.core.AbilityUtilities; @@ -111,8 +112,7 @@ * are objects that have been constructed or imported into the * AbstractReferenceManufacturer. */ - private final Map<String, T> active = new TreeMap<String, T>( - String.CASE_INSENSITIVE_ORDER); + private final KeyMap<T> active = new KeyMap<T>(); /** * Stores the duplicate objects for identifiers in this @@ -524,19 +524,10 @@ throw new IllegalArgumentException( "Object to be forgotten does not match Class of this AbstractReferenceManufacturer"); } - /* - * TODO This is a bug - the key name is not necessarily loaded into the - * object, it may have been consumed by the object context... :P - */ - String key = obj.getKeyName(); - CaseInsensitiveString ocik = new CaseInsensitiveString(key); - CDOMObject act = active.get(key); - if (act == null) + String key = active.getKeyFor(obj); + if (key != null) { - throw new UnreachableError("Did not find " + obj + " under " + key); - } - if (act == obj) - { + CaseInsensitiveString ocik = new CaseInsensitiveString(key); List<T> list = duplicates.getListFor(ocik); if (list == null) { @@ -552,6 +543,12 @@ } else { + /* + * TODO This is a bug - the key name is not necessarily loaded into the + * object, it may have been consumed by the object context... :P + */ + CaseInsensitiveString ocik = new CaseInsensitiveString(obj + .getKeyName()); duplicates.removeFromListFor(ocik, obj); } return true; @@ -962,9 +959,9 @@ */ protected void injectConstructed(ReferenceManufacturer<T, ?> arm) { - for (Map.Entry<String, T> me : active.entrySet()) + for (String key : active.keySet()) { - arm.addObject(me.getValue(), me.getKey()); + arm.addObject(active.get(key), key); } for (CaseInsensitiveString cis : duplicates.getKeySet()) { Modified: Trunk/pcgen/code/src/java/pcgen/core/CustomData.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/CustomData.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/core/CustomData.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -634,7 +634,7 @@ { if (c.getSafe(StringKey.DESTINATION).length() > 0) { - CampaignOutput.output(c); + CampaignOutput.output(Globals.getContext(), c); } } } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/AbilityLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/AbilityLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/AbilityLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -77,6 +77,7 @@ anAbility.setSourceURI(source.getURI()); if (isnew) { + context.addStatefulInformation(anAbility); context.ref.importObject(anAbility); } } @@ -116,10 +117,10 @@ } /** - * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(java.lang.String) + * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(LoadContext, java.lang.String) */ @Override - protected Ability getObjectKeyed(String aKey) + protected Ability getObjectKeyed(LoadContext context, String aKey) { if (aKey == null || aKey.length() == 0) { @@ -147,11 +148,12 @@ } /** - * @see pcgen.persistence.lst.LstObjectFileLoader#performForget(pcgen.core.PObject) + * @see pcgen.persistence.lst.LstObjectFileLoader#performForget(LoadContext, pcgen.core.PObject) */ @Override - protected void performForget(Ability objToForget) + protected void performForget(LoadContext context, Ability objToForget) { + super.performForget(context, objToForget); String aCat = objToForget.getCategory(); String aKey = objToForget.getKeyName(); Globals.removeAbilityKeyed(aCat, aKey); @@ -171,7 +173,7 @@ } @Override - protected Ability getMatchingObject(PObject aKey) + protected Ability getMatchingObject(LoadContext context, PObject aKey) { return Globals.getAbilityKeyed(((Ability) aKey).getCategory(), aKey .getKeyName()); Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/CampaignOutput.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/CampaignOutput.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/CampaignOutput.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -33,9 +33,9 @@ import pcgen.cdom.enumeration.ListKey; import pcgen.cdom.enumeration.StringKey; import pcgen.core.Campaign; -import pcgen.core.Globals; import pcgen.core.SettingsHandler; import pcgen.io.FileAccess; +import pcgen.rules.context.LoadContext; import pcgen.util.Logging; /** @@ -57,7 +57,7 @@ /** * @param campaign */ - public static void output(Campaign campaign) + public static void output(LoadContext context, Campaign campaign) { final File outFile = new File(SettingsHandler.getPccFilesLocation() @@ -81,7 +81,7 @@ } } - Collection<String> lines = Globals.getContext().unparse(campaign); + Collection<String> lines = context.unparse(campaign); if (lines != null) { for (String line : lines) Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/CompanionModLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/CompanionModLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/CompanionModLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -57,7 +57,7 @@ } @Override - protected CompanionMod getObjectKeyed(String aKey) { + protected CompanionMod getObjectKeyed(LoadContext context, String aKey) { return null; //This is commented out to avoid problems - see Tracker // - thpr 1/11/07 @@ -120,7 +120,8 @@ } @Override - protected void performForget(CompanionMod objToForget) { + protected void performForget(LoadContext context, CompanionMod objToForget) { + super.performForget(context, objToForget); Globals.removeCompanionMod(objToForget); } } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/FeatLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/FeatLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/FeatLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -66,6 +66,7 @@ String name = tabLoc == -1 ? lstLine : lstLine.substring(0, tabLoc); feat.setName(name); feat.setCDOMCategory(AbilityCategory.FEAT); + context.addStatefulInformation(feat); context.ref.importObject(feat); } else @@ -125,18 +126,18 @@ } /** - * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(java.lang.String) + * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(LoadContext, java.lang.String) */ @Override - protected Ability getObjectKeyed(final String aKey) + protected Ability getObjectKeyed(LoadContext context, final String aKey) { return Globals.getAbilityKeyed(Constants.FEAT_CATEGORY, aKey); } @Override - protected Ability getMatchingObject(PObject aKey) + protected Ability getMatchingObject(LoadContext context, PObject aKey) { - return getObjectKeyed(aKey.getKeyName()); + return getObjectKeyed(context, aKey.getKeyName()); } } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/GenericLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/GenericLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/GenericLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -26,7 +26,6 @@ import java.util.StringTokenizer; import pcgen.base.lang.UnreachableError; -import pcgen.core.Globals; import pcgen.core.PObject; import pcgen.persistence.PersistenceLayerException; import pcgen.persistence.SystemLoader; @@ -117,6 +116,7 @@ po.setSourceURI(source.getURI()); if (isnew) { + context.addStatefulInformation(po); context.ref.importObject(po); } } @@ -159,15 +159,15 @@ /** * Get the object with key aKey + * @param aKey * - * @param aKey * @return PObject - * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(java.lang.String) + * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(LoadContext, java.lang.String) */ @Override - protected T getObjectKeyed(String aKey) + protected T getObjectKeyed(LoadContext context, String aKey) { - return Globals.getContext().ref.silentlyGetConstructedCDOMObject( + return context.ref.silentlyGetConstructedCDOMObject( baseClass, aKey); } } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/KitLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/KitLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/KitLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -24,7 +24,6 @@ import java.util.StringTokenizer; -import pcgen.core.Globals; import pcgen.core.Kit; import pcgen.core.kit.KitAbilities; import pcgen.core.kit.KitAlignment; @@ -104,9 +103,9 @@ } @Override - protected Kit getObjectKeyed(String aKey) + protected Kit getObjectKeyed(LoadContext context, String aKey) { - return Globals.getContext().ref.silentlyGetConstructedCDOMObject( + return context.ref.silentlyGetConstructedCDOMObject( Kit.class, aKey); } @@ -128,7 +127,6 @@ .substring(colonLoc + 1)); target.setSourceCampaign(source.getCampaign()); target.setSourceURI(source.getURI()); - //TODO Does this happen implicitly during construct?? context.addStatefulInformation(target); while (st.hasMoreTokens()) { Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/LanguageLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/LanguageLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/LanguageLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -74,6 +74,7 @@ lang.setSourceURI(source.getURI()); if (isnew) { + context.addStatefulInformation(lang); context.ref.importObject(lang); } } @@ -114,18 +115,18 @@ } /** - * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(java.lang.String) + * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(LoadContext, java.lang.String) */ @Override - protected Language getObjectKeyed(String aKey) + protected Language getObjectKeyed(LoadContext context, String aKey) { - return Globals.getContext().ref.silentlyGetConstructedCDOMObject(Language.class, aKey); + return context.ref.silentlyGetConstructedCDOMObject(Language.class, aKey); } @Override protected void storeObject(LoadContext context, PObject pObj) { - final Language matching = getMatchingObject(pObj); + final Language matching = getMatchingObject(context, pObj); if (matching == null || !pObj.getType().equals(matching.getType())) { @@ -147,7 +148,7 @@ && ((currentObjDate == null) || ((pObjDate .compareTo(currentObjDate) > 0)))) { - performForget(matching); + performForget(context, matching); context.ref.forget(matching); addGlobalObject(pObj); } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstObjectFileLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstObjectFileLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstObjectFileLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -35,7 +35,6 @@ import pcgen.cdom.enumeration.ObjectKey; import pcgen.cdom.enumeration.StringKey; import pcgen.core.Campaign; -import pcgen.core.Globals; import pcgen.core.PObject; import pcgen.core.SettingsHandler; import pcgen.persistence.PersistenceLayerException; @@ -127,7 +126,7 @@ processMods(context); // Finally, forget the .FORGET items - processForgets(); + processForgets(context); } /** @@ -203,9 +202,10 @@ protected void storeObject(LoadContext context, PObject pObj) { - final T currentObj = getMatchingObject(pObj); + final T currentObj = getMatchingObject(context, pObj); - if (currentObj == null || !pObj.equals(currentObj)) + if (!context.consolidate() || currentObj == null + || !pObj.equals(currentObj)) { addGlobalObject(pObj); } @@ -225,8 +225,7 @@ && ((currentObjDate == null) || ((pObjDate .compareTo(currentObjDate) > 0)))) { - performForget(currentObj); - context.ref.forget(currentObj); + performForget(context, currentObj); addGlobalObject(pObj); } } @@ -312,22 +311,24 @@ * This method retrieves a PObject from globals by its key. * This is used to avoid duplicate loads, get objects to forget or * modify, etc. + * @param context TODO * @param aKey String key of PObject to retrieve * @return PObject from Globals */ - protected abstract T getObjectKeyed(String aKey); + protected abstract T getObjectKeyed(LoadContext context, String aKey); /** * This method retrieves a PObject from globals, attempting to match (by key * and category, if necessary), the given object. This is used to avoid * duplicate loads + * @param context TODO + * @param aKey The PObject to retrieve * - * @param aKey The PObject to retrieve * @return PObject from Globals */ - protected T getMatchingObject(PObject aKey) + protected T getMatchingObject(LoadContext context, PObject aKey) { - return getObjectKeyed(aKey.getKeyName()); + return getObjectKeyed(context, aKey.getKeyName()); } /** @@ -486,25 +487,26 @@ /** * This method, when implemented, will perform a single .FORGET * operation. - * + * @param context TODO * @param objToForget containing the object to forget */ - protected void performForget(T objToForget) + protected void performForget(LoadContext context, T objToForget) { - Globals.getContext().ref.forget(objToForget); + context.ref.forget(objToForget); } /** * This method will perform a single .COPY operation. + * @param context TODO + * @param copyName String name of the target object + * @param baseName String name of the object to copy * - * @param baseName String name of the object to copy - * @param copyName String name of the target object * @throws PersistenceLayerException */ - private T performCopy(String baseKey, String copyName) + private T performCopy(LoadContext context, String baseKey, String copyName) throws PersistenceLayerException { - T object = getObjectKeyed(baseKey); + T object = getObjectKeyed(context, baseKey); try { @@ -558,7 +560,7 @@ final int nameEnd = name.indexOf(COPY_SUFFIX); final String baseName = name.substring(0, nameEnd); final String copyName = name.substring(nameEnd + 6); - T copy = performCopy(baseName, copyName); + T copy = performCopy(context, baseName, copyName); context.ref.importObject(copy); if (copy != null) { @@ -595,7 +597,7 @@ } // get the actual object to modify - T object = getObjectKeyed(key); + T object = getObjectKeyed(context, key); if (object == null) { @@ -666,8 +668,9 @@ /** * This method will process the lines containing a .FORGET directive + * @param context TODO */ - private void processForgets() + private void processForgets(LoadContext context) { for (String forgetKey : forgetLineList) @@ -682,10 +685,10 @@ // Commented out so that deprcated method no longer used // performForget(forgetName); - T objToForget = getObjectKeyed(forgetKey); + T objToForget = getObjectKeyed(context, forgetKey); if (objToForget != null) { - performForget(objToForget); + performForget(context, objToForget); } } forgetLineList.clear(); Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/LstSystemLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -441,125 +441,9 @@ // -- sage_sam try { - // The first thing we need to do is load the - // correct statsandchecks.lst file for this gameMode - GameMode gamemode = SettingsHandler.getGame(); - if (gamemode == null) - { - // Autoload campaigns is set but there - // is no current gameMode, so just return - return; - } LoadContext context = Globals.getContext(); - File gameModeDir = new File(SettingsHandler.getPcgenSystemDir(), "gameModes"); - File specificGameModeDir = new File(gameModeDir, gamemode.getFolderName()); - File statsAndChecks = new File(specificGameModeDir, "statsandchecks.lst"); - statCheckLoader.loadLstFile(context, statsAndChecks.toURI()); + loadCampaigns(aSelectedCampaignsList, context); - // Sort the campaigns - sortCampaignsByRank(aSelectedCampaignsList); - - // Read the campaigns - readPccFiles(context, aSelectedCampaignsList, null, gamemode); - - // Add custom campaign files at the start of the lists - addCustomFilesToStartOfList(); - - // Notify our observers of how many files we intend - // to load in total so that they can set up any - // progress meters that they want to. - setChanged(); - notifyObservers(Integer.valueOf(countTotalFilesToLoad())); - - // Load using the new LstFileLoaders - - // load ability categories first as they used to only be at the game mode - abilityCategoryLoader.loadLstFiles(context, abilityCategoryFileList); - validateAbilityCategories(gamemode); - - for (PCAlignment al : gamemode - .getUnmodifiableAlignmentList()) - { - context.ref.registerAbbreviation(al, al.getKeyName()); - } - for (PCStat st : gamemode - .getUnmodifiableStatList()) - { - context.ref.registerAbbreviation(st, st.getAbb()); - } - for (SizeAdjustment sz : gamemode - .getUnmodifiableSizeAdjustmentList()) - { - context.ref.registerAbbreviation(sz, sz.getAbbreviation()); - } - - // load weapon profs first - wProfLoader.loadLstFiles(context, weaponProfFileList); - aProfLoader.loadLstFiles(context, armorProfFileList); - sProfLoader.loadLstFiles(context, shieldProfFileList); - - // load skills before classes to handle class skills - skillLoader.loadLstFiles(context, skillFileList); - - // load before races to handle auto known languages - languageLoader.loadLstFiles(context, languageFileList); - - // load before race or class to handle feats - featLoader.loadLstFiles(context, featFileList); - - // load before race or class to handle abilities - abilityLoader.loadLstFiles(context, abilityFileList); - - raceLoader.loadLstFiles(context, raceFileList); - - //Domain must load before CLASS - thpr 10/29/06 - domainLoader.loadLstFiles(context, domainFileList); - - spellLoader.loadLstFiles(context, spellFileList); - deityLoader.loadLstFiles(context, deityFileList); - - classLoader.loadLstFiles(context, classFileList); - - templateLoader.loadLstFiles(context, templateFileList); - - // loaded before equipment (required) - eqModLoader.loadLstFiles(context, equipmodFileList); - - equipmentLoader.loadLstFiles(context, equipmentFileList); - companionModLoader.loadLstFiles(context, companionmodFileList); - kitLoader.loadLstFiles(context, kitFileList); - - // Load the bio settings files - bioLoader.loadLstFiles(context, bioSetFileList); - - // Check for the default deities - checkRequiredDeities(context); - - // Add default EQ mods - addDefaultEquipmentMods(context); - - classLoader.loadSubLines(context); - - /* - * This is technically bad behavior, but we at least want to provide - * the hint here since we are using WeakReferences as a container - * for references to ensure those that are not used are not - * resolved. - */ - System.gc(); - - context.resolveDeferredTokens(); - context.ref.buildDeferredObjects(); - context.ref.buildDerivedObjects(); - context.ref.validate(); - context.resolveReferences(); - for (Equipment eq : context.ref - .getConstructedCDOMObjects(Equipment.class)) - { - EqModAttachment.finishEquipment(eq); - } - context.buildTypeLists(); - // Load custom items loadCustomItems(); @@ -599,6 +483,128 @@ } } + public void loadCampaigns(final List<Campaign> aSelectedCampaignsList, + LoadContext context) throws PersistenceLayerException + { + // The first thing we need to do is load the + // correct statsandchecks.lst file for this gameMode + GameMode gamemode = SettingsHandler.getGame(); + if (gamemode == null) + { + // Autoload campaigns is set but there + // is no current gameMode, so just return + return; + } + File gameModeDir = new File(SettingsHandler.getPcgenSystemDir(), "gameModes"); + File specificGameModeDir = new File(gameModeDir, gamemode.getFolderName()); + File statsAndChecks = new File(specificGameModeDir, "statsandchecks.lst"); + statCheckLoader.loadLstFile(context, statsAndChecks.toURI()); + + // Sort the campaigns + sortCampaignsByRank(aSelectedCampaignsList); + + // Read the campaigns + readPccFiles(context, aSelectedCampaignsList, null, gamemode); + + // Add custom campaign files at the start of the lists + addCustomFilesToStartOfList(); + + // Notify our observers of how many files we intend + // to load in total so that they can set up any + // progress meters that they want to. + setChanged(); + notifyObservers(Integer.valueOf(countTotalFilesToLoad())); + + // Load using the new LstFileLoaders + + // load ability categories first as they used to only be at the game mode + abilityCategoryLoader.loadLstFiles(context, abilityCategoryFileList); + validateAbilityCategories(gamemode); + + for (PCAlignment al : gamemode + .getUnmodifiableAlignmentList()) + { + context.ref.registerAbbreviation(al, al.getKeyName()); + } + for (PCStat st : gamemode + .getUnmodifiableStatList()) + { + context.ref.registerAbbreviation(st, st.getAbb()); + } + for (SizeAdjustment sz : gamemode + .getUnmodifiableSizeAdjustmentList()) + { + context.ref.registerAbbreviation(sz, sz.getAbbreviation()); + } + + // load weapon profs first + wProfLoader.loadLstFiles(context, weaponProfFileList); + aProfLoader.loadLstFiles(context, armorProfFileList); + sProfLoader.loadLstFiles(context, shieldProfFileList); + + // load skills before classes to handle class skills + skillLoader.loadLstFiles(context, skillFileList); + + // load before races to handle auto known languages + languageLoader.loadLstFiles(context, languageFileList); + + // load before race or class to handle feats + featLoader.loadLstFiles(context, featFileList); + + // load before race or class to handle abilities + abilityLoader.loadLstFiles(context, abilityFileList); + + raceLoader.loadLstFiles(context, raceFileList); + + //Domain must load before CLASS - thpr 10/29/06 + domainLoader.loadLstFiles(context, domainFileList); + + spellLoader.loadLstFiles(context, spellFileList); + deityLoader.loadLstFiles(context, deityFileList); + + classLoader.loadLstFiles(context, classFileList); + + templateLoader.loadLstFiles(context, templateFileList); + + // loaded before equipment (required) + eqModLoader.loadLstFiles(context, equipmodFileList); + + equipmentLoader.loadLstFiles(context, equipmentFileList); + companionModLoader.loadLstFiles(context, companionmodFileList); + kitLoader.loadLstFiles(context, kitFileList); + + // Load the bio settings files + bioLoader.loadLstFiles(context, bioSetFileList); + + // Check for the default deities + checkRequiredDeities(context); + + // Add default EQ mods + addDefaultEquipmentMods(context); + + classLoader.loadSubLines(context); + + /* + * This is technically bad behavior, but we at least want to provide + * the hint here since we are using WeakReferences as a container + * for references to ensure those that are not used are not + * resolved. + */ + System.gc(); + + context.resolveDeferredTokens(); + context.ref.buildDeferredObjects(); + context.ref.buildDerivedObjects(); + context.ref.validate(); + context.resolveReferences(); + for (Equipment eq : context.ref + .getConstructedCDOMObjects(Equipment.class)) + { + EqModAttachment.finishEquipment(eq); + } + context.buildTypeLists(); + } + private void addDefaultEquipmentMods(LoadContext context) throws PersistenceLayerException { Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/PCClassLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/PCClassLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/PCClassLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -29,7 +29,6 @@ import pcgen.cdom.enumeration.IntegerKey; import pcgen.cdom.enumeration.ListKey; import pcgen.cdom.inst.PCClassLevel; -import pcgen.core.Globals; import pcgen.core.PCClass; import pcgen.core.PObject; import pcgen.core.SubClass; @@ -197,13 +196,14 @@ pcClass.setName(name); pcClass.setSourceURI(source.getURI()); pcClass.setSourceCampaign(source.getCampaign()); + context.addStatefulInformation(pcClass); context.ref.importObject(pcClass); } // need to grab PCClass instance for this .MOD minus the .MOD part of the name else if (name.endsWith(".MOD")) { pcClass = - Globals.getContext().ref.silentlyGetConstructedCDOMObject(PCClass.class, name.substring(0, name + context.ref.silentlyGetConstructedCDOMObject(PCClass.class, name.substring(0, name .length() - 4)); } parseLineIntoClass(context, pcClass, source, restOfLine); @@ -483,9 +483,9 @@ * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectNamed(java.lang.String) */ @Override - protected PCClass getObjectKeyed(String aKey) + protected PCClass getObjectKeyed(LoadContext context, String aKey) { - return Globals.getContext().ref.silentlyGetConstructedCDOMObject(PCClass.class, aKey.startsWith("CLASS:") ? aKey + return context.ref.silentlyGetConstructedCDOMObject(PCClass.class, aKey.startsWith("CLASS:") ? aKey .substring(6) : aKey); } Modified: Trunk/pcgen/code/src/java/pcgen/persistence/lst/SpellLoader.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/persistence/lst/SpellLoader.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/persistence/lst/SpellLoader.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -76,6 +76,7 @@ spell.setSourceURI(source.getURI()); if (isnew) { + context.addStatefulInformation(spell); context.ref.importObject(spell); } } @@ -116,10 +117,10 @@ } /** - * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(java.lang.String) + * @see pcgen.persistence.lst.LstObjectFileLoader#getObjectKeyed(LoadContext, java.lang.String) */ @Override - protected Spell getObjectKeyed(final String aKey) + protected Spell getObjectKeyed(LoadContext context, final String aKey) { /* * TODO Wowzers. This means that the MasterList info needs to be "cloned" when this is .COPY'd @@ -191,11 +192,12 @@ } /** - * @see pcgen.persistence.lst.LstObjectFileLoader#performForget(pcgen.core.PObject) + * @see pcgen.persistence.lst.LstObjectFileLoader#performForget(LoadContext, pcgen.core.PObject) */ @Override - protected void performForget(final Spell objToForget) + protected void performForget(LoadContext context, final Spell objToForget) { + super.performForget(context, objToForget); Globals.removeFromSpellMap(objToForget.getKeyName()); } Modified: Trunk/pcgen/code/src/java/pcgen/rules/context/EditorLoadContext.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/context/EditorLoadContext.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/rules/context/EditorLoadContext.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -20,4 +20,10 @@ return contextType; } + @Override + public boolean consolidate() + { + return false; + } + } Modified: Trunk/pcgen/code/src/java/pcgen/rules/context/LoadContext.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/context/LoadContext.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/rules/context/LoadContext.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -336,7 +336,7 @@ int colonLoc = s.indexOf(':'); if (colonLoc == -1) { - //TODO error + Logging.errorPrint("Found invalid stateful token: " + s); return false; } if (stateful == null) @@ -351,7 +351,7 @@ { if (stateful != null) { - stateful.overlayCDOMObject(target); + target.overlayCDOMObject(stateful); } } @@ -380,4 +380,6 @@ } return false; } + + public abstract boolean consolidate(); } Modified: Trunk/pcgen/code/src/java/pcgen/rules/context/RuntimeLoadContext.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/rules/context/RuntimeLoadContext.java 2009-01-02 19:14:54 UTC (rev 8833) +++ Trunk/pcgen/code/src/java/pcgen/rules/context/RuntimeLoadContext.java 2009-01-02 21:05:47 UTC (rev 8834) @@ -38,4 +38,9 @@ return contextType; } + @Override + public boolean consolidate() + { + return true; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <za...@us...> - 2009-01-03 12:50:54
|
Revision: 8855 http://pcgen.svn.sourceforge.net/pcgen/?rev=8855&view=rev Author: zaister Date: 2009-01-03 12:50:46 +0000 (Sat, 03 Jan 2009) Log Message: ----------- Removed compile warning inflation: copyright sign in comments caused ant to complain about unmapped UTF8 characters, replaced those by "(c)" Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesNatureTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTypeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/BasePCTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/ConstantZeroTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQACCheckTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQBaseCostTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQCritMultTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDiceTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDieTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQEquipSizeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQHandsTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQRaceReachTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQRangeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQReachMultTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQReachTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQSizeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQSpellFailureTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EQWeightTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/EvaluatorFactory.java Trunk/pcgen/code/src/java/pcgen/core/term/PCACcheckTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCArmourACcheckTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCBABTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCBLTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCBaseSpellStatTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCLBeforeLevelTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCLTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCarriedWeightTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelClassTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelRaceTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelTotalTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAllTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAutoTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureNormalTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureVirtualTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAllTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAutoTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureVirtualTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilityNameTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAttacksTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountChecksTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountClassesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountContainersTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountDomainsTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEqTypeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEquipmentTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTransitiveTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowersTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountLanguagesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscCompanionsTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscFundsTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscMagicTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMoveTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountNotesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountRaceSubTypesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSABTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSkillsTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellClassesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellRaceTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellTimesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellbookTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsInbookTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsKnownTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsLevelsInBookTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountStatsTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTempBonusNamesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTemplatesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisibleTemplatesTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisionTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCEncumberanceTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCEqTypeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCHDTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCHasClassTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCHasDeityTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCHasFeatTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCHeightTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCMaxCastableAnyTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCMaxCastableClassTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCMaxCastableDomainTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCMaxCastableSpellTypeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCModEquipTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCMoveBaseTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCMovementTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCProfACCheckTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCRaceSizeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSPellBaseStatScoreEvaluatorTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSPellBaseStatTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCScoreTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCShieldACcheckTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSizeIntEQTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSizeIntTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSizeModEvaluatorTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSizeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSkillRankTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSkillTotalTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSkillTypeTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCSpellLevelTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCStatBaseTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCStatModTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCStatTotalTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCTLTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCTotalWeightTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCVarDefinedTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCVerbatimTextTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/PCWeightTermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/TermEvaluator.java Trunk/pcgen/code/src/java/pcgen/core/term/TermEvaluatorBuilder.java Trunk/pcgen/code/src/java/pcgen/core/term/TermEvaluatorBuilderPCStat.java Trunk/pcgen/code/src/java/pcgen/core/term/TermEvaulatorException.java Trunk/pcgen/code/src/java/pcgen/util/TermUtilities.java Modified: Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesNatureTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesNatureTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesNatureTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesNatureBaseEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountFeatsBaseEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTypeTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTypeTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/BasePCCountAbilitiesTypeTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesTypeBaseEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/BasePCTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/BasePCTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/BasePCTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.BasePCTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/ConstantZeroTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/ConstantZeroTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/ConstantZeroTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.ConstantZeroTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQACCheckTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQACCheckTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQACCheckTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQACCheckTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQBaseCostTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQBaseCostTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQBaseCostTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQBaseCostTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQCritMultTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQCritMultTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQCritMultTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQCritMultTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDiceTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDiceTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDiceTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQDamageDiceTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDieTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDieTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQDamageDieTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQDamageDieTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQEquipSizeTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQEquipSizeTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQEquipSizeTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQEquipSizeTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQHandsTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQHandsTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQHandsTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQHandsTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQRaceReachTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQRaceReachTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQRaceReachTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQRaceReachTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQRangeTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQRangeTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQRangeTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQRangeTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQReachMultTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQReachMultTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQReachMultTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQReachMultTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQReachTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQReachTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQReachTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQReachTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQSizeTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQSizeTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQSizeTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQSizeTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQSpellFailureTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQSpellFailureTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQSpellFailureTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQSpellFailureTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EQWeightTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EQWeightTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EQWeightTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EQWeightTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/EvaluatorFactory.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/EvaluatorFactory.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/EvaluatorFactory.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.EvaluatorFactory.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCACcheckTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCACcheckTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCACcheckTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCACcheckTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCArmourACcheckTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCArmourACcheckTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCArmourACcheckTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCArmourACcheckTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCBABTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCBABTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCBABTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCBABTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCBLTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCBLTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCBLTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCBLTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCBaseSpellStatTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCBaseSpellStatTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCBaseSpellStatTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCBaseSpellStatTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCLBeforeLevelTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCLBeforeLevelTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCLBeforeLevelTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCQualifiedCLBeforeLevelTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCLTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCLTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCLTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCLTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCarriedWeightTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCarriedWeightTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCarriedWeightTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCWeightTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelClassTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelClassTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelClassTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCClassCasterLevelTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelRaceTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelRaceTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelRaceTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCasterLevelTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelTotalTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelTotalTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCasterLevelTotalTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCasterLevelTotalTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAllTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAllTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAllTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesNatureAllTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAutoTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAutoTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureAutoTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesNatureAutoTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureNormalTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureNormalTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureNormalTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesNatureNormalTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureVirtualTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureVirtualTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesNatureVirtualTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesNatureVirtualTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAllTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAllTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAllTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesTypeNatureAllTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAutoTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAutoTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureAutoTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesTypeNatureAutoTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureVirtualTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureVirtualTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilitiesTypeNatureVirtualTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilitiesTypeNatureVirtualTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilityNameTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilityNameTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAbilityNameTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAbilityNameTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAttacksTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAttacksTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountAttacksTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountAttacksTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountChecksTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountChecksTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountChecksTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountChecksTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountClassesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountClassesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountClassesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountClassesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountContainersTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountContainersTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountContainersTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountContainersTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountDomainsTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountDomainsTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountDomainsTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountDomainsTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEqTypeTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEqTypeTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEqTypeTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountEquipmentTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEquipmentTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEquipmentTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountEquipmentTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountEquipmentTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountFollowerTypeTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTransitiveTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTransitiveTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowerTypeTransitiveTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountFollowerTypeTransitiveTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowersTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowersTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountFollowersTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountFollowersTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountLanguagesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountLanguagesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountLanguagesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountLanguagesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscCompanionsTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscCompanionsTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscCompanionsTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountMiscCompanionsTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscFundsTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscFundsTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscFundsTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountMiscFundsTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscMagicTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscMagicTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMiscMagicTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountMiscMagicTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMoveTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMoveTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountMoveTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountMoveTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountNotesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountNotesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountNotesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountNotesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountRaceSubTypesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountRaceSubTypesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountRaceSubTypesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountRaceSubTypesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSABTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSABTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSABTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSATermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSkillsTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSkillsTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSkillsTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSkillsTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellClassesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellClassesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellClassesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellClassesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellRaceTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellRaceTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellRaceTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellRaceTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellTimesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellTimesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellTimesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellTimesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellbookTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellbookTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellbookTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellbookTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsInbookTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsInbookTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsInbookTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellsInbookTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsKnownTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsKnownTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsKnownTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellsKnownTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsLevelsInBookTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsLevelsInBookTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountSpellsLevelsInBookTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountSpellsLevelsInBookTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountStatsTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountStatsTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountStatsTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountStatsTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTempBonusNamesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTempBonusNamesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTempBonusNamesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountTempBonusNamesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTemplatesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTemplatesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountTemplatesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountTemplatesNamesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisibleTemplatesTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisibleTemplatesTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisibleTemplatesTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountVisibleTemplatesTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisionTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisionTermEvaluator.java 2009-01-03 11:50:52 UTC (rev 8854) +++ Trunk/pcgen/code/src/java/pcgen/core/term/PCCountVisionTermEvaluator.java 2009-01-03 12:50:46 UTC (rev 8855) @@ -1,6 +1,6 @@ /** * pcgen.core.term.PCCountVisionTermEvaluator.java - * Copyright \xA9 2008 Andrew Wilson <nu...@us...>. + * Copyright (c) 2008 Andrew Wilson <nu...@us...>. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public Modified: Trunk/pcgen/code/src/java/pcgen/core/term/PCEncumberanceTermEvaluator.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/core/term/PCEncumbe... [truncated message content] |