Commit graph

14504 commits

Author SHA1 Message Date
Paul Davis
d6c41f3935 add CANVAS_STRING_VARIABLE, the first step in being able to avoid using GTK rc files for font specifications
Still needs a way to generate the font specs at build time to account for platform differences
2014-06-13 07:30:27 -04:00
Robin Gareus
3573b4ee0a MIDI Device Button Style 2014-06-13 12:02:50 +02:00
Robin Gareus
ecb92f474f update ALSA backend, MIDI device config 2014-06-13 12:02:03 +02:00
Robin Gareus
2e88935bbf add GUI for midi-device settings (and properly indent the code) 2014-06-13 12:01:55 +02:00
Robin Gareus
da912f7ed4 add AudioEngine API to configure individual MIDI devices 2014-06-13 11:47:51 +02:00
Colin Fletcher
be7da2e952 Fix opening of recent sessions with mismatched directory & file names
When populating the list of recent sessions, and there's only one session
file in the session folder, don't assume that the base name of the session
file is the same as the name of the session directory.

Allows loading sessions that were created with trailing spaces in their
names from the recent sessions list, and also helps in the case that the
session file (or directory) was renamed.

There are actually two implementations of the 'recent sessions' chooser:
this applies to both. I suppose a useful project one of these days
would be to unify the two...
2014-06-12 23:20:06 +01:00
Colin Fletcher
83ce8dde6b Prevent creation of session directory with leading or trailing space. 2014-06-12 23:20:06 +01:00
Colin Fletcher
60349bcee6 Show Soundcloud credentials and upload options only when required
A slightly hacky patch to make the Soundcloud username & password and the
upload options only become visible when at least one export format is
chosen for upload to Soundcloud.

I think that changing ExportDialog::soundcloud_selector to a
boost::shared_ptr is the right thing to do, but I must confess to having
only a hazy understanding of what boost::scoped_ptr was doing in the first
place.

Also it feels a bit wrong to be passing a pointer to ExportDialog's
SoundcloudExportSelector around, but I can't (for the moment, at least)
think of any better way to affect its visibility from inside
ExportFileNotebook.
2014-06-12 23:20:06 +01:00
Colin Fletcher
5abf3624f4 Use Ardour 3 credentials for soundcloud upload
I registered 'Ardour 3' as an app with Soundcloud - here are the
client_id and client_secret I got back. Probably the client_secret
shouldn't be here - I'll try to understand what should really happen and
fix this up in due course. Probably we should be using OAuth.

Also remove a couple of bits of dead code and fix a few whitespace
oddities.
2014-06-12 23:20:06 +01:00
Colin Fletcher
d5cbb098da Add #include guards to soundcloud_export_selector.h 2014-06-12 23:20:06 +01:00
Colin Fletcher
a82aba8581 Actually pass Soundcloud downloadable flag to export handler 2014-06-12 23:20:06 +01:00
Colin Fletcher
cc2e6aeac3 Remove unused function
Remove the unused ExportFileNotebook::get_nth_format_name()
2014-06-12 23:20:05 +01:00
Colin Fletcher
f0dbd6c085 Export dialog: tidy code, & remove some superfluous debug output
Remove some debug output, tidy up a few whitespace inconsistencies, use
DEBUG::Soundcloud in one more place, and zap a couple of unused variables.
2014-06-12 23:20:05 +01:00
Colin Fletcher
70308f5174 Post-export hook tweaks
Remove the Soundcloud username & password from the parameter substitutions
passed to the post-export hook: having thought about this now, I can't
actually think of a case where these are of any use at all.

In compensation, add %s and %n parameters that expand to the session
directory and name - maybe people will think of uses for these.
2014-06-12 23:20:05 +01:00
Colin Fletcher
724a69a8d5 Search $PATH for command when creating SystemExec from command line
When creating a SystemExec from a command-line, search $PATH for the
command to execute, so that post-export hooks don't need to specify a full
path.
2014-06-12 23:20:05 +01:00
Paul Davis
a245250409 use the alpha/opacity value for the region base whether track colors are in use or not 2014-06-12 18:14:55 -04:00
Paul Davis
684d45c0cc restored track height adjustment using alt-scroll on track headers 2014-06-12 17:21:41 -04:00
Paul Davis
720a9b73a5 fixed rulers stealing all canvas scroll events and corrected computation of correct track for track-height adjustment using alt-scroll 2014-06-12 17:21:23 -04:00
Paul Davis
6958409187 remove no-longer-used code 2014-06-12 16:18:38 -04:00
Paul Davis
85e2c60673 add back click behaviour for canvas rulers, and also cursor enforcement 2014-06-12 16:06:31 -04:00
Paul Davis
ea355bfe15 add canvas rulers event dispatch and reinstate scrolling behaviour 2014-06-12 15:58:05 -04:00
Paul Davis
590882f3c8 change Canvas heirarchy and constructors
Items no longer need a parent group (they require a Canvas pointer instead), so all constructors have been rationalized
and have two variants, one with a parent and one with a canvas.

