Zrythm
a highly automated and intuitive digital audio workstation
|
Track widget to be shown in the tracklist. More...
#include "gtk_wrapper.h"
Go to the source code of this file.
Data Structures | |
struct | TrackWidget |
The TrackWidget is split into 3 parts. More... | |
Macros | |
#define | TRACK_WIDGET_TYPE (track_widget_get_type ()) |
#define | TRACK_BUTTON_SIZE 18 |
#define | TRACK_BUTTON_PADDING 6 |
Padding between each button. | |
#define | TRACK_BUTTON_PADDING_FROM_EDGE 3 |
Padding between the track edges and the buttons. | |
#define | TRACK_BOT_BUTTONS_SHOULD_BE_VISIBLE(height) |
#define | TRACK_COLOR_AREA_WIDTH 18 |
#define | TRACK_ICON_NAME_MONO_COMPAT "mono" |
#define | TRACK_ICON_NAME_SWAP_PHASE "phase" |
#define | TRACK_ICON_NAME_RECORD "media-record" |
#define | TRACK_ICON_NAME_SOLO "solo" |
#define | TRACK_ICON_NAME_MUTE "mute" |
#define | TRACK_ICON_NAME_LISTEN "gnome-icon-library-headphones-symbolic" |
#define | TRACK_ICON_NAME_SHOW_UI "jam-icons-screen" |
#define | TRACK_ICON_NAME_SHOW_AUTOMATION_LANES "automation-4p" |
#define | TRACK_ICON_NAME_SHOW_TRACK_LANES "untitled-ui-rows-03" |
#define | TRACK_ICON_NAME_LOCK "gnome-icon-library-padlock2-symbolic" |
#define | TRACK_ICON_NAME_UNLOCK "gnome-icon-library-padlock2-open-symbolic" |
#define | TRACK_ICON_NAME_FREEZE "fork-awesome-snowflake-o" |
#define | TRACK_ICON_NAME_PLUS "add" |
#define | TRACK_ICON_NAME_MINUS "remove" |
#define | TRACK_ICON_NAME_BUS "effect" |
#define | TRACK_ICON_NAME_CHORDS "minuet-chords" |
#define | TRACK_ICON_NAME_SHOW_MARKERS "gnome-icon-library-flag-outline-thick-symbolic" |
#define | TRACK_ICON_NAME_MIDI "instrument" |
#define | TRACK_ICON_NAME_TEMPO "filename-bpm-amarok" |
#define | TRACK_ICON_NAME_MODULATOR "gnome-icon-library-encoder-knob-symbolic" |
#define | TRACK_ICON_NAME_FOLD "fluentui-folder-regular" |
#define | TRACK_ICON_NAME_FOLD_OPEN "fluentui-folder-open-regular" |
#define | TRACK_ICON_NAME_MONITOR_AUDIO "audition" |
#define | TRACK_ICON_IS(x, name) (string_is_equal (x, TRACK_ICON_NAME_##name)) |
#define | TRACK_CB_ICON_IS(name) TRACK_ICON_IS (cb->icon_name, name) |
Typedefs | |
typedef struct _ArrangerWidget | ArrangerWidget |
typedef struct _MeterWidget | MeterWidget |
typedef struct _TrackCanvasWidget | TrackCanvasWidget |
Enumerations | |
enum class | TrackWidgetHighlight { TRACK_WIDGET_HIGHLIGHT_NONE , TRACK_WIDGET_HIGHLIGHT_TOP , TRACK_WIDGET_HIGHLIGHT_BOTTOM , TRACK_WIDGET_HIGHLIGHT_INSIDE } |
Highlight location. More... | |
enum class | TrackWidgetResizeTarget { TRACK_WIDGET_RESIZE_TARGET_TRACK , TRACK_WIDGET_RESIZE_TARGET_AT , TRACK_WIDGET_RESIZE_TARGET_LANE } |
Resize target. More... | |
Functions | |
TYPEDEF_STRUCT_UNDERSCORED (FaderButtonsWidget) | |
const char * | track_widget_highlight_to_str (TrackWidgetHighlight highlight) |
TrackWidget * | track_widget_new (Track *track) |
Sets up the track widget. | |
void | track_widget_set_name (TrackWidget *self, const char *name) |
Sets the Track name on the TrackWidget. | |
void | track_widget_on_show_automation_toggled (TrackWidget *self) |
Callback when automation button is toggled. | |
void | track_widget_on_show_lanes_toggled (TrackWidget *self) |
Callback when automation button is toggled. | |
void | track_widget_on_record_toggled (TrackWidget *self) |
Callback when record button is toggled. | |
bool | track_widget_is_cursor_in_range_select_half (TrackWidget *self, double y) |
Returns if cursor is in the range select "half". | |
void | track_widget_update_icons (TrackWidget *self) |
Updates the track icons. | |
void | track_widget_update_size (TrackWidget *self) |
Updates the full track size and redraws the track. | |
TrackWidgetHighlight | track_widget_get_highlight_location (TrackWidget *self, int y) |
Returns the highlight location based on y relative to self. | |
void | track_widget_do_highlight (TrackWidget *self, gint x, gint y, const int highlight) |
Highlights/unhighlights the Tracks appropriately. | |
int | track_widget_get_local_y (TrackWidget *self, ArrangerWidget *arranger, int arranger_y) |
Converts Y from the arranger coordinates to the track coordinates. | |
void | track_widget_redraw_meters (TrackWidget *self) |
Causes a redraw of the meters only. | |
void | track_widget_recreate_group_colors (TrackWidget *self) |
Re-fills TrackWidget.group_colors_box. | |
CustomButtonWidget * | track_widget_get_hovered_button (TrackWidget *self, int x, int y) |
AutomationModeWidget * | track_widget_get_hovered_am_widget (TrackWidget *self, int x, int y) |
AutomationTrack * | track_widget_get_at_at_y (TrackWidget *self, double y) |