- virtual int ascent() const { return 1; }
- /// the descent of the inset below the baseline
- virtual int descent() const { return 1; }
- /// total width
- virtual int width() const { return 2; }
- /// total height (== ascent + descent)
- virtual int height() const;
-
- /// Where should we go when we press the up cursor key?
- virtual bool idxUp(idx_type & idx) const;
- /// The down key
- virtual bool idxDown(idx_type & idx) const;
- /// The left key
- virtual bool idxLeft(idx_type & idx, pos_type & pos) const;
- /// The right key
- virtual bool idxRight(idx_type & idx, pos_type & pos) const;
-
- /// Move one physical cell up
- virtual bool idxNext(idx_type & idx, pos_type & pos) const;
- /// Move one physical cell down
- virtual bool idxPrev(idx_type & idx, pos_type & pos) const;
-
- /// Target pos when we enter the inset from the left by pressing "Right"
- virtual bool idxFirst(idx_type & idx, pos_type & pos) const;
- /// Target pos when we enter the inset from the right by pressing "Left"
- virtual bool idxLast(idx_type & idx, pos_type & pos) const;
-
- /// Where should we go if we press home?
- virtual bool idxHome(idx_type & idx, pos_type & pos) const;
- /// Where should we go if we press end?
- virtual bool idxEnd(idx_type & idx, pos_type & pos) const;
-
- /// Delete a cell and move cursor
- // the return value indicates whether the cursor should leave the inset
- // and/or the whole inset should be deleted
- virtual void idxDelete(idx_type & idx, bool & popit, bool & deleteit);
- // returns list of cell indices that are "between" from and to for
- // selection purposes
- virtual std::vector<idx_type> idxBetween(idx_type from, idx_type to) const;
-
- /// the number of nested cells this inset owns
- virtual idx_type nargs() const;