summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-12-28 20:03:37 +0100
committerRobin Gareus <robin@gareus.org>2016-12-28 22:19:37 +0100
commitf2e00dfe07403421a2dd01b12ae6d22080d41e53 (patch)
tree9cf009c3fb1bcff6b58989d7a136fbd879c4e10f
parent9b9cb4beaade6b3349d543d3490da7cd6add6154 (diff)
Prefs Dialog: consistent headings, spacing, reduce width,..
-rw-r--r--gtk2_ardour/color_theme_manager.cc9
-rw-r--r--gtk2_ardour/color_theme_manager.h2
-rw-r--r--gtk2_ardour/option_editor.cc24
-rw-r--r--gtk2_ardour/option_editor.h10
-rw-r--r--gtk2_ardour/rc_option_editor.cc60
5 files changed, 77 insertions, 28 deletions
diff --git a/gtk2_ardour/color_theme_manager.cc b/gtk2_ardour/color_theme_manager.cc
index 8431edc1da..1e381f1854 100644
--- a/gtk2_ardour/color_theme_manager.cc
+++ b/gtk2_ardour/color_theme_manager.cc
@@ -61,7 +61,10 @@ ColorThemeManager::ColorThemeManager ()
, palette_window (0)
, color_theme_label (_("Color Theme"))
{
- _box->set_spacing (12);
+ Label* l = manage (new Label (string_compose ("<b>%1</b>", _("Colors"))));
+ l->set_alignment (0, 0.5);
+ l->set_use_markup (true);
+ _box->pack_start (*l, false, false);
std::map<string,string> color_themes;
@@ -146,8 +149,8 @@ ColorThemeManager::ColorThemeManager ()
notebook.set_size_request (400, 400);
- _box->pack_start (notebook, true, true);
- _box->pack_start (reset_button, false, false);
+ _box->pack_start (notebook, true, true, 12);
+ _box->pack_start (reset_button, false, false, 12);
color_dialog.get_colorsel()->set_has_opacity_control (true);
color_dialog.get_colorsel()->set_has_palette (true);
diff --git a/gtk2_ardour/color_theme_manager.h b/gtk2_ardour/color_theme_manager.h
index 7673410fd1..afb6a00fc9 100644
--- a/gtk2_ardour/color_theme_manager.h
+++ b/gtk2_ardour/color_theme_manager.h
@@ -39,7 +39,7 @@ namespace ArdourCanvas {
class ArdourDialog;
-class ColorThemeManager : public OptionEditorBox
+class ColorThemeManager : public OptionEditorPageBox
{
public:
ColorThemeManager();
diff --git a/gtk2_ardour/option_editor.cc b/gtk2_ardour/option_editor.cc
index 1317d166c4..7102458d61 100644
--- a/gtk2_ardour/option_editor.cc
+++ b/gtk2_ardour/option_editor.cc
@@ -80,6 +80,7 @@ OptionEditorComponent::maybe_add_note (OptionEditorPage* p, int n)
if (!_note.empty ()) {
Gtk::Label* l = manage (new Gtk::Label (string_compose (X_("<i>%1</i>"), _note)));
l->set_use_markup (true);
+ l->set_line_wrap (true);
p->table.attach (*l, 1, 3, n, n + 1, FILL | EXPAND);
}
}
@@ -102,7 +103,6 @@ void
OptionEditorHeading::add_to_page (OptionEditorPage* p)
{
int const n = p->table.property_n_rows();
- p->table.resize (n + 2, 3);
if (!_note.empty ()) {
p->table.resize (n + 3, 3);
} else {
@@ -120,6 +120,21 @@ OptionEditorBox::add_to_page (OptionEditorPage* p)
add_widget_to_page (p, _box);
}
+void
+OptionEditorPageBox::add_to_page (OptionEditorPage* p)
+{
+ int const n = p->table.property_n_rows();
+ int m = n + 2;
+ if (!_note.empty ()) {
+ ++m;
+ }
+ _box->set_border_width (0);
+ p->table.resize (m, 3);
+ p->table.attach (*manage (new Label ("")), 0, 3, n, n + 1, FILL | EXPAND);
+ p->table.attach (*_box, 0, 3, n + 1, n + 2, FILL | EXPAND);
+ maybe_add_note (p, n + 2);
+}
+
RcActionButton::RcActionButton (std::string const & t, const Glib::SignalProxy0< void >::SlotType & slot, std::string const & l)
: _label (NULL)
{
@@ -344,7 +359,7 @@ FaderOption::FaderOption (string const & i, string const & n, sigc::slot<gain_t>
, _get (g)
, _set (s)
{
- _db_slider = manage (new HSliderController (&_db_adjustment, boost::shared_ptr<PBD::Controllable>(), 115, 18));
+ _db_slider = manage (new HSliderController (&_db_adjustment, boost::shared_ptr<PBD::Controllable>(), 220, 18));
_label.set_text (n + ":");
_label.set_alignment (0, 0.5);
@@ -356,9 +371,10 @@ FaderOption::FaderOption (string const & i, string const & n, sigc::slot<gain_t>
_box.set_homogeneous (false);
_box.pack_start (_fader_centering_box, false, false);
_box.pack_start (_db_display, false, false);
+ _box.pack_start (*manage (new Label ("dB")), false, false);
_box.show_all ();
- set_size_request_to_display_given_text (_db_display, "-99.00", 12, 12);
+ set_size_request_to_display_given_text (_db_display, "-99.00", 12, 0);
_db_adjustment.signal_value_changed().connect (sigc::mem_fun (*this, &FaderOption::db_changed));
_db_display.signal_activate().connect (sigc::mem_fun (*this, &FaderOption::on_activate));
@@ -690,7 +706,7 @@ OptionEditorContainer::OptionEditorContainer (PBD::Configuration* c, string cons
{
set_border_width (4);
hpacker.pack_start (treeview(), false, false);
- hpacker.pack_start (notebook(), true, true);
+ hpacker.pack_start (notebook(), false, false);
pack_start (hpacker, true, true);
show_all ();
diff --git a/gtk2_ardour/option_editor.h b/gtk2_ardour/option_editor.h
index e32c489f27..894abdc618 100644
--- a/gtk2_ardour/option_editor.h
+++ b/gtk2_ardour/option_editor.h
@@ -115,15 +115,21 @@ public:
void parameter_changed (std::string const &) = 0;
void set_state_from_config () = 0;
- void add_to_page (OptionEditorPage *);
+ virtual void add_to_page (OptionEditorPage *);
- Gtk::Widget& tip_widget() { return *_box->children().front().get_widget(); }
+ Gtk::Widget& tip_widget() { return *_box->children().front().get_widget(); }
protected:
Gtk::VBox* _box; ///< constituent box for subclasses to add widgets to
};
+class OptionEditorPageBox : public OptionEditorBox
+{
+public:
+ virtual void add_to_page (OptionEditorPage *);
+};
+
class RcConfigDisplay : public OptionEditorComponent
{
public:
diff --git a/gtk2_ardour/rc_option_editor.cc b/gtk2_ardour/rc_option_editor.cc
index 11edeb0cf7..2e4a2df8c1 100644
--- a/gtk2_ardour/rc_option_editor.cc
+++ b/gtk2_ardour/rc_option_editor.cc
@@ -1350,7 +1350,7 @@ private:
ComboBoxText _buffering_presets_combo;
};
-class ControlSurfacesOptions : public OptionEditorBox
+class ControlSurfacesOptions : public OptionEditorPageBox
{
public:
ControlSurfacesOptions ()
@@ -1364,6 +1364,10 @@ public:
_view.append_column_editable (_("Enabled"), _model.enabled);
_view.append_column_editable (_("Feedback"), _model.feedback);
+ Label* l = manage (new Label (string_compose ("<b>%1</b>", _("Control Surfaces"))));
+ l->set_alignment (0, 0.5);
+ l->set_use_markup (true);
+ _box->pack_start (*l, false, false);
_box->pack_start (_view, false, false);
Gtk::HBox* edit_box = manage (new Gtk::HBox);
@@ -1372,7 +1376,7 @@ public:
edit_box->show ();
Label* label = manage (new Label);
- label->set_text (_("Click to edit the settings for selected protocol ( it must be ENABLED first ):"));
+ label->set_text (_("Edit the settings for selected protocol (it must be ENABLED first):"));
edit_box->pack_start (*label, false, false);
label->show ();
@@ -1473,6 +1477,7 @@ private:
if (was_feedback != is_feedback && cpi->protocol) {
cpi->protocol->set_feedback (is_feedback);
}
+ selection_changed ();
}
void edit_btn_clicked ()
@@ -1547,7 +1552,7 @@ private:
Gtk::Button* edit_button;
};
-class VideoTimelineOptions : public OptionEditorBox
+class VideoTimelineOptions : public OptionEditorPageBox
{
public:
VideoTimelineOptions (RCConfiguration* c)
@@ -1560,12 +1565,10 @@ public:
Table* t = manage (new Table (8, 4));
t->set_spacings (4);
- std::stringstream s;
- s << "<b>" << _("Video Server") << "</b>";
- Label* l = manage (new Label (s.str()));
+ Label* l = manage (new Label (string_compose ("<b>%1</b>", _("Video Server"))));
l->set_use_markup (true);
l->set_alignment (0, 0.5);
- t->attach (*l, 0, 4, 0, 1, EXPAND | FILL, FILL | EXPAND, 0, 8);
+ t->attach (*l, 0, 4, 0, 1, EXPAND | FILL, FILL | EXPAND, 0, 0);
t->attach (_video_advanced_setup_button, 1, 4, 1, 2);
_video_advanced_setup_button.signal_toggled().connect (sigc::mem_fun (*this, &VideoTimelineOptions::video_advanced_setup_toggled));
@@ -1596,12 +1599,13 @@ public:
Gtkmm2ext::UI::instance()->set_tip (_show_video_server_dialog_button,
_("<b>When enabled</b> the video server is never launched automatically without confirmation"));
- s.str (std::string ());
- s << "<b>" << _("Video Monitor") << "</b>";
- l = manage (new Label (s.str()));
+ l = manage (new Label (""));
+ t->attach (*l, 0, 4, 6, 7, EXPAND | FILL);
+
+ l = manage (new Label (string_compose ("<b>%1</b>", _("Video Monitor"))));
l->set_use_markup (true);
l->set_alignment (0, 0.5);
- t->attach (*l, 0, 4, 6, 7, EXPAND | FILL, FILL | EXPAND, 0, 8);
+ t->attach (*l, 0, 4, 7, 8, EXPAND | FILL);
l = manage (new Label (string_compose (_("Custom Path to Video Monitor (%1) - leave empty for default:"),
#ifdef __APPLE__
@@ -1613,10 +1617,10 @@ public:
#endif
)));
l->set_alignment (0, 0.5);
- t->attach (*l, 1, 4, 7, 8, FILL);
- t->attach (_custom_xjadeo_path, 2, 3, 8, 9);
+ t->attach (*l, 1, 4, 8, 9, FILL);
+ t->attach (_custom_xjadeo_path, 2, 3, 9, 10);
Gtkmm2ext::UI::instance()->set_tip (_custom_xjadeo_path, _("Set a custom path to the Video Monitor Executable, changing this requires a restart."));
- t->attach (_xjadeo_browse_button, 3, 4, 8, 9, FILL);
+ t->attach (_xjadeo_browse_button, 3, 4, 9, 10, FILL);
_video_server_url_entry.signal_changed().connect (sigc::mem_fun(*this, &VideoTimelineOptions::server_url_changed));
_video_server_url_entry.signal_activate().connect (sigc::mem_fun(*this, &VideoTimelineOptions::server_url_changed));
@@ -1864,10 +1868,12 @@ class MidiPortOptions : public OptionEditorBox, public sigc::trackable
setup_midi_port_view (midi_input_view, true);
+ _box->pack_start (*manage (new Label("")), false, false);
input_label.set_markup (string_compose ("<span size=\"large\" weight=\"bold\">%1</span>", _("MIDI Inputs")));
_box->pack_start (input_label, false, false);
_box->pack_start (midi_input_view);
+ _box->pack_start (*manage (new Label("")), false, false);
output_label.set_markup (string_compose ("<span size=\"large\" weight=\"bold\">%1</span>", _("MIDI Outputs")));
_box->pack_start (output_label, false, false);
_box->pack_start (midi_output_view);
@@ -2011,6 +2017,8 @@ MidiPortOptions::setup_midi_port_view (Gtk::TreeView& view, bool with_selection)
view.get_selection()->set_mode (SELECTION_NONE);
view.set_tooltip_column (4); /* port "real" name */
+ view.get_column(0)->set_resizable (true);
+ view.get_column(0)->set_expand (true);
}
bool
@@ -2498,6 +2506,8 @@ RCOptionEditor::RCOptionEditor ()
/* EDITOR */
+ add_option (_("Editor"), new OptionEditorHeading (_("Editor Settings")));
+
add_option (_("Editor"),
new BoolOption (
"rubberbanding-snaps-to-grid",
@@ -2612,18 +2622,20 @@ if (!Profile->get_mixbus()) {
add_option (_("Editor"), fadeshape);
+#if 1
bco = new BoolComboOption (
"use-overlap-equivalency",
- _("Regions in active edit groups are edited together"),
+ _("Regions in edit groups are edited together"),
_("whenever they overlap in time"),
- _("only if they have identical length, position and origin"),
+ _("only if they have identical length and position"),
sigc::mem_fun (*_rc_config, &RCConfiguration::get_use_overlap_equivalency),
sigc::mem_fun (*_rc_config, &RCConfiguration::set_use_overlap_equivalency)
);
add_option (_("Editor"), bco);
+#endif
ComboOption<LayerModel>* lm = new ComboOption<LayerModel> (
"layer-model",
_("Layering model"),
@@ -3030,6 +3042,8 @@ if (!ARDOUR::Profile->get_mixbus()) {
sigc::mem_fun (*_rc_config, &RCConfiguration::set_midi_feedback)
));
+ add_option (_("MIDI/Ports"), new OptionEditorHeading (_("MIDI Port Options")));
+
add_option (_("MIDI/Ports"),
new BoolOption (
"get-midi-input-follows-selection",
@@ -3124,7 +3138,11 @@ if (!ARDOUR::Profile->get_mixbus()) {
if (manager.get_status (*i) == PluginManager::Hidden) continue;
if (!(*i)->is_instrument()) continue;
if ((*i)->type != ARDOUR::LV2) continue;
- audition_synth->add((*i)->unique_id, (*i)->name);
+ if ((*i)->name.length() > 46) {
+ audition_synth->add((*i)->unique_id, (*i)->name.substr (0, 44) + "...");
+ } else {
+ audition_synth->add((*i)->unique_id, (*i)->name);
+ }
}
#endif
@@ -3132,12 +3150,13 @@ if (!ARDOUR::Profile->get_mixbus()) {
/* Control Surfaces */
- add_option (_("Control Surfaces"), new ControlSurfacesOptions);
+ add_option (_("Control Surfaces"), new ControlSurfacesOptions ());
/* VIDEO Timeline */
add_option (_("Video"), new VideoTimelineOptions (_rc_config));
#if (defined WINDOWS_VST_SUPPORT || defined LXVST_SUPPORT || defined MACVST_SUPPORT || defined AUDIOUNIT_SUPPORT)
+ add_option (_("Plugins"), new OptionEditorHeading (_("Scan/Discover")));
add_option (_("Plugins"),
new RcActionButton (_("Scan for Plugins"),
sigc::mem_fun (*this, &RCOptionEditor::plugin_scan_refresh)));
@@ -3336,6 +3355,9 @@ if (!ARDOUR::Profile->get_mixbus()) {
#endif
/* INTERFACE */
+#if (defined OPTIONAL_CAIRO_IMAGE_SURFACE || defined CAIRO_SUPPORTS_FORCE_BUGGY_GRADIENTS_ENVIRONMENT_VARIABLE)
+ add_option (S_("Preferences|GUI"), new OptionEditorHeading (_("Graphics Acceleration")));
+#endif
#ifdef OPTIONAL_CAIRO_IMAGE_SURFACE
BoolOption* bgc = new BoolOption (
@@ -3362,6 +3384,7 @@ if (!ARDOUR::Profile->get_mixbus()) {
add_option (S_("Preferences|GUI"), bgo);
#endif
+ add_option (S_("Preferences|GUI"), new OptionEditorHeading (_("Graphical User Interface")));
add_option (S_("Preferences|GUI"),
new BoolOption (
"use-wm-visibility",
@@ -3728,6 +3751,7 @@ if (!ARDOUR::Profile->get_mixbus()) {
/* and now the theme manager */
ThemeManager* tm = manage (new ThemeManager);
+ add_option (_("Theme"), new OptionEditorHeading (_("Theme")));
add_page (_("Theme"), *tm);
add_option (_("Theme/Colors"), new ColorThemeManager);