70 virtual bool undoable()
const override;
119 virtual bool undoable()
const override;
161 virtual bool undoable()
const override;
Add a cell to the notebook.
Definition Actions.hh:59
Position pos
Definition Actions.hh:77
virtual ~ActionAddCell()
Definition Actions.hh:64
int child_num
Definition Actions.hh:78
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:42
DTree::iterator newref
Definition Actions.hh:76
bool is_replacement
Definition Actions.hh:82
Position
Definition Actions.hh:61
DataCell newcell
Definition Actions.hh:75
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:79
ActionAddCell(DataCell, DataCell::id_t ref_, Position pos_)
Definition Actions.cc:37
virtual bool undoable() const override
Can this action be undone?
Definition Actions.cc:90
All actions derive from the ActionBase object, which defines the interface they need to implement.
Definition Actions.hh:32
DTree::iterator ref
Definition Actions.hh:52
virtual void execute(DocumentThread &, GUIBase &)
Perform the action.
Definition Actions.cc:23
ActionBase(DataCell::id_t ref_id)
Definition Actions.cc:13
virtual bool undoable() const
Can this action be undone?
Definition Actions.cc:18
DataCell::id_t ref_id
Definition Actions.hh:50
virtual void revert(DocumentThread &, GUIBase &)=0
Revert the change to the DTree document and the GUI.
Complete text at a point in a GUI cell with one or more alternative.
Definition Actions.hh:213
int alternative() const
Definition Actions.cc:343
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:321
std::string text
Definition Actions.hh:227
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:331
virtual ~ActionCompleteText()
Definition Actions.hh:216
int alternative_
Definition Actions.hh:228
ActionCompleteText(DataCell::id_t ref_id, int pos, const std::string &, int alternative)
Definition Actions.cc:316
int length() const
Definition Actions.cc:338
DTree::iterator this_cell
Definition Actions.hh:225
int insert_pos
Definition Actions.hh:226
Remove a text string starting at the indicated position, and with the indicated length,...
Definition Actions.hh:240
int to_pos
Definition Actions.hh:250
std::string removed_text
Definition Actions.hh:251
virtual ~ActionEraseText()
Definition Actions.hh:243
int from_pos
Definition Actions.hh:250
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:353
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:362
DTree::iterator this_cell
Definition Actions.hh:249
ActionEraseText(DataCell::id_t ref_id, int, int)
Definition Actions.cc:348
Add a text string (can be just a single character) at the point of the cursor.
Definition Actions.hh:191
virtual ~ActionInsertText()
Definition Actions.hh:194
std::string text
Definition Actions.hh:202
ActionInsertText(DataCell::id_t ref_id, int pos, const std::string &)
Definition Actions.cc:296
int insert_pos
Definition Actions.hh:201
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:309
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:301
DTree::iterator this_cell
Definition Actions.hh:200
Position the cursor relative to the indicated cell.
Definition Actions.hh:91
virtual ~ActionPositionCursor()
Definition Actions.hh:96
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:160
ActionPositionCursor(DataCell::id_t ref_id_, Position pos_)
Definition Actions.cc:95
DTree::iterator newref
Definition Actions.hh:103
Position pos
Definition Actions.hh:104
Position
Definition Actions.hh:93
bool needed_new_cell
Definition Actions.hh:102
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:100
Remove a cell and all its child cells from the document.
Definition Actions.hh:130
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:192
DTree::iterator reference_parent_cell
Definition Actions.hh:145
size_t reference_child_index
Definition Actions.hh:146
ActionRemoveCell(DataCell::id_t ref_id_)
Definition Actions.cc:170
DTree removed_tree
Definition Actions.hh:144
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:179
virtual ~ActionRemoveCell()
Definition Actions.cc:175
Replace the contents of a cell.
Definition Actions.hh:153
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:223
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:219
ActionReplaceCell(DataCell::id_t ref_id_)
Definition Actions.cc:210
virtual bool undoable() const override
Can this action be undone?
Definition Actions.cc:227
virtual ~ActionReplaceCell()
Definition Actions.cc:215
Update the running status of the indicated cell.
Definition Actions.hh:111
DTree::iterator this_cell
Definition Actions.hh:121
bool was_running_
Definition Actions.hh:122
virtual ~ActionSetRunStatus()
Definition Actions.hh:114
virtual bool undoable() const override
Can this action be undone?
Definition Actions.cc:276
bool new_running_
Definition Actions.hh:122
ActionSetRunStatus(DataCell::id_t ref_id_, bool running)
Definition Actions.cc:271
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:281
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:291
Split a cell into two separate cells, at the point of the cursor.
Definition Actions.hh:169
virtual void revert(DocumentThread &, GUIBase &) override
Revert the change to the DTree document and the GUI.
Definition Actions.cc:264
ActionSplitCell(DataCell::id_t ref_id)
Definition Actions.cc:232
virtual ~ActionSplitCell()
Definition Actions.cc:237
virtual void execute(DocumentThread &, GUIBase &) override
Perform the action.
Definition Actions.cc:241
DTree::iterator newref
Definition Actions.hh:178
Each cell is identified by a serial number 'id' which is used to keep track of it across network call...
Definition DataCell.hh:52
DataCells are the basic building blocks for a document.
Definition DataCell.hh:27
A base class with all the logic to manipulate a Cadabra notebook document.
Definition DocumentThread.hh:40
Abstract base class with methods that need to be implemented by any GUI.
Definition GUIBase.hh:16
Functions to handle the exchange properties of two or more symbols in a product.
Definition Adjform.cc:83
tree< DataCell > DTree
Definition DataCell.hh:109