Project struct

Contains all of the info that will be serialized into a project file.

Contents

Public variables

char* title
Project title.
char* datetime_str
Datetime string to add to the project file.
char* dir
Path to save the project in.
char* backup_dir
Backup dir to save the project during the current save call.
ClipEditor* clip_editor
Backend for the widget.
Timeline* timeline
Timeline widget backend.
SnapGrid snap_grid_timeline
Snap/Grid info for the timeline.
QuantizeOptions quantize_opts_timeline
Quantize info for the timeline.
SnapGrid snap_grid_midi
Snap/Grid info for the piano roll.
QuantizeOptions quantize_opts_editor
Quantize info for the piano roll.
AutomationSelections automation_selections
Selected objects in the AutomationArrangerWidget.
AudioSelections audio_selections
Selected objects in the audio editor.
ChordSelections chord_selections
Selected objects in the ChordObjectArrangerWidget.
TimelineSelections timeline_selections
Selected objects in the TimelineArrangerWidget.
MidiArrangerSelections midi_arranger_selections
Selected MidiNote's in the MidiArrangerWidget.
TracklistSelections* tracklist_selections
Selected Track's.
MixerSelections mixer_selections
Plugin selections in the Mixer.
double timeline_zoom
Zoom levels.
RegionLinkGroupManager region_link_group_manager
Manager for region link groups.
AudioEngine* audio_engine
The audio backend.
MidiMappings* midi_mappings
MIDI bindings.
Tool tool
Currently selected tool (select - normal, select - stretch, edit, delete, ramp, audition)
bool loading_from_backup
Whether the current is currently being loaded from a backup file.
bool loaded
If a project is currently loaded or not.
SelectionType last_selection
The last thing selected in the GUI.
char* version
Zrythm version, for serialization.

Variable documentation

char* Project::backup_dir

Backup dir to save the project during the current save call.

For example, Project::dir /backups/myproject.bak3.

double Project::timeline_zoom

Zoom levels.

TODO & move to clip_editor

bool Project::loading_from_backup

Whether the current is currently being loaded from a backup file.

This is useful when instantiating plugins from state and should be set to false after the project is loaded.

bool Project::loaded

If a project is currently loaded or not.

This is useful so that we know if we need to tear down when loading a new project while another one is loaded.

SelectionType Project::last_selection

The last thing selected in the GUI.

Used in inspector_widget_refresh.