13
0
Commit Graph

79 Commits

Author SHA1 Message Date
962e7a214a Revert "consistent use of context-menu popups"
This reverts commit b3722f7063.

In some cases ardour shows context-menu on right-mouse-button
release. In this case selecting a menu-entry should happen
with the left-mouse button (or any button?!)

Using ev->button is only correct if the menu is temporary and only
visible while the button is held, button release then activates the
menu-item.

This needs further work, in some cases allowing any button (0) to work
makes sense and overall consistency needs to be improved.
Different places use different strategies for context-menus which
don't always match the button used in the event-handler.

This is a hotfix (to make TAV context menus work again with left-click)
2017-03-24 14:48:46 +01:00
b3722f7063 consistent use of context-menu popups 2017-03-16 02:36:48 +01:00
88a22d40b5 Fix implicit selection when operating track-header ctrl buttons
Stop event propagation. Otherwise, on release the event is passed
up and handled by the TAV which scrolls the editor viewpoint
and the button is no longer under the mouse.
2017-03-01 11:55:32 +01:00
5c4a2025f1 Fix touching mute automation (mostly)
controllable->set_value() from GUI context will eventually queue
a session-rt command. By the time the realtime command runs, the
controllable needs to be in "touch" mode.

The AutomationController "toggle" UI worked around this by directly using
the underlying API (ignoring slaved-controls and ignoring groups).
The RouteUI's GUI wasn't able to write mute-automation at all.

This commit is a compromise: press + hold (touch) + release button.

(it may need further special-casing for _desc.toggled in
AutomationControl::actually_set_value(), also undoing automation-writes
is currently  not working correctly)
2017-02-28 05:01:17 +01:00
419006dd83 PBD::Signal<...>::connect() is already thread safe, so drop intermediate proxy/call_slot() invocation in handling Controllable::Changed within AutomationController 2017-02-21 18:45:29 +01:00
nick_m
33e95a1577 rename Tempo _beats_per_minute to _note_types_per_minute, provide pulse helpers.
- adds quarter_notes_per_minute(), note_divisions_per_minute (double)
	  pulses_per_minute() and frames_per_quarter_note()

	- this should be a no-op except for the use of tempo by
	  the vst callback which definitely uses quarter notes per minute.

	- the XML node for TempoSection named 'beats-per-minute'
	  has been renamed.
2016-11-11 03:37:08 +11:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
ff50b3780a Replace Gtk::ToggleButton with ArdourButton in Generic Plugin GUI 2016-07-04 00:20:11 +02:00
1f2d1b586e allow AutomatoinContoller to render as Knob instead of Slider. 2016-07-04 00:20:11 +02:00
nick_m
8f3bc6f809 Tempo ramps - rename tempo_at() -> tempo_at_frame().. 3 decimals for the audioclock tempo display. 2016-05-27 23:38:17 +10:00
47026cac9b fix stuck touch mode
previously the GUI locked out control surfaces (touch was never released).
2016-03-07 17:11:47 +01:00
bb38d3db4d remove unused GUI signals (confusing dup. name) 2016-03-07 17:11:47 +01:00
9e3299f97d change Controllable::set_value() API to include grouped control consideration.
This also removes Route::group_gain_control() and associated machinery.
Not yet tested with Mackie or other surfaces. More work to done to
start using the group capabilities, and also potentially to add
or derive more controls as RouteAutomationControls
2016-01-02 04:58:30 -05:00
nick_m
93d5b6c554 Set toggled automation controller using a double. 2015-10-20 00:53:31 +11:00
nick_m
ffed94d89b Automation - more toggled controller twiddling. 2015-10-20 00:53:28 +11:00
nick_m
9c102fa8d2 Make automation record undo per pass rather than per touch. 2015-10-20 00:53:28 +11:00
nick_m
877b258c74 Toggled automation fixes.
- don't attempt to insert two points on toggle.
	- remove forced touch->write mode change on toggle
	- initial state still wrong, but works much better overall.
2015-10-20 00:53:27 +11:00
38bae2996a Remove ardour_ui.h header inclusion 2015-09-16 16:55:17 -04:00
nick_m
15819f0896 Automation -use editor_add in gui, record straight lines with fewer points.
- don't keep setting/unsetting write pass when transport frame
	  remains the same (think larger jack buffer sizes)
	- insert guards are now 64 frames after when.
	- refactor previous approach.
