virtual ~Inset() {}
/// change associated Buffer
- /// FIXME this should go.
virtual void setBuffer(Buffer & buffer);
+ /// remove the buffer reference
+ void resetBuffer() { setBuffer( *static_cast<Buffer *>(0)); }
/// retrieve associated Buffer
virtual Buffer & buffer();
virtual Buffer const & buffer() const;
/// identification as math inset
virtual InsetMath * asInsetMath() { return 0; }
+ /// identification as math inset
+ virtual InsetMath const * asInsetMath() const { return 0; }
/// true for 'math' math inset, but not for e.g. mbox
virtual bool inMathed() const { return false; }
/// is this inset based on the InsetText class?
CursorSlice const & sl, bool boundary, int & x, int & y) const;
/// Allow multiple blanks
- virtual bool isFreeSpacing() const { return getLayout().isFreeSpacing(); }
+ virtual bool isFreeSpacing() const;
/// Don't eliminate empty paragraphs
- virtual bool allowEmpty() const { return getLayout().isKeepEmpty(); }
+ virtual bool allowEmpty() const;
/// Force inset into LTR environment if surroundings are RTL?
- virtual bool forceLTR() const { return getLayout().isForceLtr(); }
+ virtual bool forceLTR() const;
/// Where should we go when we press the up or down cursor key?
virtual bool idxUpDown(Cursor & cur, bool up) const;
/// the string that is passed to the TOC
virtual void tocString(odocstream &) const {}
- /// what appears in the minibuffer when opening
- virtual docstring editMessage() const;
/// can the contents of the inset be edited on screen ?
// true for InsetCollapsables (not ButtonOnly) (not InsetInfo), InsetText
virtual bool editable() const;
virtual bool hasSettings() const;
/// can we go further down on mouse click?
// true for InsetCaption, InsetCollapsables (not ButtonOnly), InsetTabular
- virtual bool descendable() const { return false; }
+ virtual bool descendable(BufferView const &) const { return false; }
/// is this an inset that can be moved into?
/// FIXME: merge with editable()
// true for InsetTabular & InsetText
virtual docstring name() const;
///
virtual InsetLayout const & getLayout() const;
+ /// Is this inset's layout defined in the document's textclass?
+ bool undefined() const;
/// used to toggle insets
/// is the inset open?
/// should this inset be handled like a normal charater