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.note; 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.undo.undoables.measure.UndoableMeasureGeneric; 13 import org.herac.tuxguitar.song.models.TGNote; 14 15 /** 16 * @author julian 17 * 18 * TODO To change the template for this generated type comment go to 19 * Window - Preferences - Java - Code Style - Code Templates 20 */ 21 public class ShiftNoteUpAction extends Action{ 22 public static final String NAME = "action.note.general.shift-up"; 23 ShiftNoteUpAction()24 public ShiftNoteUpAction() { 25 super(NAME, AUTO_LOCK | AUTO_UNLOCK | AUTO_UPDATE | DISABLE_ON_PLAYING | KEY_BINDING_AVAILABLE); 26 } 27 execute(TypedEvent e)28 protected int execute(TypedEvent e){ 29 TGNote note = getEditor().getTablature().getCaret().getSelectedNote(); 30 if(note != null){ 31 //comienza el undoable 32 UndoableMeasureGeneric undoable = UndoableMeasureGeneric.startUndo(); 33 34 int nextString = getSongManager().getMeasureManager().shiftNoteUp(getEditor().getTablature().getCaret().getMeasure(),note.getVoice().getBeat().getStart(),note.getString()); 35 if(nextString > 0){ 36 getEditor().getTablature().getCaret().setStringNumber(nextString); 37 38 //termia el undoable 39 addUndoableEdit(undoable.endUndo()); 40 TuxGuitar.instance().getFileHistory().setUnsavedFile(); 41 } 42 updateTablature(); 43 } 44 return 0; 45 } 46 updateTablature()47 public void updateTablature() { 48 fireUpdate(getEditor().getTablature().getCaret().getMeasure().getNumber()); 49 } 50 } 51