// These are globals.
LyXAction lyxaction;
+// Small helper function
+inline
+bool isPseudoAction(int a)
+{
+ return a > int(LFUN_LASTACTION);
+}
+
+
+
void LyXAction::newFunc(kb_action action, string const & name,
string const & helpText, unsigned int attrib)
{
N_("Choose Paragraph Environment"), ReadOnly },
{ LFUN_END_OF_SENTENCE, "end-of-sentence-period-insert",
N_("Insert end of sentence period"), Noop },
- { LFUN_GOTOERROR, "error-next", N_("Go to next error"), Noop },
+ { LFUN_GOTOERROR, "error-next",
+ N_("Go to next error"), ReadOnly },
{ LFUN_REMOVEERRORS, "error-remove-all",
N_("Remove all error boxes"), ReadOnly },
{ LFUN_INSET_ERT, "ert-insert",
N_("Insert a new ERT Inset"), Noop },
{ LFUN_INSET_EXTERNAL, "external-insert",
N_("Insert a new external inset"), Noop },
- { LFUN_FIGURE, "figure-insert", N_("Insert Graphics"), Noop },
{ LFUN_INSET_GRAPHICS, "graphics-insert",
N_("Insert Graphics"), Noop },
{ LFUN_FILE_INSERT, "file-insert", "", Noop },
{ LFUN_ROMAN, "font-roman", N_("Toggle roman font style"),
Noop },
{ LFUN_SANS, "font-sans", N_("Toggle sans font style"), Noop },
+ { LFUN_FRAK, "font-frak", N_("Toggle fraktur font style"), Noop },
+ { LFUN_ITAL, "font-ital", N_("Toggle italic font style"), Noop },
{ LFUN_FONT_SIZE, "font-size", N_("Set font size"), Noop },
{ LFUN_FONT_STATE, "font-state", N_("Show font state"),
ReadOnly },
{ LFUN_GREEK_TOGGLE, "math-greek-toggle", "", Noop },
{ LFUN_INSERT_MATH, "math-insert",
N_("Insert math symbol"), Noop },
+ { LFUN_SUBSCRIPT, "math-subscript", "", Noop },
+ { LFUN_SUPERSCRIPT, "math-superscript", "", Noop },
{ LFUN_MATH_LIMITS, "math-limits", "", Noop },
{ LFUN_MATH_MACRO, "math-macro", "", Noop },
{ LFUN_MATH_MUTATE, "math-mutate", "", Noop },
{ LFUN_MATH_SPACE, "math-space", "", Noop },
{ LFUN_MATH_IMPORT_SELECTION, "math-import-selection", "", Noop },
- { LFUN_MATH_MACROARG, "math-macro-arg", "", Noop },
{ LFUN_INSERT_MATRIX, "math-matrix", "", Noop },
{ LFUN_MATH_MODE, "math-mode", N_("Math mode"), Noop },
{ LFUN_MATH_NONUMBER, "math-nonumber", "", Noop },
N_("Tabular Features"), Noop },
{ LFUN_INSET_TABULAR, "tabular-insert",
N_("Insert a new Tabular Inset"), Noop },
- { LFUN_INSET_TEXT, "text-insert",
- N_("Insert a new Text Inset"), Noop },
#if 0
{ LFUN_INSET_THEOREM, "theorem-insert", "", Noop },
#endif
N_("Display information about LyX"), NoBuffer },
{ LFUN_HELP_TEXINFO, "help-Texinfo",
N_("Display information about the TeX installation"), NoBuffer },
+ { LFUN_FORKS_SHOW, "show-forks",
+ N_("Show the processes forked by LyX"), NoBuffer },
+ { LFUN_FORKS_KILL, "kill-forks",
+ N_("Kill the forked process with this PID"), NoBuffer },
+ { LFUN_TOOLTIPS_TOGGLE, "toggle-tooltips", "", NoBuffer },
{ LFUN_NOACTION, "", "", Noop }
};
// Search for an existent pseudoaction, return LFUN_UNKNOWN_ACTION
// if it doesn't exist.
-kb_action LyXAction::searchActionArg(kb_action action, string const & arg) const
+int LyXAction::searchActionArg(kb_action action, string const & arg) const
{
arg_map::const_iterator pit = lyx_arg_map.find(action);
<< action << '|'
<< arg << "] = " << aci->second << endl;
- return kb_action(aci->second);
+ return aci->second;
}
{
arg.erase(); // clear it to be sure.
+ if (!isPseudoAction(pseudo))
+ return static_cast<kb_action>(pseudo);
+
pseudo_map::const_iterator pit = lyx_pseudo_map.find(pseudo);
if (pit != lyx_pseudo_map.end()) {
lyxerr[Debug::ACTION] << "Found the pseudoaction: ["
<< pit->second.action << '|'
- << pit->second.arg << '\n';
+ << pit->second.arg << "]\n";
arg = pit->second.arg;
return pit->second.action;
} else {
{
kb_action ac;
string arg;
- if (isPseudoAction(action)) {
- ac = retrieveActionArg(action, arg);
- arg.insert(0, " ");
- } else
- ac = static_cast<kb_action>(action);
+ ac = retrieveActionArg(action, arg);
+ if (!arg.empty())
+ arg.insert(0, " ");
+
info_map::const_iterator iit = lyx_info_map.find(ac);
if (iit != lyx_info_map.end()) {
string help, arg;
kb_action action;
- if (isPseudoAction(pseudoaction))
- action = retrieveActionArg(pseudoaction, arg);
- else
- action = static_cast<kb_action>(pseudoaction);
+ action = retrieveActionArg(pseudoaction, arg);
info_map::const_iterator ici = lyx_info_map.find(action);
if (ici != lyx_info_map.end()) {