]> git.lyx.org Git - lyx.git/blobdiff - src/MenuBackend.h
Applied Angus patch to compile on DEC C++ and to avoid name clashes
[lyx.git] / src / MenuBackend.h
index f03bf57ec9bd7e1c5f89a23dd589acac7a85f0b3..d21df334087a878af2a4765ccdf57a80ce3cd03d 100644 (file)
@@ -44,8 +44,6 @@ public:
                Documents,
                ///
                Toc,
-               ///
-               References,
                /** This is a list of viewable formats
                    typically for the File->View menu. */
                ViewFormats,
@@ -54,7 +52,10 @@ public:
                UpdateFormats,
                /** This is a list of exportable formats
                    typically for the File->Export menu. */
-               ExportFormats
+               ExportFormats,
+               /** This is a list of importable formats
+                   typically for the File->Export menu. */
+               ImportFormats
        };
        /// Create a Command type MenuItem
        MenuItem(Kind kind, 
@@ -70,8 +71,10 @@ public:
  
        /// The label of a given menuitem
        string const label() const { return token(label_, '|', 0); }
-       ///
+       /// The keyboard shortcut (usually underlined in the entry)
        string const shortcut() const { return token(label_, '|', 1); }
+       /// The complete label, with label and shortcut separated by a '|'
+       string const fulllabel() const { return label_;}
        /// The kind of entry
        Kind kind() const { return kind_; } 
        /// the action (if relevant)
@@ -109,7 +112,7 @@ public:
        ///
        Menu & read(LyXLex &);
        /// Expands some special entries of the menu
-       /** The entries with the following kind are exanded to a
+       /** The entries with the following kind are expanded to a
            sequence of Command MenuItems: Lastfiles, Documents,
            ViewFormats, ExportFormats, UpdateFormats
        */
@@ -122,6 +125,8 @@ public:
        bool empty() const { return items_.empty(); }
        ///
        ItemList::size_type size() const { return items_.size(); }
+       ///
+       bool hasSubmenu(string const &) const;
         ///
         const_iterator begin() const {
                 return items_.begin();
@@ -130,6 +135,10 @@ public:
         const_iterator end() const {
                 return items_.end();
         }
+
+       // Check whether the menu shortcuts are unique
+       void checkShortcuts() const;
+       
 private:
        ///
        ItemList items_;
@@ -154,7 +163,7 @@ public:
        ///
        void add(Menu const &);
        ///
-       bool hasMenu (string const &) const;
+       bool hasMenu(string const &) const;
        ///
        Menu & getMenu (string const &);
        ///