Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
Actions

Data Structures

struct  ArrangerSelectionsAction
 The action. More...
 
struct  ChannelSendAction
 Action for channel send changes. More...
 
struct  ChordAction
 Action for chord pad changes. More...
 
struct  MidiMappingAction
 MIDI mapping action. More...
 
struct  PortAction
 
struct  PortConnectionAction
 
struct  RangeAction
 
struct  TracklistSelectionsAction
 Tracklist selections (tracks) action. More...
 
struct  TransportAction
 Transport action. More...
 
struct  UndoManager
 Undo manager. More...
 
struct  UndoStack
 Serializable stack for undoable actions. More...
 
struct  UndoableAction
 Base struct to be inherited by implementing undoable actions. More...
 

Macros

#define arranger_selections_action_new_create(sel, error)
 
#define arranger_selections_action_new_delete(sel, error)
 
#define arranger_selections_action_new_move(sel, ticks, chords, pitch, tracks, lanes, norm_amt, port_id, already_moved, error)
 
#define arranger_selections_action_new_duplicate(sel, ticks, chords, pitch, tracks, lanes, norm_amt, port_id, already_moved, error)
 
#define arranger_selections_action_new_move_timeline(sel, ticks, delta_tracks, delta_lanes, port_id, already_moved, error)
 
#define arranger_selections_action_new_duplicate_timeline(sel, ticks, delta_tracks, delta_lanes, port_id, already_moved, error)
 
#define arranger_selections_action_new_move_midi(sel, ticks, delta_pitch, already_moved, error)
 
#define arranger_selections_action_new_duplicate_midi(sel, ticks, delta_pitch, already_moved, error)
 
#define arranger_selections_action_new_move_chord(sel, ticks, delta_chords, already_moved, error)
 
#define arranger_selections_action_new_duplicate_chord(sel, ticks, delta_chords, already_moved, error)
 
#define arranger_selections_action_new_move_automation(sel, ticks, norm_amt, already_moved, error)
 
#define arranger_selections_action_new_duplicate_automation(sel, ticks, norm_amt, already_moved, error)
 
#define arranger_selections_action_perform_create(sel, error)
 
#define arranger_selections_action_perform_delete(sel, error)
 
#define arranger_selections_action_perform_move(sel, ticks, chords, pitch, tracks, lanes, norm_amt, port_id, already_moved, error)
 
#define arranger_selections_action_perform_duplicate(sel, ticks, chords, pitch, tracks, lanes, norm_amt, port_id, already_moved, error)
 
#define arranger_selections_action_perform_move_timeline(sel, ticks, delta_tracks, delta_lanes, port_id, already_moved, error)
 
#define arranger_selections_action_perform_duplicate_timeline(sel, ticks, delta_tracks, delta_lanes, port_id, already_moved, error)
 
#define arranger_selections_action_perform_move_midi(sel, ticks, delta_pitch, already_moved, error)
 
#define arranger_selections_action_perform_duplicate_midi(sel, ticks, delta_pitch, already_moved, error)
 
#define arranger_selections_action_perform_move_chord(sel, ticks, delta_chords, already_moved, error)
 
#define arranger_selections_action_perform_duplicate_chord(sel, ticks, delta_chords, already_moved, error)
 
#define arranger_selections_action_perform_move_automation(sel, ticks, norm_amt, already_moved, error)
 
#define arranger_selections_action_perform_duplicate_automation(sel, ticks, norm_amt, already_moved, error)
 
#define channel_send_action_new_disconnect(send, error)
 
#define channel_send_action_new_connect_midi(send, midi, error)
 
#define channel_send_action_new_connect_audio(send, stereo, error)
 
#define channel_send_action_new_connect_sidechain(send, stereo, error)
 
#define channel_send_action_new_change_amount(send, amt, error)
 
#define channel_send_action_perform_disconnect(send, error)
 
#define channel_send_action_perform_connect_midi(send, midi, error)
 
#define channel_send_action_perform_connect_audio(send, stereo, error)
 
#define channel_send_action_perform_connect_sidechain(send, stereo, error)
 
#define channel_send_action_perform_change_amount(send, amt, error)
 
#define port_connection_action_new_connect(src_id, dest_id, error)
 
#define port_connection_action_new_disconnect(src_id, dest_id, error)
 
#define port_connection_action_new_enable(src_id, dest_id, enable, error)
 
#define port_connection_action_new_change_multiplier(src_id, dest_id, new_multiplier, error)
 
#define port_connection_action_perform_connect(src_id, dest_id, error)
 
#define port_connection_action_perform_disconnect(src_id, dest_id, error)
 
#define port_connection_action_perform_enable(src_id, dest_id, enable, error)
 
#define port_connection_action_perform_change_multiplier(src_id, dest_id, new_multiplier, error)
 
#define range_action_new_insert_silence(start, end, error)    range_action_new (RANGE_ACTION_INSERT_SILENCE, start, end, error)
 
#define range_action_new_remove(start, end, error)    range_action_new (RANGE_ACTION_REMOVE, start, end, error)
 
#define range_action_perform_insert_silence(start, end, error)    range_action_perform (RANGE_ACTION_INSERT_SILENCE, start, end, error)
 
#define range_action_perform_remove(start, end, error)    range_action_perform (RANGE_ACTION_REMOVE, start, end, error)
 
#define tracklist_selections_action_new_create(track_type, pl_setting, file_descr, track_pos, pos, num_tracks, disable_track_pos, err)
 
#define tracklist_selections_action_new_create_audio_fx(pl_setting, track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for an audio FX track.
 
#define tracklist_selections_action_new_create_midi_fx(pl_setting, track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for a MIDI FX track.
 
#define tracklist_selections_action_new_create_instrument(pl_setting, track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for an instrument track.
 
#define tracklist_selections_action_new_create_audio_group(track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for an audio group track.
 
#define tracklist_selections_action_new_create_midi_group(track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for a MIDI group track.
 
#define tracklist_selections_action_new_create_midi(track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for a MIDI track.
 
#define tracklist_selections_action_new_create_folder(track_pos, num_tracks, err)
 Creates a new TracklistSelectionsAction for a folder track.
 
#define tracklist_selections_action_new_edit_generic(type, tls_before, tls_after, already_edited, err)
 Generic edit action.
 
#define tracklist_selections_action_new_edit_single_float(type, track, val_before, val_after, already_edited, err)
 Convenience wrapper over tracklist_selections_action_new() for single-track float edit changes.
 
#define tracklist_selections_action_new_edit_single_int(type, track, val_after, already_edited, err)
 Convenience wrapper over tracklist_selections_action_new() for single-track int edit changes.
 
#define tracklist_selections_action_new_edit_mute(tls_before, mute_new, err)
 
#define tracklist_selections_action_new_edit_mute_lane(track_lane, mute_new, err)
 
#define tracklist_selections_action_new_edit_solo(tls_before, solo_new, err)
 
#define tracklist_selections_action_new_edit_solo_lane(track_lane, solo_new, err)
 
#define tracklist_selections_action_new_edit_listen(tls_before, solo_new, err)
 
#define tracklist_selections_action_new_edit_enable(tls_before, enable_new, err)
 
#define tracklist_selections_action_new_edit_fold(tls_before, fold_new, err)
 
#define tracklist_selections_action_new_edit_direct_out(tls, port_connections_mgr, direct_out, err)
 
#define tracklist_selections_action_new_edit_remove_direct_out(tls, port_connections_mgr, err)
 
#define tracklist_selections_action_new_edit_color(tls, color, err)
 
#define tracklist_selections_action_new_edit_icon(tls, icon, err)
 
#define tracklist_selections_action_new_edit_comment(tls, comment, err)
 
#define tracklist_selections_action_new_edit_rename(track, port_connections_mgr, name, err)
 
#define tracklist_selections_action_new_edit_rename_lane(track_lane, name, err)
 
#define tracklist_selections_action_new_move(tls, port_connections_mgr, track_pos, err)
 Move tls to track_pos.
 
#define tracklist_selections_action_new_copy(tls, port_connections_mgr, track_pos, err)
 
#define tracklist_selections_action_new_move_inside(tls, port_connections_mgr, track_pos, err)
 Move inside a foldable track.
 
#define tracklist_selections_action_new_copy_inside(tls, port_connections_mgr, track_pos, err)
 
#define tracklist_selections_action_new_delete(tls, port_connections_mgr, err)
 
#define tracklist_selections_action_new_pin(tls, port_connections_mgr, err)
 Toggle the current pin status of the track.
 
#define tracklist_selections_action_new_unpin(tls, port_connections_mgr, err)
 Toggle the current pin status of the track.
 
#define tracklist_selections_action_perform_create(track_type, pl_setting, file_descr, track_pos, pos, num_tracks, disable_track_pos, err)
 
#define tracklist_selections_action_perform_create_audio_fx(pl_setting, track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for an audio FX track.
 
#define tracklist_selections_action_perform_create_midi_fx(pl_setting, track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for a MIDI FX track.
 
#define tracklist_selections_action_perform_create_instrument(pl_setting, track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for an instrument track.
 
#define tracklist_selections_action_perform_create_audio_group(track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for an audio group track.
 
#define tracklist_selections_action_perform_create_midi_group(track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for a MIDI group track.
 
#define tracklist_selections_action_perform_create_midi(track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for a MIDI track.
 
#define tracklist_selections_action_perform_create_folder(track_pos, num_tracks, err)
 Creates a perform TracklistSelectionsAction for a folder track.
 
#define tracklist_selections_action_perform_edit_generic(type, tls_before, tls_after, already_edited, err)
 Generic edit action.
 
#define tracklist_selections_action_perform_edit_single_float(type, track, val_before, val_after, already_edited, err)
 Convenience wrapper over tracklist_selections_action_perform() for single-track float edit changes.
 
#define tracklist_selections_action_perform_edit_single_int(type, track, val_after, already_edited, err)
 Convenience wrapper over tracklist_selections_action_perform() for single-track int edit changes.
 
#define tracklist_selections_action_perform_edit_mute(tls_before, mute_new, err)
 
#define tracklist_selections_action_perform_edit_mute_lane(track_lane, mute_new, err)
 
#define tracklist_selections_action_perform_edit_solo(tls_before, solo_new, err)
 
#define tracklist_selections_action_perform_edit_solo_lane(track_lane, solo_new, err)
 
#define tracklist_selections_action_perform_edit_listen(tls_before, solo_new, err)
 
#define tracklist_selections_action_perform_edit_enable(tls_before, enable_new, err)
 
#define tracklist_selections_action_perform_edit_fold(tls_before, fold_new, err)
 
#define tracklist_selections_action_perform_edit_direct_out(tls, port_connections_mgr, direct_out, err)
 
#define tracklist_selections_action_perform_edit_remove_direct_out(tls, port_connections_mgr, err)
 
#define tracklist_selections_action_perform_edit_color(tls, color, err)
 
#define tracklist_selections_action_perform_edit_icon(tls, icon, err)
 
#define tracklist_selections_action_perform_edit_comment(tls, comment, err)
 
#define tracklist_selections_action_perform_edit_rename(track, port_connections_mgr, name, err)
 
#define tracklist_selections_action_perform_edit_rename_lane(track_lane, name, err)
 
#define tracklist_selections_action_perform_move(tls, port_connections_mgr, track_pos, err)
 Move tls to track_pos.
 
#define tracklist_selections_action_perform_copy(tls, port_connections_mgr, track_pos, err)
 
#define tracklist_selections_action_perform_move_inside(tls, port_connections_mgr, track_pos, err)
 Move inside a foldable track.
 
#define tracklist_selections_action_perform_copy_inside(tls, port_connections_mgr, track_pos, err)
 
#define tracklist_selections_action_perform_delete(tls, port_connections_mgr, err)
 
#define tracklist_selections_action_perform_pin(tls, port_connections_mgr, err)
 Toggle the current pin status of the track.
 
#define tracklist_selections_action_perform_unpin(tls, port_connections_mgr, err)
 Toggle the current pin status of the track.
 
#define UNDO_MANAGER   (PROJECT->undo_manager)
 
