1 /* 2 * Created on 17-dic-2005 3 * 4 * TODO To change the template for this generated file go to 5 * Window - Preferences - Java - Code Style - Code Templates 6 */ 7 package org.herac.tuxguitar.gui.actions.effects; 8 9 import org.eclipse.swt.events.TypedEvent; 10 import org.herac.tuxguitar.gui.TuxGuitar; 11 import org.herac.tuxguitar.gui.actions.Action; 12 import org.herac.tuxguitar.gui.editors.effects.GraceEditor; 13 import org.herac.tuxguitar.gui.editors.tab.Caret; 14 import org.herac.tuxguitar.gui.undo.undoables.measure.UndoableMeasureGeneric; 15 import org.herac.tuxguitar.song.models.TGNote; 16 import org.herac.tuxguitar.song.models.effects.TGEffectGrace; 17 18 /** 19 * @author julian 20 * 21 * TODO To change the template for this generated type comment go to 22 * Window - Preferences - Java - Code Style - Code Templates 23 */ 24 public class ChangeGraceNoteAction extends Action{ 25 public static final String NAME = "action.note.effect.change-grace"; 26 ChangeGraceNoteAction()27 public ChangeGraceNoteAction() { 28 super(NAME, AUTO_LOCK | AUTO_UNLOCK | AUTO_UPDATE | DISABLE_ON_PLAYING | KEY_BINDING_AVAILABLE); 29 } 30 execute(TypedEvent e)31 protected int execute(TypedEvent e){ 32 TGNote note = getEditor().getTablature().getCaret().getSelectedNote(); 33 if(note != null){ 34 changeGrace(new GraceEditor().show(note)); 35 } 36 return 0; 37 } 38 changeGrace(TGEffectGrace effect)39 private void changeGrace(TGEffectGrace effect){ 40 //comienza el undoable 41 UndoableMeasureGeneric undoable = UndoableMeasureGeneric.startUndo(); 42 43 Caret caret = getEditor().getTablature().getCaret(); 44 getSongManager().getMeasureManager().changeGraceNote(caret.getMeasure(),caret.getPosition(),caret.getSelectedString().getNumber(),effect); 45 TuxGuitar.instance().getFileHistory().setUnsavedFile(); 46 updateTablature(); 47 48 //termia el undoable 49 addUndoableEdit(undoable.endUndo()); 50 } 51 updateTablature()52 public void updateTablature() { 53 fireUpdate(getEditor().getTablature().getCaret().getMeasure().getNumber()); 54 } 55 } 56