2
* Created on 02-dic-2005
4
* TODO To change the template for this generated file go to
5
* Window - Preferences - Java - Code Style - Code Templates
7
package org.herac.tuxguitar.gui.items.menu;
9
import org.eclipse.swt.SWT;
10
import org.eclipse.swt.widgets.Menu;
11
import org.eclipse.swt.widgets.MenuItem;
12
import org.eclipse.swt.widgets.Shell;
13
import org.herac.tuxguitar.gui.TuxGuitar;
14
import org.herac.tuxguitar.gui.actions.measure.AddMeasureAction;
15
import org.herac.tuxguitar.gui.actions.measure.CleanMeasureAction;
16
import org.herac.tuxguitar.gui.actions.measure.CopyMeasureAction;
17
import org.herac.tuxguitar.gui.actions.measure.GoFirstMeasureAction;
18
import org.herac.tuxguitar.gui.actions.measure.GoLastMeasureAction;
19
import org.herac.tuxguitar.gui.actions.measure.GoNextMeasureAction;
20
import org.herac.tuxguitar.gui.actions.measure.GoPreviousMeasureAction;
21
import org.herac.tuxguitar.gui.actions.measure.PasteMeasureAction;
22
import org.herac.tuxguitar.gui.actions.measure.RemoveMeasureAction;
23
import org.herac.tuxguitar.gui.editors.tab.TGMeasureImpl;
24
import org.herac.tuxguitar.gui.items.MenuItems;
29
* TODO To change the template for this generated type comment go to
30
* Window - Preferences - Java - Code Style - Code Templates
32
public class MeasureMenuItem implements MenuItems{
34
private MenuItem measureMenuItem;
36
private MenuItem first;
37
private MenuItem last;
38
private MenuItem next;
39
private MenuItem previous;
40
private MenuItem addMeasure;
41
private MenuItem cleanMeasure;
42
private MenuItem removeMeasure;
43
private MenuItem copyMeasure;
44
private MenuItem pasteMeasure;
46
public MeasureMenuItem(Shell shell,Menu parent, int style) {
47
this.measureMenuItem = new MenuItem(parent, style);
48
this.menu = new Menu(shell, SWT.DROP_DOWN);
51
public void showItems(){
53
this.first = new MenuItem(this.menu, SWT.PUSH);
54
this.first.addSelectionListener(TuxGuitar.instance().getAction(GoFirstMeasureAction.NAME));
56
this.previous = new MenuItem(this.menu, SWT.PUSH);
57
this.previous.addSelectionListener(TuxGuitar.instance().getAction(GoPreviousMeasureAction.NAME));
59
this.next = new MenuItem(this.menu, SWT.PUSH);
60
this.next.addSelectionListener(TuxGuitar.instance().getAction(GoNextMeasureAction.NAME));
62
this.last = new MenuItem(this.menu, SWT.PUSH);
63
this.last.addSelectionListener(TuxGuitar.instance().getAction(GoLastMeasureAction.NAME));
66
new MenuItem(this.menu, SWT.SEPARATOR);
68
this.addMeasure = new MenuItem(this.menu, SWT.PUSH);
69
this.addMeasure.addSelectionListener(TuxGuitar.instance().getAction(AddMeasureAction.NAME));
71
this.cleanMeasure = new MenuItem(this.menu, SWT.PUSH);
72
this.cleanMeasure.addSelectionListener(TuxGuitar.instance().getAction(CleanMeasureAction.NAME));
74
this.removeMeasure = new MenuItem(this.menu, SWT.PUSH);
75
this.removeMeasure.addSelectionListener(TuxGuitar.instance().getAction(RemoveMeasureAction.NAME));
78
new MenuItem(this.menu, SWT.SEPARATOR);
80
this.copyMeasure = new MenuItem(this.menu, SWT.PUSH);
81
this.copyMeasure.addSelectionListener(TuxGuitar.instance().getAction(CopyMeasureAction.NAME));
83
this.pasteMeasure = new MenuItem(this.menu, SWT.PUSH);
85
this.pasteMeasure.addSelectionListener(TuxGuitar.instance().getAction(PasteMeasureAction.NAME));
87
this.measureMenuItem.setMenu(this.menu);
90
this.loadProperties();
94
TGMeasureImpl measure = TuxGuitar.instance().getTablatureEditor().getTablature().getCaret().getMeasure();
95
boolean running = TuxGuitar.instance().getPlayer().isRunning();
96
boolean isFirst = (measure.getNumber() == 1);
97
boolean isLast = (measure.getNumber() == measure.getTrack().countMeasures());
98
this.first.setEnabled(!isFirst);
99
this.previous.setEnabled(!isFirst);
100
this.next.setEnabled(!isLast);
101
this.last.setEnabled(!isLast);
102
this.addMeasure.setEnabled(!running);
103
this.cleanMeasure.setEnabled(!running);
104
this.removeMeasure.setEnabled(!running);
105
this.copyMeasure.setEnabled(!running);
106
this.pasteMeasure.setEnabled(!running && !TuxGuitar.instance().getTablatureEditor().getClipBoard().isEmpty());
109
public void loadProperties(){
110
this.measureMenuItem.setText(TuxGuitar.getProperty("measure"));
111
this.first.setText(TuxGuitar.getProperty("measure.first"));
112
this.last.setText(TuxGuitar.getProperty("measure.last"));
113
this.previous.setText(TuxGuitar.getProperty("measure.previous"));
114
this.next.setText(TuxGuitar.getProperty("measure.next"));
115
this.addMeasure.setText(TuxGuitar.getProperty("measure.add"));
116
this.cleanMeasure.setText(TuxGuitar.getProperty("measure.clean"));
117
this.removeMeasure.setText(TuxGuitar.getProperty("measure.remove"));
118
this.copyMeasure.setText(TuxGuitar.getProperty("measure.copy"));
119
this.pasteMeasure.setText(TuxGuitar.getProperty("measure.paste"));
122
public void loadIcons(){