From: <boo...@us...> - 2006-04-15 03:52:33
|
Revision: 803 Author: boomer70 Date: 2006-04-14 20:52:28 -0700 (Fri, 14 Apr 2006) ViewCVS: http://svn.sourceforge.net/pcgen/?rev=803&view=rev Log Message: ----------- Fix for [ 1443312 ] export party to pdf / UI issue Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/gui/MainExport.java Trunk/pcgen/code/src/java/pcgen/gui/MainPrint.java Trunk/pcgen/code/src/java/pcgen/gui/TemplateListModel.java Modified: Trunk/pcgen/code/src/java/pcgen/gui/MainExport.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/MainExport.java 2006-04-15 03:32:31 UTC (rev 802) +++ Trunk/pcgen/code/src/java/pcgen/gui/MainExport.java 2006-04-15 03:52:28 UTC (rev 803) @@ -231,7 +231,7 @@ { final String pcName = partyMode ? "Entire Party" : (String) pcList.getModel().getElementAt(pcExports[loop]); fcExport.setSelectedFile(new File(SettingsHandler.getPcgPath().toString() + File.separator + pcName + "." - + extension)); + + extension)); fcExport.setDialogTitle("Export " + pcName); if (fcExport.showSaveDialog(this) != JFileChooser.APPROVE_OPTION) @@ -262,8 +262,8 @@ if (outFile.exists() && SettingsHandler.getAlwaysOverwrite() == false) { int reallyClose = JOptionPane.showConfirmDialog(this, - "The file " + outFile.getName() + " already exists, are you sure you want to overwrite it?", - "Confirm overwriting " + outFile.getName(), JOptionPane.YES_NO_OPTION); + "The file " + outFile.getName() + " already exists, are you sure you want to overwrite it?", + "Confirm overwriting " + outFile.getName(), JOptionPane.YES_NO_OPTION); if (reallyClose != JOptionPane.YES_OPTION) { @@ -345,6 +345,8 @@ setPartyMode(cboxParty.isSelected()); pcList.setEnabled(!cboxParty.isSelected()); templateList.updateUI(); + boolean enable = ((TemplateListModel)templateList.getModel()).getNumFiles() > 0; + exportButton.setEnabled(enable); //templateList.revalidate(); setDefaultTemplateSelection(); @@ -388,7 +390,7 @@ this.add(contentPane, BorderLayout.CENTER); this.add(buttonPane, BorderLayout.SOUTH); - this.setSize(new Dimension(500, 400)); + this.setSize(new Dimension(500, 400)); this.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); } @@ -397,7 +399,7 @@ { final BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "UTF-8")); final File template = new File(SettingsHandler.getPcgenOutputSheetDir() + File.separator - + (String) templateList.getSelectedValue()); + + (String) templateList.getSelectedValue()); if (partyMode) { Modified: Trunk/pcgen/code/src/java/pcgen/gui/MainPrint.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/MainPrint.java 2006-04-15 03:32:31 UTC (rev 802) +++ Trunk/pcgen/code/src/java/pcgen/gui/MainPrint.java 2006-04-15 03:52:28 UTC (rev 803) @@ -109,7 +109,7 @@ this.parentFrame = pf; this.timer = new Timer(5, - new ActionListener() + new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -262,7 +262,7 @@ { final String pcName = partyMode ? "Entire Party" : (String) pcList.getModel().getElementAt(pcExports[loop]); fcExport.setSelectedFile(new File(SettingsHandler.getPcgPath().toString() + File.separator + pcName - + extension)); + + extension)); fcExport.setDialogTitle("Export " + pcName); try @@ -302,8 +302,8 @@ if (outFile.exists() && SettingsHandler.getAlwaysOverwrite() == false) { int reallyClose = JOptionPane.showConfirmDialog(this, - "The file " + outFile.getName() + " already exists, " + "are you sure you want " - + "to overwrite it?", "Confirm overwriting " + outFile.getName(), JOptionPane.YES_NO_OPTION); + "The file " + outFile.getName() + " already exists, " + "are you sure you want " + + "to overwrite it?", "Confirm overwriting " + outFile.getName(), JOptionPane.YES_NO_OPTION); if (reallyClose != JOptionPane.YES_OPTION) { @@ -330,7 +330,7 @@ printToXMLFile(tmpFile, pcExports[loop]); File template = new File(SettingsHandler.getPcgenOutputSheetDir() + File.separator - + (String) templateList.getSelectedValue()); + + (String) templateList.getSelectedValue()); fh.setInputFile(tmpFile, template); SettingsHandler.setSelectedCharacterPDFOutputSheet(template .getAbsolutePath(), (PlayerCharacter) Globals @@ -405,7 +405,7 @@ else { ShowMessageDelegate.showMessageDialog(throwable.getClass().getName() + ": " + throwable.getMessage(), "PCGen", - MessageType.ERROR); + MessageType.ERROR); } } @@ -531,8 +531,8 @@ centerPane.add(buttonPane, BorderLayout.SOUTH); this.add(centerPane, BorderLayout.CENTER); - this.add(progressPanel, BorderLayout.SOUTH); - this.setSize(new Dimension(500, 400)); + this.add(progressPanel, BorderLayout.SOUTH); + this.setSize(new Dimension(500, 400)); this.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); } @@ -580,7 +580,7 @@ printToXMLFile(tmpFile, pcExports[loop]); File template = new File(SettingsHandler.getPcgenOutputSheetDir() + File.separator - + (String) templateList.getSelectedValue()); + + (String) templateList.getSelectedValue()); fh.setInputFile(tmpFile, template); } else @@ -650,7 +650,7 @@ else { ShowMessageDelegate.showMessageDialog(throwable.getClass().getName() + ": " + throwable.getMessage(), "PCGen", - MessageType.ERROR); + MessageType.ERROR); } } @@ -694,7 +694,7 @@ //final BufferedWriter bw = new BufferedWriter(new FileWriter(outFile)); final BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "UTF-8")); final File template = new File(SettingsHandler.getPcgenOutputSheetDir() + File.separator - + (String) templateList.getSelectedValue()); + + (String) templateList.getSelectedValue()); if (partyMode) { @@ -822,6 +822,9 @@ setPartyMode(cboxParty.isSelected()); pcList.setEnabled(!cboxParty.isSelected()); templateList.updateUI(); + boolean enable = ((TemplateListModel)templateList.getModel()).getNumFiles() > 0; + exportButton.setEnabled(enable); + printButton.setEnabled(enable); setDefaultTemplateSelection(); } else if (src.equals(templatePathButton)) Modified: Trunk/pcgen/code/src/java/pcgen/gui/TemplateListModel.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/gui/TemplateListModel.java 2006-04-15 03:32:31 UTC (rev 802) +++ Trunk/pcgen/code/src/java/pcgen/gui/TemplateListModel.java 2006-04-15 03:52:28 UTC (rev 803) @@ -53,7 +53,7 @@ * @param argFileType */ public TemplateListModel(CsheetFilter argCsheetFilter, CsheetFilter argPsheetFilter, boolean argPartyMode, - String argFileType) + String argFileType) { super(); csheetFilter = argCsheetFilter; @@ -70,30 +70,48 @@ { if (index >= pSheets.length) { - return null; + return "No templates found"; } return pSheets[index]; } if (index >= cSheets.length) { - return null; + return "No templates found"; } return cSheets[index]; } + /** + * Returns number of list elements. Will always be at least one since we + * add the message. + * @return int + */ public int getSize() { if (partyMode) { + return Math.max(1,pSheets.length); + } + return Math.max(1,cSheets.length); + } + + /** + * Returns the actual number of files managed + * @return int number of files + */ + public int getNumFiles() + { + if (partyMode) + { return pSheets.length; } return cSheets.length; } /** - * Retuirn the index of + * Retuirn the index of * @param o - * @return the index of + * @return the index of */ public int indexOf(Object o) { @@ -119,12 +137,12 @@ Object[] options = { "OK", "CANCEL" }; if (JOptionPane.showOptionDialog(null, - "No templates found. Attempt to change to " + Globals.getDefaultPath() + File.separator - + "outputsheets ?", "Warning", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, - options[0]) == JOptionPane.YES_OPTION) + "No templates found. Attempt to change to " + Globals.getDefaultPath() + File.separator + + "outputsheets ?", "Warning", JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null, options, + options[0]) == JOptionPane.YES_OPTION) { SettingsHandler.setPcgenOutputSheetDir(new File(Globals.getDefaultPath() + File.separator - + "outputsheets")); + + "outputsheets")); attempts = 1; aList = csheetFilter.getAccepted(); } @@ -162,7 +180,7 @@ /** * Set the party mode flag, true means we will be exporting the full party. - * + * * @param b */ public void setPartyMode(boolean b) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |