_ArrangerWidget struct
#include <gui/widgets/arranger.h>
The arranger widget is a canvas that draws all the arranger objects it contains.
Contents
- Reference
Public variables
- ArrangerWidgetType type
- Type of arranger this is.
- double last_offset_x
- Used when dragging.
- double start_x
- X-axis coordinate at start of drag.
- double start_y
- Y-axis coordinate at start of drag.
- double start_pos_px
- X-axis coordinate at the start of the drag, in pixels.
- int earliest_obj_exists
- Whether an object exists, so we can use the earliest_obj_start_pos.
- Position earliest_obj_start_pos
- Start Position of the earliest object at the start of the drag.
- ArrangerObject* start_object
- The object that was clicked in this drag cycle, if any.
- ArrangerObject* hovered_object
- Object currently hovered.
- int start_object_was_selected
- Whether the start object was selected before drag_begin.
- ArrangerSelections* sel_at_start
- A clone of the ArrangerSelections on drag begin.
- ZRegion* region_at_start
- Region on drag begin, if editing automation.
- ArrangerSelections* sel_to_delete
- Selections to delete, used with the eraser tool.
- Position start_pos
- Start Position of the earliest object currently.
- double curr_ticks_diff_from_start
- The absolute (not snapped) current diff in ticks from the curr_pos to the start_pos.
- double adj_ticks_diff
- The adjusted diff in ticks to use for moving objects starting from their cached start positions.
- double last_adj_ticks_diff
- adj_ticks_diff in last cycle.
- Position curr_pos
- The absolute (not snapped) Position as of the current action.
- Position end_pos
- for moving regions
- double hover_x
- Current hovering positions.
- int n_press
- Number of clicks in current action.
- SnapGrid* snap_grid
- Associated SnapGrid.
- int shift_held
- Whether shift button is held down.
- int ctrl_held
- Whether Ctrl button is held down.
- int alt_held
- Whether Alt is currently held down.
- int visible_track_diff
- The number of visible tracks moved during a moving operation between tracks up to the last cycle.
- int lane_diff
- The number of lanes moved during a moving operation between lanes, up to the last cycle.
- int is_pinned
- Whether this TimelineArrangerWidget is for the PinnedTracklist or not.
- int resizing_range
- 1 if resizing range.
- int resizing_range_start
- 1 if this is the first call to resize the range, so range1 can be set.
- int hovered_note
- Cache for chord object height, used during child size allocation.
- int start_vel_val
- 1-127.
- int vel_diff
- Maximum Velocity diff applied in this action.
- int hovered_chord_index
- Index of the chord being hovered on.
- int last_playhead_px
- Px the playhead was last drawn at, so we can redraw this and the new px only when the playhead changes position.
- int redraw
- Set to 1 to redraw.
- GdkRectangle last_rect
- Rectangle in the last call.
- bool can_link
- Whether the current selections can link (ie, only regions are selected).
- bool is_highlighted
- Whether a rectangle is highlighted for DND.
- GdkRectangle highlight_rect
- The rectangle to highlight.
- guint drag_start_btn
- Drag start button (primary, secondary, etc.).
- bool first_draw
- Whether this is the first time the widget is drawn.
- PangoLayout* ap_layout
- Layout for drawing automation point text.
Variable documentation
ArrangerObject* _ ArrangerWidget:: start_object
The object that was clicked in this drag cycle, if any.
This is the ArrangerObject that was clicked, even though there could be more selected.
ArrangerSelections* _ ArrangerWidget:: sel_at_start
A clone of the ArrangerSelections on drag begin.
When autofilling velocities, this is used to store the affected objects before editing.
This must contain clones only.
int _ ArrangerWidget:: hovered_note
Cache for chord object height, used during child size allocation.
The note currently hovering over
bool _ ArrangerWidget:: can_link
Whether the current selections can link (ie, only regions are selected).
To be set on drag begin.
bool _ ArrangerWidget:: first_draw
Whether this is the first time the widget is drawn.
This is used for loading back the scroll positions saved in the project.
PangoLayout* _ ArrangerWidget:: ap_layout
Layout for drawing automation point text.
TODO move to AutomationPoint if parallel processing is needed - no need now.