- guint32 n;
- guint32 len;
- guint32 maxlen;
-
- session = 0;
- track_and_master_selection_allowed = true;
- channel_count_selection_allowed = true;
- export_cd_markers_allowed = true;
-
- set_title (_("ardour: export"));
- set_wmclass (X_("ardour_export"), "Ardour");
- set_name ("ExportWindow");
- add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
-
- spec.running = false;
-
- file_entry.set_name ("ExportFileNameEntry");
-
- master_list = ListStore::create (exp_cols);
- master_selector.set_model (master_list);
-
- master_selector.set_name ("ExportTrackSelector");
- master_selector.set_size_request (-1, 100);
- master_selector.append_column(_("Output"), exp_cols.output);
- master_selector.append_column_editable(_("Left"), exp_cols.left);
- master_selector.append_column_editable(_("Right"), exp_cols.right);
- master_selector.get_column(0)->set_min_width(100);
-
- master_selector.get_column(1)->set_min_width(40);
- master_selector.get_column(1)->set_sizing(Gtk::TREE_VIEW_COLUMN_AUTOSIZE);
- master_selector.get_column(2)->set_min_width(40);
- master_selector.get_column(2)->set_sizing(Gtk::TREE_VIEW_COLUMN_AUTOSIZE);
- master_selector.get_selection()->set_mode (Gtk::SELECTION_NONE);
-
- track_list = ListStore::create (exp_cols);
- track_selector.set_model (track_list);
-
- track_selector.set_name ("ExportTrackSelector");
- track_selector.set_size_request (-1, 130);
- track_selector.append_column(_("Output"), exp_cols.output);
- track_selector.append_column_editable(_("Left"), exp_cols.left);
- track_selector.append_column_editable(_("Right"), exp_cols.right);
-
- track_selector.get_column(0)->set_min_width(100);
- track_selector.get_column(1)->set_min_width(40);
- track_selector.get_column(1)->set_sizing(Gtk::TREE_VIEW_COLUMN_AUTOSIZE);
- track_selector.get_column(2)->set_min_width(40);
- track_selector.get_column(2)->set_sizing(Gtk::TREE_VIEW_COLUMN_AUTOSIZE);
- track_selector.get_selection()->set_mode (Gtk::SELECTION_NONE);
-
- progress_bar.set_name ("ExportProgress");
-
- format_frame.add (format_table);
- format_frame.set_name (FRAME_NAME);
-
- track_scroll.set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
- master_scroll.set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
-
- get_vbox()->pack_start (file_frame, false, false);
-
- hpacker.set_spacing (5);
- hpacker.set_border_width (5);
- hpacker.pack_start (format_frame, false, false);
-
- master_scroll.add (master_selector);
- track_scroll.add (track_selector);
-
- master_scroll.set_size_request (220, 100);
- track_scroll.set_size_request (220, 100);
-
- /* we may hide some of these later */
- track_vpacker.pack_start (master_scroll);
- track_vpacker.pack_start (track_scroll);
- track_vpacker.pack_start (track_selector_button, Gtk::PACK_EXPAND_PADDING);
-
- hpacker.pack_start (track_vpacker);
-
- get_vbox()->pack_start (hpacker);
-
- track_selector_button.set_name ("EditorGTKButton");
- track_selector_button.signal_clicked().connect (mem_fun(*this, &ExportDialog::track_selector_button_click));
-
- get_vbox()->pack_start (progress_bar, false, false);
-
- Gtkmm2ext::set_size_request_to_display_given_text (file_entry, X_("Kg/quite/a/reasonable/size/for/files/i/think"), 5, 8);
-
- file_hbox.set_spacing (5);
- file_hbox.set_border_width (5);
- file_hbox.pack_start (file_entry, true, true);
- file_hbox.pack_start (file_browse_button, false, false);
-
- file_frame.add (file_hbox);
- file_frame.set_border_width (5);
- file_frame.set_name (FRAME_NAME);
-
- /* pop_strings needs to be created on the stack because set_popdown_strings()
- takes a reference.
- */
-
- 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);
- Gtkmm2ext::set_popdown_strings (src_quality_combo, pop_strings);
- src_quality_combo.set_active_text (pop_strings.front());
- 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);
- 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);
- 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);
- 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);
- Gtkmm2ext::set_popdown_strings (endian_format_combo, pop_strings);
- endian_format_combo.set_active_text (pop_strings.front());
- pop_strings = I18N (cue_file_types);
- Gtkmm2ext::set_popdown_strings (cue_file_combo, pop_strings);
- cue_file_combo.set_active_text (pop_strings.front());
-
- /* this will re-sensitized as soon as a non RIFF/WAV
- header format is chosen.
- */
-
- endian_format_combo.set_sensitive (false);
-
- /* determine longest strings at runtime */
-
- maxlen = 0;
- const char *longest = X_("gl"); /* translators: one ascender, one descender */
- string longest_str;
-
- for (n = 0; n < SNDFILE_HEADER_FORMATS; ++n) {
- if ((len = strlen (sndfile_header_formats_strings[n])) > maxlen) {
- maxlen = len;
- longest = sndfile_header_formats_strings[n];
- }
- }