X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FFuncStatus.h;h=af2801389e8e2ca4cbf3b8b3644cf3b7cc9eec49;hb=4b7f1b3c3918cd32070c72b6d8e95a888981c7a2;hp=80613c26478479fb97e232b07ea26a6ffe0a0011;hpb=5c3d9a254640468e40b2d30467a26222c91d856d;p=lyx.git diff --git a/src/FuncStatus.h b/src/FuncStatus.h index 80613c2647..af2801389e 100644 --- a/src/FuncStatus.h +++ b/src/FuncStatus.h @@ -12,6 +12,11 @@ #ifndef FUNC_STATUS_H #define FUNC_STATUS_H +#include "support/docstring.h" + + +namespace lyx { + /// The status of a function. class FuncStatus @@ -19,24 +24,32 @@ class FuncStatus private: enum StatusCodes { - /// + /// Command can be executed OK = 0, - /// + /// This command does not exist, possibly because it is not + /// compiled in (e.g. LFUN_THESAURUS) or the user mistyped + /// it in the minibuffer. UNKNOWN commands have no menu entry. UNKNOWN = 1, - /// - DISABLED = 2, // Command cannot be executed - /// + /// Command cannot be executed + DISABLED = 2, + /// Command is on (i. e. the menu item has a checkmark + /// and the toolbar icon is pushed). + /// Not all commands use this ON = 4, - /// + /// Command is off (i. e. the menu item has no checkmark + /// and the toolbar icon is not pushed). + /// Not all commands use this OFF = 8 }; unsigned int v_; + docstring message_; + public: /// FuncStatus(); - // + /// void clear(); /// void operator|=(FuncStatus const & f); @@ -46,14 +59,23 @@ public: bool unknown() const; /// - void disabled(bool b); - /// - bool disabled() const; + void setEnabled(bool b); + /// tells whether it can be invoked (otherwise it will be grayed-out). + bool enabled() const; /// void setOnOff(bool b); - /// + /// tells whether the menu item should have a check mark + /// (or the toolbar icon should be pushed). bool onoff(bool b) const; + + /// + void message(docstring const & m); + /// + docstring const & message() const; }; + +} // namespace lyx + #endif