+ // this are needed here because of the label/inlined functionallity
+ ///
+ bool needFullRow() const { return status_ == Open; }
+ ///
+ 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() { return false; }
+ string const selectNextWordToSpellcheck(BufferView *, float &) const;
+ ///
+ int ascent(BufferView *, LyXFont const &) const;
+ ///
+ int descent(BufferView *, LyXFont const &) const;
+ ///
+ int width(BufferView *, LyXFont const &) const;
+ ///
+ void draw(BufferView *, const LyXFont &, int , float &, bool) const;
+ /// set the status of the inset
+ void status(BufferView *, ERTStatus const st) const;
+ ///
+ bool showInsetDialog(BufferView *) const;
+ ///
+ bool forceDefaultParagraphs(Inset const *) const {
+ return true;
+ }
+
+private:
+ ///
+ void init();
+ ///
+ string const get_new_label() const;
+ ///
+ void setButtonLabel() const;
+ ///
+ void set_latex_font(BufferView *);
+ /// update status on button
+ void updateStatus(BufferView *, bool = false) const;
+