* ======================================================
*
* LyX, The Document Processor
- *
+ *
* Copyright 1997 LyX Team (this file was created this year)
*
* ====================================================== */
/** Used to include files
*/
-class InsetInclude: public InsetButton, public noncopyable {
+class InsetInclude: public InsetButton, boost::noncopyable {
public:
- /// the type of inclusion
- enum IncludeFlags {
+ /// the type of inclusion
+ enum Flags {
///
- INCLUDE= 0,
+ INCLUDE = 0,
///
VERB = 1,
///
VERBAST = 3
};
- struct InsetIncludeParams {
- InsetIncludeParams(InsetCommandParams const & cp = InsetCommandParams(),
- IncludeFlags f = INCLUDE, bool nl = false, Buffer const * b = 0)
- : cparams(cp), flag(f), noload(nl), buffer(b) {}
+ struct Params {
+ Params(InsetCommandParams const & cp = InsetCommandParams(),
+ Flags f = INCLUDE,
+ bool nl = false,
+ string const & name = string())
+ : cparams(cp), flag(f), noload(nl),
+ masterFilename_(name) {}
InsetCommandParams cparams;
- IncludeFlags flag;
+ Flags flag;
bool noload;
- Buffer const * buffer;
+ string masterFilename_;
+
+ ///
+ bool operator==(Params const &) const;
+ ///
+ bool operator!=(Params const &) const;
};
///
- InsetInclude(InsetIncludeParams const &);
+ InsetInclude(Params const &);
///
InsetInclude(InsetCommandParams const &, Buffer const &);
///
~InsetInclude();
/// get the parameters
- InsetIncludeParams const & params(void) const;
-
+ Params const & params(void) const;
/// set the parameters
- void setFromParams(InsetIncludeParams const & params);
+ void set(Params const & params);
- ///
- Inset * Clone(Buffer const &) const;
///
- Inset::Code LyxCode() const { return Inset::INCLUDE_CODE; }
+ virtual Inset * clone(Buffer const &, bool same_id = false) const;
+ ///
+ Inset::Code lyxCode() const { return Inset::INCLUDE_CODE; }
/// This returns the list of labels on the child buffer
std::vector<string> const getLabelList() const;
/// This returns the list of bibkeys on the child buffer
std::vector< std::pair<string,string> > const getKeys() const;
///
- void Edit(BufferView *, int x, int y, unsigned int button);
+ void edit(BufferView *, int x, int y, unsigned int button);
///
- EDITABLE Editable() const
+ void edit(BufferView * bv, bool front = true);
+ ///
+ EDITABLE editable() const
{
return IS_EDITABLE;
}
- /// With lyx3 we won't overload these 3 methods
- void Write(Buffer const *, std::ostream &) const;
- ///
- void Read(Buffer const *, LyXLex &);
+ /// With lyx3 we won't overload these 3 methods
+ void write(Buffer const *, std::ostream &) const;
+ ///
+ void read(Buffer const *, LyXLex &);
///
- int Latex(Buffer const *, std::ostream &, bool fragile, bool free_spc) const;
+ int latex(Buffer const *, std::ostream &,
+ bool fragile, bool free_spc) const;
///
- int Ascii(Buffer const *, std::ostream &, int linelen) const;
+ int ascii(Buffer const *, std::ostream &, int linelen) const;
///
- int Linuxdoc(Buffer const *, std::ostream &) const;
+ int linuxdoc(Buffer const *, std::ostream &) const;
///
- int DocBook(Buffer const *, std::ostream &) const;
+ int docbook(Buffer const *, std::ostream &) const;
///
- void Validate(LaTeXFeatures &) const;
-
- /** Input inserts anything inside a paragraph.
+ void validate(LaTeXFeatures &) const;
+
+ /** Input inserts anything inside a paragraph.
Display can give some visual feedback
*/
bool display() const;
- /// return the filename stub of the included file
+ /// return the filename stub of the included file
string const getRelFileBaseName() const;
-
+
/// return true if the included file is not loaded
bool isIncludeOnly() const;
/// return true if the file is or got loaded.
bool loadIfNeeded() const;
-
- /// hide a dialog if about
- Signal0<void> hideDialog;
+
+ /// hide a dialog if about
+ SigC::Signal0<void> hideDialog;
private:
/// get the text displayed on the button
- string const getScreenLabel() const;
+ string const getScreenLabel(Buffer const *) const;
/// is this a verbatim include ?
bool isVerbatim() const;
- /// get the filename of the master buffer
- string const getMasterFilename() const;
- /// get the included file name
- string const getFileName() const;
+ /// get the filename of the master buffer
+ string const getMasterFilename() const;
+ /// get the included file name
+ string const getFileName() const;
/// the parameters
- InsetIncludeParams params_;
- ///
- string include_label;
+ Params params_;
+ /// holds the entity name that defines the file location (SGML)
+ string const include_label;
};