[ ivanzj @ 12.01.2010. 17:25 ] @
trebaju mi funkcije undo, redo i delete Undo mi radi kako treba, u redo imam problem, kad stigne do kraja a nisam siguran kako da implementujem funckiju delete undo Code: package zadani21.commands; import zadanie21.Command; import zadanie21.Main; import zadanie21.MyCanvas; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.ImageIcon; import javax.swing.KeyStroke; public class Undo extends AbstractAction { private MyCanvas myCanvas; public Undo(MyCanvas myCanvas) { this.myCanvas = myCanvas; this.putValue(NAME, "Undo"); this.putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke("ctrl Z")); this.putValue(SMALL_ICON, new ImageIcon(Main.class.getResource("/icons/Undo24.gif"))); } public void actionPerformed(ActionEvent e) { if (!myCanvas.commands.isEmpty()) { Command cmd = myCanvas.commands.pop(); cmd.undo(); myCanvas.undoneCommands.add(cmd); myCanvas.repaint(); } else System.out.println(); } } redo Code: package zadani21.commands; import zadanie21.Command; import zadanie21.Main; import zadanie21.MyCanvas; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.ImageIcon; import javax.swing.KeyStroke; public class Redo extends AbstractAction { private MyCanvas myCanvas; public Redo(MyCanvas myCanvas) { this.myCanvas = myCanvas; this.putValue(NAME, "Redo"); this.putValue(ACCELERATOR_KEY, KeyStroke.getKeyStroke("ctrl Y")); this.putValue(SMALL_ICON, new ImageIcon(Main.class.getResource("/icons/Redo16.gif"))); } public void actionPerformed(ActionEvent e) { //if (!myCanvas.commands.isEmpty()) { Command cmd = myCanvas.undoneCommands.pop(); cmd.execute(); myCanvas.commands.add(cmd); myCanvas.repaint(); //} // else System.out.println(); } } i jos jedno pitanje. Hteo bih da omogucim oznacavanje vise objekta jednostavnim povlacenjem misa preko tih objekata(uz pritisnuti levi klik), ako neko moze da mi da link do neke korisne strane, posto ne znam ni kako da trazim na engleskom :) hvala |