#define UNDO_MANAGER_PERFORM_AND_PROPAGATE_ERR(action, err, ...)
 Second and last argument given must be a GError **.
 
#define undo_stack_size(x)   (stack_size ((x)->stack))
 
#define undo_stack_is_empty(x)   (stack_is_empty ((x)->stack))
 
#define undo_stack_is_full(x)   (stack_is_full ((x)->stack))
 
#define undo_stack_peek(x)   ((UndoableAction *) stack_peek ((x)->stack))
 
#define undo_stack_peek_last(x)    ((UndoableAction *) stack_peek_last ((x)->stack))
 

Enumerations

enum  ArrangerSelectionsActionType {
  AS_ACTION_AUTOMATION_FILL , AS_ACTION_CREATE , AS_ACTION_DELETE , AS_ACTION_DUPLICATE ,
  AS_ACTION_EDIT , AS_ACTION_LINK , AS_ACTION_MERGE , AS_ACTION_MOVE ,
  AS_ACTION_QUANTIZE , AS_ACTION_RECORD , AS_ACTION_RESIZE , AS_ACTION_SPLIT
}
 
enum  ArrangerSelectionsActionResizeType {
  ARRANGER_SELECTIONS_ACTION_RESIZE_L , ARRANGER_SELECTIONS_ACTION_RESIZE_R , ARRANGER_SELECTIONS_ACTION_RESIZE_L_LOOP , ARRANGER_SELECTIONS_ACTION_RESIZE_R_LOOP ,
  ARRANGER_SELECTIONS_ACTION_RESIZE_L_FADE , ARRANGER_SELECTIONS_ACTION_RESIZE_R_FADE , ARRANGER_SELECTIONS_ACTION_STRETCH_L , ARRANGER_SELECTIONS_ACTION_STRETCH_R
}
 Type used when the action is a RESIZE action. More...
 
enum  ArrangerSelectionsActionEditType {
  ARRANGER_SELECTIONS_ACTION_EDIT_NAME , ARRANGER_SELECTIONS_ACTION_EDIT_POS , ARRANGER_SELECTIONS_ACTION_EDIT_PRIMITIVE , ARRANGER_SELECTIONS_ACTION_EDIT_SCALE ,
  ARRANGER_SELECTIONS_ACTION_EDIT_FADES , ARRANGER_SELECTIONS_ACTION_EDIT_MUTE , ARRANGER_SELECTIONS_ACTION_EDIT_EDITOR_FUNCTION
}
 Type used when the action is an EDIT action. More...
 
enum  ChannelSendActionType {
  CHANNEL_SEND_ACTION_CONNECT_STEREO , CHANNEL_SEND_ACTION_CONNECT_MIDI , CHANNEL_SEND_ACTION_CONNECT_SIDECHAIN , CHANNEL_SEND_ACTION_CHANGE_AMOUNT ,
  CHANNEL_SEND_ACTION_CHANGE_PORTS , CHANNEL_SEND_ACTION_DISCONNECT
}
 
enum  ChordActionType { CHORD_ACTION_SINGLE , CHORD_ACTION_ALL }
 Type of chord action. More...
 
enum  MidiMappingActionType { MIDI_MAPPING_ACTION_BIND , MIDI_MAPPING_ACTION_UNBIND , MIDI_MAPPING_ACTION_ENABLE , MIDI_MAPPING_ACTION_DISABLE }
 
enum  PortActionType { PORT_ACTION_SET_CONTROL_VAL }
 
enum  PortConnectionActionType {
  PORT_CONNECTION_CONNECT , PORT_CONNECTION_DISCONNECT , PORT_CONNECTION_ENABLE , PORT_CONNECTION_DISABLE ,
  PORT_CONNECTION_CHANGE_MULTIPLIER
}
 
enum  RangeActionType { RANGE_ACTION_INSERT_SILENCE , RANGE_ACTION_REMOVE }
 
enum  TracklistSelectionsActionType {
  TRACKLIST_SELECTIONS_ACTION_COPY , TRACKLIST_SELECTIONS_ACTION_COPY_INSIDE , TRACKLIST_SELECTIONS_ACTION_CREATE , TRACKLIST_SELECTIONS_ACTION_DELETE ,
  TRACKLIST_SELECTIONS_ACTION_EDIT , TRACKLIST_SELECTIONS_ACTION_MOVE , TRACKLIST_SELECTIONS_ACTION_MOVE_INSIDE , TRACKLIST_SELECTIONS_ACTION_PIN ,
  TRACKLIST_SELECTIONS_ACTION_UNPIN
}
 
enum  EditTracksActionType {
  EDIT_TRACK_ACTION_TYPE_SOLO , EDIT_TRACK_ACTION_TYPE_SOLO_LANE , EDIT_TRACK_ACTION_TYPE_MUTE , EDIT_TRACK_ACTION_TYPE_MUTE_LANE ,
  EDIT_TRACK_ACTION_TYPE_LISTEN , EDIT_TRACK_ACTION_TYPE_ENABLE , EDIT_TRACK_ACTION_TYPE_FOLD , EDIT_TRACK_ACTION_TYPE_VOLUME ,
  EDIT_TRACK_ACTION_TYPE_PAN , EDIT_TRACK_ACTION_TYPE_DIRECT_OUT , EDIT_TRACK_ACTION_TYPE_RENAME , EDIT_TRACK_ACTION_TYPE_RENAME_LANE ,
  EDIT_TRACK_ACTION_TYPE_COLOR , EDIT_TRACK_ACTION_TYPE_COMMENT , EDIT_TRACK_ACTION_TYPE_ICON , EDIT_TRACK_ACTION_TYPE_MIDI_FADER_MODE
}
 Action type. More...
 
enum  TransportActionType { TRANSPORT_ACTION_BPM_CHANGE , TRANSPORT_ACTION_BEATS_PER_BAR_CHANGE , TRANSPORT_ACTION_BEAT_UNIT_CHANGE }
 
enum  UndoableActionType {
  UA_TRACKLIST_SELECTIONS , UA_CHANNEL_SEND , UA_MIXER_SELECTIONS , UA_ARRANGER_SELECTIONS ,
  UA_MIDI_MAPPING , UA_PORT_CONNECTION , UA_PORT , UA_RANGE ,
  UA_TRANSPORT , UA_CHORD
}
 Type of UndoableAction. More...
 

Functions

void actions_set_app_action_enabled (const char *action_name, const bool enabled)
 
