ardour.git
8 years agodrop in threaded waveview changes via the two affected files.
Paul Davis [Mon, 1 Jun 2015 18:45:32 +0000 (14:45 -0400)]
drop in threaded waveview changes via the two affected files.

Rebasing the feature branch against master was too messy, and only these two files were
changed. The development history of this branch could easily have been --squash'ed anyway,
so not much of a loss

8 years agoFix some visual loopholes when switching tools inside a region:
Ben Loftis [Mon, 1 Jun 2015 18:12:39 +0000 (13:12 -0500)]
Fix some visual loopholes when switching tools inside a region:
switching to Grab should show the fade handles...
...switching away from grab should hide them.
Also, change "always show gain" preference to show lines, but not control points.

8 years agofix importing A2 automation data - fixes #6359
Robin Gareus [Mon, 1 Jun 2015 16:17:34 +0000 (18:17 +0200)]
fix importing A2 automation data - fixes #6359

8 years agocoreaudio support for multiple devices
Robin Gareus [Tue, 5 May 2015 15:28:31 +0000 (17:28 +0200)]
coreaudio support for multiple devices

8 years agoengine dialog fixes for multiple devices
Robin Gareus [Sun, 31 May 2015 20:14:44 +0000 (22:14 +0200)]
engine dialog fixes for multiple devices

8 years agoAllow selection of input and output devices in EngineDialog for backends that support it
Tim Mayberry [Tue, 5 May 2015 02:59:26 +0000 (12:59 +1000)]
Allow selection of input and output devices in EngineDialog for backends that support it

Some refactoring was necessary to avoid code duplication

Restoring of device state for input and output devices still doesn't work
correctly. I'm not quite sure what the issue is at this stage.

8 years agoAdd API to ARDOUR::AudioBackend to allow different input and output devices
Tim Mayberry [Sat, 9 May 2015 01:35:27 +0000 (11:35 +1000)]
Add API to ARDOUR::AudioBackend to allow different input and output devices

Used spaces instead of tabs for whitespace consistancy with rest of header

8 years agofix the cairo-fletcher-fluctuation
Robin Gareus [Sun, 31 May 2015 17:40:04 +0000 (19:40 +0200)]
fix the cairo-fletcher-fluctuation

CF reports occasional “rendering icon 1 at size 1 x 1”
always followed by “rendering icon 1 at size 21 x 21”.

Probably a GTK bug with some specific version of GTK.

8 years agovector icons should at least be 6x6 px
Robin Gareus [Sat, 30 May 2015 15:28:32 +0000 (17:28 +0200)]
vector icons should at least be 6x6 px

8 years agoStationary Playhead.
Ben Loftis [Sat, 30 May 2015 13:31:09 +0000 (08:31 -0500)]
Stationary Playhead.
It is hard to locate/edit while playing, in this mode.
I think it needs to be an action, not a mode.

8 years agofactor out Route::muted_by_others from existing code
Ben Loftis [Fri, 29 May 2015 20:17:46 +0000 (15:17 -0500)]
factor out Route::muted_by_others from existing code

8 years agotweaks and improvements to Save-As
Paul Davis [Thu, 28 May 2015 23:26:21 +0000 (19:26 -0400)]
tweaks and improvements to Save-As

Always copy MIDI files, they are small and they get rewritten for lots of reasons, which can cause confusion
if the user elected to NOT "copy media" since the file ends up existing in both the new and old (but in use)
session.

Avoid copying analysis files on Windows, where for now the files contain illegal colon characters

8 years agochange the semantics of AudioFileSource::peak_path() and Session::peak_path() a little.
Paul Davis [Thu, 28 May 2015 23:08:47 +0000 (19:08 -0400)]
change the semantics of AudioFileSource::peak_path() and Session::peak_path() a little.

If given a full path that points outside the current session but is within another ardour session,
attempt to use the peakfiles present in that other session.

8 years agoadd name text for ToggleExternalSync action
Paul Davis [Thu, 28 May 2015 20:22:32 +0000 (16:22 -0400)]
add name text for ToggleExternalSync action