2015-06-17 09:54:22 +10:00
6c93bcc64f allow MIDI bindings for boolean automation 2015-04-10 17:14:11 +02:00
de0eaad53a use plural form for menu item 2015-04-02 14:19:12 -04:00
50041cb450 avoid non-integer loop conditions. 2015-03-08 02:01:48 +01:00
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
24727e65be Make gain controls step by roughly 1.0/0.1 dB.
Shoot for roughly 30 steps for all controls.

Always keep sensible step information in ParameterDescriptor and just convert
for the UI.

This is a little weird, but it's less weird than it was before, and works.
2014-12-04 00:30:47 -05:00
86de0386c9 Fix automation write/touch. 2014-12-01 23:35:24 -05:00
4d4c20b8cc gtk interface update for controller step/page size 2014-11-30 15:05:40 +01:00
77d5fb7a35 Fix write for boolean automation. 2014-11-29 14:32:12 -05:00
48bb90eb88 show values on faders (fixes bug in 55c6165) 2014-11-29 14:49:03 +01:00
55c616519b Use a button as controller for toggled parameters. 2014-11-28 18:40:23 -05:00
9f3f017736 Check whether frequency controls are audible or low and provide appropriate controls.
Always clamp set value to controller range.
2014-11-03 18:41:57 -05:00
6e16f69c26 Add menu to set frequency controls in beats, and half or double current value.
Test with e.g. fomp:cs_phaser1_lfo LFO frequency.
2014-11-03 17:29:11 -05:00
35672fb80a Note selector dialog for note controls. 2014-11-03 16:37:19 -05:00
8a128b33d3 Automation of LV2 plugin properties.
Work towards ParameterDescriptor being used more universally to describe control characteristics.
2014-11-02 02:10:24 -05:00
dbecf44416 NOOP, just whitespace/indenting 2014-11-01 18:24:47 +01:00
52f44dc4da convert interface <> internal values for all automation
fixes Send-Fader, Gain-Automation and various Plugin-Slider ranges
2014-11-01 07:27:35 +01:00
d34bd9e6a0 fix midi automation sliders
Allow controls to work without a list. see also 34c1465 and b469cd2
2014-10-16 21:21:45 +02:00
ceff2e3a62 plugin widgets were written to use Internal values, so use that for now 2014-09-18 17:25:11 -05:00
69ac29d375 consolidate some slider styles, and make bg darker 2014-09-03 15:26:33 -05:00
540a12119b prepare Slider API cleanup 2014-09-02 02:53:05 +02:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
Carl Hetherington
8f371cd60d Remove unused method.
git-svn-id: svn://localhost/ardour2/branches/3.0@12649 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-11 09:50:58 +00:00
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
Carl Hetherington
3a4650cba7 Display amp automation in dB using a logarithmic fader.
git-svn-id: svn://localhost/ardour2/branches/3.0@11535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-02-27 17:17:19 +00:00
Carl Hetherington
4381b590bb Reinstate user Controllable values, as they are needed
for gain (which I forgot about).


git-svn-id: svn://localhost/ardour2/branches/3.0@11293 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-21 16:38:56 +00:00
0e92aee0b1 provide sensible default step and page sizes for AutomationControllers based on parameter max and min values (used to 1.0 for step and 0 for page)
git-svn-id: svn://localhost/ardour2/branches/3.0@10902 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-05 18:14:20 +00:00
ed626628b5 Delete trailing whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@9656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 17:00:29 +00:00
0906b39918 Fix my name :)
git-svn-id: svn://localhost/ardour2/branches/3.0@9302 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-06 15:00:16 +00:00
70d246fbe3 change some parameter names to make things a bit clearer,and require that an AutomationControllable is passed in to AutomationController::create() rather than being willing to create it
git-svn-id: svn://localhost/ardour2/branches/3.0@8876 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-16 19:41:53 +00:00
5f93192aa3 fix crash when opening MIDI controller automation tracks, caused by addition of "owner" field to an AutomationController, used to print values. Renamed "owner" to "printer" and required it to be non-null
git-svn-id: svn://localhost/ardour2/branches/3.0@8874 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-16 19:34:11 +00:00
Carl Hetherington
ea11968f95 Clean up and hopefully fix handling of logarithmic plugin parameters (fixes #3769).
git-svn-id: svn://localhost/ardour2/branches/3.0@8850 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-02-15 01:42:48 +00:00