void activate_about (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_preferences (GSimpleAction *action, GVariant *variant, gpointer user_data)
 Show preferences window.
 
void activate_log (GSimpleAction *action, GVariant *variant, gpointer user_data)
 Show preferences window.
 
 DECLARE_SIMPLE (activate_audition_mode)
 
 DECLARE_SIMPLE (activate_select_mode)
 
 DECLARE_SIMPLE (activate_edit_mode)
 
 DECLARE_SIMPLE (activate_cut_mode)
 
 DECLARE_SIMPLE (activate_eraser_mode)
 
 DECLARE_SIMPLE (activate_ramp_mode)
 
 DECLARE_SIMPLE (activate_quit)
 
 DECLARE_SIMPLE (activate_zoom_in)
 
 DECLARE_SIMPLE (activate_zoom_out)
 
 DECLARE_SIMPLE (activate_cycle_focus)
 
 DECLARE_SIMPLE (activate_cycle_focus_backwards)
 
 DECLARE_SIMPLE (activate_focus_first_widget)
 
COLD DECLARE_SIMPLE (activate_new)
 
COLD DECLARE_SIMPLE (activate_minimize)
 
COLD DECLARE_SIMPLE (activate_open)
 
COLD void activate_save (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
COLD DECLARE_SIMPLE (activate_save_as)
 
COLD DECLARE_SIMPLE (activate_export_as)
 
COLD DECLARE_SIMPLE (activate_export_graph)
 
void activate_properties (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
 DECLARE_SIMPLE (activate_undo)
 
 DECLARE_SIMPLE (activate_redo)
 
 DECLARE_SIMPLE (activate_undo_n)
 
 DECLARE_SIMPLE (activate_redo_n)
 
 DECLARE_SIMPLE (activate_cut)
 
 DECLARE_SIMPLE (activate_copy)
 
 DECLARE_SIMPLE (activate_paste)
 
 DECLARE_SIMPLE (activate_delete)
 
 DECLARE_SIMPLE (activate_duplicate)
 
 DECLARE_SIMPLE (activate_clear_selection)
 
 DECLARE_SIMPLE (activate_select_all)
 
void activate_toggle_left_panel (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_toggle_right_panel (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_toggle_bot_panel (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_toggle_top_panel (GSimpleAction *action, GVariant *variant, gpointer user_data)
 Toggle timeline visibility.
 
 DECLARE_SIMPLE (activate_toggle_drum_mode)
 
void change_state_show_automation_values (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void activate_toggle_status_bar (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_fullscreen (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
COLD DECLARE_SIMPLE (activate_news)
 
COLD DECLARE_SIMPLE (activate_manual)
 
COLD DECLARE_SIMPLE (activate_chat)
 
COLD DECLARE_SIMPLE (activate_bugreport)
 
COLD DECLARE_SIMPLE (activate_donate)
 
void activate_loop_selection (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_best_fit (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_original_size (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_snap_to_grid (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_snap_keep_offset (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
 DECLARE_SIMPLE (activate_import_file)
 
 DECLARE_SIMPLE (activate_create_audio_track)
 
 DECLARE_SIMPLE (activate_create_midi_track)
 
 DECLARE_SIMPLE (activate_create_audio_bus_track)
 
 DECLARE_SIMPLE (activate_create_midi_bus_track)
 
 DECLARE_SIMPLE (activate_create_audio_group_track)
 
 DECLARE_SIMPLE (activate_create_midi_group_track)
 
 DECLARE_SIMPLE (activate_create_folder_track)
 
 DECLARE_SIMPLE (activate_duplicate_selected_tracks)
 
 DECLARE_SIMPLE (activate_delete_selected_tracks)
 
 DECLARE_SIMPLE (activate_hide_selected_tracks)
 
 DECLARE_SIMPLE (activate_pin_selected_tracks)
 
 DECLARE_SIMPLE (activate_solo_selected_tracks)
 
 DECLARE_SIMPLE (activate_unsolo_selected_tracks)
 
 DECLARE_SIMPLE (activate_mute_selected_tracks)
 
 DECLARE_SIMPLE (activate_unmute_selected_tracks)
 
 DECLARE_SIMPLE (activate_listen_selected_tracks)
 
 DECLARE_SIMPLE (activate_unlisten_selected_tracks)
 
 DECLARE_SIMPLE (activate_enable_selected_tracks)
 
 DECLARE_SIMPLE (activate_disable_selected_tracks)
 
 DECLARE_SIMPLE (activate_change_track_color)
 
 DECLARE_SIMPLE (activate_track_set_midi_channel)
 
 DECLARE_SIMPLE (activate_quick_bounce_selected_tracks)
 
 DECLARE_SIMPLE (activate_bounce_selected_tracks)
 
 DECLARE_SIMPLE (activate_selected_tracks_direct_out_to)
 
 DECLARE_SIMPLE (activate_selected_tracks_direct_out_new)
 
 DECLARE_SIMPLE (activate_toggle_track_passthrough_input)
 
 DECLARE_SIMPLE (activate_show_used_automation_lanes_on_selected_tracks)
 
 DECLARE_SIMPLE (activate_hide_unused_automation_lanes_on_selected_tracks)
 
 DECLARE_SIMPLE (activate_append_track_objects_to_selection)
 
 DECLARE_SIMPLE (activate_append_lane_objects_to_selection)
 
 DECLARE_SIMPLE (activate_append_lane_automation_regions_to_selection)
 
void activate_snap_events (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
 DECLARE_SIMPLE (activate_goto_start_marker)
 
 DECLARE_SIMPLE (activate_goto_end_marker)
 
 DECLARE_SIMPLE (activate_goto_prev_marker)
 
 DECLARE_SIMPLE (activate_goto_next_marker)
 
 DECLARE_SIMPLE (activate_play_pause)
 
 DECLARE_SIMPLE (activate_record_play)
 
void change_state_dim_output (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void change_state_loop (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void change_state_metronome (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void change_state_musical_mode (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void change_state_listen_notes (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void change_state_ghost_notes (GSimpleAction *action, GVariant *value, gpointer user_data)
 
void activate_quick_quantize (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_quantize_options (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
 DECLARE_SIMPLE (activate_mute_selection)
 
 DECLARE_SIMPLE (activate_merge_selection)
 
void activate_set_timebase_master (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_set_transport_client (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_unlink_jack_transport (GSimpleAction *action, GVariant *variant, gpointer user_data)
 
void activate_bind_midi_cc (GSimpleAction *action, GVariant *_variant, gpointer user_data)
 All purpose menuitem callback for binding MIDI CC to a port.
 
 DECLARE_SIMPLE (activate_delete_midi_cc_bindings)
 
 DECLARE_SIMPLE (activate_toggle_timeline_event_viewer)
 
 DECLARE_SIMPLE (activate_toggle_editor_event_viewer)
 
 DECLARE_SIMPLE (activate_insert_silence)
 
 DECLARE_SIMPLE (activate_remove_range)
 
 DECLARE_SIMPLE (change_state_timeline_playhead_scroll_edges)
 
 DECLARE_SIMPLE (change_state_timeline_playhead_follow)
 
 DECLARE_SIMPLE (change_state_editor_playhead_scroll_edges)
 
 DECLARE_SIMPLE (change_state_editor_playhead_follow)
 
 DECLARE_SIMPLE (activate_editor_function)
 
 DECLARE_SIMPLE (activate_editor_function_lv2)
 
COLD DECLARE_SIMPLE (activate_midi_editor_highlighting)
 
 DECLARE_SIMPLE (activate_rename_track)
 
 DECLARE_SIMPLE (activate_rename_arranger_object)
 
 DECLARE_SIMPLE (activate_create_arranger_object)
 
 DECLARE_SIMPLE (activate_change_region_color)
 
 DECLARE_SIMPLE (activate_reset_region_color)
 
 DECLARE_SIMPLE (activate_move_automation_regions)
 
 DECLARE_SIMPLE (activate_add_region)
 
 DECLARE_SIMPLE (activate_go_to_start)
 
 DECLARE_SIMPLE (activate_input_bpm)
 
 DECLARE_SIMPLE (activate_tap_bpm)
 
 DECLARE_SIMPLE (activate_nudge_selection)
 
 DECLARE_SIMPLE (activate_detect_bpm)
 
 DECLARE_SIMPLE (activate_timeline_function)
 
 DECLARE_SIMPLE (activate_export_midi_regions)
 
 DECLARE_SIMPLE (activate_quick_bounce_selections)
 
 DECLARE_SIMPLE (activate_bounce_selections)
 
 DECLARE_SIMPLE (activate_set_curve_algorithm)
 
 DECLARE_SIMPLE (activate_set_region_fade_in_algorithm_preset)
 
 DECLARE_SIMPLE (activate_set_region_fade_out_algorithm_preset)
 
 DECLARE_SIMPLE (activate_arranger_object_view_info)
 
 DECLARE_SIMPLE (activate_save_chord_preset)
 
 DECLARE_SIMPLE (activate_load_chord_preset)
 
 DECLARE_SIMPLE (activate_load_chord_preset_from_scale)
 
 DECLARE_SIMPLE (activate_transpose_chord_pad)
 
 DECLARE_SIMPLE (activate_add_chord_preset_pack)
 
 DECLARE_SIMPLE (activate_delete_chord_preset_pack)
 
 DECLARE_SIMPLE (activate_rename_chord_preset_pack)
 
 DECLARE_SIMPLE (activate_delete_chord_preset)
 
 DECLARE_SIMPLE (activate_rename_chord_preset)
 
 DECLARE_SIMPLE (activate_reset_stereo_balance)
 
 DECLARE_SIMPLE (activate_reset_fader)
 
 DECLARE_SIMPLE (activate_reset_control)
 
 DECLARE_SIMPLE (activate_port_view_info)
 
 DECLARE_SIMPLE (activate_port_connection_remove)
 
 DECLARE_SIMPLE (activate_plugin_toggle_enabled)
 
 DECLARE_SIMPLE (activate_plugin_inspect)
 
 DECLARE_SIMPLE (activate_mixer_selections_delete)
 
 DECLARE_SIMPLE (activate_plugin_change_load_behavior)
 
 DECLARE_SIMPLE (activate_panel_file_browser_add_bookmark)
 
 DECLARE_SIMPLE (activate_panel_file_browser_delete_bookmark)
 
 DECLARE_SIMPLE (activate_plugin_browser_add_to_project)
 
 DECLARE_SIMPLE (activate_plugin_browser_add_to_project_carla)
 
 DECLARE_SIMPLE (activate_plugin_browser_add_to_project_bridged_ui)
 
 DECLARE_SIMPLE (activate_plugin_browser_add_to_project_bridged_full)
 
 DECLARE_SIMPLE (change_state_plugin_browser_toggle_generic_ui)
 
 DECLARE_SIMPLE (activate_plugin_browser_add_to_collection)
 
 DECLARE_SIMPLE (activate_plugin_browser_remove_from_collection)
 
 DECLARE_SIMPLE (activate_plugin_browser_reset)
 
 DECLARE_SIMPLE (activate_plugin_collection_add)
 
 DECLARE_SIMPLE (activate_plugin_collection_rename)
 
 DECLARE_SIMPLE (activate_plugin_collection_remove)
 
 DECLARE_SIMPLE (activate_app_action_wrapper)
 Used as a workaround for GTK bug 4422.
 
void arranger_selections_action_init_loaded (ArrangerSelectionsAction *self)
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_create_or_delete (ArrangerSelections *sel, const bool create, GError **error)
 Creates a new action for creating/deleting objects.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_record (ArrangerSelections *sel_before, ArrangerSelections *sel_after, const bool already_recorded, GError **error)
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_move_or_duplicate (ArrangerSelections *sel, const bool move, const double ticks, const int delta_chords, const int delta_pitch, const int delta_tracks, const int delta_lanes, const double delta_normalized_amount, const PortIdentifier *tgt_port_id, const bool already_moved, GError **error)
 Creates a new action for moving or duplicating objects.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_link (ArrangerSelections *sel_before, ArrangerSelections *sel_after, const double ticks, const int delta_tracks, const int delta_lanes, const bool already_moved, GError **error)
 Creates a new action for linking regions.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_edit (ArrangerSelections *sel_before, ArrangerSelections *sel_after, ArrangerSelectionsActionEditType type, bool already_edited, GError **error)
 Creates a new action for editing properties of an object.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_edit_single_obj (const ArrangerObject *obj_before, const ArrangerObject *obj_after, ArrangerSelectionsActionEditType type, bool already_edited, GError **error)
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_edit_midi_function (ArrangerSelections *sel_before, MidiFunctionType midi_func_type, MidiFunctionOpts opts, GError **error)
 Wrapper over arranger_selections_action_new_edit() for MIDI functions.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_edit_automation_function (ArrangerSelections *sel_before, AutomationFunctionType automation_func_type, GError **error)
 Wrapper over arranger_selections_action_new_edit() for automation functions.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_edit_audio_function (ArrangerSelections *sel_before, AudioFunctionType audio_func_type, AudioFunctionOpts opts, const char *uri, GError **error)
 Wrapper over arranger_selections_action_new_edit() for automation functions.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_automation_fill (ZRegion *region_before, ZRegion *region_after, bool already_changed, GError **error)
 Creates a new action for automation autofill.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_split (ArrangerSelections *sel, const Position *pos, GError **error)
 Creates a new action for splitting ArrangerObject's.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_merge (ArrangerSelections *sel, GError **error)
 Creates a new action for merging ArrangerObject's.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_resize (ArrangerSelections *sel_before, ArrangerSelections *sel_after, ArrangerSelectionsActionResizeType type, const double ticks, GError **error)
 Creates a new action for resizing ArrangerObject's.
 
WARN_UNUSED_RESULT UndoableActionarranger_selections_action_new_quantize (ArrangerSelections *sel, QuantizeOptions *opts, GError **error)
 Creates a new action for quantizing ArrangerObject's.
 
NONNULL ArrangerSelectionsActionarranger_selections_action_clone (const ArrangerSelectionsAction *src)
 
bool arranger_selections_action_perform_create_or_delete (ArrangerSelections *sel, const bool create, GError **error)
 
bool arranger_selections_action_perform_record (ArrangerSelections *sel_before, ArrangerSelections *sel_after, const bool already_recorded, GError **error)
 
bool arranger_selections_action_perform_move_or_duplicate (ArrangerSelections *sel, const bool move, const double ticks, const int delta_chords, const int delta_pitch, const int delta_tracks, const int delta_lanes, const double delta_normalized_amount, const PortIdentifier *port_id, const bool already_moved, GError **error)
 
bool arranger_selections_action_perform_link (ArrangerSelections *sel_before, ArrangerSelections *sel_after, const double ticks, const int delta_tracks, const int delta_lanes, const bool already_moved, GError **error)
 
bool arranger_selections_action_perform_edit (ArrangerSelections *sel_before, ArrangerSelections *sel_after, ArrangerSelectionsActionEditType type, bool already_edited, GError **error)
 
bool arranger_selections_action_perform_edit_single_obj (const ArrangerObject *obj_before, const ArrangerObject *obj_after, ArrangerSelectionsActionEditType type, bool already_edited, GError **error)
 
bool arranger_selections_action_perform_edit_midi_function (ArrangerSelections *sel_before, MidiFunctionType midi_func_type, MidiFunctionOpts opts, GError **error)
 
bool arranger_selections_action_perform_edit_automation_function (ArrangerSelections *sel_before, AutomationFunctionType automation_func_type, GError **error)
 
bool arranger_selections_action_perform_edit_audio_function (ArrangerSelections *sel_before, AudioFunctionType audio_func_type, AudioFunctionOpts opts, const char *uri, GError **error)
 
bool arranger_selections_action_perform_automation_fill (ZRegion *region_before, ZRegion *region_after, bool already_changed, GError **error)
 
bool arranger_selections_action_perform_split (ArrangerSelections *sel, const Position *pos, GError **error)
 
bool arranger_selections_action_perform_merge (ArrangerSelections *sel, GError **error)
 
bool arranger_selections_action_perform_resize (ArrangerSelections *sel_before, ArrangerSelections *sel_after, ArrangerSelectionsActionResizeType type, const double ticks, GError **error)
 
bool arranger_selections_action_perform_quantize (ArrangerSelections *sel, QuantizeOptions *opts, GError **error)
 
int arranger_selections_action_do (ArrangerSelectionsAction *self, GError **error)
 
int arranger_selections_action_undo (ArrangerSelectionsAction *self, GError **error)
 
char * arranger_selections_action_stringize (ArrangerSelectionsAction *self)
 
bool arranger_selections_action_contains_clip (ArrangerSelectionsAction *self, AudioClip *clip)
 
void arranger_selections_action_free (ArrangerSelectionsAction *self)
 
void channel_send_action_init_loaded (ChannelSendAction *self)
 
WARN_UNUSED_RESULT UndoableActionchannel_send_action_new (ChannelSend *send, ChannelSendActionType type, Port *port, StereoPorts *stereo, float amount, const PortConnectionsManager *port_connections_mgr, GError **error)
 Creates a new action.
 
NONNULL ChannelSendActionchannel_send_action_clone (const ChannelSendAction *src)
 
bool channel_send_action_perform (ChannelSend *send, ChannelSendActionType type, Port *port, StereoPorts *stereo, float amount, const PortConnectionsManager *port_connections_mgr, GError **error)
 Wrapper to create action and perform it.
 
int channel_send_action_do (ChannelSendAction *self, GError **error)
 
int channel_send_action_undo (ChannelSendAction *self, GError **error)
 
char * channel_send_action_stringize (ChannelSendAction *self)
 
void channel_send_action_free (ChannelSendAction *self)
 
void chord_action_init_loaded (ChordAction *self)
 
WARN_UNUSED_RESULT UndoableActionchord_action_new (const ChordDescriptor **chords_before, const ChordDescriptor **chords_after, const ChordDescriptor *chord, const int chord_idx, GError **error)
 Creates a new action.
 
NONNULL ChordActionchord_action_clone (const ChordAction *src)
 
bool chord_action_perform (const ChordDescriptor **chords_before, const ChordDescriptor **chords_after, const ChordDescriptor *chord, const int chord_idx, GError **error)
 Wrapper to create action and perform it.
 
int chord_action_do (ChordAction *self, GError **error)
 
int chord_action_undo (ChordAction *self, GError **error)
 
char * chord_action_stringize (ChordAction *self)
 
void chord_action_free (ChordAction *self)
 
void midi_mapping_action_init_loaded (MidiMappingAction *self)
 
WARN_UNUSED_RESULT UndoableActionmidi_mapping_action_new_enable (int idx, bool enable, GError **error)
 Creates a new action.
 
WARN_UNUSED_RESULT UndoableActionmidi_mapping_action_new_bind (midi_byte_t *buf, ExtPort *device_port, Port *dest_port, GError **error)
 Creates a new action.
 
WARN_UNUSED_RESULT UndoableActionmidi_mapping_action_new_unbind (int idx, GError **error)
 Creates a new action.
 
NONNULL MidiMappingActionmidi_mapping_action_clone (const MidiMappingAction *src)
 
bool midi_mapping_action_perform_enable (int idx, bool enable, GError **error)
 Wrapper of midi_mapping_action_new_enable().
 
bool midi_mapping_action_perform_bind (midi_byte_t *buf, ExtPort *device_port, Port *dest_port, GError **error)
 Wrapper of midi_mapping_action_new_bind().
 
bool midi_mapping_action_perform_unbind (int idx, GError **error)
 Wrapper of midi_mapping_action_new_unbind().
 
int midi_mapping_action_do (MidiMappingAction *self, GError **error)
 
int midi_mapping_action_undo (MidiMappingAction *self, GError **error)
 
char * midi_mapping_action_stringize (MidiMappingAction *self)
 
void midi_mapping_action_free (MidiMappingAction *self)
 
void port_action_init_loaded (PortAction *self)
 
WARN_UNUSED_RESULT UndoableActionport_action_new (PortActionType type, PortIdentifier *port_id, float val, bool is_normalized, GError **error)
 Create a new action.
 
WARN_UNUSED_RESULT UndoableActionport_action_new_reset_control (PortIdentifier *port_id, GError **error)
 Create a new action.
 
NONNULL PortActionport_action_clone (const PortAction *src)
 
bool port_action_perform (PortActionType type, PortIdentifier *port_id, float val, bool is_normalized, GError **error)
 
bool port_action_perform_reset_control (PortIdentifier *port_id, GError **error)
 
int port_action_do (PortAction *self, GError **error)
 
int port_action_undo (PortAction *self, GError **error)
 
char * port_action_stringize (PortAction *self)
 
void port_action_free (PortAction *self)
 
void port_connection_action_init_loaded (PortConnectionAction *self)
 
WARN_UNUSED_RESULT UndoableActionport_connection_action_new (PortConnectionActionType type, PortIdentifier *src_id, PortIdentifier *dest_id, float new_val, GError **error)
 Create a new action.
 
NONNULL PortConnectionActionport_connection_action_clone (const PortConnectionAction *src)
 
bool port_connection_action_perform (PortConnectionActionType type, PortIdentifier *src_id, PortIdentifier *dest_id, float new_val, GError **error)
 
int port_connection_action_do (PortConnectionAction *self, GError **error)
 
int port_connection_action_undo (PortConnectionAction *self, GError **error)
 
char * port_connection_action_stringize (PortConnectionAction *self)
 
void port_connection_action_free (PortConnectionAction *self)
 
void range_action_init_loaded (RangeAction *self)
 
WARN_UNUSED_RESULT UndoableActionrange_action_new (RangeActionType type, Position *start_pos, Position *end_pos, GError **error)
 Creates a new action.
 
NONNULL RangeActionrange_action_clone (const RangeAction *src)
 
bool range_action_perform (RangeActionType type, Position *start_pos, Position *end_pos, GError **error)
 
int range_action_do (RangeAction *self, GError **error)
 
int range_action_undo (RangeAction *self, GError **error)
 
char * range_action_stringize (RangeAction *self)
 
void range_action_free (RangeAction *self)
 
void tracklist_selections_action_init_loaded (TracklistSelectionsAction *self)
 
WARN_UNUSED_RESULT UndoableActiontracklist_selections_action_new (TracklistSelectionsActionType type, TracklistSelections *tls_before, TracklistSelections *tls_after, const PortConnectionsManager *port_connections_mgr, Track *track, TrackType track_type, const PluginSetting *pl_setting, const SupportedFile *file_descr, int track_pos, int lane_pos, const Position *pos, int num_tracks, EditTracksActionType edit_type, int ival_after, const GdkRGBA *color_new, float val_before, float val_after, const char *new_txt, bool already_edited, GError **error)
 Creates a new TracklistSelectionsAction.
 
NONNULL TracklistSelectionsActiontracklist_selections_action_clone (const TracklistSelectionsAction *src)
 
bool tracklist_selections_action_perform (TracklistSelectionsActionType type, TracklistSelections *tls_before, TracklistSelections *tls_after, const PortConnectionsManager *port_connections_mgr, Track *track, TrackType track_type, const PluginSetting *pl_setting, const SupportedFile *file_descr, int track_pos, int lane_pos, const Position *pos, int num_tracks, EditTracksActionType edit_type, int ival_after, const GdkRGBA *color_new, float val_before, float val_after, const char *new_txt, bool already_edited, GError **error)
 
bool tracklist_selections_action_perform_set_direct_out (TracklistSelections *self, PortConnectionsManager *port_connections_mgr, Track *direct_out, GError **error)
 Edit or remove direct out.
 
int tracklist_selections_action_do (TracklistSelectionsAction *self, GError **error)
 
int tracklist_selections_action_undo (TracklistSelectionsAction *self, GError **error)
 
char * tracklist_selections_action_stringize (TracklistSelectionsAction *self)
 
void tracklist_selections_action_free (TracklistSelectionsAction *self)
 
void transport_action_init_loaded (TransportAction *self)
 
WARN_UNUSED_RESULT UndoableActiontransport_action_new_bpm_change (bpm_t bpm_before, bpm_t bpm_after, bool already_done, GError **error)
 
WARN_UNUSED_RESULT UndoableActiontransport_action_new_time_sig_change (TransportActionType type, int before, int after, bool already_done, GError **error)
 
NONNULL TransportActiontransport_action_clone (const TransportAction *src)
 
bool transport_action_perform_bpm_change (bpm_t bpm_before, bpm_t bpm_after, bool already_done, GError **error)
 
bool transport_action_perform_time_sig_change (TransportActionType type, int before, int after, bool already_done, GError **error)
 
int transport_action_do (TransportAction *self, GError **error)
 
int transport_action_undo (TransportAction *self, GError **error)
 
char * transport_action_stringize (TransportAction *self)
 
void transport_action_free (TransportAction *self)
 
NONNULL void undo_manager_init_loaded (UndoManager *self)
 Inits the undo manager by populating the undo/redo stacks.
 
WARN_UNUSED_RESULT UndoManagerundo_manager_new (void)
 Inits the undo manager by creating the undo/redo stacks.
 
 NONNULL_ARGS (1) int undo_manager_undo(UndoManager *self
 Undo last action.
 
int undo_manager_perform (UndoManager *self, UndoableAction *action, GError **error)
 Performs the action and pushes it to the undo stack.
 
NONNULL bool undo_manager_contains_clip (UndoManager *self, AudioClip *clip)
 Returns whether the given clip is used by any stack.
 
NONNULL void undo_manager_get_plugins (UndoManager *self, GPtrArray *arr)
 Returns all plugins in the undo stacks.
 
NONNULL UndoableActionundo_manager_get_last_action (UndoManager *self)
 Returns the last performed action, or NULL if the stack is empty.
 
NONNULL void undo_manager_clear_stacks (UndoManager *self, bool free)
 Clears the undo and redo stacks.
 
NONNULL UndoManagerundo_manager_clone (const UndoManager *src)
 
NONNULL void undo_manager_free (UndoManager *self)
 
void undo_stack_init_loaded (UndoStack *self)
 
UndoStackundo_stack_new (void)
 Creates a new stack for undoable actions.
 
NONNULL UndoStackundo_stack_clone (const UndoStack *src)
 
char * undo_stack_get_as_string (UndoStack *self, int limit)
 Gets the list of actions as a string.
 
NONNULL size_t undo_stack_get_total_cached_actions (UndoStack *self)
 Returns the total cached actions.
 
void undo_stack_push (UndoStack *self, UndoableAction *action)
 
UndoableActionundo_stack_pop (UndoStack *self)
 
UndoableActionundo_stack_pop_last (UndoStack *self)
 Pops the last element and moves everything back.
 
bool undo_stack_contains_clip (UndoStack *self, AudioClip *clip)
 
bool undo_stack_contains_action (UndoStack *self, UndoableAction *ua)
 Checks if the undo stack contains the given action pointer.
 
NONNULL void undo_stack_get_plugins (UndoStack *self, GPtrArray *arr)
 Returns the plugins referred to in the undo stack.
 
void undo_stack_clear (UndoStack *self, bool free)
 Clears the stack, optionally freeing all the elements.
 
void undo_stack_free (UndoStack *self)
 
NONNULL void undoable_action_init_loaded (UndoableAction *self)
 
NONNULL void undoable_action_init (UndoableAction *self, UndoableActionType type)
 Initializer to be used by implementing actions.
 
NONNULL bool undoable_action_needs_pause (UndoableAction *self)
 Returns whether the action requires pausing the engine.
 
NONNULL bool undoable_action_can_contain_clip (UndoableAction *self)
 Checks whether the action can contain an audio clip.
 
NONNULL bool undoable_action_contains_clip (UndoableAction *self, AudioClip *clip)
 Checks whether the action actually contains or refers to the given audio clip.
 
NONNULL void undoable_action_get_plugins (UndoableAction *self, GPtrArray *arr)
 
NONNULL void undoable_action_set_num_actions (UndoableAction *self, int num_actions)
 Sets the number of actions for this action.
 
void undoable_action_save_or_load_port_connections (UndoableAction *self, bool _do, PortConnectionsManager **before, PortConnectionsManager **after)
 To be used by actions that save/load port connections.
 
int undoable_action_do (UndoableAction *self, GError **error)
 Performs the action.
 
int undoable_action_undo (UndoableAction *self, GError **error)
 Undoes the action.
 
void undoable_action_free (UndoableAction *self)
 
NONNULL char * undoable_action_to_string (UndoableAction *ua)
 Stringizes the action to be used in Undo/Redo buttons.
 

Variables

GError ** error
 

Detailed Description

User action implementations.

Macro Definition Documentation

◆ arranger_selections_action_new_create

#define arranger_selections_action_new_create ( sel,
error )
Value:
(ArrangerSelections *) sel, true, error)
WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_create_or_delete(ArrangerSelections *sel, const bool create, GError **error)
Creates a new action for creating/deleting objects.

Definition at line 264 of file arranger_selections.h.

◆ arranger_selections_action_new_delete

#define arranger_selections_action_new_delete ( sel,
error )
Value:

Definition at line 268 of file arranger_selections.h.

◆ arranger_selections_action_new_duplicate

#define arranger_selections_action_new_duplicate ( sel,
ticks,
chords,
pitch,
tracks,
lanes,
norm_amt,
port_id,
already_moved,
error )
Value:
(ArrangerSelections *) sel, 0, ticks, chords, pitch, tracks, lanes, \
norm_amt, port_id, already_moved, error)
WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_move_or_duplicate(ArrangerSelections *sel, const bool move, const double ticks, const int delta_chords, const int delta_pitch, const int delta_tracks, const int delta_lanes, const double delta_normalized_amount, const PortIdentifier *tgt_port_id, const bool already_moved, GError **error)
Creates a new action for moving or duplicating objects.

Definition at line 310 of file arranger_selections.h.

◆ arranger_selections_action_new_duplicate_automation

#define arranger_selections_action_new_duplicate_automation ( sel,
ticks,
norm_amt,
already_moved,
error )
Value:
arranger_selections_action_new_duplicate ( \
sel, ticks, 0, 0, 0, 0, norm_amt, NULL, already_moved, error)

Definition at line 349 of file arranger_selections.h.

◆ arranger_selections_action_new_duplicate_chord

#define arranger_selections_action_new_duplicate_chord ( sel,
ticks,
delta_chords,
already_moved,
error )
Value:
arranger_selections_action_new_duplicate ( \
sel, ticks, delta_chords, 0, 0, 0, 0, NULL, already_moved, error)

Definition at line 340 of file arranger_selections.h.

◆ arranger_selections_action_new_duplicate_midi

#define arranger_selections_action_new_duplicate_midi ( sel,
ticks,
delta_pitch,
already_moved,
error )
Value:
arranger_selections_action_new_duplicate ( \
sel, ticks, 0, delta_pitch, 0, 0, 0, NULL, already_moved, error)

Definition at line 332 of file arranger_selections.h.

◆ arranger_selections_action_new_duplicate_timeline

#define arranger_selections_action_new_duplicate_timeline ( sel,
ticks,
delta_tracks,
delta_lanes,
port_id,
already_moved,
error )
Value:
arranger_selections_action_new_duplicate ( \
sel, ticks, 0, 0, delta_tracks, delta_lanes, 0, port_id, already_moved, \
error)

Definition at line 322 of file arranger_selections.h.

◆ arranger_selections_action_new_move

#define arranger_selections_action_new_move ( sel,
ticks,
chords,
pitch,
tracks,
lanes,
norm_amt,
port_id,
already_moved,
error )
Value:
(ArrangerSelections *) sel, 1, ticks, chords, pitch, tracks, lanes, \
norm_amt, port_id, already_moved, error)

Definition at line 304 of file arranger_selections.h.

◆ arranger_selections_action_new_move_automation

#define arranger_selections_action_new_move_automation ( sel,
ticks,
norm_amt,
already_moved,
error )
Value:
arranger_selections_action_new_move ( \
sel, ticks, 0, 0, 0, 0, norm_amt, NULL, already_moved, error)

Definition at line 345 of file arranger_selections.h.

◆ arranger_selections_action_new_move_chord

#define arranger_selections_action_new_move_chord ( sel,
ticks,
delta_chords,
already_moved,
error )
Value:
arranger_selections_action_new_move ( \
sel, ticks, delta_chords, 0, 0, 0, 0, NULL, already_moved, error)

Definition at line 336 of file arranger_selections.h.

◆ arranger_selections_action_new_move_midi

#define arranger_selections_action_new_move_midi ( sel,
ticks,
delta_pitch,
already_moved,
error )
Value:
arranger_selections_action_new_move ( \
sel, ticks, 0, delta_pitch, 0, 0, 0, NULL, already_moved, error)

Definition at line 328 of file arranger_selections.h.

◆ arranger_selections_action_new_move_timeline

#define arranger_selections_action_new_move_timeline ( sel,
ticks,
delta_tracks,
delta_lanes,
port_id,
already_moved,
error )
Value:
arranger_selections_action_new_move ( \
sel, ticks, 0, 0, delta_tracks, delta_lanes, 0, port_id, already_moved, \
error)

Definition at line 317 of file arranger_selections.h.

◆ arranger_selections_action_perform_create

#define arranger_selections_action_perform_create ( sel,
error )
Value:
arranger_selections_action_perform_create_or_delete ( \
(ArrangerSelections *) sel, true, error)

Definition at line 505 of file arranger_selections.h.

◆ arranger_selections_action_perform_delete

#define arranger_selections_action_perform_delete ( sel,
error )
Value:
arranger_selections_action_perform_create_or_delete ( \
(ArrangerSelections *) sel, false, error)

Definition at line 509 of file arranger_selections.h.

◆ arranger_selections_action_perform_duplicate

#define arranger_selections_action_perform_duplicate ( sel,
ticks,
chords,
pitch,
tracks,
lanes,
norm_amt,
port_id,
already_moved,
error )
Value:
arranger_selections_action_perform_move_or_duplicate ( \
(ArrangerSelections *) sel, 0, ticks, chords, pitch, tracks, lanes, \
norm_amt, port_id, already_moved, error)

Definition at line 540 of file arranger_selections.h.

◆ arranger_selections_action_perform_duplicate_automation

#define arranger_selections_action_perform_duplicate_automation ( sel,
ticks,
norm_amt,
already_moved,
error )
Value:
arranger_selections_action_perform_duplicate ( \
sel, ticks, 0, 0, 0, 0, norm_amt, NULL, already_moved, error)

Definition at line 579 of file arranger_selections.h.

◆ arranger_selections_action_perform_duplicate_chord

#define arranger_selections_action_perform_duplicate_chord ( sel,
ticks,
delta_chords,
already_moved,
error )
Value:
arranger_selections_action_perform_duplicate ( \
sel, ticks, delta_chords, 0, 0, 0, 0, NULL, already_moved, error)

Definition at line 570 of file arranger_selections.h.

◆ arranger_selections_action_perform_duplicate_midi

#define arranger_selections_action_perform_duplicate_midi ( sel,
ticks,
delta_pitch,
already_moved,
error )
Value:
arranger_selections_action_perform_duplicate ( \
sel, ticks, 0, delta_pitch, 0, 0, 0, NULL, already_moved, error)

Definition at line 562 of file arranger_selections.h.

◆ arranger_selections_action_perform_duplicate_timeline

#define arranger_selections_action_perform_duplicate_timeline ( sel,
ticks,
delta_tracks,
delta_lanes,
port_id,
already_moved,
error )
Value:
arranger_selections_action_perform_duplicate ( \
sel, ticks, 0, 0, delta_tracks, delta_lanes, 0, port_id, already_moved, \
error)

Definition at line 552 of file arranger_selections.h.

◆ arranger_selections_action_perform_move

#define arranger_selections_action_perform_move ( sel,
ticks,
chords,
pitch,
tracks,
lanes,
norm_amt,
port_id,
already_moved,
error )
Value:
arranger_selections_action_perform_move_or_duplicate ( \
(ArrangerSelections *) sel, 1, ticks, chords, pitch, tracks, lanes, \
norm_amt, port_id, already_moved, error)

Definition at line 534 of file arranger_selections.h.

◆ arranger_selections_action_perform_move_automation

#define arranger_selections_action_perform_move_automation ( sel,
ticks,
norm_amt,
already_moved,
error )
Value:
arranger_selections_action_perform_move ( \
sel, ticks, 0, 0, 0, 0, norm_amt, NULL, already_moved, error)

Definition at line 575 of file arranger_selections.h.

◆ arranger_selections_action_perform_move_chord

#define arranger_selections_action_perform_move_chord ( sel,
ticks,
delta_chords,
already_moved,
error )
Value:
arranger_selections_action_perform_move ( \
sel, ticks, delta_chords, 0, 0, 0, 0, NULL, already_moved, error)

