13
0
Commit Graph

15327 Commits

Author SHA1 Message Date
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
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
d606a37204 Add PBD debug macros for recording timing data 2015-01-01 19:04:14 +07:00
d415bb7bca Add PBD::DEBUG::GUITiming debug bit 2015-01-01 19:04:14 +07:00
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
b959b3fb87 Add PBD::Timer/StandardTimer/BlinkTimer classes for convenient timeouts 2015-01-01 18:59:01 +07:00
770c190ccf Add Timing, TimingData and Timed classes for time measurement to pbd/timing.h 2015-01-01 18:58:57 +07:00
feb701ceec Add dummy backend in Fedora based mingw-w64 build scripts 2015-01-01 17:23:58 +07:00
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
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
07c08e4673 fix incorrect test for valid MIDI events.
Only channel messages have the form <statusbyte>{<nonstatusbyte>..}
2014-12-31 10:32:50 -05:00
03833e4376 remove debug output 2014-12-31 07:57:51 -05:00
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
9ca0ce4b7f use clock text scaling for big clock window 2014-12-31 07:20:48 -05:00
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
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
4facff3b8e Gracefully handle MIDI parse failure. 2014-12-30 23:10:11 -05:00
f499f4cfd2 don't take temporary copy of MIDI sequence
fixes potential boost shared_ptr double free.
2014-12-31 03:19:00 +01:00
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
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
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
057cf770f0 32/64bit compat 2014-12-31 01:15:39 +01:00
805d4dd731 add a MIDI loopback mode to the Dummy Backend 2014-12-30 22:55:14 +01:00
97d344f740 Fix MIDI CC record/playback crash. 2014-12-30 14:45:11 -05:00
c35e94a3c8 Fix some mangled whitespace (noop). 2014-12-30 14:41:22 -05:00
a85827da1c Revert "Fix occasional MIDI read crash."
This reverts commit ec947ff8fd.
2014-12-30 13:03:22 -05:00
486d47db0e Fix smart mode cursor on audio regions. 2014-12-30 12:50:15 -05:00
5d1df86343 windows: automatically log gdb output 2014-12-30 12:28:46 +01:00
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
ee8dbdb009 Fix internal select all. 2014-12-29 21:04:23 -05:00
937cf046a4 Fix key bindings for note trim/extend. 2014-12-29 20:50:39 -05:00
f46d4de92c Fix fallout from sooomeone's busted emacs. 2014-12-29 20:21:32 -05:00
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
196e29ddef remove unused code 2014-12-29 19:56:04 -05:00
3d1f955a0c Fix MIDI recording display when zoom/etc changes. 2014-12-29 18:56:39 -05:00
a42b9ff86e fix a few compiler warnings 2014-12-29 18:17:26 -05:00
d00e035fe0 don't unpack and repack meters unnecessarily during LevelMeterBase::setup_meters() 2014-12-29 18:14:45 -05:00
9b8760cf69 Avoid another potential deadlock for good measure.
Firing these signals while locked is not a good idea, Sequence/ControlList need
a better design for this that accounts for recording and lockedness.
2014-12-29 17:56:53 -05:00
cf6e9d3412 Blind fix for MIDI iteration bug. 2014-12-29 15:12:10 -05:00
190ac88248 Fix deadlock while recording MIDI controllers. 2014-12-29 11:34:18 -05:00
47d083d02d update numbering of midi-test sequences 2014-12-29 14:36:39 +01:00
95fcf18245 add a midi-CC sustain-pedal test sequence 2014-12-29 14:32:03 +01:00
6e38d3777e add 'size' field to midi-sequences 2014-12-29 14:09:46 +01:00
c3c6f619c3 make it easier to add new midi sequences 2014-12-29 13:58:15 +01:00
2b955b33a3 update meters as soon as UI-settings change - amend 64fa63212f 2014-12-29 13:37:28 +01:00
ac4560cd09 Add some newly introduced source files to our MSVC project (gtk2_ardour) 2014-12-29 11:07:12 +00:00