The edits a custom ui makes to its process's controls. More...
Detailed Description
The edits a custom ui makes to its process's controls.
Through set, and through the transactions of its custom controls. Each edit applies at once. The edits of one gesture are one undo step: they are pushed together once the gesture is over. A transaction says when that is, from its start to its commit. Otherwise it is the end of the event that made them, or the mouse release while a button is held. An edit of a control already edited in the gesture replaces it. Until they are pushed, the document counts as modified.
Anything else changing the history, a command, an undo or a redo, pushes them first, so that they come before it. So does the deletion of a port they edit.
A ui reacting to a change, in on_control_update, makes no edit: the change may come from execution, or be an undo or a redo, and neither edits the document.
Classes | |
| struct | Reacting |
| While one is alive, the ui is reacting to a change and set does nothing. More... | |
Public Member Functions | |
| UiEdits (const score::DocumentContext &ctx, QObject *parent) | |
| void | set (Process::ControlInlet &port, ossia::value v) |
| void | set (Process::ControlOutlet &port, ossia::value v) |
| void | beginGesture () |
| A transaction: its edits are pushed at endGesture, not before. | |
| void | endGesture () |
| void | rollback () |
| Takes back the pending edits, without an undo step. | |
| void | commit () |
| Pushes the pending edits as one undo step, if there are any. | |
| bool | pending () const noexcept |
The documentation for this class was generated from the following files:
- UiEdits.hpp
- UiEdits.cpp