13
0
Commit Graph

10611 Commits

Author SHA1 Message Date
3f95b5ac19 closing the normalize dialog should not run normalize (#7016) 2016-09-09 19:15:10 -04:00
673e580726 fix WM close handling for session lock dialog (#7017) 2016-09-09 19:09:15 -04:00
835b874e1e add ActionManager::rec_sensitive_actions and put "add track/bus" in this group, which is disabled during active recording 2016-09-06 16:56:51 -04:00
73fe0e4b97 use moved version of reset_focus() 2016-09-06 16:56:51 -04:00
c9ece0d6c6 use moved version of reset_focus() 2016-09-06 16:17:39 -04:00
07bb5ff347 move kbd focus reset method into ARDOUR_UI where it (probably) belongs 2016-09-06 16:17:08 -04:00
cooltehno
755010f254 Update clear-gray-ardour.colors
This commit changes item "gtk_bases" from light (color22) to darker (color88). The knob of "Enable/Disable MIDI input" in Edit List had the same colour and was not visible. This commit makes it clear visible, and it has no much influence on a general design.
2016-09-06 15:43:40 -04:00
bfd0f321f6 use existing Editor::reset_focus() method to reset focus after audio clock editing is done 2016-09-06 15:40:22 -04:00
ff4e9cc1df do not set the focus widget to be a toplevel window in Editor::reset_focus.
See comments in code for the reason why
2016-09-06 15:39:50 -04:00
nick_m
fb9f4636e7 Remove unused variable. 2016-09-07 00:27:01 +10:00
nick_m
74a604d261 Fix the tempo note-type hallucination.
- after reports that a tempo with non-4.0 note type
	  would produce a ramp in the preceding section, an incorrect
	  assumption was made leading to a bogus 'fix' that redefined
	  Tempo's pulses_per_minute().
	  the real fix was simple:
	  the ramp's function constant was calculated using the note type
	  of the proceding tempo rather than the current one.

	- this patch reverts e82482e8e9 and a4d67279e0
	  and maintains the old definition of Tempo::pulses_per_minute()
2016-09-05 16:28:46 +10:00
nick_m
a4d67279e0 Fix graphical issues in tempo curve. 2016-09-04 03:18:12 +10:00
nick_m
d7879486a0 Ensure the correct position is passed to MidiRegionView::get_grid_beats(). 2016-09-02 05:18:53 +10:00
nick_m
e689182a6a Editor::get_grid_type_as_beats() returns the quarter note equivalent of BBT beat and bar. 2016-09-02 05:11:54 +10:00
ab76a49b22 Fix a bug when formatting time strings
It seems that 'strftime()' (on Windows) works differently from its non-Windows counterparts. Specifically, some formatting options (e.g. %F) are not recognised in the Windows implementation.

Fortunately, glibmm comes to our rescue here! So let's use the glib implementation which will hopefully work the same on all platforms.
2016-09-01 12:31:33 +01:00
nick_m
34e234825e No-op - rename var in MidiRegionView::note_dropped(). 2016-08-31 23:12:11 +10:00
nick_m
dbb9e8cc31 NoteCreateDrag uses quarter-notes. 2016-08-31 23:12:11 +10:00
nick_m
c0f89e99a2 MidiRegionView uses quarter note snapping.
- also ensures poiinter ghost note respects the snap modifier.
2016-08-31 23:12:11 +10:00
nick_m
086096b465 Use quarter-note based 'beat' when snapping. 2016-08-31 23:12:11 +10:00
b7e8d6f131 NOOP: whitespace 2016-08-29 06:38:48 -04:00
95e3f7663e improved (more general) fix for preferences window visibility 2016-08-29 06:38:34 -04:00
97246e501b Revert "apparent fix for preferences window visibility"
This reverts commit 9d6d9c6501.
2016-08-29 06:37:45 -04:00
9d6d9c6501 apparent fix for preferences window visibility 2016-08-29 06:35:45 -04:00
7336a05110 fix focus-on-clock action 2016-08-28 09:05:31 -04:00
4d7eb04cf6 Fix a crash when toggling back and forth between a generic plugin GUI window and a VST plugin's own GUI 2016-08-28 10:26:02 +01:00
845fb839e8 Fix a crash when we display the 'Plugin Analysis' window (in a generic plugin GUI window) and then close the GUI 2016-08-28 10:23:57 +01:00
400f38c721 single action punch in
Consecutive execution (e.g. from a control surface button) engages punch in, then punch out, then clears both.
Patch by Nathan Stewart
2016-08-27 19:57:40 -04:00
094d08dc2b NO-OP: indentation 2016-08-27 06:02:52 -04:00
3c4025d000 fix display of preferences window when detached.
GTK+ apparently unpacks/hides a widget whose requistion at window show/packing time is negative for x or y axes. The RC option editor
was being created AFTER its Tabbable self packed it into its own window (when detached), and GTK+ rejected it because the
treeview had a size requisition with -1 for width.

So build it first, then call Tabbable::set_state() later
2016-08-27 06:02:52 -04:00
ddc4e61b57 forward Lua print() to Ardour's Log. 2016-08-26 17:02:23 +02:00
5c12de78db Update CC automation menu when changing channel selection 2016-08-26 16:18:46 +02:00
7837122e45 add a static function to access processor selection from a Lua script
local ps = ArdourUI.processor_selection()
  for p in ps:iter() do print (p:name ()) end
2016-08-26 03:24:06 +02:00
07fa803aa1 fix a-eq grid layout 2016-08-26 01:10:38 +02:00
cb13882aa3 add len ovens to the authors list 2016-08-25 13:42:38 -04:00
5af281afb1 add nascent poly-phonic pressure to automation menu for MIDI tracks 2016-08-25 13:42:38 -04:00
2e7e2d2658 Fix astate setting for combo parameters when setting all astate
Don't try to be smart when chosing which parameters need their
automation updated but rather trust the list that was populated at
creation time when all relevant information had been gathered.
2016-08-25 19:23:49 +02:00
3921e33c2a Avoid 1px size changes when sizing_text() is used
When requesting a size for ArdourButton, the width and height of the
button could be increased by one to ensure the center of the text would
lie exactly at the center of the button.

I initially thought that it was a good idea even when the text used for
sizing was frozen, but the main (and only?) use-case for that is to
actually freeze the size of the button regardless of the actual
displayed text, so jittering by one pixel is not welcome.

Only do the centering tweak if there is no sizing text.
2016-08-25 19:23:49 +02:00
b424270208 Fix string to float conversion when typing gain values in Gain Meter
Remove the LocaleGuard so that the value of LC_NUMERIC is that of the users
locale and sscanf will parse the string correctly. For instance, with a locale
like nl_NL or fr_FR where the decimal point is different than the "C" locale,
only the number up to the decimal point will be parsed by sscanf and input
values will be rounded down.
2016-08-24 20:42:56 +10:00
cbc5ec764f fix generic GUI layout for no-control UIs 2016-08-24 03:18:28 +02:00
nick_m
ac8617017a Don't attempt to snap to the current musical grid when dragging tempi. 2016-08-24 03:41:42 +10:00
27f347a5de better late than never 2016-08-22 16:29:57 +02:00
289ad1f3c7 use user-specified insertion point when adding new tracks/busses with a template 2016-08-22 09:44:48 -04:00
39e9add5c0 use insert at specification when duplicating tracks/busses 2016-08-22 09:41:59 -04:00
cab3fc09de fix signed/unsigned warning 2016-08-22 09:41:59 -04:00
ae32f44dc9 add insert-at combo selector for duplicate tracks dialog 2016-08-22 09:41:59 -04:00
444b9e8903 Parse information from harvid independent from the locale
This fixes a crash where aspect ratio "0.5" from harvid was interpreted
as "0" in the French locale (expecting 0,5).

Note: harvid uses a portable, not localized snprintf() implementation
2016-08-22 14:47:37 +02:00
36f232d558 factor out "new route insertion point" enums so they can be shared by relevant dialogs 2016-08-22 08:40:12 -04:00
b339cde446 remove debug output from last commit 2016-08-21 21:44:33 -04:00
ed5091d7ae editing plugin with generic GUI has a tooltip saying it uses the primary modifier. Make it so 2016-08-21 21:42:16 -04:00
d92686afb4 Repeat INSENSITIVE colors instead of relying on inheritance
Since inheritance doesn't seem to work on some systems, though it worked
on mine.
2016-08-22 01:58:08 +02:00
444497b571 remove close buttons from Bundle Manager (rely on WM provided button) 2016-08-21 23:02:37 +02:00
cd77f7e209 even more consistent labels in the mundle manager 2016-08-21 23:02:37 +02:00
9e981367e2 Fix another crash at exit:
Collecting bindings after ::finish() has already destroyed half the GUI
will result in memory corruption invalid Glib::RefPtr<Gtk::Action>

 Gtkmm2ext::ActionMap::get_actions()
 Gtkmm2ext::Bindings::get_all_actions()
 KeyEditor::Tab::populate()
 KeyEditor::refresh()
 Editor::set_script_action_name()
 LuaInstance::session_going_away()
 PBD::Destructible::drop_references()
 ARDOUR::Session::destroy()
 ARDOUR::Session::~Session()
 ARDOUR_UI::finish()
2016-08-21 23:02:37 +02:00
5eacf424b6 Resolve Bundle Manager Input/Output label ambiguity 2016-08-21 19:12:16 +02:00
01ac1b5362 Merge set_pango_fontsize() into reset_dpi()
… since reset_dpi() is the only caller.
2016-08-21 15:04:06 +02:00
6588da09b3 Silence a GCC initialization order warning 2016-08-21 15:04:06 +02:00
ec74d4b0d0 Avoid jitter of track headers width when changing automation states 2016-08-20 18:32:37 +02:00
fcadcac7e7 Make knobs size requests dynamic
At the point of creation, the automate_button size request is wrong
since it has not the correct style yet. Instead of trying ugly hacks to
fix that, connect to the knob's size_request signal and get the button's
requisition only when needed. If the system font changes to one that has
different extents (even if the point size is the same), the UI will thus
correctly update.
2016-08-20 18:12:49 +02:00
aed07c4998 Do not constrain vertical size without need
A value of -1 means "let the widget use its natural size in that
direction".
2016-08-20 18:12:07 +02:00
ed723ca2c3 Use ArdourButton::Square mode instead of ad-hoc sizing 2016-08-20 18:11:13 +02:00
00e081024b Use set_sizing_text in generic plugin ui 2016-08-20 16:05:18 +02:00
99e31db66e Invalidate char_pixel_* on possible font change
So that the padding and other elements always correctly depend on the
font instead of the default GTK font (which might have a wildly
different size from the fixed size fonts of Ardour's custom theme).
2016-08-20 16:01:15 +02:00
f108bf1373 ArdourButton: add text for measuring decoupled from display text
In the normal course of events, an ArdourButton requests just enough
space to display its elements. In particular the size will change when
the text does. Yet, in several cases it is better to avoid layout jittering; until now ArdourButton users manually set a static size on the button at creation time.

Introduce new API to set the text used for measuring the button size
separately from the text that will be displayed. In most cases this
enables the callers to replace

    set_size_request_to_display_given_text(button, text, w, h);

where w and h were hard-coded to cater for other button elements, by

    button.set_sizing_text(text);

which will make ArdourButton correctly compute the size request in all
cases with its real elements and padding. ArdourButton users can call

    button.set_sizing_text("");

to get the size request depend on displayed text (which is the default).
2016-08-20 16:00:46 +02:00
23ccf48c28 Fix colors of disabled spin buttons (and maybe others)
The insensitive state should not get a base color that's the same as the
enabled one, or the difference is not visible enough (only the text
color changes). In fact, since the goal of the entry modifications is to
aid visibility during user input, there is no reason to override the
insensitive colors.

Just inherit the insensitive colors of the global style.

Also fix a comment that was attached to the wrong declaration.
2016-08-20 00:31:19 +02:00
nick_m
c1b950373f Amend last commit - remove some code. 2016-08-20 05:41:12 +10:00
nick_m
869a9cb5df Swap tempo/meter colours when hovering. Use entered marker for these as well.
- Note : entered_marker modifies the 'p' press, locating to the
	  currently hovered-over marker.
2016-08-20 04:36:52 +10:00
nick_m
949dd8245d Add a colour for music-locked meters. 2016-08-20 04:33:51 +10:00
91757960cc fix missing API for no-app-nap when building on OS X < 10.9 2016-08-19 13:19:37 -04:00
nick_m
0444ce1d5e Revert last commit (269a08a2b1). 2016-08-20 01:58:56 +10:00
nick_m
269a08a2b1 Allow both types of constrained drag (again).
- Holding the constraint modifier at the time of grab gives constrained x.

	- Holding the constraint modifier after the grab but before the first motion
	  constrains to the direction of first movement.
2016-08-20 01:46:04 +10:00
nick_m
2d7bdda0be Extending an empty selection selects the clicked region.
- fixes a crash where the first operation on loading a session
	  is a constrained drag
2016-08-20 01:34:53 +10:00
25ec63968c add code to disable AppNap on OS X/MacOS
Should build on versions before 10.9 and run everywhere due to respondsToSelector check.
2016-08-19 11:12:35 -04:00
e2846ad210 Remove unused lines in clearlooks.rc.in 2016-08-19 15:49:47 +02:00
5cc97f55f2 Avoid CamelCase in color names 2016-08-19 14:57:07 +02:00
d599be115d Make automation state buttons active when not on Manual
With the same color code as the fader automation button on mixer strips.
This is especially usefull when use_knob is true (e.g. for a-EQ) because
the automation only shows one letter and a "Write" state can thus be
easy to miss.
2016-08-19 02:53:39 +02:00
ede27f53c6 Remove unused space in gain_meter's automation menu 2016-08-19 02:53:39 +02:00
907c56234c Add missing return 2016-08-18 16:32:38 +02:00
523306036e Make ArdourButton detect when a grab should stop being pressed
If for whatever reason a grab is taken (e.g. a menu popping up) while
somebody is pressing a mouse button on an ArdourButton, then the
ArdourButton will not get the mouse button release event and will look
stuck in pressed position.

The leave notify event is fired if the mouse is still on the
ArdourButton while the grab is taken, but not if the user was dragging
the mouse outside of the button.

The only reliable way is to listen for the grab_broken_event signal.
Do so.
2016-08-18 16:16:17 +02:00
0ab81183c0 don't show empty time axis view context menus 2016-08-18 08:16:31 -04:00
534ca81613 Make buttons in track headers behave more like Gtk::MenuToolButton
Make their popup menus show attached, and on mouse down, but keep the
context menu behavior on middle- and right-click for the group button
that reacted to those (probably an oversight but some users might have
got the habit of right-clicking).

This also makes the group deletion on Ctrl+click happen on mouse down
instead of mouse up which is not a great difference and avoids
complicating the code.
2016-08-18 13:24:00 +02:00
1d686ac978 Make name_button behave more like a Gtk::MenuToolButton
Make it popup its menu in attached mode, and on mouse down, but keep the
context menu behavior on right-click.
2016-08-18 11:52:22 +02:00
3ab6ff8be7 Make in/out buttons behave more like Gtk::MenuToolButton
Make them popup their menu as if attached rather than as a context menu.
2016-08-18 11:50:38 +02:00
9095d60f96 removed commented code, now that the comment is actually correct 2016-08-17 23:13:49 -04:00
71236425a6 fix hard/impossible trimming situation 2016-08-17 23:09:33 -04:00
e8427ee2cb GUI does an even stronger check on no undo/redo while recording 2016-08-17 19:22:26 -04:00
214dfccdae Use a real dropdown for AutoState in automation lanes 2016-08-17 23:56:31 +02:00
606ffe6a35 Align the currently selected automation state on dropdown
By passing the current text of the automation button we can make the
dropdown menu align with the current mode. This will only work for
full-size automation buttons, not when use-knob is true, but in that
case it feels wrong to popup on top of the button anyway.

Also make the menu show on mouse down like a real dropdown.
2016-08-17 23:56:31 +02:00
90e2baf6a9 upcoming codenames 2016-08-17 17:04:02 +02:00
d883d4623a Make MixerStrip's automation menu behave like a dropdown 2016-08-17 14:30:28 +02:00
b48e803cf6 Make the group button in MixerStrip behave like a dropdown
Since it mostly is a multiple-choice menu.
2016-08-17 01:46:11 +02:00
6a985df81e Replace positioning function with popup helper
Because all uses of the function positioning menus anchored to a widget
were as callback argument to Gtk::Menu::popup() where the caller needed
to correctly bind arguments, this led to repeated and a bit obscure code.

Wrap the logic into an helper function that takes care of all that, and
update the callers.
2016-08-17 01:45:47 +02:00
46710a75de fix issue with WM close/delete ("X") button not working for window proxied dialogs (e.g. add route dialog) 2016-08-16 13:57:00 -04:00
9421e0b4a7 allow constrained-drag of MIDI notes to work 2016-08-15 11:20:23 -04:00
nick_m
a9b72f87a6 Add missing line feed in midi_region_view.cc 2016-08-16 00:56:08 +10:00
nick_m
cecbae1df4 Midi region ghost note uses beat-based note time calculation. 2016-08-16 00:52:18 +10:00
nick_m
62372b48ea Fix frame-based beat calculation in MidiRegionView::snap_frame_to_grid_underneath()
- this caused the ghost note under the pointer to behave badly when
	  hovering near an audio-locked meter.
2016-08-16 00:48:54 +10:00
nick_m
a7032917b1 Remove assumption that the meter starts at frame 0 in Editor::apply_midi_note_edit_op_to_region(). 2016-08-14 04:49:37 +10:00
nick_m
2cc37a25bb Sync User Interactoin tooltips with new default settings. 2016-08-14 03:04:54 +10:00
nick_m
f6eac26a98 Choose some non-overlapping defaults for User Interaction modifier keys. 2016-08-14 03:04:54 +10:00
nick_m
444819e84a Add a new modifier combination that allows overlap with snap-related defaults.
- this should be enough to handle all of the current possibilities.
2016-08-14 03:04:54 +10:00
nick_m
b104cb84c4 User Interaction pref shows the push points modifier in the 'beginning a drag' row.
- it is currently dual use (move both ends of a range marker
 	  during drag / push control points at the beginning of a drag).
	  this may have to be separated, but as it is called the push
	  points modifier, it belongs here.
2016-08-14 03:04:54 +10:00
nick_m
4eba9b8638 Resolve potential ambiguity between the constraint modifier and the copy modifier when beginning a drag. 2016-08-14 03:04:54 +10:00
nick_m
c62026b567 Ensure RelevantModifierKeyMask is updated on each modifier change.
- fixes bug where changing prefs in User Interaction
	  only took effect on restart.
2016-08-14 03:04:54 +10:00
nick_m
1c0651f7f4 Ensure BBTRulerDrag operates within the tempo map. 2016-08-14 03:04:54 +10:00
nick_m
e3a8f2786d Ensure positive length whan drag-adding new midi region. 2016-08-14 03:04:54 +10:00
nick_m
5c2ccc4f3e Allow negative return in TempoMap::beat_at_frame() and its exact_ variant.
- audio-locked midi regions can be start-trimmed properly
	  when close to 1|1|0
	- a midi region placed before the first meter
	  will continue the tempo curve and first meter.

Only a couple of callers require change, as bbt_at_beat() already
deals with this.
2016-08-14 03:04:53 +10:00
23d1d1f55b add nstewart to authors 2016-08-13 16:12:12 +02:00
Nathan Stewart
5b4584ad94 Add "Marker Toggle" #5193 2016-08-13 16:07:16 +02:00
313a32981e tweak strings now that 5.0 is out 2016-08-13 14:51:15 +02:00
836693036a add RMS region normalization option 2016-08-13 14:50:59 +02:00
73db972ab7 add plural forms for pt to gtk2_ardour/po/pt.po 2016-08-08 20:24:46 -04:00
186ac82471 (updated) pt(_BR) update for gtk2_ardour from Marcelo Teles 2016-08-08 20:20:45 -04:00
7691ee033a Revert "pt(_BR) update for gtk2_ardour from Marcelo Teles"
This reverts commit cf08eaa32d.
2016-08-08 20:19:55 -04:00
ed594c45fc updated russian translation from Alexandre Prokoudine 2016-08-08 20:12:56 -04:00
6a4fb58384 fix thinko that causes near duplicate menu items in group context menu when not in group tabs 2016-08-08 23:36:33 +02:00
f47ae6c0f9 fix bug when appdata.pot file cannot be regenerated 2016-08-08 13:51:20 -04:00
653df3ca4f GenericUI: better popup placement for automation mode 2016-08-08 16:44:40 +02:00
a51cd8689f Move anchored menu placement strategy to Gtkmm2ext utils
So that it can be used by others.
2016-08-08 16:44:40 +02:00
0d2ba3fe8e fix typo 2016-08-07 20:29:21 +02:00
f97696d7f3 Make ArdourDisplay a subclass of ArdourDropdown 2016-08-07 19:44:54 +02:00
054b347181 Remove the space for checks/radios/icons in dropdowns 2016-08-07 18:50:17 +02:00
5dd4c33915 Make Dropdown menus at least as wide as the button 2016-08-07 18:43:39 +02:00
5f6cec7c2f Improve placement of Dropdown popups.
When an item in the menu corresponds to the currently displayed choice,
vertically align the item with the button on menu popup.
2016-08-07 17:20:43 +02:00
625240fe30 Use a C++ bool constant 2016-08-07 16:17:39 +02:00
e1da96c472 Improve ArdourDropdown menu position 2016-08-07 16:14:59 +02:00
Edgar Aichinger
595684ddf7 update german translation 2016-08-06 16:49:41 +02:00
836f48457d add a "Pin Management" button to the plugin UI-header 2016-08-05 02:35:51 +02:00
Nils Philippsen
65c2e089ab workaround changes in glibmm 2.49.x
Glib::RefPtr defines the operator bool() as explicit which breaks
comparisons like "some_ref_ptr == 0" or "... != 0".

https://bugzilla.gnome.org/show_bug.cgi?id=769502
2016-08-04 09:52:22 +02:00
fcf9836da0 add a wrapper to launch the vst-scanner manually 2016-08-03 19:56:22 +02:00
cooltehno
57e9b502a7 Update clear-gray-ardour.colors
A peak rectangle in the mixer strip is ruled by "gtk_bright_indicator". In the previous commit I mixed up this item with "meterbridge label" & "meterbridge peakindicator". This commit changes "gtk_bright_indicator" from white to red and returns "meterbridge label" & "meterbridge peakindicator" state to primordial. So now the peak rectangle in the mixer strip will be red when a sound peak has a place.
2016-07-31 19:22:42 +04:00
nick_m
0a3aa9c324 Use S_ macro when comparing modifier names in User Interaction Preferences.
- Fixes bug where selecting 'Shift' as a modifier was ignored.
2016-08-01 01:04:28 +10:00
cooltehno
1a481e661b Update clear-gray-ardour.colors 2016-07-31 17:11:58 +04:00
pablus
68b78ac357 Update Spanish translation 2016-07-30 12:52:58 +02:00
46a69ade78 Update French translation 2016-07-29 22:10:49 +02:00
f41e0cd4a2 Make monitor detection reuse the port name translation
So that they never get out of sync, and translators don't get confused.

Also replace some N_() where X_() was really intended.
2016-07-29 22:10:49 +02:00
YQ-YSY
d0126be806 2016-07-29 Update zh.po for Ardoru 5.0 2016-07-29 21:34:52 +08:00
67cbdc6cf2 GenericUI: Update all input controls on preset load
The existing code relies on AutomationControls for getting parameter
changes and update the UI accordingly. One case where this doesn't yet
work is preset loading, where ARDOUR::Plugin is responsible for actually
loading the preset but doesn't notify the changes to AutomationControls.

Since the input_controls vector now contains all ControlUI's that rely on
AutomationControls to get updates, just listen to Plugin::PresetLoaded()
and trigger an update of all elements in input_controls.

This is temporary until a better solution is devised to make
AutomationControls aware of preset loading.
2016-07-29 02:06:55 +02:00
7e30161dc0 GenericUI: Show automation UI for dropdowns
Also merge the ControlUI local layout of dropdows with the local layout
of other control types (except FileButton).
2016-07-29 00:54:25 +02:00
5c5b7746a2 GenericUI: disable super rapid timer for input controls
The super rapid timer was disconnected by GenericPluginUI::stop_updating
but never connected again, so the generic UI worked often without
getting periodic update triggers anyway.

Try to disable the mechanism altogether, and see if there are updating
glitches.
2016-07-29 00:14:20 +02:00
a7b29d7966 GenericUI: replace if() by assert()
It makes no sense to check for the validity of mcontrol only for
controller creation, since the remainder of the code assumes that the
controller will have been created correctly.

Replace that by an assert.
2016-07-29 00:07:02 +02:00
3365722b8b GenericUI: remove duplicate connection to signal
Now that there isn't an early return anymore for Dropdowns, the common
path takes care of connecting the display update code to the correct
signal.
2016-07-28 23:21:10 +02:00
d26c3d380d GenericUI: replace early return by an else 2016-07-28 23:21:10 +02:00
535814cf98 GenericUI: don't add all inputs to automation vector
That list is used to set the automation state of all automatable
controls when the global automation state is changed with the buttons at
the top of the generic UI window. The controls were added to the list
regardless of the automatable status, and some controls were even added
multiple times: once in build_control_ui() and once in build().

Since changing the state of non-automatable controls is wrong, only add
the control UI in build_control_ui() which already has the knowledge of
automatable or not.
2016-07-28 23:21:09 +02:00
35a20a8bcc GenericUI: add a sanity-check for FileChoosers
Assert that all FileChooserButton created are for properties, because
the remaining code assumes that it should setup things for a property.
2016-07-28 23:20:04 +02:00
0e7b9c6a98 GenericUI: move up filepath property handling
Since it is the only case that's completely different from others in
that it only handles properties, and uses a different signal path for
updates, don't put it in the middle, but as the first case to check for.

Code move only, no behavior change (since it should be exclusive to all
other cases anyway).
2016-07-28 23:20:03 +02:00
63bbcf968a GenericUI: only connect one PropertyChanged callback
The code connected the callback to the PropertyChanged signal from the
plugin once per filepath control created. Should the plugin have several
files to open, this would be at best wasteful and at worst racy.

Connect the callback a single time, since the same callback handles all
property updates that we're interested in. Also rename the methods,
members and typedefs so that it's clear what the code is trying to do.
2016-07-28 23:19:08 +02:00
1d173bc84f GenericUI: replace ComboBoxText by ArdourDropdown 2016-07-28 23:18:47 +02:00
cf08eaa32d pt(_BR) update for gtk2_ardour from Marcelo Teles 2016-07-26 10:32:03 -04:00
c71cc6fe5b When showing a prefs pane, select the row in the tree
When programmatically showing a pane, instead of directly asking the
preferences notebook to show the pane, search for the asked path in the
panes tree, and select it. Since OptionEditor listens to selection
changes in its TreeView, the correct pane will be shown, with the added
benefit that the corresponding section in the tree will be highlighted
so that the user knows which pane is currently shown.
2016-07-26 08:02:40 +02:00
37dc4bd8a7 Factor out and simplify the search by components in options tree 2016-07-26 08:02:40 +02:00