Commit graph

15336 commits

Author SHA1 Message Date
Sakari Bergen
b16c8d5ff5 Fix some location xml handling to work with old session files.
Also refactor some code around it while I'm at it.
2015-01-05 01:33:35 +02:00
Sakari Bergen
ea1a330f9a Fix session version check to work with some very old sessions 2015-01-05 01:33:35 +02:00
John Emmas
041b729de7 Accommodate some newly introduced source files for building with MSVC (gtk2_ardour) 2015-01-02 15:31:39 +00:00
John Emmas
7f486e146d Accommodate some newly introduced source files for building with MSVC (libpbd) 2015-01-02 15:31:39 +00:00
Tim Mayberry
50c4385b6b Increase minimum required Glib version to 2.28 for g_get_monotonic_time 2015-01-02 22:11:59 +07:00
Tim Mayberry
6bb82bfd30 Fix Audiofile browser dialog so it appears infront of preference window when selecting click file 2015-01-02 22:11:47 +07:00
Tim Mayberry
02a7bbce76 Fix for Clock updates 2015-01-02 22:07:50 +07:00
Paul Davis
68ae9394be fix big clock aspect ratio, and add minimum size to avoid resize glitches 2015-01-02 09:01:11 -05:00
Paul Davis
9ef350cb90 remember big clock window scaling, or rather, recompute it accurately 2015-01-02 08:23:56 -05:00
nick_m
884cc6f90c Add automation track control points to undo history (and selection_op history). 2015-01-02 08:01:12 -05:00
nick_m
0f7df2979c Fix previous commit. 2015-01-02 08:01:12 -05:00
nick_m
61315c314d Make editor undo/redo actions sensitive at appropriate times. 2015-01-02 08:01:12 -05:00
nick_m
792f9ff37b Removed unrelated change in Selection::set_state () (clear_points()). 2015-01-02 08:01:12 -05:00
nick_m
a795892492 Separate selection operations into their own temporary history mechanism.
The user can now replay *all* earlier selection operations until the next
session undo/redo command, or the completion of a new operation.
Nothing relating to selection ops is stored, and selection operation history
is begun on first idle.

Selection operation history is fundamentally different from the history of
operations which act on a selection in terms of both their viewport and the
amount of information required to replay them.
WRT undo, the user of a selection op doesn't care about the viewport state
at the beginning of an op, but rather that at the end of the previous one.
2015-01-02 08:01:12 -05:00
Tim Mayberry
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
Tim Mayberry
d606a37204 Add PBD debug macros for recording timing data 2015-01-01 19:04:14 +07:00
Tim Mayberry
d415bb7bca Add PBD::DEBUG::GUITiming debug bit 2015-01-01 19:04:14 +07:00
Tim Mayberry
1da30faf7f Add tests that show the timing differences between the Glib/mm based timeouts
This shows that PBD::Timer is pretty much identical in terms of timing and CPU
usage as Glib TimeoutSources.

