Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
track_canvas.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2018-2023 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
4#ifndef __GUI_WIDGETS_TRACK_CANVAS_H__
5#define __GUI_WIDGETS_TRACK_CANVAS_H__
6
13#include <gtk/gtk.h>
14
15#define TRACK_CANVAS_WIDGET_TYPE (track_canvas_widget_get_type ())
16G_DECLARE_FINAL_TYPE (
18 track_canvas_widget,
19 Z,
20 TRACK_CANVAS_WIDGET,
21 GtkWidget)
22
23typedef struct _TrackWidget TrackWidget;
24
25typedef struct _TrackCanvasWidget
26{
27 GtkWidget parent_instance;
28
29 TrackWidget * parent;
30
32 PangoLayout * layout;
33
36
38 PangoLayout * lane_layout;
39
42 int last_height;
43
44 char * last_track_icon_name;
45
46 GdkTexture * track_icon;
48
49void
50track_canvas_widget_setup (TrackCanvasWidget * self, TrackWidget * parent);
51
52#endif
PangoLayout * automation_value_layout
Layout for automation value.
PangoLayout * lane_layout
Layout for lanes.
PangoLayout * layout
Layout for drawing the name.
int last_width
Used for recreating the pango layout.
The TrackWidget is split into 3 parts.
Definition track.h:109