Hallo,
ich arbeite gerade wieder mit dem SWT-Framework und frage mich, wie ich ein Dateimenü erstelle, das einen Eintrag beinhaltet, der mir nicht wie in den SWT Beispielen Views oder MessageBoxes öffnet, sondern schlichtweg eine Methode in meinem JAVA-Quellcode ausführt.
Die zuständige Klasse für dieses FileMenu ist ja anscheinend "ApplicationActionBarAdvisor" und so sieht ihr Inhalt aus:
Damit werden 3 Funktionen bewerkstelligt: ein Beenden-Eintrag, ein Preferences-Eintrag und ein About-Eintrag.
Wie bringe ich dort jetzt meinen Methodenaufruf z.B. als Menüpunkt "Verbinden" unter?
Vielen Dank im Voraus,
Rapthor
ich arbeite gerade wieder mit dem SWT-Framework und frage mich, wie ich ein Dateimenü erstelle, das einen Eintrag beinhaltet, der mir nicht wie in den SWT Beispielen Views oder MessageBoxes öffnet, sondern schlichtweg eine Methode in meinem JAVA-Quellcode ausführt.
Die zuständige Klasse für dieses FileMenu ist ja anscheinend "ApplicationActionBarAdvisor" und so sieht ihr Inhalt aus:
Code:
public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
// Actions - important to allocate these only in makeActions, and then use them
// in the fill methods. This ensures that the actions aren't recreated
// when fillActionBars is called with FILL_PROXY.
private IWorkbenchAction exitAction;
private IWorkbenchAction aboutAction;
private IWorkbenchAction prefsAction;
public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
super(configurer);
}
protected void makeActions(final IWorkbenchWindow window) {
// Creates the actions and registers them.
// Registering is needed to ensure that key bindings work.
// The corresponding commands keybindings are defined in the plugin.xml file.
// Registering also provides automatic disposal of the actions when
// the window is closed.
exitAction = ActionFactory.QUIT.create(window);
register(exitAction);
aboutAction = ActionFactory.ABOUT.create(window);
register(aboutAction);
prefsAction = ActionFactory.PREFERENCES.create(window);
register(prefsAction);
}
protected void fillMenuBar(IMenuManager menuBar) {
MenuManager fileMenu = new MenuManager("&WebService", IWorkbenchActionConstants.M_FILE);
MenuManager helpMenu = new MenuManager("&Help", IWorkbenchActionConstants.M_HELP);
menuBar.add(fileMenu);
// Add a group marker indicating where action set menus will appear.
menuBar.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
menuBar.add(helpMenu);
// File
fileMenu.add(prefsAction);
fileMenu.add(new Separator());
fileMenu.add(exitAction);
// Help
helpMenu.add(aboutAction);
}
protected void fillCoolBar(ICoolBarManager coolBar) {
IToolBarManager toolbar = new ToolBarManager(SWT.FLAT | SWT.RIGHT);
coolBar.add(new ToolBarContributionItem(toolbar, "main"));
}
}
Damit werden 3 Funktionen bewerkstelligt: ein Beenden-Eintrag, ein Preferences-Eintrag und ein About-Eintrag.
Wie bringe ich dort jetzt meinen Methodenaufruf z.B. als Menüpunkt "Verbinden" unter?
Vielen Dank im Voraus,
Rapthor