1 3 27 28 30 package de.qfs.apps.qflog.command; 31 32 34 import java.awt.Component ; 35 import java.awt.Frame ; 36 37 import javax.swing.JOptionPane ; 38 import javax.swing.JTable ; 39 40 import de.qfs.lib.log.Log; 41 import de.qfs.lib.log.Logger; 42 import de.qfs.lib.command.CancelCommandException; 43 import de.qfs.lib.command.Command; 44 import de.qfs.lib.command.CommandException; 45 import de.qfs.lib.command.Invokable; 46 import de.qfs.lib.gui.FilteredAndSortedTableModel; 47 import de.qfs.lib.gui.Message; 48 49 import de.qfs.apps.qflog.logview.LogView; 50 51 import de.qfs.apps.qflog.Model; 52 53 55 62 public class CommandEditRemove extends Command 63 implements Invokable 64 { 65 67 70 private final static Logger logger = new Logger (CommandEditRemove.class); 71 72 75 private Frame parent; 76 77 80 private JTable table; 81 82 84 86 93 public CommandEditRemove (Object source, Frame parent, JTable table) 94 { 95 super (source); 96 this.parent = parent; 97 this.table = table; 98 } 99 100 102 104 111 public Object invoke() 112 throws CommandException 113 { 114 if (logger.level >= Log.MTD) { 115 logger.log(Log.MTD, "invoke()", ""); 116 } 117 118 int row = table.getSelectedRow(); 119 if (row == -1) { 120 return null; 121 } 122 row = ((FilteredAndSortedTableModel) table.getModel()) 123 .getMappedRow(row); 124 125 LogView view = Model.instance().getViewForRow(row); 126 127 if (view.getState() == view.STATE_CONNECTED) { 128 if (Message.showMessage(parent, "deleteConnected") 129 != JOptionPane.OK_OPTION) { 130 throw new CancelCommandException (); 131 } 132 } 133 Model.instance().removeView(row); 134 return null; 135 } 136 137 } 139 | Popular Tags |