Definition at line 566 of file arranger_selections.h.

◆ arranger_selections_action_perform_move_midi

#define arranger_selections_action_perform_move_midi ( sel,
ticks,
delta_pitch,
already_moved,
error )
Value:
arranger_selections_action_perform_move ( \
sel, ticks, 0, delta_pitch, 0, 0, 0, NULL, already_moved, error)

Definition at line 558 of file arranger_selections.h.

◆ arranger_selections_action_perform_move_timeline

#define arranger_selections_action_perform_move_timeline ( sel,
ticks,
delta_tracks,
delta_lanes,
port_id,
already_moved,
error )
Value:
arranger_selections_action_perform_move ( \
sel, ticks, 0, 0, delta_tracks, delta_lanes, 0, port_id, already_moved, \
error)

Definition at line 547 of file arranger_selections.h.

◆ channel_send_action_new_change_amount

#define channel_send_action_new_change_amount ( send,
amt,
error )
Value:
send, CHANNEL_SEND_ACTION_CHANGE_AMOUNT, NULL, NULL, amt, NULL, error)
WARN_UNUSED_RESULT UndoableAction * channel_send_action_new(ChannelSend *send, ChannelSendActionType type, Port *port, StereoPorts *stereo, float amount, const PortConnectionsManager *port_connections_mgr, GError **error)
Creates a new action.

