Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
RulerWidget Struct Reference
Collaboration diagram for RulerWidget:

Data Fields

GtkWidget parent_instance
 
RulerWidgetType type
 
double px_per_beat
 
double px_per_bar
 
double px_per_sixteenth
 
double px_per_tick
 
double px_per_min
 
double px_per_10sec
 
double px_per_sec
 
double px_per_100ms
 
double total_px
 
UiOverlayAction action
 Dragging playhead or creating range, etc.
 
double start_x
 For dragging.
 
double start_y
 
double last_offset_x
 
double last_offset_y
 
double hover_x
 
double hover_y
 
bool hovering
 
bool vertical_panning_started
 
GtkGestureDrag * drag
 
GtkGestureClick * click
 
RWTarget target
 Target acting upon.
 
int shift_held
 If shift was held down during the press.
 
bool alt_held
 Whether alt is currently held down.
 
bool ctrl_held
 
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.
 
int range1_first
 Whether range1 was before range2 at drag start.
 
int dragging
 Set to 1 between drag begin and drag end.
 
Position range1_start_pos
 Set on drag begin.
 
Position range2_start_pos
 
Position last_set_pos
 Last position the playhead was set to.
 
Position drag_start_pos
 Position at start of drag.
 
cairo_t * cached_cr
 
cairo_surface_t * cached_surface
 
graphene_rect_t last_rect
 Rectangle in the last call.
 
PangoLayout * layout_normal
 
PangoLayout * monospace_layout_small
 
PangoLayout * marker_layout
 
GtkPopoverMenu * popover_menu
 Popover to be reused for context menus.
 

Detailed Description

Definition at line 102 of file ruler.h.

Field Documentation

◆ action

UiOverlayAction RulerWidget::action

Dragging playhead or creating range, etc.

Definition at line 121 of file ruler.h.

◆ alt_held

bool RulerWidget::alt_held

Whether alt is currently held down.

Definition at line 147 of file ruler.h.

◆ cached_cr

cairo_t* RulerWidget::cached_cr

Definition at line 184 of file ruler.h.

◆ cached_surface

cairo_surface_t* RulerWidget::cached_surface

Definition at line 186 of file ruler.h.

◆ click

GtkGestureClick* RulerWidget::click

Definition at line 136 of file ruler.h.

◆ ctrl_held

bool RulerWidget::ctrl_held

Definition at line 149 of file ruler.h.

◆ drag

GtkGestureDrag* RulerWidget::drag

Definition at line 135 of file ruler.h.

◆ drag_start_pos

Position RulerWidget::drag_start_pos

Position at start of drag.

Definition at line 182 of file ruler.h.

◆ dragging

int RulerWidget::dragging

Set to 1 between drag begin and drag end.

Definition at line 163 of file ruler.h.

◆ hover_x

double RulerWidget::hover_x

Definition at line 129 of file ruler.h.

◆ hover_y

double RulerWidget::hover_y

Definition at line 130 of file ruler.h.

◆ hovering

bool RulerWidget::hovering

Definition at line 131 of file ruler.h.

◆ last_offset_x

double RulerWidget::last_offset_x

Definition at line 126 of file ruler.h.

◆ last_offset_y

double RulerWidget::last_offset_y

Definition at line 127 of file ruler.h.

◆ last_playhead_px

int RulerWidget::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.

Definition at line 154 of file ruler.h.

◆ last_rect

graphene_rect_t RulerWidget::last_rect

Rectangle in the last call.

Definition at line 189 of file ruler.h.

◆ last_set_pos

Position RulerWidget::last_set_pos

Last position the playhead was set to.

This is used for setting the cue point on drag end.

Definition at line 179 of file ruler.h.

◆ layout_normal

PangoLayout* RulerWidget::layout_normal

Definition at line 192 of file ruler.h.

◆ marker_layout

PangoLayout* RulerWidget::marker_layout

Definition at line 194 of file ruler.h.

◆ monospace_layout_small

PangoLayout* RulerWidget::monospace_layout_small

Definition at line 193 of file ruler.h.

◆ parent_instance

GtkWidget RulerWidget::parent_instance

Definition at line 104 of file ruler.h.

◆ popover_menu

GtkPopoverMenu* RulerWidget::popover_menu

Popover to be reused for context menus.

Definition at line 197 of file ruler.h.

◆ px_per_100ms

double RulerWidget::px_per_100ms

Definition at line 115 of file ruler.h.

◆ px_per_10sec

double RulerWidget::px_per_10sec

Definition at line 113 of file ruler.h.

◆ px_per_bar

double RulerWidget::px_per_bar

Definition at line 109 of file ruler.h.

◆ px_per_beat

double RulerWidget::px_per_beat

Definition at line 108 of file ruler.h.

◆ px_per_min

double RulerWidget::px_per_min

Definition at line 112 of file ruler.h.

◆ px_per_sec

double RulerWidget::px_per_sec

Definition at line 114 of file ruler.h.

◆ px_per_sixteenth

double RulerWidget::px_per_sixteenth

Definition at line 110 of file ruler.h.

◆ px_per_tick

double RulerWidget::px_per_tick

Definition at line 111 of file ruler.h.

◆ range1_first

int RulerWidget::range1_first

Whether range1 was before range2 at drag start.

Definition at line 160 of file ruler.h.

◆ range1_start_pos

Position RulerWidget::range1_start_pos

Set on drag begin.

Useful for moving range (or loop range).

Definition at line 170 of file ruler.h.

◆ range2_start_pos

Position RulerWidget::range2_start_pos

Definition at line 171 of file ruler.h.

◆ redraw

int RulerWidget::redraw

Set to 1 to redraw.

Definition at line 157 of file ruler.h.

◆ shift_held

int RulerWidget::shift_held

If shift was held down during the press.

Definition at line 144 of file ruler.h.

◆ start_x

double RulerWidget::start_x

For dragging.

Definition at line 124 of file ruler.h.

◆ start_y

double RulerWidget::start_y

Definition at line 125 of file ruler.h.

◆ target

RWTarget RulerWidget::target

Target acting upon.

Definition at line 139 of file ruler.h.

◆ total_px

double RulerWidget::total_px

Definition at line 116 of file ruler.h.

◆ type

RulerWidgetType RulerWidget::type

Definition at line 106 of file ruler.h.

◆ vertical_panning_started

bool RulerWidget::vertical_panning_started

Definition at line 133 of file ruler.h.


The documentation for this struct was generated from the following file: