13
0
Commit Graph

258 Commits

Author SHA1 Message Date
b976bf8986 NO-OP whitespace & foratting of header files 2017-07-01 21:19:56 +02:00
dc0139d4af use CoreSelection for track selection 2017-05-05 18:56:25 +01:00
dc3ae8d196 Add a "select topmost" track editor action 2017-04-29 12:38:53 +02:00
e508d41091 NO-OP: whitespace 2017-04-29 12:38:53 +02:00
9e543beb56 Add some convenient public editor methods (for lua-bindings)
and s/get// in the old API for consistency.
2017-02-24 16:10:14 +01:00
1e4e97019d Lua bindings to access editor selection + region selection bindings 2017-02-23 22:32:32 +01:00
c8d6ddfd10 Don't scroll-jump when selecting all tracks 2017-02-18 01:25:13 +01:00
0a41daa932 classify all region actions based on how they get a list of regions to operate on; use this in Editor::sensitize_the_right_region_actions()
There are still problems because actions like trim_front()
that use the edit point get the edit point with different
results than the code that sensitizes actions
2017-02-15 20:07:49 +01:00
65b38322db GUI action Transport/RecordCountIn 2017-02-13 23:01:11 +01:00
nick_m
59daffea1d rework snap
snap now fills in a struct (MusicFrame) which contins a snapped frame
along with a music divisor.
this gives useful information wrt magnetic snap which may or may not
have rounded to an exact musical position.

region position may now be set musically (using quarter notes for now).