Definition at line 106 of file channel_send_action.h.

◆ channel_send_action_new_connect_audio

#define channel_send_action_new_connect_audio ( send,
stereo,
error )
Value:
send, CHANNEL_SEND_ACTION_CONNECT_STEREO, NULL, stereo, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 96 of file channel_send_action.h.

◆ channel_send_action_new_connect_midi

#define channel_send_action_new_connect_midi ( send,
midi,
error )
Value:
send, CHANNEL_SEND_ACTION_CONNECT_MIDI, midi, NULL, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 91 of file channel_send_action.h.

◆ channel_send_action_new_connect_sidechain

#define channel_send_action_new_connect_sidechain ( send,
stereo,
error )
Value:
send, CHANNEL_SEND_ACTION_CONNECT_SIDECHAIN, NULL, stereo, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 101 of file channel_send_action.h.

◆ channel_send_action_new_disconnect

#define channel_send_action_new_disconnect ( send,
error )
Value:
send, CHANNEL_SEND_ACTION_DISCONNECT, NULL, NULL, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 86 of file channel_send_action.h.

◆ channel_send_action_perform_change_amount

#define channel_send_action_perform_change_amount ( send,
amt,
error )
Value:
send, CHANNEL_SEND_ACTION_CHANGE_AMOUNT, NULL, NULL, amt, NULL, error)
bool channel_send_action_perform(ChannelSend *send, ChannelSendActionType type, Port *port, StereoPorts *stereo, float amount, const PortConnectionsManager *port_connections_mgr, GError **error)
Wrapper to create action and perform it.

Definition at line 149 of file channel_send_action.h.

◆ channel_send_action_perform_connect_audio

#define channel_send_action_perform_connect_audio ( send,
stereo,
error )
Value:
send, CHANNEL_SEND_ACTION_CONNECT_STEREO, NULL, stereo, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 139 of file channel_send_action.h.

◆ channel_send_action_perform_connect_midi

#define channel_send_action_perform_connect_midi ( send,
midi,
error )
Value:
send, CHANNEL_SEND_ACTION_CONNECT_MIDI, midi, NULL, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 134 of file channel_send_action.h.

◆ channel_send_action_perform_connect_sidechain

#define channel_send_action_perform_connect_sidechain ( send,
stereo,
error )
Value:
send, CHANNEL_SEND_ACTION_CONNECT_SIDECHAIN, NULL, stereo, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 144 of file channel_send_action.h.

◆ channel_send_action_perform_disconnect

#define channel_send_action_perform_disconnect ( send,
error )
Value:
send, CHANNEL_SEND_ACTION_DISCONNECT, NULL, NULL, 0.f, \
PORT_CONNECTIONS_MGR, error)

Definition at line 129 of file channel_send_action.h.

◆ port_connection_action_new_change_multiplier

#define port_connection_action_new_change_multiplier ( src_id,
dest_id,
new_multiplier,
error )
Value:
PORT_CONNECTION_CHANGE_MULTIPLIER, src_id, dest_id, new_multiplier, error)
WARN_UNUSED_RESULT UndoableAction * port_connection_action_new(PortConnectionActionType type, PortIdentifier *src_id, PortIdentifier *dest_id, float new_val, GError **error)
Create a new action.

Definition at line 76 of file port_connection_action.h.

◆ port_connection_action_new_connect

#define port_connection_action_new_connect ( src_id,
dest_id,
error )
Value:
PORT_CONNECTION_CONNECT, src_id, dest_id, 0.f, error)

Definition at line 63 of file port_connection_action.h.

◆ port_connection_action_new_disconnect

#define port_connection_action_new_disconnect ( src_id,
dest_id,
error )
Value:
PORT_CONNECTION_DISCONNECT, src_id, dest_id, 0.f, error)

Definition at line 67 of file port_connection_action.h.

◆ port_connection_action_new_enable

