]> git.lyx.org Git - lyx.git/blobdiff - src/FuncStatus.h
Fix bug #8782.
[lyx.git] / src / FuncStatus.h
index 3f5d7b14c1293de2ae12af30751c849c96783568..4a632dc870fa2345717a5deeac67d5807a4d77c1 100644 (file)
 #ifndef FUNC_STATUS_H
 #define FUNC_STATUS_H
 
-#include <string>
+#include "support/docstring.h"
+
+
+namespace lyx {
 
 /// The status of a function.
 
@@ -21,21 +24,27 @@ 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_;
 
-       std::string message_;
+       docstring message_;
 
 public:
        ///
@@ -43,26 +52,28 @@ public:
        ///
        void clear();
        ///
-       void operator|=(FuncStatus const & f);
-       ///
-       void unknown(bool b);
+       void setUnknown(bool b);
        ///
        bool unknown() const;
 
        ///
-       void enabled(bool b);
-       ///
+       void setEnabled(bool b);
+       /// tells whether it can be invoked (otherwise it will be grayed-out).
        bool enabled() const;
 
        ///
        void setOnOff(bool b);
-       ///
-       bool onoff(bool b) const;
+       /// tells whether the menu item should have a check mark
+       /// (or the toolbar icon should be pushed).
+       bool onOff(bool b) const;
 
        ///
-       void message(std::string const & m);
+       void message(docstring const & m);
        ///
-       std::string const & message() const;
+       docstring const & message() const;
 };
 
+
+} // namespace lyx
+
 #endif