#include "tabular.h"
#include "LString.h"
#include "lyxcursor.h"
-#include "func_status.h"
+#include "FuncStatus.h"
class LyXLex;
class Painter;
///
bool display() const { return tabular->IsLongTabular(); }
///
- void insetButtonRelease(BufferView *, int, int, int);
+ bool insetButtonRelease(BufferView *, int, int, int);
///
void insetButtonPress(BufferView *, int, int, int);
///
///
bool showInsetDialog(BufferView *) const;
///
- func_status::value_type getStatus(string const & argument) const;
+ FuncStatus getStatus(string const & argument) const;
///
std::vector<string> const getLabelList() const;
///
void toggleSelection(BufferView *, bool kill_selection);
///
bool searchForward(BufferView *, string const &,
- bool const & = true, bool const & = false);
+ bool = true, bool = false);
bool searchBackward(BufferView *, string const &,
- bool const & = true, bool const & = false);
+ bool = true, bool = false);
+ // this should return true if we have a "normal" cell, otherwise true.
+ // "normal" means without width set!
+ bool forceDefaultParagraphs(Inset const * in) const;
+
//
// Public structures and variables
///
void removeTabularRow();
///
bool hasSelection() const {
- return sel_cell_start != sel_cell_end;
+ return has_selection;
}
///
void clearSelection() const {
- sel_cell_start = sel_cell_end = 0;
+ sel_cell_start = sel_cell_end = 0;
+ has_selection = false;
+ }
+ void setSelection(int start, int end) const {
+ sel_cell_start = start;
+ sel_cell_end = end;
+ has_selection = true;
}
///
bool activateCellInset(BufferView *, int x = 0, int y = 0,
mutable unsigned int inset_x;
///
mutable unsigned int inset_y;
- ///
+ /// true if a set of cells are selected
+ mutable bool has_selection;
+ /// the starting cell selection nr
mutable int sel_cell_start;
- ///
+ /// the ending cell selection nr
mutable int sel_cell_end;
///
mutable int actcell;