]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetInfo.h
Restore XHTML output for InsetListings.
[lyx.git] / src / insets / InsetInfo.h
index 7af746f33e5b3137740a232e04b8f21e2eba76a5..797eb08ff78782a72c8b26b0bfd0fa72ce208f78 100644 (file)
@@ -12,8 +12,7 @@
 #ifndef INSET_INFO_H
 #define INSET_INFO_H
 
-#include "InsetText.h"
-#include "RenderButton.h"
+#include "InsetCollapsable.h"
 #include "Cursor.h"
 
 #include "support/gettext.h"
@@ -76,9 +75,7 @@ the command buffer (view->Toolbar->Command Buffer).
 
 namespace lyx {
 
-/** Used to insert index labels
-  */
-class InsetInfo : public InsetText {
+class InsetInfo : public InsetCollapsable {
 public:
        enum info_type {
                UNKNOWN_INFO,   // Invalid type
@@ -93,13 +90,17 @@ public:
        };
 
        ///
-       InsetInfo(Buffer const & buf, std::string const & info = std::string());
+       InsetInfo(Buffer * buf, std::string const & info = std::string());
+       ///
+       InsetCode lyxCode() const { return INFO_CODE; }
+       ///
+       docstring name() const;
        ///
        Inset * editXY(Cursor & cur, int x, int y);
        ///
-       EDITABLE editable() const { return NOT_EDITABLE; }
+       bool editable() const { return false; }
        ///
-       void draw(PainterInfo & pi, int x, int y) const;
+       bool hasSettings() const { return true; }
        ///
        void read(Lexer & lex);
        ///
@@ -109,39 +110,40 @@ public:
        ///
        std::string infoName() const { return name_; }
        ///
+       bool validate(docstring const & argument) const;
+       ///
        bool showInsetDialog(BufferView * bv) const;
        ///
        bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const;
        ///
        void doDispatch(Cursor & cur, FuncRequest & cmd);
        ///
-       InsetCode lyxCode() const { return INFO_CODE; }
-       ///
        void setInfo(std::string const & info);
        /// update info_ and text
        void updateInfo();
        ///
-       bool setMouseHover(bool mouse_hover);
-       ///
        docstring toolTip(BufferView const & bv, int x, int y) const;
        ///
        docstring contextMenu(BufferView const &, int, int) const;
+       /// should paragraph indendation be ommitted in any case?
+       bool neverIndent() const { return true; }
 
 private:
-       /// The translator between the information type enum and corresponding string.
-       Translator<info_type, std::string> const & nameTranslator() const;
        ///
        virtual Inset * clone() const { return new InsetInfo(*this); }
        ///
+       void error(std::string const & err);
+       ///
+       void setText(docstring const & str);
+       // make sure that the other version of setText is still available.
+       using InsetCollapsable::setText;
+       ///
        info_type type_;
        ///
        std::string name_;
-       ///
-       bool mouse_hover_;
 };
 
 
-
 } // namespace lyx
 
 #endif