13
0
Commit Graph

317 Commits

Author SHA1 Message Date
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
2884ac6346 clock info-box: fix alignment and spacing
git-svn-id: svn://localhost/ardour2/branches/3.0@14123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-03 11:36:47 +00:00
82be348d42 replace unicode dash with (monospace) minus.
git-svn-id: svn://localhost/ardour2/branches/3.0@14122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-03-03 11:36:42 +00:00
72393f101b allow region list selection of whole file regions to select every instance of a region that has any source relationship with that whole file region (from a logic feature that came up while writing the manual)
git-svn-id: svn://localhost/ardour2/branches/3.0@13779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-04 22:46:51 +00:00
8512947687 make 2 audio clock strings translatable
git-svn-id: svn://localhost/ardour2/branches/3.0@13746 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-30 21:33:16 +00:00
8f9a854b28 used fixed width for the big clock and remove all code in AudioClock associated with variable width, since it just really doesn't work very well, and probably cannot be made to work very well
git-svn-id: svn://localhost/ardour2/branches/3.0@13744 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-29 15:59:38 +00:00
fe1796fd6f allow big block to be shrunk in size as well as expanded (suprisingly complex!)
git-svn-id: svn://localhost/ardour2/branches/3.0@13740 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-27 18:49:12 +00:00
102081a389 fix crash reported by colinf when editing via >1 click on an audioclock. this caused pre_edit_string to be reset to an empty string on the non-first clicks, and then string::at() was used on it. both aspects fixed
git-svn-id: svn://localhost/ardour2/branches/3.0@13682 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-19 17:07:27 +00:00
Ben Loftis
92e5a13fd4 several theme changes. changed drawing of rounded_rectangle to be more correct. operation and feel should be more consistent. rec-mute-solo buttons are now dull until enabled. this might be debatable. otherwise if it looks weird, try loading Window->Theme Manager and clicking Restore Defaults
git-svn-id: svn://localhost/ardour2/branches/3.0@13611 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-06 20:48:44 +00:00
a6968f8d2c hotfix negative TC editing - problem was introduced in r13491
git-svn-id: svn://localhost/ardour2/branches/3.0@13506 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-15 13:19:07 +00:00
4322fcec23 indicate negative TC when edit is positive.
git-svn-id: svn://localhost/ardour2/branches/3.0@13491 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-14 03:35:23 +00:00
6055190094 improve negative [offset] TC entry
* make mouse interaction work with negative TC
  * show minus-sign when edit is negative

TODO: ?minus? sign indicator when text editing a negative TC.

git-svn-id: svn://localhost/ardour2/branches/3.0@13488 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-14 00:15:54 +00:00
a5f5572159 update BPM and Meter when changed, also change back labels for it.
git-svn-id: svn://localhost/ardour2/branches/3.0@13486 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 23:29:57 +00:00
e1581242ca implement TC offset for slave&generator.
Many related changes that require atomic update, mostly
because ClockOption slots changed:

  * change offset config format to std:string (backwards compat - reads 0)
  * make Timecode offset independent from fps
  * sample_to_timecode() handle negative sample-num
  * audio-clock fix entry and edit of negative numbers
  * option editor:
    - remove old global internal offset
    - add slave & generator TC entry
    - still needs UI cleanup, tooltops, maybe sep. tab..
  * LTC & MTC slave& generator:
    - cache offset
    - subscribe to parameter changes

git-svn-id: svn://localhost/ardour2/branches/3.0@13485 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 20:29:28 +00:00
f761de0d70 clock: pull-up/down display update
git-svn-id: svn://localhost/ardour2/branches/3.0@13484 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 20:29:24 +00:00
1f1cba3814 oiling the audio clock
git-svn-id: svn://localhost/ardour2/branches/3.0@13478 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 16:14:22 +00:00
06fa1b73e5 parse keyboard entered drop-frame timecode delta
git-svn-id: svn://localhost/ardour2/branches/3.0@13476 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 02:25:59 +00:00
cf55921aea make audio clock fill vertical space
git-svn-id: svn://localhost/ardour2/branches/3.0@13474 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 02:00:51 +00:00
ba54b9583b shorten Metrum & Tempo label
git-svn-id: svn://localhost/ardour2/branches/3.0@13472 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-13 02:00:47 +00:00
2508f3ba94 add labels for BBT clock info
git-svn-id: svn://localhost/ardour2/branches/3.0@13463 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-12 18:18:15 +00:00
d546c20bed display slave initial before slave timecode
git-svn-id: svn://localhost/ardour2/branches/3.0@13462 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-12 17:54:55 +00:00
dc520de915 really fix vertical alignment of info text (again :) )
git-svn-id: svn://localhost/ardour2/branches/3.0@13461 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-11-12 17:54:52 +00:00