X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetgraphics.h;h=51ffe31ca274fdd6106ab0c4ee14c00eb876c089;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=997d3ad804b8adde8a79db1f3991782c6cd6cf13;hpb=db78dbfa042037997d764adca41d4a3c46ed981b;p=lyx.git diff --git a/src/insets/insetgraphics.h b/src/insets/insetgraphics.h index 997d3ad804..51ffe31ca2 100644 --- a/src/insets/insetgraphics.h +++ b/src/insets/insetgraphics.h @@ -15,10 +15,14 @@ #include "inset.h" #include "insetgraphicsParams.h" +#include "mailinset.h" #include #include + +namespace lyx { + class Dialogs; class RenderGraphic; class LaTeXFeatures; @@ -29,11 +33,9 @@ public: /// InsetGraphics(); /// - InsetGraphics(InsetGraphics const &); - /// ~InsetGraphics(); /// - void metrics(MetricsInfo &, Dimension &) const; + bool metrics(MetricsInfo &, Dimension &) const; /// EDITABLE editable() const; /// @@ -45,17 +47,14 @@ public: #fragile == true# means, that the inset should take care about fragile commands by adding a #\protect# before. */ - int latex(Buffer const &, std::ostream &, - LatexRunParams const &) const; + int latex(Buffer const &, odocstream &, + OutputParams const &) const; /// - int ascii(Buffer const &, std::ostream &, - LatexRunParams const &) const; + int plaintext(Buffer const &, odocstream &, + OutputParams const &) const; /// - int linuxdoc(Buffer const &, std::ostream &, - LatexRunParams const &) const; - /// - int docbook(Buffer const &, std::ostream &, - LatexRunParams const &) const; + int docbook(Buffer const &, odocstream &, + OutputParams const &) const; /** Tell LyX what the latex features you need i.e. what latex packages you need to be included. @@ -63,10 +62,7 @@ public: void validate(LaTeXFeatures & features) const; /// returns LyX code associated with the inset. Used for TOC, ...) - InsetOld::Code lyxCode() const { return InsetOld::GRAPHICS_CODE; } - - /// - virtual std::auto_ptr clone() const; + InsetBase::Code lyxCode() const { return InsetBase::GRAPHICS_CODE; } /** Set the inset parameters, used by the GUIndependent dialog. Return true of new params are different from what was so far. @@ -78,20 +74,19 @@ public: /// void draw(PainterInfo & pi, int x, int y) const; /// - void edit(BufferView * bv, bool); + void edit(LCursor & cur, bool left); + /// + void editGraphics(InsetGraphicsParams const &, Buffer const &) const; + /// + bool getStatus(LCursor &, FuncRequest const &, FuncStatus &) const; protected: + InsetGraphics(InsetGraphics const &); /// - virtual - DispatchResult - priv_dispatch(FuncRequest const & cmd, idx_type &, pos_type &); + virtual void doDispatch(LCursor & cur, FuncRequest & cmd); private: - /// friend class InsetGraphicsMailer; - /** This method is connected to the graphics loader, so we are - * informed when the image has been loaded. - */ - void statusChanged() const; + virtual std::auto_ptr doClone() const; /// Read the inset native format void readInsetGraphics(LyXLex & lex, std::string const & bufpath); @@ -100,22 +95,24 @@ private: std::string const statusMessage() const; /// Create the options for the latex command. std::string const createLatexOptions() const; + /// Create length values for docbook export. + docstring const toDocbookLength(LyXLength const & len) const; + /// Create the atributes for docbook export. + docstring const createDocBookAttributes() const; /// Convert the file if needed, and return the location of the file. - std::string const prepareFile(Buffer const & buf, LatexRunParams const &) const; + std::string const prepareFile(Buffer const & buf, OutputParams const &) const; /// InsetGraphicsParams params_; /// holds the entity name that defines the graphics location (SGML). - std::string const graphic_label; + docstring const graphic_label; /// The thing that actually draws the image on LyX's screen. boost::scoped_ptr const graphic_; }; -#include "mailinset.h" - class InsetGraphicsMailer : public MailInset { public: /// @@ -140,4 +137,7 @@ private: InsetGraphics & inset_; }; + +} // namespace lyx + #endif