#define port_connection_action_new_enable ( src_id,
dest_id,
enable,
error )
Value:
enable ? PORT_CONNECTION_ENABLE : PORT_CONNECTION_DISABLE, src_id, \
dest_id, 0.f, error)

Definition at line 71 of file port_connection_action.h.

◆ port_connection_action_perform_change_multiplier

#define port_connection_action_perform_change_multiplier ( src_id,
dest_id,
new_multiplier,
error )
Value:
port_connection_action_perform ( \
PORT_CONNECTION_CHANGE_MULTIPLIER, src_id, dest_id, new_multiplier, error)

Definition at line 105 of file port_connection_action.h.

◆ port_connection_action_perform_connect

#define port_connection_action_perform_connect ( src_id,
dest_id,
error )
Value:
port_connection_action_perform ( \
PORT_CONNECTION_CONNECT, src_id, dest_id, 0.f, error)

Definition at line 92 of file port_connection_action.h.

◆ port_connection_action_perform_disconnect

#define port_connection_action_perform_disconnect ( src_id,
dest_id,
error )
Value:
port_connection_action_perform ( \
PORT_CONNECTION_DISCONNECT, src_id, dest_id, 0.f, error)

Definition at line 96 of file port_connection_action.h.

◆ port_connection_action_perform_enable

#define port_connection_action_perform_enable ( src_id,
dest_id,
enable,
error )
Value:
port_connection_action_perform ( \
enable ? PORT_CONNECTION_ENABLE : PORT_CONNECTION_DISABLE, src_id, \
dest_id, 0.f, error)

Definition at line 100 of file port_connection_action.h.

◆ range_action_new_insert_silence

#define range_action_new_insert_silence ( start,
end,
error )    range_action_new (RANGE_ACTION_INSERT_SILENCE, start, end, error)

Definition at line 73 of file range_action.h.

◆ range_action_new_remove

#define range_action_new_remove ( start,
end,
error )    range_action_new (RANGE_ACTION_REMOVE, start, end, error)

Definition at line 76 of file range_action.h.

◆ range_action_perform_insert_silence

#define range_action_perform_insert_silence ( start,
end,
error )    range_action_perform (RANGE_ACTION_INSERT_SILENCE, start, end, error)

Definition at line 89 of file range_action.h.

◆ range_action_perform_remove

#define range_action_perform_remove ( start,
end,
error )    range_action_perform (RANGE_ACTION_REMOVE, start, end, error)

Definition at line 92 of file range_action.h.

◆ tracklist_selections_action_new_copy

#define tracklist_selections_action_new_copy ( tls,
port_connections_mgr,
track_pos,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_COPY, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, \
false, err)
WARN_UNUSED_RESULT UndoableAction * tracklist_selections_action_new(TracklistSelectionsActionType type, TracklistSelections *tls_before, TracklistSelections *tls_after, const PortConnectionsManager *port_connections_mgr, Track *track, TrackType track_type, const PluginSetting *pl_setting, const SupportedFile *file_descr, int track_pos, int lane_pos, const Position *pos, int num_tracks, EditTracksActionType edit_type, int ival_after, const GdkRGBA *color_new, float val_before, float val_after, const char *new_txt, bool already_edited, GError **error)
Creates a new TracklistSelectionsAction.

Definition at line 504 of file tracklist_selections.h.

◆ tracklist_selections_action_new_copy_inside

#define tracklist_selections_action_new_copy_inside ( tls,
port_connections_mgr,
track_pos,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_COPY_INSIDE, tls, NULL, port_connections_mgr, \
NULL, 0, NULL, NULL, track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, \
NULL, false, err)

Definition at line 530 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create

#define tracklist_selections_action_new_create ( track_type,
pl_setting,
file_descr,
track_pos,
pos,
num_tracks,
disable_track_pos,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_CREATE, NULL, NULL, NULL, NULL, track_type, \
pl_setting, file_descr, track_pos, -1, pos, num_tracks, 0, \
disable_track_pos, NULL, 0.f, 0.f, NULL, false, err)
Parameters
disable_track_posTrack position to disable, or -1 to not disable any track.

Definition at line 287 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_audio_fx

#define tracklist_selections_action_new_create_audio_fx ( pl_setting,
track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_AUDIO_BUS, pl_setting, NULL, track_pos, NULL, num_tracks, -1, \
err)
#define tracklist_selections_action_new_create(track_type, pl_setting, file_descr, track_pos, pos, num_tracks, disable_track_pos, err)
@ TRACK_TYPE_AUDIO_BUS
Buses are channels that receive audio input and have effects on their channel strip.
Definition track.h:134

Creates a new TracklistSelectionsAction for an audio FX track.

Definition at line 299 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_audio_group

#define tracklist_selections_action_new_create_audio_group ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_AUDIO_GROUP, NULL, NULL, track_pos, NULL, num_tracks, -1, err)
@ TRACK_TYPE_AUDIO_GROUP
Group Tracks are used for grouping audio signals, for example routing multiple drum tracks to a "Drum...
Definition track.h:143

Creates a new TracklistSelectionsAction for an audio group track.

Definition at line 329 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_folder

#define tracklist_selections_action_new_create_folder ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_FOLDER, NULL, NULL, track_pos, NULL, num_tracks, -1, err)
@ TRACK_TYPE_FOLDER
Foldable track used for visual grouping.
Definition track.h:159

Creates a new TracklistSelectionsAction for a folder track.

Definition at line 355 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_instrument

#define tracklist_selections_action_new_create_instrument ( pl_setting,
track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_INSTRUMENT, pl_setting, NULL, track_pos, NULL, num_tracks, -1, \
err)
@ TRACK_TYPE_INSTRUMENT
Instrument tracks must have an Instrument plugin at the first slot and they produce audio output.
Definition track.h:88

Creates a new TracklistSelectionsAction for an instrument track.

Definition at line 319 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_midi

#define tracklist_selections_action_new_create_midi ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_MIDI, NULL, NULL, track_pos, NULL, num_tracks, -1, err)
@ TRACK_TYPE_MIDI
Midi tracks can only have MIDI effects in the strip and produce MIDI output that can be routed to ins...
Definition track.h:150

Creates a new TracklistSelectionsAction for a MIDI track.

Definition at line 347 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_midi_fx

#define tracklist_selections_action_new_create_midi_fx ( pl_setting,
track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_MIDI_BUS, pl_setting, NULL, track_pos, NULL, num_tracks, -1, \
err)
@ TRACK_TYPE_MIDI_BUS
Same with audio bus but for MIDI signals.
Definition track.h:153

Creates a new TracklistSelectionsAction for a MIDI FX track.

Definition at line 309 of file tracklist_selections.h.

◆ tracklist_selections_action_new_create_midi_group

#define tracklist_selections_action_new_create_midi_group ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_MIDI_GROUP, NULL, NULL, track_pos, NULL, num_tracks, -1, err)
@ TRACK_TYPE_MIDI_GROUP
Same with audio group but for MIDI signals.
Definition track.h:156

Creates a new TracklistSelectionsAction for a MIDI group track.

Definition at line 338 of file tracklist_selections.h.

◆ tracklist_selections_action_new_delete

#define tracklist_selections_action_new_delete ( tls,
port_connections_mgr,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_DELETE, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, \
err)

Definition at line 537 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_color

#define tracklist_selections_action_new_edit_color ( tls,
color,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, NULL, NULL, 0, NULL, NULL, \
-1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_COLOR, false, color, 0.f, 0.f, \
NULL, false, err)

Definition at line 455 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_comment

#define tracklist_selections_action_new_edit_comment ( tls,
comment,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, NULL, NULL, 0, NULL, NULL, \
-1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_COMMENT, false, NULL, 0.f, 0.f, \
comment, false, err)

Definition at line 467 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_direct_out

#define tracklist_selections_action_new_edit_direct_out ( tls,
port_connections_mgr,
direct_out,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_DIRECT_OUT, \
(direct_out)->pos, NULL, 0.f, 0.f, NULL, false, err)
@ EDIT_TRACK_ACTION_TYPE_DIRECT_OUT
Direct out change.

Definition at line 441 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_enable

#define tracklist_selections_action_new_edit_enable ( tls_before,
enable_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_ENABLE, enable_new, NULL, \
0.f, 0.f, NULL, false, err)

Definition at line 428 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_fold

#define tracklist_selections_action_new_edit_fold ( tls_before,
fold_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_FOLD, fold_new, NULL, 0.f, \
0.f, NULL, false, err)

Definition at line 435 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_generic

#define tracklist_selections_action_new_edit_generic ( type,
tls_before,
tls_after,
already_edited,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, tls_after, NULL, NULL, 0, \
NULL, NULL, -1, -1, NULL, -1, type, false, NULL, 0.f, 0.f, NULL, \
already_edited, err)

Generic edit action.

Definition at line 363 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_icon

#define tracklist_selections_action_new_edit_icon ( tls,
icon,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, NULL, NULL, 0, NULL, NULL, \
-1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_ICON, false, NULL, 0.f, 0.f, \
icon, false, err)

Definition at line 461 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_listen

#define tracklist_selections_action_new_edit_listen ( tls_before,
solo_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_LISTEN, solo_new, NULL, \
0.f, 0.f, NULL, false, err)

Definition at line 422 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_mute

#define tracklist_selections_action_new_edit_mute ( tls_before,
mute_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_MUTE, mute_new, NULL, 0.f, \
0.f, NULL, false, err)

Definition at line 394 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_mute_lane

#define tracklist_selections_action_new_edit_mute_lane ( track_lane,
mute_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, \
track_lane_get_track (track_lane), 0, NULL, NULL, -1, track_lane->pos, \
NULL, -1, EDIT_TRACK_ACTION_TYPE_MUTE_LANE, mute_new, NULL, 0.f, 0.f, \
NULL, false, err)

Definition at line 400 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_remove_direct_out

#define tracklist_selections_action_new_edit_remove_direct_out ( tls,
port_connections_mgr,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_DIRECT_OUT, -1, \
NULL, 0.f, 0.f, NULL, false, err)

Definition at line 448 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_rename

#define tracklist_selections_action_new_edit_rename ( track,
port_connections_mgr,
name,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, port_connections_mgr, track, \
0, NULL, NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_RENAME, false, \
NULL, 0.f, 0.f, name, false, err)
@ EDIT_TRACK_ACTION_TYPE_RENAME
Rename track.

Definition at line 473 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_rename_lane

#define tracklist_selections_action_new_edit_rename_lane ( track_lane,
name,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, \
track_lane_get_track (track_lane), 0, NULL, NULL, -1, track_lane->pos, \
NULL, -1, EDIT_TRACK_ACTION_TYPE_RENAME_LANE, false, NULL, 0.f, 0.f, name, \
false, err)
@ EDIT_TRACK_ACTION_TYPE_RENAME_LANE
Rename lane.

Definition at line 480 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_single_float

#define tracklist_selections_action_new_edit_single_float ( type,
track,
val_before,
val_after,
already_edited,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, track, 0, NULL, NULL, \
-1, -1, NULL, -1, type, false, NULL, val_before, val_after, NULL, \
already_edited, err)

Convenience wrapper over tracklist_selections_action_new() for single-track float edit changes.

Definition at line 375 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_single_int

#define tracklist_selections_action_new_edit_single_int ( type,
track,
val_after,
already_edited,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, track, 0, NULL, NULL, \
-1, -1, NULL, -1, type, val_after, NULL, 0.f, 0.f, NULL, already_edited, \
err)

Convenience wrapper over tracklist_selections_action_new() for single-track int edit changes.

Definition at line 387 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_solo

#define tracklist_selections_action_new_edit_solo ( tls_before,
solo_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_SOLO, solo_new, NULL, 0.f, \
0.f, NULL, false, err)

Definition at line 408 of file tracklist_selections.h.

◆ tracklist_selections_action_new_edit_solo_lane

#define tracklist_selections_action_new_edit_solo_lane ( track_lane,
solo_new,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, \
track_lane_get_track (track_lane), 0, NULL, NULL, -1, track_lane->pos, \
NULL, -1, EDIT_TRACK_ACTION_TYPE_SOLO_LANE, solo_new, NULL, 0.f, 0.f, \
NULL, false, err)

