]> git.lyx.org Git - lyx.git/blobdiff - src/MenuBackend.h
Fix encoding of converters path and arguments
[lyx.git] / src / MenuBackend.h
index 9fa664d8fc52a83b783a724b3d730b779cb0d5f3..903b130630f4c1942ececb41e4a5964d7985e4ff 100644 (file)
@@ -20,6 +20,9 @@
 
 #include <vector>
 
+
+namespace lyx {
+
 class LyXLex;
 class Buffer;
 class Menu;
@@ -41,6 +44,8 @@ public:
                /** This is the list of opened Documents,
                    typically for the Documents menu. */
                Documents,
+               /** This is the bookmarks */
+               Bookmarks,
                ///
                Toc,
                /** This is a list of viewable formats
@@ -67,6 +72,8 @@ public:
                /** This is the list of selections that can
                    be pasted. */
                PasteRecent,
+               /** toolbars */
+               Toolbars,
                /** Available branches in document */
                Branches
        };
@@ -74,23 +81,23 @@ public:
        explicit MenuItem(Kind kind);
 
        MenuItem(Kind kind,
-                lyx::docstring const & label,
-                lyx::docstring const & submenu = lyx::docstring(),
+                docstring const & label,
+                docstring const & submenu = docstring(),
                 bool optional = false);
 
        MenuItem(Kind kind,
-                lyx::docstring const & label,
+                docstring const & label,
                 FuncRequest const & func,
                 bool optional = false);
 
        /// This one is just to please boost::shared_ptr<>
        ~MenuItem();
        /// The label of a given menuitem
-       lyx::docstring const label() const;
+       docstring const label() const;
        /// The keyboard shortcut (usually underlined in the entry)
-       lyx::docstring const shortcut() const;
+       docstring const shortcut() const;
        /// The complete label, with label and shortcut separated by a '|'
-       lyx::docstring const fulllabel() const { return label_;}
+       docstring const fulllabel() const { return label_;}
        /// The kind of entry
        Kind kind() const { return kind_; }
        /// the action (if relevant)
@@ -103,12 +110,15 @@ public:
        FuncStatus & status() { return status_; }
        /// returns the status of the lfun associated with this entry
        void status(FuncStatus const & status) { status_ = status; }
-       /// returns the binding associated to this action
-       lyx::docstring const binding() const;
+       /**
+        * returns the binding associated to this action.        
+        * Use the native UI format when \c forgui is true.
+        */
+       docstring const binding(bool forgui) const;
        /// the description of the  submenu (if relevant)
-       lyx::docstring const & submenuname() const { return submenuname_; }
+       docstring const & submenuname() const { return submenuname_; }
        /// set the description of the  submenu
-       void submenuname(lyx::docstring const & name) { submenuname_ = name; }
+       void submenuname(docstring const & name) { submenuname_ = name; }
        ///
        Menu * submenu() const { return submenu_.get(); }
        ///
@@ -119,11 +129,11 @@ private:
        ///
        Kind kind_;
        ///
-       lyx::docstring label_;
+       docstring label_;
        ///
        FuncRequest func_;
        ///
-       lyx::docstring submenuname_;
+       docstring submenuname_;
        ///
        bool optional_;
        ///
@@ -143,7 +153,7 @@ public:
        ///
        typedef ItemList::size_type size_type;
        ///
-       explicit Menu(lyx::docstring const & name = lyx::docstring())
+       explicit Menu(docstring const & name = docstring())
                : name_(name) {}
        /// Add the menu item unconditionally
        Menu & add(MenuItem const &);
@@ -153,7 +163,7 @@ public:
        ///
        Menu & read(LyXLex &);
        ///
-       lyx::docstring const & name() const { return name_; }
+       docstring const & name() const { return name_; }
        ///
        bool empty() const { return items_.empty(); }
        /// Clear the menu content.
@@ -181,7 +191,7 @@ private:
        ///
        ItemList items_;
        ///
-       lyx::docstring name_;
+       docstring name_;
 };
 
 
@@ -195,26 +205,29 @@ public:
        ///
        typedef MenuList::iterator iterator;
        ///
-       MenuBackend() : specialmenu_(0) {}
+       MenuBackend() {}
        ///
        void read(LyXLex &);
        ///
        void add(Menu const &);
        ///
-       bool hasMenu(lyx::docstring const &) const;
+       bool hasMenu(docstring const &) const;
        ///
-       Menu & getMenu(lyx::docstring const &);
+       Menu & getMenu(docstring const &);
        ///
-       Menu const & getMenu(lyx::docstring const &) const;
+       Menu const & getMenu(docstring const &) const;
        ///
        Menu const & getMenubar() const;
        ///
        bool empty() const { return menulist_.empty(); }
        /** This defines a menu whose entries list the FuncRequests
-           will be removed by expand() in other menus. This is used by
-           the Qt/Mac code
+           that will be removed by expand() in other menus. This is
+           used by the Qt/Mac code
        */
-       void specialMenu(lyx::docstring const &);
+       void specialMenu(Menu const &);
+       ///
+       Menu const & specialMenu() { return specialmenu_; }
+
        /// Expands some special entries of the menu
        /** The entries with the following kind are expanded to a
            sequence of Command MenuItems: Lastfiles, Documents,
@@ -244,10 +257,13 @@ private:
        ///
        Menu menubar_;
        ///
-       Menu specialmenu_;
+       Menu specialmenu_;
 };
 
 ///
 extern MenuBackend menubackend;
 
+
+} // namespace lyx
+
 #endif /* MENUBACKEND_H */