Search the FirstSpirit Knowledge Base
Hallo,
zur Zeit habe ich unter "Extras=>Script ausführen" ein Beanshell-Script, welches meine Appcenter-Integration aktiviert.
Ist es möglich innerhalb einer Modulentwicklung einen eigenen Menüeintrag für den FirstSpirit Java-Client zu erstellen, so dass der Menüpunkt quasi bei der Installation des Moduls automatisch erstellt wird?
Mir würde es auch reichen per API dieses Script erstellen zu können, so dass es halt wie jetzt auch unter Extras=>Script ausführen" auftaucht.
hallo,
> Ist es möglich innerhalb einer Modulentwicklung einen eigenen Menüeintrag für den FirstSpirit Java-Client zu
> erstellen, so dass der Menüpunkt quasi bei der Installation des Moduls automatisch erstellt wird?
hallo,
> Ist es möglich innerhalb einer Modulentwicklung einen eigenen Menüeintrag für den FirstSpirit Java-Client zu
> erstellen, so dass der Menüpunkt quasi bei der Installation des Moduls automatisch erstellt wird?
Dank schon mal hierfür,
aber da ergeben sich direkt Folgefragen .
Mein Script sieht im Moment wie folgt aus:
//!Beanshell
import my.packagename.MyPlugin;
if (element == void ) {
MyPlugin.show(context);
} else {
MyPlugin.show(context, element, language);
}
Hierbei startet der Teil "element == void" mein Plugin mittels "script ausführen" und der andere Teil angetriggert über einen FS-Button.
Ich habe aber beim Ausführen des Menüeintrags nur einen ToolbarContext.
@Override
public void execute(ToolbarContext context) {
...
}
im Plugin selbst starte ich über folgende Methoden mein Plugin und ermittle das aktuell vom Redakteur bearbeittete Element.
public static void show(final GuiScriptContext context) {
final IDProvider selectedElement;
if (context instanceof GuiScriptContextImpl) {
GuiScriptContextImpl guiContext = (GuiScriptContextImpl) context;
selectedElement = guiContext.getGuiHost().getCurrentGuiStoreElement().getStoreElement();
} else {
....
}
final MyPlugin plugin = getInstance(context.getConnection());
plugin.show(context.getProject(), selectedElement, context, null);
}
public static void show(final BaseContext context, IDProvider selectedElement, Language language) {
if (context instanceof GuiScriptContext) {
show((GuiScriptContext) context);
return;
}
Project project = selectedElement.getProject();
Connection connection = project.getUserService().getConnection();
final MyPlugin plugin = getInstance(connection);
plugin.show(project, selectedElement, context, language);
}
Nun meine Fragen: