package org.eclipse.ui.views.midi;
import org.eclipse.jface.action.Action;
import org.eclipse.jface.action.ActionContributionItem;
import org.eclipse.jface.action.IContributionItem;
public class MidiViewToolbarManager {
private MidiViewPage page;
public void setPage(MidiViewPage page) {
this.page = page;
}
public MidiViewPage getPage() {
return page;
}
public class PlaybackAction extends Action {
public PlaybackAction() {
setPlaying(false);
}
@Override
public void run() {
if (getPage().isPlaying()) {
getPage().pause();
} else {
getPage().play();
setPlaying(true);
}
}
public void setPlaying(boolean playing) {
setImageDescriptor(Activator.getImageDescriptor(MidiViewPage.ICON_PATH + (playing ? "Pause.png" : "Play.png"))); //$NON-NLS-1$ //$NON-NLS-2$
setToolTipText(playing ? "Pause" : "Play");
}
}
private final PlaybackAction playbackAction = new PlaybackAction();
public PlaybackAction getPlaybackAction() {
return playbackAction;
}
private final IContributionItem[] contributions = new IContributionItem[] { new ActionContributionItem(getPlaybackAction()) };
public IContributionItem[] getToolbarContributions() {
return contributions;
}
}