along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id$
*/
#include <pbd/xml++.h>
#include <gtkmm2ext/utils.h>
+#include <gtkmm2ext/window_title.h>
+
#include <ardour/export.h>
+#include <ardour/session_directory.h>
#include <ardour/sndfile_helpers.h>
#include <ardour/audio_track.h>
#include <ardour/audioregion.h>
using namespace PBD;
using namespace sigc;
using namespace Gtk;
+using namespace Gtkmm2ext;
+
+using PBD::internationalize;
static const gchar *sample_rates[] = {
N_("22.05kHz"),
src_quality_label (_("Conversion Quality"), 1.0, 0.5),
dither_type_label (_("Dither Type"), 1.0, 0.5),
cuefile_only_checkbox (_("Export CD Marker File Only")),
- file_frame (_("Export to File")),
file_browse_button (_("Browse")),
track_selector_button (_("Specific tracks ..."))
{
track_and_master_selection_allowed = true;
channel_count_selection_allowed = true;
export_cd_markers_allowed = true;
+
+ WindowTitle title(Glib::get_application_name());
+ title += _("Export");
- set_title (_("ardour: export"));
+ set_title (title.get_string());
set_wmclass (X_("ardour_export"), "Ardour");
set_name ("ExportWindow");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
takes a reference.
*/
- vector<string> pop_strings = I18N (sample_rates);
+ vector<string> pop_strings = I18N(sample_rates);
Gtkmm2ext::set_popdown_strings (sample_rate_combo, pop_strings);
sample_rate_combo.set_active_text (pop_strings.front());
- pop_strings = I18N (src_quality);
+ pop_strings = I18N(src_quality);
Gtkmm2ext::set_popdown_strings (src_quality_combo, pop_strings);
src_quality_combo.set_active_text (pop_strings.front());
- pop_strings = I18N (dither_types);
+ pop_strings = I18N(dither_types);
Gtkmm2ext::set_popdown_strings (dither_type_combo, pop_strings);
dither_type_combo.set_active_text (pop_strings.front());
- pop_strings = I18N (channel_strings);
+ pop_strings = I18N(channel_strings);
Gtkmm2ext::set_popdown_strings (channel_count_combo, pop_strings);
channel_count_combo.set_active_text (pop_strings.front());
- pop_strings = I18N ((const char **) sndfile_header_formats_strings);
+ pop_strings = I18N((const char **) sndfile_header_formats_strings);
Gtkmm2ext::set_popdown_strings (header_format_combo, pop_strings);
header_format_combo.set_active_text (pop_strings.front());
- pop_strings = I18N ((const char **) sndfile_bitdepth_formats_strings);
+ pop_strings = I18N((const char **) sndfile_bitdepth_formats_strings);
Gtkmm2ext::set_popdown_strings (bitdepth_format_combo, pop_strings);
bitdepth_format_combo.set_active_text (pop_strings.front());
- pop_strings = I18N ((const char **) sndfile_endian_formats_strings);
+ pop_strings = I18N((const char **) sndfile_endian_formats_strings);
Gtkmm2ext::set_popdown_strings (endian_format_combo, pop_strings);
endian_format_combo.set_active_text (pop_strings.front());
- pop_strings = I18N (cue_file_types);
+ pop_strings = I18N(cue_file_types);
Gtkmm2ext::set_popdown_strings (cue_file_combo, pop_strings);
cue_file_combo.set_active_text (pop_strings.front());
switch (session->frame_rate()) {
case 22050:
- sample_rate_combo.set_active_text (N_("22.05kHz"));
+ sample_rate_combo.set_active_text (_("22.05kHz"));
break;
case 44100:
- sample_rate_combo.set_active_text (N_("44.1kHz"));
+ sample_rate_combo.set_active_text (_("44.1kHz"));
break;
case 48000:
- sample_rate_combo.set_active_text (N_("48kHz"));
+ sample_rate_combo.set_active_text (_("48kHz"));
break;
case 88200:
- sample_rate_combo.set_active_text (N_("88.2kHz"));
+ sample_rate_combo.set_active_text (_("88.2kHz"));
break;
case 96000:
- sample_rate_combo.set_active_text (N_("96kHz"));
+ sample_rate_combo.set_active_text (_("96kHz"));
break;
case 192000:
- sample_rate_combo.set_active_text (N_("192kHz"));
+ sample_rate_combo.set_active_text (_("192kHz"));
break;
default:
- sample_rate_combo.set_active_text (N_("44.1kHz"));
+ sample_rate_combo.set_active_text (_("44.1kHz"));
break;
}
void
ExportDialog::set_state()
{
- XMLNode* node = session->instant_xml(X_("ExportDialog"), session->path());
+ XMLNode* node = session->instant_xml(X_("ExportDialog"));
XMLProperty* prop;
if (node) {
}
TreeModel::Children rows = master_selector.get_model()->children();
- for (uint32_t r = 0; r < session->master_out()->n_outputs(); ++r) {
+ for (uint32_t r = 0; r < session->master_out()->n_outputs().n_audio(); ++r) {
if (nchns == 2) {
if (r % 2) {
rows[r][exp_cols.right] = true;
}
node->add_child_nocopy(*tracks);
- session->add_instant_xml(*node, session->path());
+ session->add_instant_xml(*node);
}
void
void
ExportDialog::do_export_cd_markers (const string& path,const string& cuefile_type)
{
- if (cuefile_type == "TOC") {
+ if (cuefile_type == _("TOC")) {
session->locations()->apply (*this, &ExportDialog::export_toc_file, path);
} else {
session->locations()->apply (*this, &ExportDialog::export_cue_file, path);
void
ExportDialog::end_dialog ()
{
-
if (spec.running) {
spec.stop = true;
}
}
- session->engine().freewheel (false);
+ session->finalize_audio_export ();
hide_all ();
*/
if (file_entry.get_text().length() == 0) {
- string dir = session->export_dir();
- string::size_type last_slash;
-
- if ((last_slash = dir.find_last_of ('/')) != string::npos && last_slash != 0) {
- dir = dir.substr (0, last_slash+1);
- }
+
+ sys::path export_file_path = session->session_directory().export_path();
if (!wants_dir()) {
- dir = dir + "export.wav";
+ export_file_path /= "export.wav";
}
- file_entry.set_text (dir);
+ file_entry.set_text (export_file_path.to_string());
}
progress_bar.set_fraction (0);
if (sr_str == N_("22.05kHz")) {
rate = 22050;
- } else if (sr_str == N_("44.1kHz")) {
+ } else if (sr_str == _("44.1kHz")) {
rate = 44100;
- } else if (sr_str == N_("48kHz")) {
+ } else if (sr_str == _("48kHz")) {
rate = 48000;
- } else if (sr_str == N_("88.2kHz")) {
+ } else if (sr_str == _("88.2kHz")) {
rate = 88200;
- } else if (sr_str == N_("96kHz")) {
+ } else if (sr_str == _("96kHz")) {
rate = 96000;
- } else if (sr_str == N_("192kHz")) {
+ } else if (sr_str == _("192kHz")) {
rate = 192000;
} else {
rate = session->frame_rate();
boost::shared_ptr<Route> route = (*ri);
- if (route->hidden()) {
+ if (route->is_hidden()) {
continue;
}
- for (uint32_t i=0; i < route->n_outputs(); ++i) {
+ for (uint32_t i=0; i < route->n_outputs().n_audio(); ++i) {
string name;
- if (route->n_outputs() == 1) {
+ if (route->n_outputs().n_audio() == 1) {
name = route->name();
} else {
name = string_compose("%1: out-%2", route->name(), i+1);
string sr_str = sample_rate_combo.get_active_text();
if (sr_str == N_("22.05kHz")) {
spec.sample_rate = 22050;
- } else if (sr_str == N_("44.1kHz")) {
+ } else if (sr_str == _("44.1kHz")) {
spec.sample_rate = 44100;
- } else if (sr_str == N_("48kHz")) {
+ } else if (sr_str == _("48kHz")) {
spec.sample_rate = 48000;
- } else if (sr_str == N_("88.2kHz")) {
+ } else if (sr_str == _("88.2kHz")) {
spec.sample_rate = 88200;
- } else if (sr_str == N_("96kHz")) {
+ } else if (sr_str == _("96kHz")) {
spec.sample_rate = 96000;
- } else if (sr_str == N_("192kHz")) {
+ } else if (sr_str == _("192kHz")) {
spec.sample_rate = 192000;
} else {
spec.sample_rate = session->frame_rate();
void
ExportDialog::browse ()
{
- FileChooserDialog dialog("Export to file", FILE_CHOOSER_ACTION_SAVE);
+ FileChooserDialog dialog("Export to file", browse_action());
dialog.set_transient_for(*this);
dialog.set_filename (file_entry.get_text());