Definition at line 414 of file tracklist_selections.h.

◆ tracklist_selections_action_new_move

#define tracklist_selections_action_new_move ( tls,
port_connections_mgr,
track_pos,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_MOVE, tls, NULL, NULL, NULL, 0, NULL, NULL, \
track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, err)

Move tls to track_pos.

Tracks starting at track_pos will be pushed down.

Parameters
track_posTrack position indicating the track to push down and insert the selections above. This is the track position before the move will be executed.

Definition at line 498 of file tracklist_selections.h.

◆ tracklist_selections_action_new_move_inside

#define tracklist_selections_action_new_move_inside ( tls,
port_connections_mgr,
track_pos,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_MOVE_INSIDE, tls, NULL, NULL, NULL, 0, NULL, \
NULL, track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, err)

Move inside a foldable track.

Parameters
track_posFoldable track index.

When foldable tracks are included in tls, all their children must be marked as selected as well before calling this.

Note
This should be called in combination with a move action to move the tracks to the required index after putting them inside a group.

Definition at line 524 of file tracklist_selections.h.

◆ tracklist_selections_action_new_pin

#define tracklist_selections_action_new_pin ( tls,
port_connections_mgr,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_PIN, tls, NULL, port_connections_mgr, NULL, 0, \
NULL, NULL, -1, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, err)

Toggle the current pin status of the track.

Definition at line 546 of file tracklist_selections.h.

◆ tracklist_selections_action_new_unpin

#define tracklist_selections_action_new_unpin ( tls,
port_connections_mgr,
err )
Value:
TRACKLIST_SELECTIONS_ACTION_UNPIN, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, \
err)

Toggle the current pin status of the track.

Definition at line 554 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_copy

#define tracklist_selections_action_perform_copy ( tls,
port_connections_mgr,
track_pos,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_COPY, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, \
false, err)

Definition at line 813 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_copy_inside

#define tracklist_selections_action_perform_copy_inside ( tls,
port_connections_mgr,
track_pos,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_COPY_INSIDE, tls, NULL, port_connections_mgr, \
NULL, 0, NULL, NULL, track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, \
NULL, false, err)

Definition at line 839 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create

#define tracklist_selections_action_perform_create ( track_type,
pl_setting,
file_descr,
track_pos,
pos,
num_tracks,
disable_track_pos,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_CREATE, NULL, NULL, NULL, NULL, track_type, \
pl_setting, file_descr, track_pos, -1, pos, num_tracks, 0, \
disable_track_pos, NULL, 0.f, 0.f, NULL, false, err)
Parameters
disable_track_posTrack position to disable, or -1 to not disable any track.

Definition at line 590 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_audio_fx

#define tracklist_selections_action_perform_create_audio_fx ( pl_setting,
track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_AUDIO_BUS, pl_setting, NULL, track_pos, NULL, num_tracks, -1, \
err)
#define tracklist_selections_action_perform_create(track_type, pl_setting, file_descr, track_pos, pos, num_tracks, disable_track_pos, err)

Creates a perform TracklistSelectionsAction for an audio FX track.

Definition at line 602 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_audio_group

#define tracklist_selections_action_perform_create_audio_group ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_AUDIO_GROUP, NULL, NULL, track_pos, NULL, num_tracks, -1, err)

Creates a perform TracklistSelectionsAction for an audio group track.

Definition at line 632 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_folder

#define tracklist_selections_action_perform_create_folder ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_FOLDER, NULL, NULL, track_pos, NULL, num_tracks, -1, err)

Creates a perform TracklistSelectionsAction for a folder track.

Definition at line 659 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_instrument

#define tracklist_selections_action_perform_create_instrument ( pl_setting,
track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_INSTRUMENT, pl_setting, NULL, track_pos, NULL, num_tracks, -1, \
err)

Creates a perform TracklistSelectionsAction for an instrument track.

Definition at line 622 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_midi

#define tracklist_selections_action_perform_create_midi ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_MIDI, NULL, NULL, track_pos, NULL, num_tracks, -1, err)

Creates a perform TracklistSelectionsAction for a MIDI track.

Definition at line 650 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_midi_fx

#define tracklist_selections_action_perform_create_midi_fx ( pl_setting,
track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_MIDI_BUS, pl_setting, NULL, track_pos, NULL, num_tracks, -1, \
err)

Creates a perform TracklistSelectionsAction for a MIDI FX track.

Definition at line 612 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_create_midi_group

#define tracklist_selections_action_perform_create_midi_group ( track_pos,
num_tracks,
err )
Value:
TRACK_TYPE_MIDI_GROUP, NULL, NULL, track_pos, NULL, num_tracks, -1, err)

Creates a perform TracklistSelectionsAction for a MIDI group track.

Definition at line 641 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_delete

#define tracklist_selections_action_perform_delete ( tls,
port_connections_mgr,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_DELETE, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, \
err)

Definition at line 846 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_color

#define tracklist_selections_action_perform_edit_color ( tls,
color,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, NULL, NULL, 0, NULL, NULL, \
-1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_COLOR, false, color, 0.f, 0.f, \
NULL, false, err)

Definition at line 763 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_comment

#define tracklist_selections_action_perform_edit_comment ( tls,
comment,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, NULL, NULL, 0, NULL, NULL, \
-1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_COMMENT, false, NULL, 0.f, 0.f, \
comment, false, err)

Definition at line 775 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_direct_out

#define tracklist_selections_action_perform_edit_direct_out ( tls,
port_connections_mgr,
direct_out,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_DIRECT_OUT, \
(direct_out)->pos, NULL, 0.f, 0.f, NULL, false, err)

Definition at line 749 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_enable

#define tracklist_selections_action_perform_edit_enable ( tls_before,
enable_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_ENABLE, enable_new, NULL, \
0.f, 0.f, NULL, false, err)

Definition at line 735 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_fold

#define tracklist_selections_action_perform_edit_fold ( tls_before,
fold_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_FOLD, fold_new, NULL, 0.f, \
0.f, NULL, false, err)

Definition at line 742 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_generic

#define tracklist_selections_action_perform_edit_generic ( type,
tls_before,
tls_after,
already_edited,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, tls_after, NULL, NULL, 0, \
NULL, NULL, -1, -1, NULL, -1, type, false, NULL, 0.f, 0.f, NULL, \
already_edited, err)

Generic edit action.

Definition at line 667 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_icon

#define tracklist_selections_action_perform_edit_icon ( tls,
icon,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, NULL, NULL, 0, NULL, NULL, \
-1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_ICON, false, NULL, 0.f, 0.f, \
icon, false, err)

Definition at line 769 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_listen

#define tracklist_selections_action_perform_edit_listen ( tls_before,
solo_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_LISTEN, solo_new, NULL, \
0.f, 0.f, NULL, false, err)

Definition at line 728 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_mute

#define tracklist_selections_action_perform_edit_mute ( tls_before,
mute_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_MUTE, mute_new, NULL, 0.f, \
0.f, NULL, false, err)

Definition at line 698 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_mute_lane

#define tracklist_selections_action_perform_edit_mute_lane ( track_lane,
mute_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, \
track_lane_get_track (track_lane), 0, NULL, NULL, -1, track_lane->pos, \
NULL, -1, EDIT_TRACK_ACTION_TYPE_MUTE_LANE, mute_new, NULL, 0.f, 0.f, \
NULL, false, err)

Definition at line 705 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_remove_direct_out

#define tracklist_selections_action_perform_edit_remove_direct_out ( tls,
port_connections_mgr,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_DIRECT_OUT, -1, \
NULL, 0.f, 0.f, NULL, false, err)

Definition at line 756 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_rename

#define tracklist_selections_action_perform_edit_rename ( track,
port_connections_mgr,
name,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, port_connections_mgr, track, \
0, NULL, NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_RENAME, false, \
NULL, 0.f, 0.f, name, false, err)

Definition at line 781 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_rename_lane

#define tracklist_selections_action_perform_edit_rename_lane ( track_lane,
name,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, \
track_lane_get_track (track_lane), 0, NULL, NULL, -1, track_lane->pos, \
NULL, -1, EDIT_TRACK_ACTION_TYPE_RENAME_LANE, false, NULL, 0.f, 0.f, name, \
false, err)

Definition at line 788 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_single_float

#define tracklist_selections_action_perform_edit_single_float ( type,
track,
val_before,
val_after,
already_edited,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, track, 0, NULL, NULL, \
-1, -1, NULL, -1, type, false, NULL, val_before, val_after, NULL, \
already_edited, err)

Convenience wrapper over tracklist_selections_action_perform() for single-track float edit changes.

Definition at line 679 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_single_int

#define tracklist_selections_action_perform_edit_single_int ( type,
track,
val_after,
already_edited,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, track, 0, NULL, NULL, \
-1, -1, NULL, -1, type, val_after, NULL, 0.f, 0.f, NULL, already_edited, \
err)

Convenience wrapper over tracklist_selections_action_perform() for single-track int edit changes.

Definition at line 691 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_solo

#define tracklist_selections_action_perform_edit_solo ( tls_before,
solo_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, tls_before, NULL, NULL, NULL, 0, NULL, \
NULL, -1, -1, NULL, -1, EDIT_TRACK_ACTION_TYPE_SOLO, solo_new, NULL, 0.f, \
0.f, NULL, false, err)

Definition at line 713 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_edit_solo_lane

#define tracklist_selections_action_perform_edit_solo_lane ( track_lane,
solo_new,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_EDIT, NULL, NULL, NULL, \
track_lane_get_track (track_lane), 0, NULL, NULL, -1, track_lane->pos, \
NULL, -1, EDIT_TRACK_ACTION_TYPE_SOLO_LANE, solo_new, NULL, 0.f, 0.f, \
NULL, false, err)

Definition at line 720 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_move

#define tracklist_selections_action_perform_move ( tls,
port_connections_mgr,
track_pos,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_MOVE, tls, NULL, NULL, NULL, 0, NULL, NULL, \
track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, err)

Move tls to track_pos.

Tracks starting at track_pos will be pushed down.

Parameters
track_posTrack position indicating the track to push down and insert the selections above. This is the track position before the move will be executed.

Definition at line 807 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_move_inside

#define tracklist_selections_action_perform_move_inside ( tls,
port_connections_mgr,
track_pos,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_MOVE_INSIDE, tls, NULL, NULL, NULL, 0, NULL, \
NULL, track_pos, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, err)

Move inside a foldable track.

Parameters
track_posFoldable track index.

When foldable tracks are included in tls, all their children must be marked as selected as well before calling this.

Note
This should be called in combination with a move action to move the tracks to the required index after putting them inside a group.

Definition at line 833 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_pin

#define tracklist_selections_action_perform_pin ( tls,
port_connections_mgr,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_PIN, tls, NULL, port_connections_mgr, NULL, 0, \
NULL, NULL, -1, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, err)

Toggle the current pin status of the track.

Definition at line 856 of file tracklist_selections.h.

◆ tracklist_selections_action_perform_unpin

#define tracklist_selections_action_perform_unpin ( tls,
port_connections_mgr,
err )
Value:
tracklist_selections_action_perform ( \
TRACKLIST_SELECTIONS_ACTION_UNPIN, tls, NULL, port_connections_mgr, NULL, \
0, NULL, NULL, -1, -1, NULL, -1, 0, false, NULL, 0.f, 0.f, NULL, false, \
err)

Toggle the current pin status of the track.

Definition at line 864 of file tracklist_selections.h.

◆ UNDO_MANAGER

#define UNDO_MANAGER   (PROJECT->undo_manager)

Definition at line 25 of file undo_manager.h.

◆ UNDO_MANAGER_PERFORM_AND_PROPAGATE_ERR

#define UNDO_MANAGER_PERFORM_AND_PROPAGATE_ERR ( action,
err,
... )
Value:
{ \
g_return_val_if_fail ( \
router_is_processing_thread (ROUTER) == false, false); \
UndoableAction * ua = action (__VA_ARGS__); \
if (ua) \
{ \
int ret = undo_manager_perform (UNDO_MANAGER, ua, err); \
if (ret == 0) \
return true; \
} \
return false; \
}
int undo_manager_perform(UndoManager *self, UndoableAction *action, GError **error)
Performs the action and pushes it to the undo stack.
Base struct to be inherited by implementing undoable actions.

Second and last argument given must be a GError **.

Definition at line 87 of file undo_manager.h.

◆ undo_stack_is_empty

#define undo_stack_is_empty ( x)    (stack_is_empty ((x)->stack))

Definition at line 118 of file undo_stack.h.

◆ undo_stack_is_full

#define undo_stack_is_full ( x)    (stack_is_full ((x)->stack))

Definition at line 120 of file undo_stack.h.

◆ undo_stack_peek

#define undo_stack_peek ( x)    ((UndoableAction *) stack_peek ((x)->stack))

Definition at line 122 of file undo_stack.h.

◆ undo_stack_peek_last

#define undo_stack_peek_last ( x)     ((UndoableAction *) stack_peek_last ((x)->stack))

Definition at line 124 of file undo_stack.h.

◆ undo_stack_size

#define undo_stack_size ( x)    (stack_size ((x)->stack))

Definition at line 116 of file undo_stack.h.

Enumeration Type Documentation

◆ ArrangerSelectionsActionEditType

Type used when the action is an EDIT action.

Enumerator
ARRANGER_SELECTIONS_ACTION_EDIT_NAME 

Edit the name of the ArrangerObject's in the selection.

ARRANGER_SELECTIONS_ACTION_EDIT_POS 

Edit a Position of the ArrangerObject's in the selection.

This will just set all of the positions on the object.

ARRANGER_SELECTIONS_ACTION_EDIT_PRIMITIVE 

Edit a primitive (int, etc) member of ArrangerObject's in the selection.

This will simply set all relevant primitive values in an ArrangerObject when doing/undoing.

ARRANGER_SELECTIONS_ACTION_EDIT_SCALE 

For editing the MusicalScale inside ScaleObject's.

ARRANGER_SELECTIONS_ACTION_EDIT_FADES 

Editing fade positions or curve options.

ARRANGER_SELECTIONS_ACTION_EDIT_MUTE 

Change mute status.

ARRANGER_SELECTIONS_ACTION_EDIT_EDITOR_FUNCTION 

For ramping MidiNote velocities or AutomationPoint values.

(this is handled by EDIT_PRIMITIVE) MIDI function.

Definition at line 100 of file arranger_selections.h.

◆ ArrangerSelectionsActionResizeType

Type used when the action is a RESIZE action.

Definition at line 74 of file arranger_selections.h.

◆ ArrangerSelectionsActionType

enum ArrangerSelectionsActionType

Definition at line 40 of file arranger_selections.h.

◆ ChannelSendActionType

enum ChannelSendActionType

Definition at line 17 of file channel_send_action.h.

◆ ChordActionType

Type of chord action.

Enumerator
CHORD_ACTION_SINGLE 

Change single chord.

CHORD_ACTION_ALL 

Change all chords.

Definition at line 20 of file chord_action.h.

◆ EditTracksActionType

Action type.

Enumerator
EDIT_TRACK_ACTION_TYPE_DIRECT_OUT 

Direct out change.

EDIT_TRACK_ACTION_TYPE_RENAME 

Rename track.

EDIT_TRACK_ACTION_TYPE_RENAME_LANE 

Rename lane.

Definition at line 48 of file tracklist_selections.h.

◆ MidiMappingActionType

enum MidiMappingActionType

Definition at line 19 of file midi_mapping_action.h.

◆ PortActionType

Enumerator
PORT_ACTION_SET_CONTROL_VAL 

Set control port value.

Definition at line 16 of file port_action.h.

◆ PortConnectionActionType

enum PortConnectionActionType

Definition at line 16 of file port_connection_action.h.

◆ RangeActionType

enum RangeActionType

Definition at line 18 of file range_action.h.

◆ TracklistSelectionsActionType

enum TracklistSelectionsActionType

Definition at line 20 of file tracklist_selections.h.

◆ TransportActionType

enum TransportActionType

Definition at line 26 of file transport_action.h.

◆ UndoableActionType

Type of UndoableAction.

Definition at line 30 of file undoable_action.h.

Function Documentation

◆ activate_bind_midi_cc()

void activate_bind_midi_cc ( GSimpleAction * action,
GVariant * _variant,
gpointer user_data )

All purpose menuitem callback for binding MIDI CC to a port.

An action will be performed if bound.

◆ arranger_selections_action_new_automation_fill()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_automation_fill ( ZRegion * region_before,
ZRegion * region_after,
bool already_changed,
GError ** error )

Creates a new action for automation autofill.

Parameters
region_beforeThe region before the change.
region_afterThe region after the change.
already_changedWhether the change was already made.

◆ arranger_selections_action_new_create_or_delete()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_create_or_delete ( ArrangerSelections * sel,
const bool create,
GError ** error )

Creates a new action for creating/deleting objects.

Parameters
create1 to create 0 to delete.

◆ arranger_selections_action_new_edit()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_edit ( ArrangerSelections * sel_before,
ArrangerSelections * sel_after,
ArrangerSelectionsActionEditType type,
bool already_edited,
GError ** error )

Creates a new action for editing properties of an object.

Parameters
sel_beforeThe selections before the change.
sel_afterThe selections after the change.
typeIndication of which field has changed.

◆ arranger_selections_action_new_link()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_link ( ArrangerSelections * sel_before,
ArrangerSelections * sel_after,
const double ticks,
const int delta_tracks,
const int delta_lanes,
const bool already_moved,
GError ** error )

Creates a new action for linking regions.

Parameters
already_movedIf this is true, the first DO will do nothing.
sel_beforeOriginal selections.
sel_afterSelections after duplication.

◆ arranger_selections_action_new_move_or_duplicate()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_move_or_duplicate ( ArrangerSelections * sel,
const bool move,
const double ticks,
const int delta_chords,
const int delta_pitch,
const int delta_tracks,
const int delta_lanes,
const double delta_normalized_amount,
const PortIdentifier * tgt_port_id,
const bool already_moved,
GError ** error )

Creates a new action for moving or duplicating objects.

Parameters
moveTrue to move, false to duplicate.
already_movedIf this is true, the first DO will do nothing.
delta_normalized_amountDifference in a normalized amount, such as automation point normalized value.

◆ arranger_selections_action_new_quantize()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_quantize ( ArrangerSelections * sel,
QuantizeOptions * opts,
GError ** error )

Creates a new action for quantizing ArrangerObject's.

Parameters
optsQuantize options.

◆ arranger_selections_action_new_resize()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_resize ( ArrangerSelections * sel_before,
ArrangerSelections * sel_after,
ArrangerSelectionsActionResizeType type,
const double ticks,
GError ** error )

Creates a new action for resizing ArrangerObject's.

Parameters
sel_afterOptional selections after resizing (if already resized).
ticksHow many ticks to add to the resizing edge.

◆ arranger_selections_action_new_split()

WARN_UNUSED_RESULT UndoableAction * arranger_selections_action_new_split ( ArrangerSelections * sel,
const Position * pos,
GError ** error )

Creates a new action for splitting ArrangerObject's.

Parameters
posGlobal position to split at.

◆ channel_send_action_new()

WARN_UNUSED_RESULT UndoableAction * channel_send_action_new ( ChannelSend * send,
ChannelSendActionType type,
Port * port,
StereoPorts * stereo,
float amount,
const PortConnectionsManager * port_connections_mgr,
GError ** error )

Creates a new action.

Parameters
portMIDI port, if connecting MIDI.
stereoStereo ports, if connecting audio.
port_connections_mgrPort connections manager at the start of the action, if needed.

◆ channel_send_action_perform()

bool channel_send_action_perform ( ChannelSend * send,
ChannelSendActionType type,
Port * port,
StereoPorts * stereo,
float amount,
const PortConnectionsManager * port_connections_mgr,
GError ** error )

Wrapper to create action and perform it.

Parameters
port_connections_mgrPort connections manager at the start of the action, if needed.

◆ chord_action_new()

WARN_UNUSED_RESULT UndoableAction * chord_action_new ( const ChordDescriptor ** chords_before,
const ChordDescriptor ** chords_after,
const ChordDescriptor * chord,
const int chord_idx,
GError ** error )

Creates a new action.

Parameters
chordChord descriptor, if single chord.
chords_beforeChord descriptors, if changing all chords.

◆ NONNULL_ARGS()

NONNULL_ARGS ( 1 )

Undo last action.

Redo last undone action.

◆ range_action_new()

WARN_UNUSED_RESULT UndoableAction * range_action_new ( RangeActionType type,
Position * start_pos,
Position * end_pos,
GError ** error )

Creates a new action.

Parameters
start_posRange start.
end_posRange end.

◆ tracklist_selections_action_new()

WARN_UNUSED_RESULT UndoableAction * tracklist_selections_action_new ( TracklistSelectionsActionType type,
TracklistSelections * tls_before,
TracklistSelections * tls_after,
const PortConnectionsManager * port_connections_mgr,
Track * track,
TrackType track_type,
const PluginSetting * pl_setting,
const SupportedFile * file_descr,
int track_pos,
int lane_pos,
const Position * pos,
int num_tracks,
EditTracksActionType edit_type,
int ival_after,
const GdkRGBA * color_new,
float val_before,
float val_after,
const char * new_txt,
bool already_edited,
GError ** error )

Creates a new TracklistSelectionsAction.

Parameters
tls_beforeTracklist selections to act upon.
port_connections_mgrPort connections manager at the start of the action.
posPosition to make the tracks at.
pl_settingPlugin setting, if any.
trackTrack, if single-track action. Used if tls_before and tls_after are NULL.
errorTo be filled in if an error occurred.

◆ tracklist_selections_action_perform_set_direct_out()

bool tracklist_selections_action_perform_set_direct_out ( TracklistSelections * self,
PortConnectionsManager * port_connections_mgr,
Track * direct_out,
GError ** error )

Edit or remove direct out.

Parameters
direct_outA track to route the selections to, or NULL to route nowhere.
Returns
Whether successful.

◆ undo_manager_get_plugins()

NONNULL void undo_manager_get_plugins ( UndoManager * self,
GPtrArray * arr )

Returns all plugins in the undo stacks.

Used when cleaning up state dirs.

◆ undo_manager_perform()

int undo_manager_perform ( UndoManager * self,
UndoableAction * action,
GError ** error )

Performs the action and pushes it to the undo stack.

Returns
Non-zero if error.

◆ undo_stack_get_total_cached_actions()

NONNULL size_t undo_stack_get_total_cached_actions ( UndoStack * self)

Returns the total cached actions.

Used when loading projects and for error checking.

◆ undoable_action_can_contain_clip()

NONNULL bool undoable_action_can_contain_clip ( UndoableAction * self)

Checks whether the action can contain an audio clip.

No attempt is made to remove unused files from the pool for actions that can't contain audio clips.

◆ undoable_action_do()

int undoable_action_do ( UndoableAction * self,
GError ** error )

Performs the action.

Note
Only to be called by undo manager.
Returns
Non-zero if errors occurred.

◆ undoable_action_save_or_load_port_connections()

void undoable_action_save_or_load_port_connections ( UndoableAction * self,
bool _do,
PortConnectionsManager ** before,
PortConnectionsManager ** after )

To be used by actions that save/load port connections.

Parameters
_doTrue if doing/performing, false if undoing.
beforePointer to the connections before.
afterPointer to the connections after.

◆ undoable_action_set_num_actions()

NONNULL void undoable_action_set_num_actions ( UndoableAction * self,
int num_actions )

Sets the number of actions for this action.

This should be set on the last action to be performed.

◆ undoable_action_to_string()

NONNULL char * undoable_action_to_string ( UndoableAction * ua)

Stringizes the action to be used in Undo/Redo buttons.

The string MUST be free'd using g_free().

◆ undoable_action_undo()

int undoable_action_undo ( UndoableAction * self,
GError ** error )

Undoes the action.

Returns
Non-zero if errors occurred.

Variable Documentation

◆ error

GError ** error

Definition at line 64 of file undo_manager.h.