]> git.lyx.org Git - lyx.git/blobdiff - src/LyXAction.h
fix typo that put too many include paths for most people
[lyx.git] / src / LyXAction.h
index 19790c32e5f9bcb473bfeca5393067012d779d68..734969d5aab828f224f45f2ce42c42c914e812fb 100644 (file)
 
 #include "commandtags.h"
 #include "LString.h"
-#include "support/utility.hpp"
+#include <boost/utility.hpp>
 
 /** This class encapsulates LyX action and user command operations.
  */
-class LyXAction : public noncopyable {
+class LyXAction : boost::noncopyable {
 private:
        ///
        struct func_info {
@@ -51,86 +51,76 @@ public:
                Noop = 0,
                /// can be used in RO mode (perhaps this should change)
                ReadOnly = 1, // ,
-                /// Can be used when there is no document open
-                NoBuffer = 2,
+               /// Can be used when there is no document open
+               NoBuffer = 2,
                //Interactive = 2, // Is interactive (requires a GUI)
                ///
                Argument = 4      // Requires argument
                //MathOnly = 8,    // Only math mode
                //EtcEtc = ...     // Or other attributes...
        };
-       
+
        ///
        LyXAction();
-    
-       /** Returns an action tag from a string. Returns kb_action.
-         Include arguments in func_name ONLY if you
-         want to create new pseudo actions. */
-       int LookupFunc(string const & func_name) const; 
 
-        /** Returns an action tag which name is the most similar to a string.
+       /** Returns an pseudoaction from a string
+         If you include arguments in func_name, a new psedoaction will be
+         created if needed. */
+       int LookupFunc(string const & func_name) const;
+
+       /** Returns an action tag which name is the most similar to a string.
            Don't include arguments, they would be ignored. */
-        int getApproxFunc(string const & func) const;
+       int getApproxFunc(string const & func) const;
 
-        /** Returns an action name the most similar to a string.
+       /** Returns an action name the most similar to a string.
            Don't include arguments, they would be ignored. */
-        string getApproxFuncName(string const & func) const;
+       string const getApproxFuncName(string const & func) const;
 
        /// Returns a pseudo-action given an action and its argument.
        int getPseudoAction(kb_action action, string const & arg) const;
 
        /// Retrieves the real action and its argument.
        kb_action retrieveActionArg(int i, string & arg) const;
-    
+
        /// Search for an existent pseudoaction, return -1 if it doesn't exist.
        int searchActionArg(kb_action action, string const & arg) const;
 
-       /// Check if a value is a pseudo-action. 
-       bool isPseudoAction(int) const;
-    
        /// Return the name associated with command
-       string getActionName(int action) const;
+       string const getActionName(int action) const;
 
        /// Return one line help text associated with (pseudo)action
-       string helpText(int action) const;
+       string const helpText(int action) const;
 
        /// True if the command has `flag' set
        bool funcHasFlag(kb_action action, func_attrib flag) const;
 
+       typedef func_map::const_iterator const_func_iterator;
+       const_func_iterator func_begin() const;
+       const_func_iterator func_end() const;
 private:
        ///
        void init();
        ///
        void newFunc(kb_action, string const & name,
                     string const & helpText, unsigned int attrib);
-       
+
        /** This is a list of all the LyXFunc names with the
          coresponding action number. It is usually only used by the
          minibuffer or when assigning commands to keys during init. */
        func_map lyx_func_map;
-       
+
        /** This is a mapping from action number to an object holding
          info about this action. f.ex. helptext, command name (string),
          command attributes (ro) */
        info_map lyx_info_map;
-       
+
        /** A mapping from the automatically created pseudo action number
          to the real action and its argument. */
        mutable pseudo_map lyx_pseudo_map;
-       
+
        /** A (multi) mapping from the lyx action to all the generated
          pseudofuncs and the arguments the action should use. */
        mutable arg_map lyx_arg_map;
 };
-     
-
-/* --------------------   Inlines  ------------------ */
-    
-     
-inline
-bool LyXAction::isPseudoAction(int a) const
-{ 
-       return a > int(LFUN_LASTACTION); 
-}
-     
+
 #endif