Commit Graph

103 Commits

Author SHA1 Message Date
Paul Davis 0162d3f9d6 GUI changes to *try* to adapt to a world without explicit beats<->samples converter objects (i.e. use AutomationLine::get_origin() instead 2021-08-13 12:51:34 -06:00
Paul Davis 18d64f0402 change all Region::nt_*() methods to names without the nt_ prefix (GUI version) 2021-08-13 12:51:30 -06:00
Paul Davis 5b2a435e02 getting editor_drag.cc to compile 2021-08-13 12:51:29 -06:00
Paul Davis 7433bc27e0 intermediate, unfinished snapshot of ongoing timeline types work on GTK GUI 2021-08-13 12:51:29 -06:00
Paul Davis 54e0b7f230 renaming cue markers (via dbl-click) 2021-05-24 20:23:06 -06:00
Paul Davis 60a972a7de implement region marker deletion 2021-05-18 18:01:38 -06:00
Paul Davis baee1a2f01 add API to make sure that region cue markers are above any waveviews or MIDI etc 2021-05-18 16:50:27 -06:00
Paul Davis 8859f76f48 new structure/design for managing visible cue markers 2021-05-14 18:37:50 -06:00
Paul Davis a1c68460be add basic/initial code for action to add a region marker 2021-05-14 18:37:50 -06:00
Paul Davis 56857302f4 add cue markers to RegionViews 2021-05-14 18:37:50 -06:00
Robin Gareus f4f9d76e53
Option to how x-run markers in regions 2021-02-14 16:22:35 +01:00
Paul Davis 13c0145890 move virtual method from region_view.h to region_view.cc
It cannot be inlined anyway, so nothing gained by the header file presence
2020-05-01 17:39:13 -06:00
Robin Gareus 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
Paul Davis 8463fb728f add option to show/hide region names 2019-05-29 15:24:40 -06:00
Robin Gareus 31815b5f26
NO-OP: whitespace
This fixes mostly <tab> after <space> and similar <tab> not used
for indenting as well as some related code alignment issues.
2019-04-13 17:57:46 +02:00
Robin Gareus eb4e854a56
Replace some more "samples" with "frames" (rectangles) 2019-04-09 00:31:29 +02:00
Robin Gareus a0b032efe2
Revert more "frame/sample" replacements
- Coverage concerns rectangles (frames, not sample)
- frame-handles are rectangles
- layout container boxes are frames
- inline display boxes are display_frame
2019-04-08 22:42:47 +02:00
Ben Loftis 0299229e41 SoloSelection: gui part. 2018-02-11 09:39:45 -06:00
Paul Davis 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
Robin Gareus b976bf8986 NO-OP whitespace & foratting of header files 2017-07-01 21:19:56 +02:00
Thomas Brand 63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
nick_m 5031bdcf10 midi note drags are music-based.
- wysiwyg (during drag) when dragging more than one note across
	  a tempo change.

	- introduces a muscal equivalent of snap_delta (only used for
	  note drags atm)

	- split earliest note in selection into a separate function

	- MRV::copy_selection() returns the equivalent _primary note
  	  to avoid offset hell.

	- RV::snap_frame_to_frame returns a MusicFrame

	- prevent note drag moving before region start.
2017-02-05 05:02:01 +11:00
Robin Gareus 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
nick_m 2d5238d875 Make some musical operations on music-locked regions operate in beats.
- use exact beats to determine frame position.
	- see comments in tempo.cc for more.
	- this hasn't been done for split yet, but dragging and
	  trimming are supported.
2016-07-10 02:18:36 +10: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 91a34c596d Relative snap - support magnetic mode (hackishly for now) 2015-05-17 04:26:05 +10:00
Paul Davis f20933b80f allow theme control of sync mark colors 2014-12-19 10:07:20 -05:00
David Robillard 6031308520 Use color modifiers for dynamic region styles. 2014-12-18 20:23:34 -05:00
David Robillard a12a065457 Fix copy paste of MIDI and track automation. 2014-12-18 20:23:34 -05:00
David Robillard 5fef655380 Remove internal edit mode and add "content" tool. 2014-12-18 20:21:01 -05:00
David Robillard 41a9060df9 Move time converters only to the region views that actually need them.
A step towards sorting out time issues more solidly, the time situation of MIDI
region views and automation region views is slightly different.
2014-11-22 00:46:15 -05:00
Paul Davis 6a5d805b38 more canvas refactoring.
Remove Canvas::Layout, use Canvas::Container for the same purpose, move child-rendering into Item::render_children() so that it
could theoretically be used by any derived type.
2014-06-22 11:41:05 -04:00
Paul Davis 0796ccfb65 use newly factored canvas in gtk2_ardour 2014-06-21 11:44:22 -04:00
Paul Davis 50fea864db rationalize and coordinate handle of region (time axis view item) opacity.
There are still some bugs with this because of the waveview image cache - fixes coming soon.
2014-06-13 12:22:39 -04:00
Paul Davis ce08ec0de0 substantial changes in color management, involving a reduction in the use of Gdk::Color and more consistent logic for region coloring.
Group tabs now also get the text drawn in an appropriately contrast-y color
2014-06-09 23:29:00 -04:00
Paul Davis 39eec5ac1b hopefully fix up selection of color for region name text, under all conditions 2014-06-05 12:04:42 -04:00
John Emmas 19bb2b33a8 Merge remote-tracking branch 'remotes/origin/cairocanvas' into windows
Conflicts (hopefully resolved):
	gtk2_ardour/marker.cc
	gtk2_ardour/midi_region_view.h
	gtk2_ardour/region_gain_line.h
	gtk2_ardour/utils.cc
	gtk2_ardour/video_image_frame.cc
	gtk2_ardour/wscript
	libs/backends/jack/wscript
2013-09-21 09:17:25 +01:00
Paul Davis 5cafb98983 Work around badly chosen argument name in giomm/dbusmessage.h
interface is defined in windows/mingw headers. hopefully this will
be fixed in giomm at some point and this crap can be removed
2013-07-11 15:29:28 -04:00
Paul Davis 7de31d5a41 use virtual bool canvas_group_event () in TimeAxisViewItems to get suitably delegatable/inherited event handling 2013-04-25 16:06:12 -04:00
Paul Davis 6f664c1f67 many pervasive changes primarily related to waveform drawing, particular content-dragging, colors, and more 2013-04-24 15:42:14 -04:00
Paul Davis b05968fb4e change frames_per_pixel to samples_per_pixel 2013-04-12 11:31:50 -04:00
Paul Davis 7caf517b27 add (bezier) curves to canvas, use for automation lines; fix issue with rectangles missing their upper line segment; more cairo canvas fixes 2013-04-11 22:54:12 -04:00
Paul Davis aaea166135 initial commit of hand merging, plus getting "ancient" waf script to work correctly 2013-04-04 00:32:52 -04:00
Ben Loftis 2292e33ee4 crossfade hack and slash. removed overlap checks, overlap mode, default length, fade_is_xfade, fade_is_short, and other leftovers from previous crossfade models. Draw crossfade drags in realtime so fade_line is no longer needed. remove code for hiding crossfades during a drag. moved crossfade rect to top layer so crossfade lines dont grab mouse focus. drag-trim-with-fixed-fade-anchor is partially implemented and needs discussion
git-svn-id: svn://localhost/ardour2/branches/3.0@13659 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-12-13 16:42:05 +00:00
Carl Hetherington 174c0d6831 Snap new automation points in AutomationRegionViews (#4297).
git-svn-id: svn://localhost/ardour2/branches/3.0@10059 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-06 23:28:55 +00:00
Paul Davis f6951c92f0 attempt to fix deep confusion in GUI code about converting between musical and audio time (should have beneficial effects on #4257); change ghost note drawing when in MIDI note draw/add mode so that its start is aligned with the mouse cursor
git-svn-id: svn://localhost/ardour2/branches/3.0@9998 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-16 14:24:41 +00:00
David Robillard ed626628b5 Delete trailing whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@9656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 17:00:29 +00:00
Paul Davis ebf3762fa9 fix computation of silence text, and its display. it is still not on top of the canvas, which is a small problem
git-svn-id: svn://localhost/ardour2/branches/3.0@8227 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-09 18:17:36 +00:00