13
0
Commit Graph

338 Commits

Author SHA1 Message Date
7433bc27e0 intermediate, unfinished snapshot of ongoing timeline types work on GTK GUI 2021-08-13 12:51:29 -06:00
f4490f54c5 change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
ac53a9bbf8 remove unnecessary 2nd argument from Session::request_locate() calls (default value is identical) 2021-05-03 17:40:41 -06:00
03f63d4463
Fix BPM button text display on Windows 2021-04-13 19:46:47 +02:00
d13eb84fa3
Fix BPM button overflow
"T: " prefix isn't very useful. in music-notation the note
symbol is established: ♩ = <bpm> or ♪ = <bpm>.

This fixes an issue on Windows, where those note symbols are
not available in the default unicode font. There "1/4" is used
which adds two extra monospace chars leading to cropped text.
2021-03-20 19:07:31 +01:00
dca7cbc963
Allow to configure decimals of MinSec clock format 2021-02-22 01:00:02 +01:00
33088c728a
Clean up AudioClock font API
see also previous commit 2abf9c66a4
2021-01-30 02:23:59 +01:00
734dc78ed5 prevent possible crash in AudioClock setup 2020-11-19 17:11:48 -07:00
93b63b1b25
Fix clock cursor entry position
This shows the cursor to the right of the entry point.
2020-10-26 15:56:18 +01:00
3fb70c1bf9
Fix BPM display, windows does not support UTF8 ♩♪ 2020-08-15 01:54:37 +02:00
378a0af4a7
Prevent locate while recording due to clock edits #7383
This follows Editor::button_press_handler() ignoring mouse-press
while recording: Limitation is in the GUI only.
2020-06-03 19:56:08 +02:00
7b2b2401a3
Optimize AudioClock info-text rendering
Avoid markup, pango markup parsing is expensive, particularly
for info strings which may be updated periodically at
short time intervals.
2020-05-12 15:08:39 +02:00
807915b40c remove debug output 2020-03-24 21:15:57 -06:00
900bab7271 basic pass at deleting scratch sessions 2020-03-24 21:15:32 -06:00
6ad3ce7bff audio clocks that are not editable are not focusable either 2020-03-11 09:07:28 -06:00
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
e025c45cda fix crash when loading a session with non-default clock modes.
set_mode() emits ModeChanged which results in save_extra_xml().
If this happens during session-load, the XML iterator is invalidated.
2016-04-24 14:43:18 +02:00
6991a07902 remove all trace of SAE from source code.
This had become incoherent over time, and posed a development hazard and burden going forward
2016-02-22 15:31:24 -05:00
André Nusser
7a846b7e6d Make capitalization consistent and other minor spelling corrections. 2015-12-01 00:39:35 +01:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
7f86418340 Revert "change the way the audio clock cursor is drawn (somewhat of an experiment but it has some benefits"
This reverts commit 601770837e.

This work continued in the "clockwork" branch where it was done correctly.
2015-09-28 20:28:40 -04:00
601770837e change the way the audio clock cursor is drawn (somewhat of an experiment but it has some benefits 2015-09-28 17:42:11 -04:00
3e0d801509 when editing an audio clock, swallow illegal keys rather than allowing them to reach the rest of the GUI 2015-09-28 17:42:11 -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
fc1e7dbb55 Move DPIReset and ColorsChanged signals into UIConfiguration 2015-09-16 16:55:17 -04:00
3cb2f25d89 Add 'accept on focus out' parameter (default false) to AudioClock
If this parameter is passed as 'true', then edits to the clock will be
accepted when the user clicks away from the clock, rather than
unconditionally discarded as hitherto.
2015-06-17 17:15:21 +01:00
cb2186b118 tweak layout of main clocks so that HMS display remains center-justified 2015-05-21 17:23:04 -05:00
91fac4c96d merge fix for tempo branch 2015-04-21 08:35:20 -05:00
2d8aa1d2ff simplify coaxing clock value out of ardour 2015-04-14 12:09:45 +02:00
47110c983c fix OSX/PPC 10.4 long maths 2015-03-31 16:05:15 +02:00
99e15d9402 Make left-click on tempo/meter in main clock edit current tempo/meter 2015-03-09 19:17:52 +00:00
d8405e2ebe add the ability to use cairo scaling to warp the rendering of the main clock text 2014-12-31 07:20:48 -05:00
815a8b09e4 follow 113bc3b38e, tentative clock-font size update.
This really needs a better solution.
2014-12-29 00:05:58 +01:00
64fa63212f move all (G)UI related configuration parameters into UIConfiguration, not RCConfiguration 2014-12-22 13:39:46 -05:00
318a9edab9 massive reworking of color selection implementation 2014-11-26 18:22:22 +02:00
df19c576c7 fix a bunch of memory leaks 2014-09-11 03:04:11 +02:00
01864b43e0 redraw clock(s) only when needed. 2014-08-30 20:17:34 +02:00
6157c685d9 fix TC entry beyond 2^31 frames. 2014-07-10 19:09:12 +02:00
eab61cbafe break out AudioClock::print_minsec() so that AudioClock and VerboseCursor can use the same formatting code. 2014-07-09 19:13:18 -04:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
ab44e41dfd change the meters into CairoWidget, add expose_area to CairoWidget::render() 2014-03-20 23:50:40 +01:00
3020b224fa Merge windows+cc branch into cairocanvas branch. Not finished, need to now merge windows branch to get changes from there 2014-01-10 16:07:57 -05:00
2da67fb99f fix audio-clock sample entry, handle empty entry as NOOP 2013-11-11 02:33:57 +01:00
300b484cf6 Merge branch 'master' into windows+cc
Conflicts (hopefully resolved):
	gtk2_ardour/ardour_ui.cc
	gtk2_ardour/ardour_ui.h
	gtk2_ardour/ardour_ui_options.cc
2013-10-06 11:56:03 +01:00
8bf59e88e5 'gtk2_ardour' - Use 'floor / floorf' instead of 'trunc / truncf' 2013-10-03 09:32:08 +01:00
f8574fc39d 'gtk2_ardour' - Add namespaces + casting where necessary + general bits of 'correctness' to keep MSVC happy 2013-10-03 09:06:56 +01:00
960a47330a switch from JACK_Slave to Engine_Slave 2013-09-19 17:34:23 -04:00
c7fcba77b8 correct error message 2013-07-31 19:29:15 +02:00
Michael R. Fisher
3e11c80ac3 C++11 Building - Add space between macros and quoted strings 2013-07-15 22:57:34 -05:00
0b5e546340 remove a couple of unused font style names, remove SAE style files
git-svn-id: svn://localhost/ardour2/branches/3.0@14151 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-05 13:24:04 +00:00
ae85663fa7 use default (not monospace) font for clock text
git-svn-id: svn://localhost/ardour2/branches/3.0@14137 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-04 20:00:51 +00:00