They also show the differences on Windows when setting the minimum Multimedia Timer
resolution using timeBeginPeriod
2015-01-01 19:04:09 +07:00
Tim Mayberry
b959b3fb87 Add PBD::Timer/StandardTimer/BlinkTimer classes for convenient timeouts 2015-01-01 18:59:01 +07:00
Tim Mayberry
770c190ccf Add Timing, TimingData and Timed classes for time measurement to pbd/timing.h 2015-01-01 18:58:57 +07:00
Tim Mayberry
feb701ceec Add dummy backend in Fedora based mingw-w64 build scripts 2015-01-01 17:23:58 +07:00
David Robillard
2558e52e22 Fix alleged use of uninitialized variable.
Looks like a guaranteed else branch to me, but who am I to argue with gcc?
2014-12-31 17:32:21 -05:00
David Robillard
0274c93eac Add missing Variant => LV2 Atom case.
(Not likely to actually be used any time soon but fixes warning and does
something reasonable if lossy).
2014-12-31 17:16:28 -05:00
Paul Davis
07c08e4673 fix incorrect test for valid MIDI events.
Only channel messages have the form <statusbyte>{<nonstatusbyte>..}
2014-12-31 10:32:50 -05:00
Paul Davis
03833e4376 remove debug output 2014-12-31 07:57:51 -05:00
Paul Davis
e4f61de52f Fix range "arithmetic"
Subtracting anything from an empty range should return an empty range, not an assert() failure
2014-12-31 07:43:43 -05:00
Paul Davis
9ca0ce4b7f use clock text scaling for big clock window 2014-12-31 07:20:48 -05:00
Paul Davis
d8405e2ebe add the ability to use cairo scaling to warp the rendering of the main clock text 2014-12-31 07:20:48 -05:00
David Robillard
168d187994 Load what we can from broken/truncated MIDI files.
We're still a very long way from tolerant of weird SMF files (libsmf takes a
"crash if input is not exactly perfect" philosophy, if we're going to be polite
and elevate such a thing to "philosophy"), but at least we'll get what's there
from files truncated by old broken versions of Ardour or other situations.
2014-12-30 23:10:11 -05:00
David Robillard
4facff3b8e Gracefully handle MIDI parse failure. 2014-12-30 23:10:11 -05:00
Robin Gareus
f499f4cfd2 don't take temporary copy of MIDI sequence
fixes potential boost shared_ptr double free.
2014-12-31 03:19:00 +01:00
David Robillard
2c8babf41e Fix stuck note display while recording.
This doesn't make sense, but I'm okay with that.
2014-12-30 20:06:37 -05:00
Paul Davis
2c36e96c97 rename "Convert to Region In-Place" to "Separate" since it is known by that name elsehwere and in the code 2014-12-30 19:52:44 -05:00
David Robillard
e82ce75cb1 Fix display of MIDI while recording.
... almost.  There are some artifacts when you zoom out while recording that I
can't figure out, but whatever.

Also fix performance issues caused by last attempt at rec display while zoom.
2014-12-30 19:16:41 -05:00
Robin Gareus
057cf770f0 32/64bit compat 2014-12-31 01:15:39 +01:00
Robin Gareus
805d4dd731 add a MIDI loopback mode to the Dummy Backend 2014-12-30 22:55:14 +01:00
David Robillard
97d344f740 Fix MIDI CC record/playback crash. 2014-12-30 14:45:11 -05:00
David Robillard
c35e94a3c8 Fix some mangled whitespace (noop). 2014-12-30 14:41:22 -05:00
David Robillard
a85827da1c Revert "Fix occasional MIDI read crash."
This reverts commit ec947ff8fd.
2014-12-30 13:03:22 -05:00
David Robillard
486d47db0e Fix smart mode cursor on audio regions. 2014-12-30 12:50:15 -05:00
Robin Gareus
5d1df86343 windows: automatically log gdb output 2014-12-30 12:28:46 +01:00
David Robillard
54c085d931 Fix occasional crash when saving MIDI.
I can't figure out why a change has a NULL note; that shouldn't happen, but it
does.  Worse case scenario is some undo loss, so better to print something
informative and soldier on than crash.  Hopefully this will help track down the
real cause with more testing.
2014-12-29 22:01:41 -05:00
David Robillard
ee8dbdb009 Fix internal select all. 2014-12-29 21:04:23 -05:00
David Robillard
937cf046a4 Fix key bindings for note trim/extend. 2014-12-29 20:50:39 -05:00
David Robillard
f46d4de92c Fix fallout from sooomeone's busted emacs. 2014-12-29 20:21:32 -05:00
David Robillard
2e62ca9631 Fix off-by-one MIDI note names.
Much like everything else in midnam, it's not specified whether the numbers are
0 or 1 relative, but everything out there seems to be 0 relative and this
matches the canvas, so go with that.
2014-12-29 20:20:16 -05:00
Paul Davis
196e29ddef remove unused code 2014-12-29 19:56:04 -05:00
David Robillard
3d1f955a0c Fix MIDI recording display when zoom/etc changes. 2014-12-29 18:56:39 -05:00
Paul Davis
a42b9ff86e fix a few compiler warnings 2014-12-29 18:17:26 -05:00
Paul Davis
d00e035fe0 don't unpack and repack meters unnecessarily during LevelMeterBase::setup_meters() 2014-12-29 18:14:45 -05:00