13
0
Commit Graph

273 Commits

Author SHA1 Message Date
47767738b9 rename DoTheRightThing to RollIfAppropriate 2020-01-18 08:49:18 -07:00
3c00048b0c Session::request_locate() takes a tri-valued second argument for "roll-after-locate"
This allows callers to defer logic about auto-play/current rolling state and more to TransportFSM where it
can be cnentralized and is less ambiguous
2020-01-18 08:49:18 -07:00
30553a2675 Apply some missing widget names 2020-01-12 18:13:47 -06:00
ca4b6bb7e9
NO-OP: fix some Wimplicit-fallthrough, see prev commit 2019-09-18 17:38:01 +02: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
4f86da8544 Wimplicit-fallthrough fixes for gtk-ardour 2018-10-26 14:53:49 +02:00
58e9bb0a14 move away from "sync source" concepts 2018-10-05 14:15:02 -04:00
db385c2e3c new transport slave/master implementation, gui edition 2018-09-18 19:06:04 -04:00
47970b0cd1 user-friendly hack/heuristic: if they edit a BBT non-duration clock to say zero beats, act as if they had used 1 2018-02-20 17:19:43 -05:00
a2fa81cf82 Remove duplicate assignment (amend 867460cd3) 2017-11-23 15:34:21 +01:00
15150c57c1 Implement clock delta modes
* use new config variable
* update GUI to select delta-modes
* delegate delta-calculation to MainClock
* save offset to calculate absolute-time
2017-11-23 00:13:32 +01:00
867460cd30 Add seconds as clock-unit 2017-11-22 20:36:28 +01:00
30b087ab3d globally change all use of "frame" to refer to audio into "sample".
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04: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
Thomas Brand
63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
82cb046fa3 if actively recording, prevent interaction between mouse and audio clock widget(s) 2017-05-31 13:04:26 -04:00
2b33d35e5c Remove ambiguity to keep MSVC happy
NB: Do we really need 'floor()' here?? (we seem to be multiplying integers)
2017-05-10 12:22:57 +01:00
2c7cb9065f Limit clock displays to 30days (720hours) by default.
This prevents various edge-cases of selection-clocks (eg. unbound range
selection after start-range; and makes it near impossible to roll-over
2^63 using GUI operations)
2017-05-08 12:37:17 +02:00
a6d71df0d0 Use XMLNode::get_property in AudioClock class 2017-04-19 09:36:57 +10:00
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
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
b3722f7063 consistent use of context-menu popups 2017-03-16 02:36:48 +01:00
92e02707a4 Potential clock info-text color-glitch fix <span color>
Don't switch between set_text() and set_markup(); always use markup because
set_markup() modifies the attribute list of the pango-layout.

This might fix: "Switch Int. clock to MTC and back to Int. and the
indicator redraws with improper colors"
2017-01-31 11:44:40 +01:00
nick_m
7b9784fff4 mark session dirty when dragging tempo markers. 2017-01-27 03:05:32 +11:00
c906a59a3c Fix spacing for TC display 2017-01-10 10:39:22 +01:00
f1abc95927 Only display pull-up/down if it's being used. 2017-01-01 16:14:59 +01:00
25bb0873b9 Clean up Clock Tempo, TimeSignature labels 2016-12-18 23:41:42 +01:00
0a5236266d Add clock-button tooltips 2016-12-18 19:23:12 +01:00
5b80a6ba04 Tweak Tempo and Meter precision, and shorten the label to accomodate 2016-12-18 18:58:56 +01:00
fab1ef05bc remove cruft 2016-12-17 02:43:42 +01:00
1a25b906b3 Commence transport tool bar re-layout 2016-12-17 02:43:42 +01:00
7daee17f87 fix buffer overflow printing tempo/meter 2016-11-12 16:19:27 +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
nick_m
99fbdee0d8 bbt duration clock tweak. 2016-10-21 02:49:04 +11:00
nick_m
3fa9dd51b2 bbt duration clock - revert 3d38b4f58e and a32aea4201. use an alternate fix. 2016-10-20 03:40:06 +11:00
nick_m
3d38b4f58e Duration clock edit uses current time to resolve meter.
- should fix the remaining part of #7072
2016-10-19 23:09:24 +11:00
nick_m
a32aea4201 BBT duration clock can only compare musical times. 2016-10-16 05:09:49 +11:00
nick_m
50963a03c2 AudioClock: remove duplicated code. amends 3a0a628a7 2016-10-16 03:26:30 +11:00
nick_m
3a0a628a75 Rework duration clock and TempoMap::insert_time to include meter at offset.
- should fix 7072

	- also fixes scroll behavior over multiple tempi.
2016-10-16 02:33:49 +11:00
c9ece0d6c6 use moved version of reset_focus() 2016-09-06 16:17:39 -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
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
nick_m
34c9ac9dd7 Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt() 2016-05-27 23:38:17 +10: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
nick_m
3f2a8fe81d Tempo ramps - display bbt in audio clock correctly when dragging tempos/meters. 2016-05-27 23:38:12 +10:00
nick_m
b415b59f79 Tempo ramps - respect tempo note type and meter note divisor correctly.
- tempo and meter position is now pulse-based,
	  although meter still has a beat for convenience.
2016-05-27 23:38:11 +10:00
nick_m
ec791c8dd4 Tempo ramps - hook up tempo display, a new approach to audio-locked meters
- audio locked meters define an offset which is used for all public
	  TempoMap methods while the internal map remains contiguous.
	  Probably a few unexpected consequences here, but seems to work mostly.
2016-05-27 23:38:11 +10:00
17ace643e4 OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one) 2016-05-04 23:09:45 -04:00