]> git.lyx.org Git - lyx.git/blobdiff - src/toc.h
Partial fix bug 2092: branches not propagated to child documents
[lyx.git] / src / toc.h
index 13de17b454725003698e233d79d52144814ccf21..f0f2f80262b22f7a81a227f8687ee8fc3991408d 100644 (file)
--- a/src/toc.h
+++ b/src/toc.h
@@ -8,61 +8,66 @@
  * \author Angus Leeming
  *
  * Full author contact details are available in file CREDITS.
+ *
+ * Nice functions and objects to handle TOCs
  */
 
 #ifndef TOC_H
 #define TOC_H
 
-#include "support/LOstream.h"
-#include "LString.h"
-
 #include <map>
+#include <iosfwd>
 #include <vector>
+#include <string>
 
 class Buffer;
 class LyXView;
 class Paragraph;
+class FuncRequest;
 
-/** Nice functions and objects to handle TOCs
- */
 namespace lyx {
 namespace toc {
 
 ///
-struct TocItem {
-       TocItem(int par_id, int d, string const & s)
+class TocItem {
+public:
+       TocItem(int par_id, int d, std::string const & s)
                : id_(par_id), depth(d), str(s) {}
        ///
-       string const asString() const;
+       std::string const asString() const;
        /// set cursor in LyXView to this TocItem
        void goTo(LyXView & lv_) const;
        /// the action corresponding to the goTo above
-       int action() const;
+       FuncRequest action() const;
        /// Paragraph ID containing this item
        int id_;
        /// nesting depth
        int depth;
        ///
-       string str;
+       std::string str;
 };
 
 ///
 typedef std::vector<TocItem> Toc;
 ///
-typedef std::map<string, Toc> TocList;
+typedef std::map<std::string, Toc> TocList;
 
 ///
-TocList const getTocList(Buffer const *);
+TocList const getTocList(Buffer const &);
 
 ///
-std::vector<string> const getTypes(Buffer const *);
+std::vector<std::string> const getTypes(Buffer const &);
 
 ///
-void asciiTocList(string const &, Buffer const *, std::ostream &);
+void asciiTocList(std::string const &, Buffer const &, std::ostream &);
 
 /** Given the cmdName of the TOC param, returns the type used
     by ControlToc::getContents() */
-string const getType(string const & cmdName);
+std::string const getType(std::string const & cmdName);
+
+/** Returns the guiname from a given @c type
+    The localization of the names will be done in the frontends */
+std::string const getGuiName(std::string const & type, Buffer const &);
 
 inline
 bool operator==(TocItem const & a, TocItem const & b)