All Items now inherit from Fill and Outline, to banish diagonal inheritance and virtual base classes and all that.

There were zero changes to the Ardour GUI arising from these changes.
2014-06-12 14:53:44 -04:00
Paul Davis
551014240a drag handles no longer exist as distinct item types (failed experiment) 2014-06-12 14:51:51 -04:00
Paul Davis
23d7893910 remove drag handle canvas object - it was just a stupid unfinished experiment 2014-06-12 10:40:43 -04:00
Paul Davis
887e75260d use new ArdourCanvas::Ruler constructor 2014-06-12 10:35:32 -04:00
Paul Davis
87a6f633a1 derive ArdourCanvas::Ruler from Rectangle 2014-06-12 10:35:16 -04:00
Paul Davis
0762708d83 add new canvas vars for rulers 2014-06-12 10:32:34 -04:00
Paul Davis
79c30ab766 make rulers color-sensitive (e.g. theme manager editable, etc) 2014-06-12 01:07:58 -04:00
Paul Davis
e1825361b5 remove hard-coded colors 2014-06-12 01:07:58 -04:00
Paul Davis
b2ee6b4344 add new default colors for canvas rulers 2014-06-12 01:07:58 -04:00
Paul Davis
95fc5ab0a8 removed unused rule GTK widget style definition 2014-06-12 01:07:58 -04:00
Paul Davis
3d81944b1d remove unused GTK style 2014-06-12 01:07:58 -04:00
Paul Davis
0ab69cb8c7 OS X specific cleanup after canvas ruler introduction 2014-06-12 00:19:42 -04:00
Paul Davis
9461fcb271 remove header file includes of now-removed gtk custom ruler 2014-06-12 00:18:58 -04:00
Paul Davis
4b07d01532 remove header file includes of now-removed gtk custom ruler 2014-06-12 00:18:15 -04:00
Paul Davis
6c9f4e9598 final ruler file removal 2014-06-12 00:01:30 -04:00
Paul Davis
43e2baf54e remove gtk ruler widget implementation - no longer in use 2014-06-12 00:01:06 -04:00
Paul Davis
b73352880e use canvas rulers now instead of gtk widgets
Some bugs that exist in master are still present.
2014-06-11 23:54:28 -04:00
Paul Davis
143f9509ea many fixes and improvements for a now-working ArdourCanvas::Ruler item 2014-06-11 23:54:28 -04:00
Paul Davis
f5fc4a6b09 add ruler.cc to canvas wscript 2014-06-11 23:54:28 -04:00
Paul Davis
2cab65062d add Ruler to Canvas fwd.h 2014-06-11 23:54:28 -04:00
Paul Davis
18190eaa5e clamp zoom level to show 3 days on a 4000 pixel wide screen; comment unused variable for now 2014-06-11 23:54:28 -04:00
Paul Davis
5ee4f41925 add initial (untested) implementation of canvas ruler item 2014-06-11 23:54:28 -04:00
Robin Gareus
e1b82caeb9 delayline: properly hand-over the shared-pointer. 2014-06-12 02:10:37 +02:00
Robin Gareus
266953cb96 add latency callback to dummy backend 2014-06-11 22:01:21 +02:00
Robin Gareus
b6362a76a8 fix possible crash when setting delivery name w/o panshell 2014-06-11 20:21:14 +02:00
Robin Gareus
6003aea385 NOOP, re-indent using tabs 2014-06-11 17:14:31 +02:00
Robin Gareus
4d0e564fa7 align internal sends using delaylines 2014-06-11 17:14:26 +02:00
Robin Gareus
ca3c9cae6e basic integration of delaylines (still un-nused) 2014-06-11 17:14:18 +02:00
Robin Gareus
626b2daa82 add delayline implementaion (in prep for latency compensation) 2014-06-11 16:31:29 +02:00