X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetert.h;h=77f81aef220a049bcaf6f5d780c4770c5c28c2d8;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=86c9694e5fe57380bae394f5f67cdef36a5aa3a0;hpb=b0eb70e869128e30ab7e4538aa32a244fd4cea57;p=lyx.git diff --git a/src/insets/insetert.h b/src/insets/insetert.h index 86c9694e5f..77f81aef22 100644 --- a/src/insets/insetert.h +++ b/src/insets/insetert.h @@ -13,8 +13,11 @@ #ifndef INSETERT_H #define INSETERT_H - #include "insetcollapsable.h" +#include "mailinset.h" + + +namespace lyx { /** A collapsable text inset for LaTeX insertions. @@ -30,118 +33,64 @@ class Language; class InsetERT : public InsetCollapsable { public: /// - enum ERTStatus { - Open, - Collapsed, - Inlined - }; - /// - InsetERT(BufferParams const &, bool collapsed = false); - /// - InsetERT(InsetERT const &); - /// - virtual std::auto_ptr clone() const; + InsetERT(BufferParams const &, CollapseStatus status = Open); +#if 0 /// InsetERT(BufferParams const &, - Language const *, std::string const & contents, bool collapsed); + Language const *, std::string const & contents, CollapseStatus status); +#endif /// ~InsetERT(); /// - InsetOld::Code lyxCode() const { return InsetOld::ERT_CODE; } - /// - void read(Buffer const & buf, LyXLex & lex); + InsetBase::Code lyxCode() const { return InsetBase::ERT_CODE; } /// void write(Buffer const & buf, std::ostream & os) const; /// - std::string const editMessage() const; - /// - bool insertInset(BufferView *, InsetOld *); - /// - bool insetAllowed(InsetOld::Code code) const { return code == InsetOld::NEWLINE_CODE; } - /// - void setFont(BufferView *, LyXFont const &, - bool toggleall = false, bool selectall = false); + void read(Buffer const & buf, LyXLex & lex); /// - EDITABLE editable() const; + virtual docstring const editMessage() const; /// - int latex(Buffer const &, std::ostream &, - LatexRunParams const &) const; + bool insetAllowed(InsetBase::Code code) const; /// - int ascii(Buffer const &, - std::ostream &, int linelen = 0) const; + int latex(Buffer const &, odocstream &, + OutputParams const &) const; /// - int linuxdoc(Buffer const &, std::ostream &) const; + int plaintext(Buffer const &, odocstream &, + OutputParams const & runparams) const; /// - int docbook(Buffer const &, std::ostream &, bool mixcont) const; + int docbook(Buffer const &, odocstream &, + OutputParams const & runparams) const; /// void validate(LaTeXFeatures &) const {} /// - bool checkInsertChar(LyXFont &); - /// - // these are needed here because of the label/inlined functionallity - /// - bool isOpen() const { return status_ == Open || status_ == Inlined; } - /// - bool inlined() const { return status_ == Inlined; } - /// - ERTStatus status() const { return status_; } - /// - void open(BufferView *); - /// - void close(BufferView *) const; - /// - bool allowSpellcheck() const { return false; } - - WordLangTuple const - selectNextWordToSpellcheck(BufferView *, float &) const; - /// - void metrics(MetricsInfo &, Dimension &) const; + bool metrics(MetricsInfo &, Dimension &) const; /// void draw(PainterInfo & pi, int x, int y) const; - /// set the status of the inset - void status(BufferView *, ERTStatus const st) const; /// bool showInsetDialog(BufferView *) const; /// void getDrawFont(LyXFont &) const; /// - bool forceDefaultParagraphs(InsetOld const *) const { - return true; - } + bool forceDefaultParagraphs(idx_type) const { return true; } + /// should paragraph indendation be ommitted in any case? + bool neverIndent(Buffer const &) const { return true; } protected: + InsetERT(InsetERT const &); /// - virtual - DispatchResult - priv_dispatch(FuncRequest const &, idx_type &, pos_type &); -private: - /// - void lfunMousePress(FuncRequest const &); - /// - // the bool return is used to see if we opened a dialog so that we can - // check this from an outer inset and open the dialog of the outer inset - // if that one has one! - /// - bool lfunMouseRelease(FuncRequest const &); + virtual void doDispatch(LCursor & cur, FuncRequest & cmd); /// - void lfunMouseMotion(FuncRequest const &); + bool getStatus(LCursor & cur, FuncRequest const & cmd, FuncStatus &) const; +private: + virtual std::auto_ptr doClone() const; /// void init(); /// - std::string const get_new_label() const; - /// - void setButtonLabel() const; - /// - void set_latex_font(BufferView *); - /// update status on button - void updateStatus(BufferView *, bool = false) const; - + void setButtonLabel(); /// - mutable ERTStatus status_; + bool allowSpellCheck() const { return false; } }; -#include "mailinset.h" - class InsetERTMailer : public MailInset { public: /// @@ -153,9 +102,10 @@ public: /// virtual std::string const inset2string(Buffer const &) const; /// - static void string2params(std::string const &, InsetERT::ERTStatus &); + static void string2params(std::string const &, + InsetCollapsable::CollapseStatus &); /// - static std::string const params2string(InsetERT::ERTStatus); + static std::string const params2string(InsetCollapsable::CollapseStatus); private: /// static std::string const name_; @@ -163,4 +113,7 @@ private: InsetERT & inset_; }; + +} // namespace lyx + #endif