- XMLNode* node = session->instant_xml(X_("ExportDialog"), session->path());
- XMLProperty* prop;
-
- if (node) {
-
- if ((prop = node->property (X_("sample_rate"))) != 0) {
- sample_rate_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("src_quality"))) != 0) {
- src_quality_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("dither_type"))) != 0) {
- dither_type_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("channel_count"))) != 0) {
- channel_count_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("header_format"))) != 0) {
- header_format_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("bitdepth_format"))) != 0) {
- bitdepth_format_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("endian_format"))) != 0) {
- endian_format_combo.set_active_text(prop->value());
- }
- if ((prop = node->property (X_("filename"))) != 0) {
- file_entry.set_text(prop->value());
- }
- if ((prop = node->property (X_("cue_file_type"))) != 0) {
- cue_file_combo.set_active_text(prop->value());
- }
- }
-
- header_chosen ();
- bitdepth_chosen();
- channels_chosen();
- sample_rate_chosen();
-
- if (session->master_out()) {
- track_scroll.hide ();
- } else {
- master_scroll.hide ();
- track_selector_button.hide ();
- }
-
- if (!node) {
- return;
- }
-
- if (session->master_out()) {
- XMLNode* master = find_named_node(*node, (X_("Master")));
- int nchns;
-
- if (!master) {
-
- /* default is to use all */
- if (channel_count_combo.get_active_text() == _("mono")) {
- nchns = 1;
- } else {
- nchns = 2;
- }
-
- TreeModel::Children rows = master_selector.get_model()->children();
- for (uint32_t r = 0; r < session->master_out()->n_outputs(); ++r) {
- if (nchns == 2) {
- if (r % 2) {
- rows[r][exp_cols.right] = true;
-// master_selector.cell (r, 2).set_pixmap (check_pixmap, check_mask);
- } else {
- rows[r][exp_cols.left] = true;
-// master_selector.cell (r, 1).set_pixmap (check_pixmap, check_mask);
- }
- } else {
- rows[r][exp_cols.left] = true;
-// master_selector.cell (r, 1).set_pixmap (check_pixmap, check_mask);
- }
- }
-
- } else {
- /* XXX use XML state */
- }
- }
-
- XMLNode* tracks = find_named_node(*node, (X_("Tracks")));
- if (!tracks) {
- return;
- }
-
- XMLNodeList track_list = tracks->children(X_("Track"));
- TreeModel::Children rows = track_selector.get_model()->children();
- TreeModel::Children::iterator ri = rows.begin();
- TreeModel::Row row;
-
- for (XMLNodeIterator it = track_list.begin(); it != track_list.end(); ++it, ++ri) {
- if (ri == rows.end()){
- break;
- }
-
- XMLNode* track = *it;
- row = *ri;
-
- if ((prop = track->property(X_("channel1"))) != 0) {
- if (prop->value() == X_("on")) {
- row[exp_cols.left] = true;
- } else {
- row[exp_cols.left] = false;
- }
- }
-
- if ((prop = track->property(X_("channel2"))) != 0) {
- if (prop->value() == X_("on")) {
- row[exp_cols.right] = true;
- } else {
- row[exp_cols.right] = false;
- }
- }