this patch fixes several problems in the current code:

	- dragging a list of music-locked regions now maintains correct
	  musical offsets within the list.

	- splitting regions using magnetic snap works correctly (#7192)

	- cut drag should now work correctly with magnetic snap.

	- musical length of split midi regions is no longer frame based.
2017-02-04 22:57:36 +11:00
80ee2f2c4d move 10 more actions from Editor/* to Common/* 2017-01-28 18:51:03 +01:00
3c2e69ea42 move 15 actions out of Editor/* namespace, and into Common/* 2017-01-28 18:02:28 +01:00
cc82fc675b remove editor/mixer selection change signals; make editor and mixer use PresentationInfo::Change more correctly; make Selection a bit smarter when setting track selection 2017-01-27 22:17:53 +01:00
645402bc42 Add GUI action to record with preroll 2017-01-18 15:16:05 +01:00
c6464e9c34 Move some actions into the global group:
This allows common keyboard shortcuts from any Tab (Editor, Mixer).
Discuss: should those actions/methods also be moved to ArdourUI instead of
PublicEditor?
2017-01-12 18:22:56 +01:00
e1826f8b1c Add API to query editor's playhead cursor position 2016-12-17 02:43:42 +01:00
ebc7eabea2 add arguments (unusued) to control whether or not SMF tempo map is used during import 2016-12-16 14:57:14 +00:00
9e4b972286 GUI changes to allow user to specify how/if to use SMF track/instrument names during import 2016-12-14 12:31:16 +00:00
73f3e479d3 Make Cut mode respect snap modifer 2016-11-21 22:19:56 +10:00
nick_m
05355d0306 fix incorrect return type for Editor::get_grid_music_divisions(). 2016-11-17 03:13:16 +11:00
07bb5ff347 move kbd focus reset method into ARDOUR_UI where it (probably) belongs 2016-09-06 16:17:08 -04:00
140258d8ab remove reference "const int32_t&" -> const int32_t"
this simplifies lua-bindings and also let's the compiler worry about
constant primitive types.
2016-07-10 15:30:41 +02:00
nick_m
94e0a15325 Exact beat - provide audio->music mapping for region split.
- for those not in the know, this series provides a way to
	  remove the temporal distortion introduced when using an
	  audio frame-based gui for music-locked objects.

	  In short, the gui uses an audio frame representation to move
	  objects. It displays the object using frame_at_beat(), quantizing
	  the time value to audio frames. This is fine until the user selects
	  that frame but expects it to be interpreted as a beat.
	  Thus beat_at_frame() would not produce the user-expected beat
	  (temporal quantization error of up to 0.5 audio samples).
	  This is one method of mapping audio time to music time accurately.
2016-07-10 02:18:36 +10:00
da7d7f9502 many changes associated with rationalizing selection flow 2016-07-06 13:39:10 -04:00
nick_m
24f64b3ea7 Make exact beat calculation of tempi a bit less cumbersome. Move tempi on an audio basis for non-musical snap. 2016-06-12 02:46:13 +10:00
nick_m
86b0268e8b Tempo ramps - add visualtempo curve, dragging bbt or music rulers with constraint modifier dilates previous tempo. 2016-05-27 23:38:16 +10:00
e25dce8849 and a few more Editor lua bindings 2016-04-09 15:45:30 +02:00
ec0ec95262 change const some functions to const. (prepare lua bindings) 2016-04-09 00:33:03 +02:00
eaca325ce8 Trim dependence on evoral types.hpp and Beats.hpp 2016-03-21 18:58:31 -04:00
9a11e3a64d change API for CairoWidget::focus_handler
This functor/closure is responsible for stealing focus from any existing text entry (or whatever else may have focus)
when clicking on a CairoWidget or derived class.

The old implementation just gave focus back to the editor canvas. The new version walks up the widget packing
heirarchy to find a focusable parent (from the CairoWidget for which it is invoked). If no focusable parent
is found, it cancels keyboard focus in the toplevel window containing the CairoWidget
2016-03-15 12:41:21 -04:00
56c32a1e77 Expose PublicEditor Bindings to Lua 2016-02-29 12:01:37 +01:00
2532911b18 Editor Actions Scripts & Manager 2016-02-23 15:42:53 +01:00
bc487bb4b0 replicate the remove-all-trailing whitespace commit(s) in master 2016-02-22 15:31:24 -05:00
67e19c177f radically change Keyboard/Binding API design to disconnect Gtk::Action lookup from binding definition
We need this because we need binding information/objects before all
Actions have been defined.
2016-02-22 15:31:24 -05:00
2c6799f247 changes to support new key bindings editor design 2016-02-22 15:31:23 -05:00
d5bcf90b1a remove all tearoffs except the monitor section.
We don't need this functionality anymore as we build on 15 years experience plus the new tabbed structure
2016-02-22 15:31:23 -05:00
558167a5dd some changes for top menubar systems (i.e. OS X) 2016-02-22 15:31:22 -05:00
9010262bed first compilable version of tabbable design.
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
2016-02-22 15:31:21 -05:00
02c8d6d648 the basics of tabbed 2016-02-22 15:31:21 -05:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
b05912b0cb GUI part: cleanup peak-files 2015-09-15 14:44:05 +02:00
e1f168de11 rename Marker class
Classes are in the global namespace.
OSX has a flat namespace and OSX32bit/Carbon has a Marker too.
2015-07-23 17:58:40 +02:00
a81bfbfc41 use Tracks' MainMenuDisabler during session lock (could be improved with more RAII) 2015-06-29 14:18:09 -04:00
nick_m
88477ace25 Fix inverted logic of SnapOff with snap modifiers pressed.
- also clean up, rename and comment some previous hanges.
2015-05-23 03:09:48 +10:00
nick_m
65e06fa350 More cleanup
- remove "no_magnets" ugh.
2015-05-22 04:26:16 +10:00
nick_m
c359f881a1 Relative Snap -make it activated by the tertiary modifier during drag.
Disabled/enabled with the shift key. no config stuff at all now.
	Move existing (strange) trim feature to primary + tertiary modifiers.
2015-05-17 23:47:01 +10:00
nick_m
91a34c596d Relative snap - support magnetic mode (hackishly for now) 2015-05-17 04:26:05 +10:00
nick_m
68a8330afc Relative snap 2015-05-16 04:15:52 +10:00
ben
e2afdb21c3 minor tweaks to Cut Time dialog. Use an enum to tell preferred_edit_location what to ignore, so cut and insert dialogs will never use mouse location. 2015-04-21 10:22:28 -05:00