Lumiera
0.pre.03
»edit your freedom«
|
Go to the source code of this file.
Concrete implementation of a dragging gesture to relocate an UI entity.
This gesture controller is maintained as an InteractionState holder within the InteractionDirector and serves as target to receive signals, in order to observe a draggable widget and possibly activate on formation of a dragging gesture. When this happens, the DragRelocateController is responsible for observing the mouse movements, to integrate a movement delta, and finally to recognise the end of the dragging gesture and invoke the associated command on the entity to be dragged, which serves as Subject for this gesture and the resulting command.
Definition in file drag-relocate-controller.hpp.
#include "stage/gtk-base.hpp"
#include "stage/interact/interaction-state.hpp"
#include "stage/interact/cmd-context.hpp"
#include "lib/opaque-holder.hpp"
#include "lib/format-string.hpp"
#include "lib/format-cout.hpp"
#include "lib/nocopy.hpp"
#include "lib/util.hpp"
Classes | |
class | DragRelocateController |
Gesture controller for dragging objects within the Timeline display. More... | |
Variables | |
const gdouble | DISTANCE_THRESHOLD = 5.0 |
const size_t | OBSERVER_BUFF_SIZ |
heuristics for sizing the inline buffer where the Subject will construct its Observer/Adapter More... | |
Namespaces | |
stage | |
Lumiera GTK UI implementation root. | |
stage::interact | |
UI interaction control. | |