65 structure::project::
ClipEditor * clipEditor () const;
66 structure::arrangement::Timeline * timeline () const;
67 dsp::SnapGrid * snapGridTimeline () const;
68 dsp::SnapGrid * snapGridEditor () const;
70 Q_INVOKABLE dsp::AudioInputSelection *
71 audioInputSelectionForTrack (const structure::tracks::Track * track);
73 dsp::AudioInputSelection *
74 find_audio_input_selection (const structure::tracks::Track::Uuid &uuid) const;
76 static constexpr auto kAudioInputSelectionsKey =
"audioInputSelections"sv;
79 void audioInputSelectionChanged ();
82 dsp::AudioInputSelection * get_or_create_audio_input_selection (
83 const structure::tracks::Track::Uuid &uuid);
86 static constexpr auto kSnapGridTimelineKey =
"snapGridTimeline"sv;
87 static constexpr auto kSnapGridEditorKey =
"snapGridEditor"sv;
89 friend
void from_json (const nlohmann::json &j,
ProjectUiState &p);
93 utils::AppSettings &app_settings_;
102 utils::QObjectUniquePtr<structure::arrangement::Timeline> timeline_;
105 utils::QObjectUniquePtr<dsp::SnapGrid> snap_grid_timeline_;
108 utils::QObjectUniquePtr<dsp::SnapGrid> snap_grid_editor_;
113 structure::tracks::Track::Uuid,
114 utils::QObjectUniquePtr<dsp::AudioInputSelection>>
115 audio_input_selections_;