TO_EXPORTFORMATS,
TO_IMPORTFORMATS,
TO_UPDATEFORMATS,
- TO_VIEWFORMATS
+ TO_VIEWFORMATS,
+ TO_DYNAMICMENU
};
struct LexerKeyword toolTags[] = {
+ { "dynamicmenu", TO_DYNAMICMENU},
{ "end", TO_ENDTOOLBAR },
{ "exportformats", TO_EXPORTFORMATS },
{ "iconpalette", TO_ICONPALETTE },
break;
case TO_POPUPMENU:
+ if (lex.next(true)) {
+ string const pname = lex.getString();
+ lex.next(true);
+ docstring const label = lex.getDocString();
+ add(ToolbarItem(ToolbarItem::POPUPMENU, pname, label));
+ }
+ break;
+
+ case TO_DYNAMICMENU: {
if (lex.next(true)) {
string const name = lex.getString();
lex.next(true);
docstring const label = lex.getDocString();
- add(ToolbarItem(ToolbarItem::POPUPMENU, name, label));
+ add(ToolbarItem(ToolbarItem::DYNAMICMENU, name, label));
}
break;
+ }
case TO_STICKYPOPUPMENU:
if (lex.next(true)) {
- string const name = lex.getString();
+ string const pname = lex.getString();
lex.next(true);
docstring const label = lex.getDocString();
- add(ToolbarItem(ToolbarItem::STICKYPOPUPMENU, name, label));
+ add(ToolbarItem(ToolbarItem::STICKYPOPUPMENU, pname, label));
}
break;
case TO_ICONPALETTE:
if (lex.next(true)) {
- string const name = lex.getString();
+ string const pname = lex.getString();
lex.next(true);
docstring const label = lex.getDocString();
- add(ToolbarItem(ToolbarItem::ICONPALETTE, name, label));
+ add(ToolbarItem(ToolbarItem::ICONPALETTE, pname, label));
}
break;
case TO_IMPORTFORMATS:
case TO_UPDATEFORMATS:
case TO_VIEWFORMATS: {
- vector<Format const *> formats = (code == TO_IMPORTFORMATS) ?
- theConverters().importableFormats() :
- theConverters().exportableFormats(true);
+ FormatList formats;
+ if (code == TO_IMPORTFORMATS)
+ formats = theConverters().importableFormats();
+ else if (code == TO_EXPORTFORMATS)
+ formats = theConverters().exportableFormats(false);
+ else
+ formats = theConverters().exportableFormats(true);
sort(formats.begin(), formats.end());
for (Format const * f : formats) {
if (f->dummy())
FuncRequest func(lfun, f->name(),
FuncRequest::TOOLBAR);
add(ToolbarItem(ToolbarItem::COMMAND, func,
- bformat(tooltip, prettyname)));
+ bformat(tooltip, translateIfPossible(prettyname))));
}
break;
}