use of org.freeplane.plugin.script.addons.ScriptAddOnProperties.Script in project freeplane by freeplane.
the class AddOnDetailsPanel method createDetails.
private JComponent createDetails(final AddOnProperties addOn) {
final StringBuilder text = new StringBuilder(1024);
text.append("<html><body>");
text.append(toHtml(addOn.getDescription()));
text.append("<p>");
if (addOn instanceof ScriptAddOnProperties) {
List<Script> scripts = ((ScriptAddOnProperties) addOn).getScripts();
if (!scripts.isEmpty()) {
text.append("<table border='1'>");
text.append(row("th", getText("header.function"), getText("header.menu"), getText("header.shortcut")));
for (ScriptAddOnProperties.Script script : scripts) {
text.append(row("td", bold(TextUtils.getText(script.menuTitleKey)), formatMenuLocation(script), formatShortcut(script)));
}
text.append("</table>");
}
}
text.append("</body></html>");
final JLabel label = new JLabel(text.toString());
label.setAutoscrolls(true);
final ImageIcon icon = IconNotFound.createIconOrReturnNull(addOn.getName() + "-screenshot-1.png");
if (icon != null)
label.setIcon(icon);
return label;
}
use of org.freeplane.plugin.script.addons.ScriptAddOnProperties.Script in project freeplane by freeplane.
the class ScriptingConfiguration method createAddOnScriptMap.
private Map<File, Script> createAddOnScriptMap() {
Map<File, Script> result = new LinkedHashMap<File, Script>();
for (ScriptAddOnProperties scriptAddOnProperties : getInstalledScriptAddOns()) {
final List<Script> scripts = scriptAddOnProperties.getScripts();
for (Script script : scripts) {
script.active = scriptAddOnProperties.isActive();
result.put(findScriptFile(scriptAddOnProperties, script), script);
}
}
return result;
}
use of org.freeplane.plugin.script.addons.ScriptAddOnProperties.Script in project freeplane by freeplane.
the class ScriptingConfiguration method addScript.
private void addScript(final File file, final Map<File, Script> addOnScriptMap) {
final Script scriptConfig = addOnScriptMap.get(file);
if (scriptConfig != null && !scriptConfig.active) {
LogUtils.info("skipping deactivated " + scriptConfig);
return;
}
final String menuTitle = disambiguateMenuTitle(getOrCreateMenuTitle(file, scriptConfig));
try {
menuTitleToPathMap.put(menuTitle, file.getAbsolutePath());
final ScriptMetaData metaData = createMetaData(file, menuTitle, scriptConfig);
menuTitleToMetaDataMap.put(menuTitle, metaData);
final File parentFile = file.getParentFile();
if (parentFile.equals(ScriptResources.getBuiltinScriptsDir())) {
metaData.setPermissions(ScriptingPermissions.getPermissiveScriptingPermissions());
}
} catch (final IOException e) {
LogUtils.warn("problems with script " + file.getAbsolutePath(), e);
menuTitleToPathMap.remove(menuTitle);
menuTitleToMetaDataMap.remove(menuTitle);
}
}
Aggregations