13
0
Commit Graph

70 Commits

Author SHA1 Message Date
eeadf5087d
Shuttle wheel context-menu: max speed only applies to percentage 2021-04-20 14:26:30 +02:00
80405e41b0
Fix shuttle wheel unit granularity
When switching to Semitones, round speed to nearest semitone.

This fixes an issue when rolling forward at < 25% which is
less that -24st and then scrolling right (increase pitch).
The result may still be < -24st and playback reverses.

When changing max-speed, directly constrain speed.
2021-04-20 14:14:45 +02:00
2c8746eda9
Fix shuttle wheel semi-tone mode
Previously it was not possible to return from reverse playback
since left-scroll decreased pitch, even during reverse playback.

This also fixes an edge-case when quickly scrolling through
zero. use_shuttle_fract() ignores rapid events, map_transport_state()
can round speed to zero and next scroll-event set the default +1st
speed (really should have been 0st).This is solved by starting at
-24st, similar to how percentage does not start at 100%.
2021-04-20 13:53:35 +02:00
81c08b6efb restore sprung shuttle behavior (mistakenly altered in a recent commit 2021-04-19 16:14:08 -06:00
48e5607f7c use Session::request_roll() instead of request_transport_speed (1.0, ...) 2021-04-19 16:14:08 -06:00
52b7e68102 use new Session transport API calls in GUI 2021-04-19 16:14:08 -06:00
0bccc4bffd fix mispelling of actual in shuttle control code 2021-04-19 16:14:08 -06:00
d23798276a
Use CairoTheme API 2021-01-26 23:37:57 +01:00
4d17c5179c remove unnecessary call to set_colors()
This call also happens before colors are even defined
2020-04-28 11:45:14 -06:00
ab7b5c6089 add safety tests inside ShuttleControl to deal with _session == 0 2019-12-14 09:58:53 -07:00
b84c99639f parametize the maximum transport speed.
No GUI to adjust this at this, nor is any planned. This just makes it easier if
we ever feel we can change this.
2019-09-17 17:19:15 -06:00
4050ca5633
Update GPL boilerplate and (C)
Copyright-holder and year information is extracted from git log.

git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
3bc9281c31
Fix some Gtk::Menu related memory leaks
A Gtk::manage()d widget will be deleted when its parent container
is destroyed. Top-level context menus are not inside a container and
hence need to be manually deallocated.

This adds explicit delete calls for menus where there is a
member variable reference to the Menu.
2019-03-07 23:50:32 +01:00
204d7bf76c
Remove cruft: unused members 2019-03-07 22:25:19 +01:00
bc18c54c73 Quick hack to test engine vari-speed (2/2) 2017-10-29 20:04:06 +01:00
601c317d70 Clean up library inheritance (colors.h, utils.h)
make libwidget independent of libcanvas.
Confine basics to pbd and gtkmm2ext.
2017-07-17 21:06:04 +02:00
b5e9451bc7 Remove unused sources & includes 2017-07-17 21:06:04 +02:00
5c92613698 Separate Ardour UI widgets into dedicated library 2017-07-17 21:06:04 +02:00
d06de26a4f Towards a consistent render() API.
This fixes an -Woverloaded-virtual ambiguity introduced in b5e613d45

  void render (cairo_t*, cairo_rectagle*)
  void render (Cairo::RefPtr<Cairo::Context> const&, cairo_rectangle_t*)

ArdourCanvas prefers cairomm and CairoWidget itself uses Cairo::Context,
this improves overall API consistency.
2017-03-20 17:12:08 +01:00
3aefd0e744 consolidate context-menu popup methods 2017-03-16 02:36:48 +01:00
607e7f3b9e Fix flat buttons for the shuttle-ctrl 2016-12-31 20:57:07 +01:00
2561b98f8a Move shuttle/speed text outsize 2016-12-19 22:11:53 +01:00
a631706059 Rework shuttle control display 2016-12-17 02:43:42 +01:00
994df3aaa3 improve shuttle control response when grabbed. 2016-07-25 19:43:57 +02:00
822810b88f the endless quest to plug memory leaks -- episode 379 2016-07-25 17:38:59 +02:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
3d5491d0d0 show ShuttleControl GUI some love.
now uses Pango, not Cairo, for text rendering
2016-06-13 17:26:02 -04: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
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
1d42ed077e Use ARDOUR_UI_UTILS::set_tooltip rather than via ARDOUR_UI::set_tip
This removes the direct dependence on ARDOUR_UI/Gtk_UI for setting
tooltips. Removes inclusion of ardour_ui.h from 16 files.
2015-09-16 16:55:17 -04:00
6b019a4953 Move UIConfiguration Singleton into UIConfiguration header
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00
ad4ae3df85 Add 100% shuttle controls option - closes #6537 2015-08-22 04:32:14 +02:00
2a5694652f remember max shuttle-speed 2015-06-29 18:57:51 +02:00
32924aa7b8 When using the Editor's Shuttle control, stop any shuttling by calling Session::request_stop()
Previously we were using a convoluted scheme of firstly setting the transport speed to 1.0, then later re-setting it to 0.0. On Windows this was having some strange side-effects (such as leaving the transport in Play mode and/or resetting the timeline to zero timecode). Hopefully this change will also work for the other platforms.
2015-06-22 16:08:46 +01:00
06bea13b7c increase shuttle speed display granularity. 2015-03-10 11:00:53 +01:00
2d20bcab4a dramatically reduce ShuttleControl CPU usage 2015-03-10 10:53:56 +01:00
2e82aa2743 clean up and refine shuttle control rendering. 2015-03-10 03:49:00 +01:00
23762ed225 circles and circles and circles, again my friend
escape the cairo vicious circle, fixes varispeed playback
& major CPU hog on OSX.
2015-03-10 02:48:14 +01:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
56ca52651e fix up requested color names everywhere.
Thank <deity> for emacs ... space-uncamelcase-word-at-point FTW
2014-12-14 16:15:38 -05:00
48a7a11974 initial pass to replace all UIConfiguration::get_XXXXXX() calls with UIConfiguration::color(name).
IMPORTANT: names have not been downcased and spaced yet, so many colors are not found
2014-12-14 12:27:07 -05:00
ba4d1cd1c1 remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config() 2014-10-21 22:58:58 -04:00
ab44e41dfd change the meters into CairoWidget, add expose_area to CairoWidget::render() 2014-03-20 23:50:40 +01:00
e1b0f1bd0b merge with master 2013-05-04 22:41:10 -04:00
40944574c6 the big rework of window management. probably not complete at thsi point, but this is mostly functional 2013-05-04 22:02:05 -04:00
96eee9e7a1 change UIConfig to use accessor/setter methods like RCConfig so that ParameterChanged methods can actually be emitted; add variable (over a small range) background shading for all TimeAxisViewItems 2013-04-16 23:46:22 -04:00
9fc7eb1f0d remove incorrect #includes of <cairo/cairo.h> and replace with <cairo.h> 2013-03-29 20:36:11 -04:00
5adcb61f60 a few small fixes that help pitchbend control of things, notably the shuttle controller. but note that basically, teh shuttle controller is completely and hopelessly broken through excess complexity and incorrect design
git-svn-id: svn://localhost/ardour2/branches/3.0@13870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-17 14:48:17 +00:00
f2d27bb513 address #5236 - Varispeed 'spring' retains speed. temp fix
git-svn-id: svn://localhost/ardour2/branches/3.0@13748 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-30 21:50:08 +00:00
19be6f4886 fix #5233 - Varispeed is not draggable when tooltips are disabled
git-svn-id: svn://localhost/ardour2/branches/3.0@13745 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-30 19:52:46 +00:00