mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 14:54:56 +01:00
Region export dialog: Make export channel and -selector polymorphic, add the region related classes and a dialog specialization
git-svn-id: svn://localhost/ardour2/branches/3.0@3915 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
01b1790c98
commit
98389f7da4
14 changed files with 537 additions and 115 deletions
|
|
@ -45,8 +45,6 @@ ExportDialog::~ExportDialog ()
|
|||
void
|
||||
ExportDialog::set_session (ARDOUR::Session* s)
|
||||
{
|
||||
init ();
|
||||
|
||||
session = s;
|
||||
|
||||
/* Init handler and profile manager */
|
||||
|
|
@ -55,6 +53,12 @@ ExportDialog::set_session (ARDOUR::Session* s)
|
|||
status = session->get_export_status ();
|
||||
profile_manager.reset (new ExportProfileManager (*session));
|
||||
|
||||
/* Possibly init stuff in derived classes */
|
||||
|
||||
init ();
|
||||
|
||||
/* Rest of session related initialization */
|
||||
|
||||
preset_selector->set_manager (profile_manager);
|
||||
file_notebook->set_session_and_manager (session, profile_manager);
|
||||
|
||||
|
|
@ -163,7 +167,7 @@ ExportDialog::init_components ()
|
|||
{
|
||||
preset_selector.reset (new ExportPresetSelector ());
|
||||
timespan_selector.reset (new ExportTimespanSelectorMultiple ());
|
||||
channel_selector.reset (new ExportChannelSelector ());
|
||||
channel_selector.reset (new PortExportChannelSelector ());
|
||||
file_notebook.reset (new ExportFileNotebook ());
|
||||
}
|
||||
|
||||
|
|
@ -358,7 +362,7 @@ ExportRangeDialog::init_components ()
|
|||
{
|
||||
preset_selector.reset (new ExportPresetSelector ());
|
||||
timespan_selector.reset (new ExportTimespanSelectorSingle (range_id));
|
||||
channel_selector.reset (new ExportChannelSelector ());
|
||||
channel_selector.reset (new PortExportChannelSelector ());
|
||||
file_notebook.reset (new ExportFileNotebook ());
|
||||
}
|
||||
|
||||
|
|
@ -371,6 +375,23 @@ ExportSelectionDialog::init_components ()
|
|||
{
|
||||
preset_selector.reset (new ExportPresetSelector ());
|
||||
timespan_selector.reset (new ExportTimespanSelectorSingle (X_("selection")));
|
||||
channel_selector.reset (new ExportChannelSelector ());
|
||||
channel_selector.reset (new PortExportChannelSelector ());
|
||||
file_notebook.reset (new ExportFileNotebook ());
|
||||
}
|
||||
|
||||
ExportRegionDialog::ExportRegionDialog (PublicEditor & editor, ARDOUR::AudioRegion const & region, ARDOUR::AudioTrack & track) :
|
||||
ExportDialog (editor, _("Export Region")),
|
||||
region (region),
|
||||
track (track)
|
||||
{}
|
||||
|
||||
void
|
||||
ExportRegionDialog::init_components ()
|
||||
{
|
||||
Glib::ustring loc_id = profile_manager->set_single_range (region.position(), region.position() + region.length(), region.name());
|
||||
|
||||
preset_selector.reset (new ExportPresetSelector ());
|
||||
timespan_selector.reset (new ExportTimespanSelectorSingle (loc_id));
|
||||
channel_selector.reset (new RegionExportChannelSelector (region, track));
|
||||
file_notebook.reset (new ExportFileNotebook ());
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue