From: Stefan F. <ste...@us...> - 2010-04-29 19:48:25
|
Update of /cvsroot/rails/18xx/rails/util In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv11547/rails/util Modified Files: ListAndFixSavedFiles.java Log Message: Added deletion of single rows of save files Displays updated version of save files after changes Index: ListAndFixSavedFiles.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/util/ListAndFixSavedFiles.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ListAndFixSavedFiles.java 22 Jan 2010 21:30:10 -0000 1.4 --- ListAndFixSavedFiles.java 29 Apr 2010 19:48:17 -0000 1.5 *************** *** 27,35 **** private JMenu fileMenu, editMenu; private JMenuItem saveItem, loadItem; ! private JMenuItem trimItem; private List<Object> savedObjects = new ArrayList<Object>(512); private List<PossibleAction> executedActions; ! private static String saveDirectory; private String filepath; --- 27,39 ---- private JMenu fileMenu, editMenu; private JMenuItem saveItem, loadItem; ! private JMenuItem trimItem, deleteItem; + private StringBuffer headerText = new StringBuffer(); + private List<Object> savedObjects = new ArrayList<Object>(512); private List<PossibleAction> executedActions; ! ! private int vbarPos; ! private static String saveDirectory; private String filepath; *************** *** 127,130 **** --- 131,143 ---- editMenu.add(trimItem); + deleteItem = new ActionMenuItem("Delete"); + deleteItem.setActionCommand("DELETE"); + deleteItem.setMnemonic(KeyEvent.VK_D); + deleteItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, + ActionEvent.ALT_MASK)); + deleteItem.addActionListener(this); + deleteItem.setEnabled(true); + editMenu.add(deleteItem); + menuBar.add(fileMenu); menuBar.add(editMenu); *************** *** 144,147 **** --- 157,161 ---- saveDirectory = Config.get("save.directory"); + load(); *************** *** 215,222 **** (List<PossibleAction>) ois.readObject(); savedObjects.add(executedActions); ! i=0; ! for (PossibleAction action : executedActions) { ! add("Action "+(i++)+": "+action.toString()); ! } ois.close(); } catch (Exception e) { --- 229,235 ---- (List<PossibleAction>) ois.readObject(); savedObjects.add(executedActions); ! ! setReportText(true); ! ois.close(); } catch (Exception e) { *************** *** 230,243 **** public void add (String text) { if (text.length() > 0) { ! reportText.append(text); reportText.append("\n"); - scrollDown(); } } ! public void scrollDown () { SwingUtilities.invokeLater(new Runnable() { public void run() { ! messageWindow.vbar.setValue(messageWindow.vbar.getMaximum()); } }); --- 243,275 ---- public void add (String text) { if (text.length() > 0) { ! headerText.append(text); ! headerText.append("\n"); ! } ! } ! ! private void setReportText(boolean initial) { ! if (initial) ! vbarPos = -1; ! else ! vbarPos = this.vbar.getValue(); ! ! reportText.setText(headerText.toString()); ! // append actionText ! int i=0; ! for (PossibleAction action : executedActions) { ! reportText.append("Action "+(i++)+": "+action.toString()); reportText.append("\n"); } + scrollDown(vbarPos); } + ! public void scrollDown (int pos) { SwingUtilities.invokeLater(new Runnable() { public void run() { ! if (vbarPos == -1) ! messageWindow.vbar.setValue(messageWindow.vbar.getMaximum()); ! else ! messageWindow.vbar.setValue(vbarPos); } }); *************** *** 255,259 **** --- 287,302 ---- List<PossibleAction> toRemove = executedActions.subList(index, executedActions.size()); toRemove.clear(); + setReportText(false); + } catch (NumberFormatException e) { + } + } + } else if ("DELETE".equalsIgnoreCase(command)) { + String result = JOptionPane.showInputDialog("Enter action number to be deleted"); + if (Util.hasValue(result)) { + try { + int index = Integer.parseInt(result); + executedActions.remove(index); + setReportText(false); } catch (NumberFormatException e) { |