A resize_gesture allows for resizing objects by dragging
the corners or sides (for constrained resize) of the objects. While
dragging, the direction/constraints are indicated by showing an
appropriate cursor.
The resize_gesture only responds to events the happen close the the
edges/corners of the graphical. The class-variables
resize_gesture.margin_fraction and resize_gesture.margin_width
determine these areas: the gesture responds if the down event occurs
between the edge and 1/margin_fraction of the size or margin_width
(whoever is the least).
Bugs: Does not deal properly with negative areas.
left Drag the left edge keep Change neither edge right Drag the right edge
This value is set by resize_gesture->verify
and used by resize_gesture->initiate
and resize_gesture->drag.
->verify
or resize_gesture->initiate.
If @nil, there is no maximum size.
Defaults: @nil
->verify
or resize_gesture->initiate.
If @nil, there is no minimum size.
Defaults: Resource defined.
top Drag the top edge keep Change neither edge bottom Drag the bottom edge
This value is set by resize_gesture->verify
and used by resize_gesture->initiate
and resize_gesture->drag.
<-v_mode
and the resize_gesture<-h_mode
determined upon starting the gesture.->drag.->verify
method determines the resize_gesture<->v_mode
and resize_gesture<->h_mode
attributes. The gesture changes those sides where the caret is closer
that the maximum of
{Width/Height} / margin_factor AND margin_width
Both resize_gesture.margin_factor and resize_gesture.margin_width
are Defauls. resize_gesture->verify
succeeds if at least one of resize_gesture<->v_mode
and
resize_gesture<->h_mode
is not set to keep.