]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetNote.h
Loop refactoring
[lyx.git] / src / insets / InsetNote.h
index 98238496cb36f6f765081c3f57ce193a530c3816..aeab8f038b282084ec43a7636b4ffacfd500efb0 100644 (file)
@@ -12,7 +12,7 @@
 #ifndef INSET_NOTE_H
 #define INSET_NOTE_H
 
-#include "InsetCollapsable.h"
+#include "InsetCollapsible.h"
 
 
 namespace lyx {
@@ -43,11 +43,11 @@ public:
 /////////////////////////////////////////////////////////////////////////
 
 /// The PostIt note inset, and other annotations
-class InsetNote : public InsetCollapsable
+class InsetNote : public InsetCollapsible
 {
 public:
        ///
-       InsetNote(Buffer const &, std::string const &);
+       InsetNote(Buffer *, std::string const &);
        ///
        ~InsetNote();
        ///
@@ -58,52 +58,49 @@ public:
        InsetNoteParams const & params() const { return params_; }
 private:
        ///
-       InsetCode lyxCode() const { return NOTE_CODE; }
+       InsetCode lyxCode() const override { return NOTE_CODE; }
        ///
-       docstring name() const;
+       docstring layoutName() const override;
+       /** returns false if, when outputting LaTeX, font changes should
+           be closed before generating this inset. This is needed for
+           insets that may contain several paragraphs */
+       bool inheritFont() const override { return params_.type == InsetNoteParams::Note; }
+       /// Is the content of this inset part of the output document?
+       bool producesOutput() const override
+               { return params_.type == InsetNoteParams::Greyedout; }
        ///
-       DisplayType display() const;
+       bool allowSpellCheck() const override;
        ///
-       bool noFontChange() const { return params_.type != InsetNoteParams::Note; }
-       /*!
-        * Is the content of this inset part of the output document?
-        *
-        * Note that Note insets are not considered part of the
-        * document, even in their 'greyed out' incarnation.
-        */
-       bool producesOutput() const { return false; }
+       FontInfo getFont() const override;
        ///
-       void write(std::ostream &) const;
+       void write(std::ostream &) const override;
        ///
-       void read(Lexer & lex);
-       ///
-       void setButtonLabel();
+       void read(Lexer & lex) override;
        /// show the note dialog
-       bool showInsetDialog(BufferView * bv) const;
-       ///
-       bool isMacroScope() const;
+       bool showInsetDialog(BufferView * bv) const override;
        ///
-       int latex(odocstream &, OutputParams const &) const;
+       bool isMacroScope() const override;
        ///
-       int plaintext(odocstream &, OutputParams const &) const;
+       void latex(otexstream &, OutputParams const &) const override;
        ///
-       int docbook(odocstream &, OutputParams const &) const;
+       int plaintext(odocstringstream & ods, OutputParams const & op,
+                     size_t max_length = INT_MAX) const override;
        ///
-       docstring xhtml(odocstream &, OutputParams const &) const;
+       void docbook(XMLStream &, OutputParams const &) const override;
        ///
-       void validate(LaTeXFeatures &) const;
+       docstring xhtml(XMLStream &, OutputParams const &) const override;
        ///
-       bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const;
+       void validate(LaTeXFeatures &) const override;
        ///
-       void addToToc(DocIterator const &);
+       bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const override;
        ///
-       void doDispatch(Cursor & cur, FuncRequest & cmd);
+       void doDispatch(Cursor & cur, FuncRequest & cmd) override;
        ///
-       Inset * clone() const { return new InsetNote(*this); }
+       Inset * clone() const override { return new InsetNote(*this); }
        /// used by the constructors
        void init();
        ///
-       docstring contextMenu(BufferView const & bv, int x, int y) const;
+       std::string contextMenuName() const override;
        ///
        friend class InsetNoteParams;
 
@@ -111,12 +108,6 @@ private:
        InsetNoteParams params_;
 };
 
-/**
- * Mutate all NoteInsets of "source" type to the "target" type in the document.
- * Returns true when some inset was changed.
- */
-bool mutateNotes(lyx::Cursor & cur, std::string const & source, std::string const &target);
-
 } // namespace lyx
 
 #endif // INSET_NOTE_H