8 years agoonly use and present the buggy gradient parameter if built with a suitably patched...
Paul Davis [Thu, 28 May 2015 17:27:38 +0000 (13:27 -0400)]
only use and present the buggy gradient parameter if built with a suitably patched version of Cairo

8 years agorearrange and redesign UIConfiguration/ARDOUR_UI APIs to allow correct initialization.
Paul Davis [Thu, 28 May 2015 16:46:31 +0000 (12:46 -0400)]
rearrange and redesign UIConfiguration/ARDOUR_UI APIs to allow correct initialization.

We need to be able to set an environment variable *before* gtk_init() is called, but also to
load the color theme right after gtk_init() and before the rest of the GUI is created.

8 years agoadd control for buggy gradient option
Paul Davis [Thu, 28 May 2015 15:46:01 +0000 (11:46 -0400)]
add control for buggy gradient option

8 years agoadd buggy gradient option
Paul Davis [Thu, 28 May 2015 15:45:49 +0000 (11:45 -0400)]
add buggy gradient option

8 years agoFix uninitialised variable.
nick_m [Thu, 28 May 2015 13:37:46 +0000 (23:37 +1000)]
Fix uninitialised variable.

8 years agoamend 3f5d17d, clear changes to MIDI as well.
Robin Gareus [Thu, 28 May 2015 12:41:17 +0000 (14:41 +0200)]
amend 3f5d17d, clear changes to MIDI as well.

8 years agoFix region paste (ctrl+v) undo.
Robin Gareus [Thu, 28 May 2015 11:18:59 +0000 (13:18 +0200)]
Fix region paste (ctrl+v) undo.

8 years agoprevent crash when using WM close button on "new route name contains bad chars" dialog.
Paul Davis [Wed, 27 May 2015 23:34:04 +0000 (19:34 -0400)]
prevent crash when using WM close button on "new route name contains bad chars" dialog.

The dialog would be created twice, once because the user hit enter etc. to indicate they were done editing,
and once because focus left the name text entry, also indicate the end of editing. We now note that we're
already processing the end of a name edit, and do nothing in that case

8 years agorelax LinuxVST GUI event loop.
Robin Gareus [Wed, 27 May 2015 21:16:59 +0000 (23:16 +0200)]
relax LinuxVST GUI event loop.

it was spinning at 100Hz.

8 years agofader: start muted, ramp up/interpolate to target
Robin Gareus [Wed, 27 May 2015 14:39:42 +0000 (16:39 +0200)]
fader: start muted, ramp up/interpolate to target

8 years agosome more information output to log during save-as, for debugging
Paul Davis [Wed, 27 May 2015 14:57:40 +0000 (10:57 -0400)]
some more information output to log during save-as, for debugging

8 years agofix unsigned/signed math error
Paul Davis [Wed, 27 May 2015 12:57:16 +0000 (08:57 -0400)]
fix unsigned/signed math error

8 years agoadd new MIDI map file for M-Audio Oxygen 49, from Erik Deroo
Paul Davis [Wed, 27 May 2015 11:10:52 +0000 (07:10 -0400)]
add new MIDI map file for M-Audio Oxygen 49, from Erik Deroo

8 years agoensure that Mackie Control bank left/right commands always hit the same boundary...
Paul Davis [Tue, 26 May 2015 14:21:55 +0000 (10:21 -0400)]
ensure that Mackie Control bank left/right commands always hit the same boundary (Len Ovens)

8 years agoAdd some newly introduced sources to our MSVC project (gtkmm2ext)
John Emmas [Wed, 27 May 2015 09:21:21 +0000 (10:21 +0100)]
Add some newly introduced sources to our MSVC project (gtkmm2ext)

