Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
track_canvas.h File Reference

Track canvas. More...

#include "common/utils/types.h"
#include "gui/backend/gtk_widgets/gtk_wrapper.h"
Include dependency graph for track_canvas.h:

Go to the source code of this file.

Macros

#define TRACK_CANVAS_WIDGET_TYPE   (track_canvas_widget_get_type ())

Typedefs

using TrackCanvasWidget

Functions

 G_DECLARE_FINAL_TYPE (TrackCanvasWidget, track_canvas_widget, Z, TRACK_CANVAS_WIDGET, GtkWidget) TYPEDEF_STRUCT_UNDERSCORED(TrackWidget)
void track_canvas_widget_setup (TrackCanvasWidget *self, TrackWidget *parent)

Detailed Description

Track canvas.

Definition in file track_canvas.h.

Macro Definition Documentation

◆ TRACK_CANVAS_WIDGET_TYPE

#define TRACK_CANVAS_WIDGET_TYPE   (track_canvas_widget_get_type ())

Definition at line 16 of file track_canvas.h.

Typedef Documentation

◆ TrackCanvasWidget

using TrackCanvasWidget
Initial value:
struct _TrackCanvasWidget
{
GtkWidget parent_instance;
TrackWidget * parent;
PangoLayout * layout;
PangoLayout * automation_value_layout;
PangoLayout * lane_layout;
int last_width;
int last_height;
std::string last_track_icon_name;
GdkTexture * track_icon;
}
struct _TrackWidget { GtkWidget parent_instance; GtkBox *main_box; GtkBox *group_colors_box; GtkGestureDrag * drag; GtkGestureClick *click; GtkGestureClick *right_click; int dragged; int n_press; bool bg_hovered; bool color_area_hovered; bool icon_hovered; int resize; int resizing; TrackWidgetResizeTarget resize_target_type; void *resize_target; Track *track; int ctrl_held_at_start; GtkBox *highlight_top_box; GtkBox *highlight_bot_box; TrackWidgetHighlight highlight_loc; int selected_in_dnd; double start_x; double start_y; double last_offset_y; double last_x; double last_y; CustomButtonWidget *last_hovered_btn; int button_pressed; CustomButtonWidget *clicked_button; AutomationModeWidget *clicked_am; TrackCanvasWidget *canvas; std::vector< std::unique_ptr< CustomButtonWidget > > top_buttons; std::vector< std::unique_ptr< CustomButtonWidget > > bot_buttons; MeterWidget *meter_l; MeterWidget *meter_r; char *tooltip_text; SteadyTimePoint last_midi_out_trigger_time; int redraw; bool was_armed; cairo_t * cached_cr; cairo_surface_t *cached_surface; GtkPopoverMenu *popover_menu; GtkPopover * track_name_popover; FaderButtonsWidget *fader_buttons_for_popover;} TrackWidget
The TrackWidget is split into 3 parts.
Definition track.h:107

Definition at line 26 of file track_canvas.h.