31acd96384
Implement "multi-paste" for notes, regions, and automation.
...
The idea here is that pasting several times to the same location doesn't make
sense. Instead, the paste is appended past the last paste, snapped to the
grid. This make it simple to replicate a given section a number of times,
simply by copying once and pasting several times.
This behaviour only appears when successive pastes are done to the same
location (whatever the edit point is). When the paste point changes, the
"multi-paste" state is reset.
Boots 'n cats 'n boots 'n cats.
2014-11-14 20:04:19 -05:00
6b3a8915f3
add abort() to non-reached code
...
This cleans up a lot of false-positives in static analysis
and also helps compilers to optimize code paths in general.
(tagging the fatal stingstream operator as ‘noreturn’ is
far less trivial)
2014-11-14 11:30:08 +01:00
da4365255c
fix typo in 58fec98a
...
the documentation was correct: “GTK+ uses G_PRIORITY_HIGH_IDLE + 10
for resizing operations, and G_PRIORITY_HIGH_IDLE + 20 for redrawing
operations.” but the priority for the idle visual changer was wrong.
fixes, follow-playhead and zoom/scrolling under load (no idle)
2014-10-29 18:31:13 +01:00
f900711136
port changes to ARDOUR::Location and ARDOUR::Locations APIs from Tracks to Ardour.
...
Fixes deadlocks caused by mutex on Locations list, and clarifies the purposes and uses of the class-level and
object-level change-related signals.
2014-10-24 12:18:46 -04:00
5ff0c6b319
prevent negative playhead positions from entering code via serialized state
2014-10-22 17:07:11 -04:00
ba4d1cd1c1
remove "canvasvar_" from all functions related to obtaining values from ARDOUR_UI::config()
2014-10-21 22:58:58 -04:00
b73f725676
remove mouse zoom mode; bind z to zoom-to-range
2014-10-21 12:47:53 -04:00
58fec98a4d
fix track height resizing on OSX.
...
If the transport is running, g_idle with G_PRIORITY_DEFAULT_IDLE is
never called.
TODO: check other g_idle functions in libs/gtkmm2ext
2014-10-21 13:20:17 +02:00
a1245de1ba
track height fixes:
...
* retain [custom] track-height
Editor::override_visible_track_count() is called repeatedly (for
every change), there was a 50/50 chance of it saving the right value.
* adjust default for new sessions: use “Normal” track height until
told otherwise.
2014-10-20 20:33:28 +02:00
8d8717800d
add tearoff reattach for the editor
2014-10-16 13:44:36 -04:00
dc924db851
correctly connect to Location static signals
2014-09-17 09:37:39 -04:00
4e411dfd7b
set the CairoWidget focus handler; reset focus when the mouse pointer leaves the Editor window
2014-09-16 12:46:39 -04:00
bb5cd8aa32
fix compiler warning
2014-09-15 14:09:12 -04:00
df19c576c7
fix a bunch of memory leaks
2014-09-11 03:04:11 +02:00
b81ceeaaa6
complete list from 68f0694ac0
2014-09-09 01:24:17 +02:00
68f0694ac0
remove arbitrary button sizing for edit mode buttons
2014-09-08 15:02:33 -05:00
3a75fab244
speed up session load (display updates)
2014-09-06 12:52:29 +02:00
936cb05989
update dropdown triangle
2014-08-30 18:26:03 +02:00
74f313dd6b
Rationalize ArdourButton and lots of associated theming issues.
...
ArdourButtons now have a "pushed" animation.
The gradient is now implemented in the button, rather than providing 2 colors in the theme, which was burdensome.
Lots of code cleanup in ArdourButton. Removed several unnecessary flags.
Refactor more stuff into route_ui.
2014-08-22 11:51:20 -05:00
b75b88a1eb
Use text to specify combo box padding for better font/display tolerance.
...
Consistent mixer strip button height.
The latter works by setting all the button size request heights to the
calculated height of the alphabet. Thus, all buttons of the same class will be
the same height regardless of their actual text.
2014-07-30 18:30:42 -04:00
c1616ccff6
Shrink minimum width a bit by using the same hpad for all toolbar selectors.
...
30 was already being used for some, and looks like more than enough padding,
for me. Hopefully is enough everywhere.
2014-07-29 23:44:57 -04:00
564d8d7669
Consistent styling for toolbar buttons.
...
All the different looks here didn't seem to convey anything useful to me, and
looked sloppy. I went with the style of the transport button.
It would be nice if we could style button elements like Inset in the
configuration, but this would require some work.
2014-07-29 23:39:01 -04:00
ed07c53210
clean up cruft in some config variables
2014-07-28 15:55:20 -05:00
02af7cb418
alternate layout with a full-height editor-mixer, for mixbus
2014-07-28 11:27:02 -05:00
b22e136887
Add some new zoom-to-selection actions, so zoom tool is less needed.
...
Reverse order of items in the zoom menus to match Ardour.
Consolidate the extra zoom math into a function; this fixes a problem in zoom-to-session.
2014-07-23 11:31:06 -05:00
b69870dfe6
add Editor::trackviews_height() convenience function to determine height of trackview area of canvas; use to help fix set_visible_track_count(); don't consider hidden tracks in that function; add "Selected" to that selector menu
2014-07-15 18:09:04 -04:00
6386a5dd7a
up/down scroll buttons on left of summary should move by tracks
2014-07-14 12:36:51 -04:00
62cab525f0
(Mixbus profile only) tentatively remove the Zoom and Cut tools, to save space in the toolbar and reduce some highly redundant functions
2014-07-14 10:08:55 -05:00
492c933a69
fix the visible_tracks_selector to show * when user tweaks a track height. various experimental tweaks to visible_tracks_selector and a new zoom_preset_selector for Mixbus.
2014-07-14 10:08:55 -05:00
b19e1a7985
remove EditAtSelectedMarker for Mixbus, to match mb2. (also fix an existing thinko in the edit point selection actions) (oops: also fix previous track selection fix so that it pays attention to the selection property of the group)
2014-07-14 10:08:55 -05:00
e078102bc6
size various ArdourDropdowns according to the pixel width, not character length, of their various strings
2014-07-09 22:41:29 -04:00
1b4a314d5d
Revert "adjust horizontal-offset for snap/grid dropdown." Wrong fix for the problem.
...
This reverts commit c90d35c4a1
.
2014-07-09 22:39:07 -04:00
c90d35c4a1
adjust horizontal-offset for snap/grid dropdown.
2014-07-10 02:06:51 +02:00
8eeb02fe75
add Editor::edit_mode_strings to allow for i18n; correctly size ArdourDropdowns using longest, translated strings
2014-07-09 16:48:36 -04:00
9f4a00fa89
add mixbus profile which removes the tearoffs
2014-07-09 15:12:05 -05:00
a32dbfa197
Revert "ardour loves narrow screens part one"
...
This reverts commit d3d83eac9d
.
restore full-height of editor-mixer.
2014-07-09 21:47:12 +02:00
0be1555ba6
reduce space around TearOff Tickmarks
2014-07-09 21:47:12 +02:00
12d913893a
shorten grid/snap label "Timecode" -> "TC"
2014-07-09 21:47:12 +02:00
ea311d4379
automatically set ArdourDropdown box width.
...
..according to longest text in English.
2014-07-09 21:47:11 +02:00
419570b740
ardour loves 1024px width screens
...
narrow mode toolbar for screens <= 1024px with
2014-07-09 19:40:43 +02:00
d3d83eac9d
ardour loves narrow screens part one
...
move toolbar box above editor-canvas. Without-editor mixer
there is no change. With Editor-mixer it is now above the
mixer-strip.
This makes the toolbar [almost] fit on 1024px width.
2014-07-09 19:39:52 +02:00
c1166c9f63
fix thinko with split selections. also ignore follow_edits when we are splitting, because the playlist freeze and the newly added regions cause the playhead to jump to unexpected locations
2014-07-08 15:00:19 -05:00
67eaa62ee9
fix build after copy-n-paste/code change collision
2014-07-07 10:21:47 -04:00
d97199088b
some code shuffling to make sure that cut mode always operates at the mouse location, with (maybe) the right regions
2014-07-07 10:13:26 -04:00
64404a16c1
remove all_group_active_button. if you want to operate on all tracks, choose select-all-tracks ( ctrl+t in the mnemonic bindings ). this is more explicit and allows safer use of the deselected-region-under-mouse operations
2014-07-07 08:46:25 -05:00
7ec397c019
add basics of Cut mouse mode, no functionality yet. Icon images are still required
2014-07-07 07:05:43 -04:00
6d97d72999
remove some cruft with previous commits. remove option link-region-and-track-selection since they are now exclusive, and rename select-all-regions to select-all-objects to match the implementation
2014-07-06 14:02:13 -05:00
db60bc86b8
now that track and region selections are mutually exclusive, you need a separate action to select-all-tracks and select-all-regions. also, preserve region selection during a split, iff we are working on a region selection: only add the newly created regions, dont change anything else in the selection; leave that in control of the user
2014-07-06 12:57:36 -05:00
0b38d65dd0
new approach to selections which will help rationalize Split and similar functions. Object and Track selections are now mutually exclusive. a split will happen at (a) selection->regions (b) the intersection of edit_point and selection->tracks or (c) the region under the mouse, IFF nothing else is selected.
2014-07-05 20:47:43 -05:00
ba33c6dab6
revert part of 0f1c7b1d71
which broke lots of stuff based on region selection
2014-07-03 15:51:06 -04:00