Hans Fugal
d819b922e1
r184@gandalf: fugalh | 2006-07-17 19:02:10 -0600
...
(begin|commit)_reversible_command in Editor and Session
git-svn-id: svn://localhost/ardour2/branches/undo@684 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-18 17:47:12 +00:00
Hans Fugal
72168803ee
r183@gandalf: fugalh | 2006-07-17 19:01:39 -0600
...
Use XMLNode instead of templating memento types.
git-svn-id: svn://localhost/ardour2/branches/undo@683 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-18 17:46:20 +00:00
Hans Fugal
0bd3b0b670
r168@gandalf: fugalh | 2006-07-11 16:29:22 -0600
...
I just had an epiphany. I tried so many ways to make saving function name and
args work, it never occured to me that you could just as easily save undo
information as a pair of mementos, even in the Command-based structure we
agreed on.
Since many (read: almost all) existing undo commands take this form:
begin_reversible_command (_("change fade in length"));
session->add_undo (arv->region.get_memento());
arv->region.set_fade_in_length (fade_length);
session->add_redo_no_execute (arv->region.get_memento());
commit_reversible_command ();
We are already doing the save a memento before and after work. All we need to
do is instantiate an appropriate instance of MementoCommand. So the above
becomes:
begin_reversible_command (_("change fade in length"));
MementoCommand<arv_region_t, arv_region_memento_t> before, after;
before = arv->region.get_memento();
arv->region.set_fade_in_length (fade_length);
after = arv->region.get_memento();
session->add_command(arv->region, before, after);
commit_reversible_command ();
(With apologies for being too lazy to go look up what arv_region_t and
arv_region_memento_t are)
Note that the true command approach is still possible, and encouraged (both by
dictate and design).
git-svn-id: svn://localhost/ardour2/branches/undo@680 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-11 22:29:39 +00:00
Hans Fugal
ab1b29bcb2
r162@gandalf: fugalh | 2006-06-30 19:30:58 -0600
...
some macros for MementoCommand()
git-svn-id: svn://localhost/ardour2/branches/undo@666 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-06 18:25:58 +00:00
Hans Fugal
a5386f8d59
r155@gandalf: fugalh | 2006-06-30 11:21:45 -0600
...
MementoCommand - for the lazy at heart
git-svn-id: svn://localhost/ardour2/branches/undo@661 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-30 17:24:16 +00:00
Hans Fugal
21af0d4ae2
r154@gandalf: fugalh | 2006-06-30 11:16:27 -0600
...
fixed guard defines
git-svn-id: svn://localhost/ardour2/branches/undo@660 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-30 17:23:12 +00:00
Hans Fugal
6337a1894c
r132@gandalf: fugalh | 2006-06-29 12:45:16 -0600
...
Coding for undo/redo starts in earnest. Paul and I decided to go with a
standard gang of four Command pattern, with serialization. This overcomes the
terrible difficulties we were having with static type checking and the sigc++
approach. I'm adding the requirement that each command support undo,
simplifying undo/redo. NOTE that an important fallout here is that
Command::operator()() is the opposite of the old UndoAction::operator()(), i.e.
Command::operator()() is execute/redo, and Command::undo() is undo.
This commit is a reworking of the infrastructure, and won't compile until
creating Command subclasses for the various commands being performed. That is
primarily where you find get_memento and/or calls to add_(undo|redo.*).
git-svn-id: svn://localhost/ardour2/branches/undo@655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-29 18:49:03 +00:00
Hans Fugal
5b289d3006
r115@gandalf: fugalh | 2006-06-23 12:36:05 -0600
...
pass the object instead of an id
git-svn-id: svn://localhost/ardour2/branches/undo@654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-29 18:45:41 +00:00
Hans Fugal
7968974c01
merging trunk
...
git-svn-id: svn://localhost/ardour2/branches/undo@652 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-29 14:19:37 +00:00
Hans Fugal
7ff370e798
Merging from trunk
...
git-svn-id: svn://localhost/ardour2/branches/undo@638 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-22 23:40:55 +00:00
Hans Fugal
fd742b30fa
r111@gandalf: fugalh | 2006-06-22 17:38:14 -0600
...
progress on UndoCommand constructors
git-svn-id: svn://localhost/ardour2/branches/undo@637 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-22 23:38:19 +00:00
Hans Fugal
4078b9ec64
r80@gandalf: fugalh | 2006-06-22 16:37:01 -0600
...
reworked templatization of UndoCommand
git-svn-id: svn://localhost/ardour2/branches/undo@636 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-22 22:37:08 +00:00
Hans Fugal
7c9361b865
r59@gandalf: fugalh | 2006-06-15 12:16:20 -0600
...
renamed UndoCommand to UndoTransaction, and created new UndoCommand class and
its templated subclass SlotCommand. Those two are still in considerable flux.
git-svn-id: svn://localhost/ardour2/branches/undo@606 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-15 18:21:31 +00:00
Hans Fugal
eb3f77df57
pulling trunk
...
git-svn-id: svn://localhost/ardour2/branches/undo@586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-14 18:37:57 +00:00
Hans Fugal
3038d8ce4a
r42@gandalf: fugalh | 2006-06-07 17:08:39 -0600
...
Memento skeleton. RFC
Compiles, but obviously somewhat unimplemented.
git-svn-id: svn://localhost/ardour2/branches/undo@572 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-07 23:08:56 +00:00
Hans Fugal
a6d59d589b
creating undo/redo serialization branch
...
git-svn-id: svn://localhost/ardour2/branches/undo@562 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-03 15:53:57 +00:00
Hans Fugal
6c2d2a3a04
r20@gandalf: fugalh | 2006-06-02 18:14:26 -0600
...
change_bit bounds check
git-svn-id: svn://localhost/ardour2/trunk@561 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-03 00:14:53 +00:00
Nick Mainsbridge
8b320ba5c6
Remove needless hbox in panner, get rid of some warnings in editor_rulers.cc, vst_pluginui.cc should compile, updated shuttle patch from Reuben Martin, get rid of extra include in ardour/vst_plugin.h
...
git-svn-id: svn://localhost/ardour2/trunk@559 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-02 12:48:35 +00:00
Hans Fugal
d96bda7dae
Run autogen.sh based on the existence of configure instead of the existence of
...
.svn or CVS.
git-svn-id: svn://localhost/ardour2/trunk@550 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-02 03:33:38 +00:00
cf644c0c97
remove debugging output in a hidden corner of Route::process_output_buffers()
...
git-svn-id: svn://localhost/ardour2/trunk@546 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-31 11:55:53 +00:00
5a4b7e4178
Moving repository around for saner URLs and tree structure.
...
git-svn-id: svn://localhost/ardour2/trunk@545 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-31 02:48:48 +00:00
415d3a5018
unfinished work on selection/HiG details, restore range ops destroyed by autoscroll changes
...
git-svn-id: svn://localhost/trunk/ardour2@544 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-31 02:46:04 +00:00
Doug McLain
0354401e00
Added cerr output informing where ardour2_ui.rc is being loaded from, and add clearlooks engine as default
...
git-svn-id: svn://localhost/trunk/ardour2@543 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-27 02:19:30 +00:00
Doug McLain
6d07483a78
Changes to the Configuration object to properly handle radio actions as well as toggleactions. Then add Monitoring, Meter falloff, and Meter Hold under the options menu to the Configuration object, so that they will now be saved and recalled between ardour startups as non session specific items. Also, ardour.rc will be saved now on exit of ardour, wether or not session is saved. Also some text and color tweaks
...
git-svn-id: svn://localhost/trunk/ardour2@542 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-27 01:41:59 +00:00
c335c0b23b
make OS X flags OS X only
...
git-svn-id: svn://localhost/trunk/ardour2@536 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-26 20:34:12 +00:00
0bde9c1331
removed libtool from pre-build process
...
git-svn-id: svn://localhost/trunk/ardour2@535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-26 12:41:38 +00:00
Hans Fugal
64f8efdce0
OS X Compile fix to work around the circular dependency of libardour and
...
libardour_cp, using -undefined suppress -flat_namespace.
git-svn-id: svn://localhost/trunk/ardour2@534 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-25 22:37:11 +00:00
b7757ddd70
changes to autoscroll behaviour. not perfect, but probably better
...
git-svn-id: svn://localhost/trunk/ardour2@533 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-25 20:30:32 +00:00
Sampo Savolainen
ce6c41c060
Fixed some valgrind errors from using uninitialized variables in
...
conditionals.
git-svn-id: svn://localhost/trunk/ardour2@532 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 22:43:15 +00:00
21704435b1
provide interface to PBD::ThreadCreated() in BasicUI; remove/clean DOCUMENTATION files
...
git-svn-id: svn://localhost/trunk/ardour2@531 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 20:40:11 +00:00
87ed30d39c
remove out of date build information
...
git-svn-id: svn://localhost/trunk/ardour2@530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 20:07:17 +00:00
a7bc5ca92f
a silly change to test the commit hook script
...
git-svn-id: svn://localhost/trunk/ardour2@529 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 19:19:19 +00:00
ff237fb64b
cleaned up main(), but partly to test the commit hook script
...
git-svn-id: svn://localhost/trunk/ardour2@528 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 18:41:52 +00:00
69ac78fea2
added conditionals to detect SVN build conditions where we used to use CVS
...
git-svn-id: svn://localhost/trunk/ardour2@527 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 18:00:40 +00:00
11a9ea1c80
fix up formatting of SMPTE time printing in tranzport control code
...
git-svn-id: svn://localhost/trunk/ardour2@526 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 03:45:32 +00:00
5dd853378c
ensure that libardour_cp and libardour SMPTE structs are same type, hackishly
...
git-svn-id: svn://localhost/trunk/ardour2@525 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-24 01:00:08 +00:00
ba7888d6d1
compile certain control protocol things regardless of SURFACES setting
...
git-svn-id: svn://localhost/trunk/ardour2@524 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-23 21:33:33 +00:00
5c7d8cd288
install libardour_cp to the correct place
...
git-svn-id: svn://localhost/trunk/ardour2@523 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-23 21:00:03 +00:00
2fba6d0925
breakout control protocol code into LGPL library; fix panner buttons even more than nick did, plus some other bits and pieces
...
git-svn-id: svn://localhost/trunk/ardour2@522 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-23 19:54:52 +00:00
Nick Mainsbridge
a222c19737
Mixer pane can be collapsed again, some cleanup, give up and go back to 'Off' for no automation playback state.
...
git-svn-id: svn://localhost/trunk/ardour2@521 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-22 11:12:26 +00:00
Nick Mainsbridge
60f5fc321b
This should fix the options editor crasher i just made.. thanks Nostar
...
git-svn-id: svn://localhost/trunk/ardour2@520 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-21 13:21:25 +00:00
Nick Mainsbridge
479ee9cc00
Mixer strip layout, emsure correct column expands on treeviews, 'Manual' automation mode labels.
...
git-svn-id: svn://localhost/trunk/ardour2@519 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-21 10:11:59 +00:00
Nick Mainsbridge
f88cf52970
Fix bus rec enable bug introduced in last commit
...
git-svn-id: svn://localhost/trunk/ardour2@518 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-20 09:10:13 +00:00
62b491362c
fix timestretch dialog/progress etc; make tranzport protocol non-mandatory
...
git-svn-id: svn://localhost/trunk/ardour2@517 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-20 02:57:38 +00:00
9c6984dbbb
allow for mandatory control protocols, plus some ongoing work on automation control point selection (unfinished)
...
git-svn-id: svn://localhost/trunk/ardour2@516 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-19 20:10:35 +00:00
50ee09e80f
fix naming of destructive track audio files
...
git-svn-id: svn://localhost/trunk/ardour2@515 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-19 19:13:26 +00:00
Nick Mainsbridge
c33d0ad760
Mixer strip & ui layout changes
...
git-svn-id: svn://localhost/trunk/ardour2@514 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-19 17:29:05 +00:00
06654aa7f1
fix for edit & mix group names getting lost at session load
...
git-svn-id: svn://localhost/trunk/ardour2@513 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-19 01:54:00 +00:00
f6da2b13f9
fix egregious bug regarding setting native file header+data formats
...
git-svn-id: svn://localhost/trunk/ardour2@512 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-18 21:16:39 +00:00
70ab1cce42
add new files
...
git-svn-id: svn://localhost/trunk/ardour2@511 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-05-18 19:35:57 +00:00