#ifndef INSET_EXTERNAL_H
#define INSET_EXTERNAL_H
-#include "InsetBase.h"
+#include "Inset.h"
#include "ExternalTransforms.h"
+#include "EmbeddedFiles.h"
#include "support/FileName.h"
#include "support/Translator.h"
std::string const & templatename() const { return templatename_; }
/// The external file.
- support::DocFileName filename;
+ EmbeddedFile filename;
/// How the inset is to be displayed by LyX.
external::DisplayType display;
/// The scale of the displayed graphic (if shown).
class RenderBase;
///
-class InsetExternal : public InsetBase, public boost::signals::trackable
+class InsetExternal : public Inset, public boost::signals::trackable
{
public:
InsetExternal();
///
- virtual ~InsetExternal();
+ ~InsetExternal();
///
- virtual InsetBase::Code lyxCode() const { return EXTERNAL_CODE; }
+ void setBuffer(Buffer & buffer);
///
- virtual EDITABLE editable() const { return IS_EDITABLE; }
+ InsetCode lyxCode() const { return EXTERNAL_CODE; }
+ ///
+ EDITABLE editable() const { return IS_EDITABLE; }
///
- bool metrics(MetricsInfo &, Dimension &) const;
+ void metrics(MetricsInfo &, Dimension &) const;
///
void draw(PainterInfo & pi, int x, int y) const;
///
- virtual void write(Buffer const &, std::ostream &) const;
+ void write(std::ostream &) const;
///
- virtual void read(Buffer const &, Lexer & lex);
+ void read(Lexer & lex);
/// \returns the number of rows (\n's) of generated code.
- int latex(Buffer const &, odocstream &,
- OutputParams const &) const;
+ int latex(odocstream &, OutputParams const &) const;
///
- int plaintext(Buffer const &, odocstream &,
- OutputParams const &) const;
+ int plaintext(odocstream &, OutputParams const &) const;
///
- int docbook(Buffer const &, odocstream &,
- OutputParams const &) const;
+ int docbook(odocstream &, OutputParams const &) const;
/// Update needed features for this inset.
virtual void validate(LaTeXFeatures & features) const;
///
InsetExternalParams const & params() const;
///
- void setParams(InsetExternalParams const &, Buffer const &);
+ void setParams(InsetExternalParams const &);
///
void addPreview(graphics::PreviewLoader &) const;
///
- void edit(Cursor & cur, bool left);
+ void edit(Cursor & cur, bool front, EntryDirection entry_from);
///
bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const;
+ /// external file can be embedded
+ void registerEmbeddedFiles(EmbeddedFileList &) const;
+ ///
+ void updateEmbeddedFile(EmbeddedFile const &);
protected:
InsetExternal(InsetExternal const &);
///
- virtual void doDispatch(Cursor & cur, FuncRequest & cmd);
+ void doDispatch(Cursor & cur, FuncRequest & cmd);
private:
- virtual std::auto_ptr<InsetBase> doClone() const;
+ ///
+ Inset * clone() const { return new InsetExternal(*this); }
/** This method is connected to the graphics loader, so we are
* informed when the image has been loaded.
///
InsetExternalMailer(InsetExternal & inset);
///
- virtual InsetBase & inset() const { return inset_; }
+ virtual Inset & inset() const { return inset_; }
///
virtual std::string const & name() const { return name_; }
///