void draw(PainterInfo & pi, int x, int y) const;
/// draw selection background
void drawSelection(PainterInfo & pi, int x, int y) const;
- /// appends itself with macro arguments substituted
- void substitute(MathMacro const & macro);
/// identifies NestInsets
MathNestInset * asNestInset() { return this; }
/// identifies NestInsets
MathNestInset const * asNestInset() const { return this; }
/// get cursor position
- void getCursorPos(CursorSlice const & cur, int & x, int & y) const;
+ void cursorPos(CursorSlice const & sl, bool boundary, int & x, int & y) const;
///
void edit(LCursor & cur, bool left);
///
/// access to the lock
void lock(bool);
/// get notification when the cursor leaves this inset
- void notifyCursorLeaves(idx_type);
+ void notifyCursorLeaves(LCursor & cur);
/// direct access to the cell
MathArray & cell(idx_type);
void write(WriteStream & os) const;
/// writes [, name(), and args in []
void normalize(NormalStream & os) const;
+ ///
+ int latex(Buffer const &, std::ostream & os,
+ OutputParams const & runparams) const;
protected:
///
- void priv_dispatch(LCursor & cur, FuncRequest const & cmd);
+ virtual void doDispatch(LCursor & cur, FuncRequest & cmd);
+ /// do we want to handle this event?
+ bool getStatus(LCursor & cur, FuncRequest const & cmd,
+ FuncStatus & status) const;
///
void handleFont(LCursor & cur,
std::string const & arg, std::string const & font);
private:
/// lfun handler
- void lfunMousePress(LCursor &, FuncRequest const &);
+ void lfunMousePress(LCursor &, FuncRequest &);
///
- void lfunMouseRelease(LCursor &, FuncRequest const &);
+ void lfunMouseRelease(LCursor &, FuncRequest &);
///
- void lfunMouseMotion(LCursor &, FuncRequest const &);
+ void lfunMouseMotion(LCursor &, FuncRequest &);
protected:
/// we store the cells in a vector