8 years agoGtkmm2ext::ArdourIcon::render() is needed outside of libgtkmm2ext (so let's make...
John Emmas [Wed, 27 May 2015 09:11:34 +0000 (10:11 +0100)]
Gtkmm2ext::ArdourIcon::render() is needed outside of libgtkmm2ext (so let's make it exportable)

8 years agoRationalize some aspects of region-gain control-point visibility:
Ben Loftis [Tue, 26 May 2015 21:41:03 +0000 (16:41 -0500)]
Rationalize some aspects of region-gain control-point visibility:
Visibility is driven by the currently selected mouse mode.
Visibility no longer depends on entering/exiting the region.
Range mode shows the lines but not the points.
Fixed option text to reflect new operation.

8 years agomore pixel rounding (small range icon)
Robin Gareus [Tue, 26 May 2015 17:25:47 +0000 (19:25 +0200)]
more pixel rounding (small range icon)

8 years agoicon pixel compatibility
Robin Gareus [Tue, 26 May 2015 00:38:58 +0000 (02:38 +0200)]
icon pixel compatibility

Ensure that relevant lines always end up on a pixel
(regardless of scaling).

8 years agoreplace tool pixel icons with vector drawing
Robin Gareus [Mon, 25 May 2015 22:56:51 +0000 (00:56 +0200)]
replace tool pixel icons with vector drawing

8 years agorefactor vector icon drawing
Robin Gareus [Mon, 25 May 2015 22:52:06 +0000 (00:52 +0200)]
refactor vector icon drawing

8 years agoa go at a pixel-compatible vector “hand” icon.
Robin Gareus [Mon, 25 May 2015 02:42:58 +0000 (04:42 +0200)]
a go at a pixel-compatible vector “hand” icon.

..and some related ArdourIcon changes.

8 years agoprepare Tool Icons (unused IDs)
Robin Gareus [Mon, 25 May 2015 01:28:17 +0000 (03:28 +0200)]
prepare Tool Icons (unused IDs)

8 years agouse vectorized TAV expand/shrink icons
Robin Gareus [Sun, 24 May 2015 22:26:09 +0000 (00:26 +0200)]
use vectorized TAV expand/shrink icons

8 years agovectorize TAV expand and shrink icons
Robin Gareus [Sun, 24 May 2015 22:01:18 +0000 (00:01 +0200)]
vectorize TAV expand and shrink icons

8 years agouse vectorized zoom icons instead of pixmaps.
Robin Gareus [Sun, 24 May 2015 21:10:02 +0000 (23:10 +0200)]
use vectorized zoom icons instead of pixmaps.

8 years agoconstruct vectorized Zoom Icons
Robin Gareus [Sun, 24 May 2015 21:08:46 +0000 (23:08 +0200)]
construct vectorized Zoom Icons

8 years agointroduce some lazyness
Robin Gareus [Sun, 24 May 2015 21:06:49 +0000 (23:06 +0200)]
introduce some lazyness

8 years agoNOOP, amend 3173246 comments and whitespace
Robin Gareus [Sun, 24 May 2015 19:53:06 +0000 (21:53 +0200)]
NOOP, amend 3173246 comments and whitespace

8 years agoreplace old ArdourButton::Icon API with Gtkmm2ext.
Robin Gareus [Sun, 24 May 2015 19:45:39 +0000 (21:45 +0200)]
replace old ArdourButton::Icon API with Gtkmm2ext.

8 years agomigrate ArdourButton Icon rendering to Gtkmm2ext.
Robin Gareus [Sun, 24 May 2015 19:44:27 +0000 (21:44 +0200)]
migrate ArdourButton Icon rendering to Gtkmm2ext.

part one: add new API

8 years agoremove explicit VectorIcon Element
Robin Gareus [Sun, 24 May 2015 18:28:24 +0000 (20:28 +0200)]
remove explicit VectorIcon Element

8 years agoArdourButton API: set_icon() implies Icon and No Text
Robin Gareus [Sun, 24 May 2015 18:27:37 +0000 (20:27 +0200)]
ArdourButton API: set_icon() implies Icon and No Text

8 years agoadd vector rendition of nudge icons.
Robin Gareus [Sun, 24 May 2015 18:22:50 +0000 (20:22 +0200)]
add vector rendition of nudge icons.

8 years agoprepare cleanup of ArdourButton rendering
Robin Gareus [Sun, 24 May 2015 17:35:45 +0000 (19:35 +0200)]
prepare cleanup of ArdourButton rendering

8 years agofix for MCP panner width - closes #6341
Len Ovens [Sun, 24 May 2015 15:56:40 +0000 (17:56 +0200)]
fix for MCP panner width - closes #6341

8 years agoSwap default snap modifiers (non-OSX) to avoid potential upgrade pain.
nick_m [Sat, 23 May 2015 19:50:31 +0000 (05:50 +1000)]
Swap default snap modifiers (non-OSX) to avoid potential upgrade pain.

- Disable snap now defaults to alt
- Snap absolute now defaults to alt-windows

8 years agoMerge branch 'relative_snap'
nick_m [Sat, 23 May 2015 18:15:32 +0000 (04:15 +1000)]
Merge branch 'relative_snap'

      - Many changes to the "User Interaction" pane wrt key modifiers.
      - Snap is now relative by default (override to absolute with the
        "Snap to absolute using:" modifier).
      - Midi notes now obey both snap modifiers (disable snap and absolute snap)
      - Timefx drag now selects the primary region (less user confusion).
      - Includes MIDI event id fix.

8 years agoFix bug where inserting notes in MouseContent mode disallowed resizing.
nick_m [Sat, 23 May 2015 18:04:37 +0000 (04:04 +1000)]
Fix bug where inserting notes in MouseContent mode disallowed resizing.

8 years agoMake Evoral::Event ids unique always.
nick_m [Sat, 23 May 2015 15:53:34 +0000 (01:53 +1000)]
Make Evoral::Event ids unique always.

- probably fixes a lot of cases where note ids are assumed to be
  unique (they weren't for copies and some others).
- wrong branch, but it needs testing.

8 years agoRekative snap - add comments
nick_m [Sat, 23 May 2015 15:10:06 +0000 (01:10 +1000)]
Rekative snap - add comments

8 years agoDocument snap_delta modifier mask.
nick_m [Sat, 23 May 2015 13:41:26 +0000 (23:41 +1000)]
Document snap_delta modifier mask.

8 years agoClarify the convention on modifiers and drags.
nick_m [Sat, 23 May 2015 13:19:00 +0000 (23:19 +1000)]
Clarify the convention on modifiers and drags.

8 years agoProper initialisation of _x/y_constrained.
nick_m [Sat, 23 May 2015 12:59:19 +0000 (22:59 +1000)]
Proper initialisation of _x/y_constrained.

8 years agoBring back contrained drag modifier with preference setting.
nick_m [Fri, 22 May 2015 19:36:03 +0000 (05:36 +1000)]
Bring back contrained drag modifier with preference setting.

- this should work as before, but when applied to a button 1 drag,
  the constraint is in the first direction travelled.

8 years agoFix missing comment.
nick_m [Fri, 22 May 2015 17:44:42 +0000 (03:44 +1000)]
Fix missing comment.

8 years agoFix inverted logic of SnapOff with snap modifiers pressed.
nick_m [Fri, 22 May 2015 17:09:48 +0000 (03:09 +1000)]
Fix inverted logic of SnapOff with snap modifiers pressed.

- also clean up, rename and comment some previous hanges.

8 years agoLV2: delete existing preset before replacing it
Robin Gareus [Fri, 22 May 2015 16:25:07 +0000 (18:25 +0200)]
LV2: delete existing preset before replacing it

8 years agoFix deleting and re-saving LV2 presets.
David Robillard [Fri, 22 May 2015 04:24:37 +0000 (00:24 -0400)]
Fix deleting and re-saving LV2 presets.

8 years agotweak layout of main clocks so that HMS display remains center-justified
Ben Loftis [Thu, 21 May 2015 22:23:04 +0000 (17:23 -0500)]
tweak layout of main clocks so that HMS display remains center-justified

8 years agoFONT_SMALLER is too small for visibility of clocks. use normal font size
Ben Loftis [Thu, 21 May 2015 22:22:05 +0000 (17:22 -0500)]
FONT_SMALLER is too small for visibility of clocks. use normal font size

8 years agoMake note drags and resizes obey the disable sanp modifier.
nick_m [Thu, 21 May 2015 20:54:16 +0000 (06:54 +1000)]
Make note drags and resizes obey the disable sanp modifier.

8 years agoSmall cleanup
nick_m [Thu, 21 May 2015 18:48:34 +0000 (04:48 +1000)]
Small cleanup

8 years agoMore cleanup
nick_m [Thu, 21 May 2015 18:26:16 +0000 (04:26 +1000)]
More cleanup
- remove "no_magnets" ugh.

8 years agoClean up a bit - should be a no-op
nick_m [Thu, 21 May 2015 17:09:29 +0000 (03:09 +1000)]
Clean up a bit - should be a no-op

8 years agoAppease Our Dear Leader
nick_m [Thu, 21 May 2015 16:31:25 +0000 (02:31 +1000)]
Appease Our Dear Leader

8 years agoFix excessive use of logic.
nick_m [Thu, 21 May 2015 16:20:51 +0000 (02:20 +1000)]
Fix excessive use of logic.

8 years agoFix up modifier behaviour
nick_m [Thu, 21 May 2015 16:12:58 +0000 (02:12 +1000)]
Fix up modifier behaviour

- its now possible to use snap modifiers in combination with others
  afaict this hasn't worked for some time.

- use "contains" rather than "equals" during drag. Still uncertain
   about this wrt beginning a drag. for now they are all "equals".

- probably solve the "snap modifier modifier" problem using
  ArdourKeyboard::indicates_snap () and friend.

8 years agoMake the prefs less squashed looking, add another entry for OSX modifiers.
nick_m [Thu, 21 May 2015 13:47:32 +0000 (23:47 +1000)]
Make the prefs less squashed looking, add another entry for OSX modifiers.

- Defaults are probably still wrong, but at least they are actual
keys.

9 years agorecover keybinding for Snapshot
Ben Loftis [Wed, 20 May 2015 19:39:27 +0000 (14:39 -0500)]
recover keybinding for Snapshot

9 years agoMove ui-centric modifiers into ArdourKeyboard, set some bad defaults.
nick_m [Wed, 20 May 2015 19:32:23 +0000 (05:32 +1000)]
Move ui-centric modifiers into ArdourKeyboard, set some bad defaults.

- Also makes "Mod4" Appear as "Windows" and adds new combination
"Alt-Windows" to the dropdown.
- Attempt to set a pair of default snap modifiers (without
knowing what it actually is for OSX)
- Copy modifier now saves
- Snap modifier modifier problem still remains.

9 years agoAllow all drag -related modifiers to be set, re-instate "jump after trim"
nick_m [Wed, 20 May 2015 15:30:57 +0000 (01:30 +1000)]
Allow all drag -related modifiers to be set,  re-instate "jump after trim"

- Copy modifier still doesn't save
- Testers please edit the Extra section of ~/.ardourN/config to allow
defaults to "take"
- Note that the current defaults overlap.
- warning - absolute snap modifier has no default and will be always
"on" unless you set it!

9 years agotry to improve the ill-conceived fade_range action
Ben Loftis [Tue, 19 May 2015 19:19:59 +0000 (14:19 -0500)]
try to improve the ill-conceived fade_range action

9 years agopublish editor-fade-range action to the main menu
Ben Loftis [Tue, 19 May 2015 18:32:29 +0000 (13:32 -0500)]
publish editor-fade-range action to the main menu

9 years agoAdd more modifier preferences.
nick_m [Tue, 19 May 2015 18:00:04 +0000 (04:00 +1000)]
Add more modifier preferences.

Note that no defaults are set - go to prefs->user interaction to
ensure that nothing is set to "no modifer"

also - the copy modifier doesn't actually save its state yet.

9 years agofix x-fade display access beyond array boundaries
Robin Gareus [Tue, 19 May 2015 17:25:22 +0000 (19:25 +0200)]
fix x-fade display access beyond array boundaries

9 years agouse Go To instead of Goto
Ben Loftis [Mon, 18 May 2015 21:13:27 +0000 (16:13 -0500)]
use  Go To  instead of Goto

9 years agotemporarily remove buggy MouseRange-on-Piano-Roll event handlers
Ben Loftis [Mon, 18 May 2015 21:12:32 +0000 (16:12 -0500)]
temporarily remove buggy MouseRange-on-Piano-Roll event handlers

9 years agoRemove some debugging.
nick_m [Mon, 18 May 2015 17:29:22 +0000 (03:29 +1000)]
Remove some debugging.

9 years agoRevert to old Lock mode (still called Lock).
nick_m [Mon, 18 May 2015 17:27:50 +0000 (03:27 +1000)]
Revert to old Lock mode (still called Lock).

Also make midi notes obey the snap delta modifire

9 years agoremove LED from custom meter point processors
Robin Gareus [Mon, 18 May 2015 14:30:02 +0000 (16:30 +0200)]
remove LED from custom meter point processors

... since they can't be disabled. fixes 6333

9 years agotake buffers for Split/Match into account fixes #6334
Robin Gareus [Mon, 18 May 2015 14:14:07 +0000 (16:14 +0200)]
take buffers for Split/Match into account fixes #6334

9 years ago"Lock" mode is now "Constrained", make snap absolute modifier configurable.
nick_m [Sun, 17 May 2015 20:25:36 +0000 (06:25 +1000)]
"Lock" mode is now "Constrained", make snap absolute modifier configurable.

- user can abs/rel modifier key in prefs->user interaction
  suggested for linux - absolute->alt ignore snap->alt-shift
- Constrained mode works the same as button 2 drag (initial move
  sets constraint axis).

9 years agoRelative snap now always on - disabled with Tertiary modifier (shift)
nick_m [Sun, 17 May 2015 17:15:22 +0000 (03:15 +1000)]
Relative snap now always on - disabled with Tertiary modifier (shift)

9 years agoClean up drag modifiers.
nick_m [Sun, 17 May 2015 15:43:44 +0000 (01:43 +1000)]
Clean up drag modifiers.
Button 2 drag now is constrained to initial move axis, removing
all modifiers from this op.
Remove Jump after trim mode.
TrimDrag now has:
Primary for trim anchored to fade.
Secondary for contents trim (as before)
Primary & Tertiary for "non overlap" trim
All drags have Tertiary for relative snap

9 years agoRelative Snap -make it activated by the tertiary modifier during drag.
nick_m [Sun, 17 May 2015 13:47:01 +0000 (23:47 +1000)]
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.

9 years agoRelative snap - support magnetic mode (hackishly for now)
nick_m [Sat, 16 May 2015 18:26:05 +0000 (04:26 +1000)]
Relative snap - support magnetic mode (hackishly for now)

9 years agoCleanup relative snap code.
nick_m [Sat, 16 May 2015 14:23:25 +0000 (00:23 +1000)]
Cleanup relative snap code.

9 years agoFix typo.
nick_m [Fri, 15 May 2015 20:10:02 +0000 (06:10 +1000)]
Fix typo.

9 years agoRevert incorrect region_length() definition.
nick_m [Fri, 15 May 2015 18:50:37 +0000 (04:50 +1000)]
Revert incorrect region_length() definition.

9 years agoRelative snap
nick_m [Fri, 15 May 2015 18:15:52 +0000 (04:15 +1000)]
Relative snap

9 years agofix cleanup (code is self-evident). From Yevgeny @ waves
Paul Davis [Thu, 14 May 2015 11:00:50 +0000 (07:00 -0400)]
fix cleanup (code is self-evident). From Yevgeny @ waves

9 years agoFix stuck notes on save during MIDI playback.
David Robillard [Wed, 13 May 2015 00:10:23 +0000 (20:10 -0400)]
Fix stuck notes on save during MIDI playback.

9 years agoFix missing undo for audio timefx operations.
nick_m [Tue, 12 May 2015 16:30:52 +0000 (02:30 +1000)]
Fix missing undo for audio timefx operations.

9 years agofix C++ template/operator test
Paul Davis [Tue, 12 May 2015 15:38:55 +0000 (11:38 -0400)]
fix C++ template/operator test

9 years agocatch identifiers ending or starting with _ when checking operator spacing
Paul Davis [Tue, 12 May 2015 15:25:36 +0000 (11:25 -0400)]
catch identifiers ending or starting with _ when checking operator spacing