13
0
Commit Graph

276 Commits

Author SHA1 Message Date
Hans Fugal
1f20fbbad8 merge from trunk
git-svn-id: svn://localhost/ardour2/branches/undo@802 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 21:57:07 +00:00
Hans Fugal
8e1c9186cb r329@gandalf: fugalh | 2006-08-12 15:54:49 -0600
Cleaning up some printf debugging


git-svn-id: svn://localhost/ardour2/branches/undo@801 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 21:55:04 +00:00
Hans Fugal
81b9700c14 r321@gandalf: fugalh | 2006-08-12 15:48:28 -0600
Behold serialized undo.


git-svn-id: svn://localhost/ardour2/branches/undo@799 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 21:52:56 +00:00
Hans Fugal
57f7f71ce3 r316@gandalf: fugalh | 2006-08-11 17:06:48 -0600
Reconstitution. Comiples, untested.


git-svn-id: svn://localhost/ardour2/branches/undo@797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 21:49:20 +00:00
Hans Fugal
f995ac3786 merge from trunk
git-svn-id: svn://localhost/ardour2/branches/undo@794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 01:36:34 +00:00
Hans Fugal
af0680d49b r308@gandalf: fugalh | 2006-08-11 08:49:54 -0600
OS X MacTypes.h/libgnomecanvasmm Rect problem workaround when COREAUDIO=0


git-svn-id: svn://localhost/ardour2/branches/undo@788 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-11 15:24:49 +00:00
Hans Fugal
a1aa6d2ae1 history snapshot name
git-svn-id: svn://localhost/ardour2/branches/undo@784 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-10 14:56:20 +00:00
Hans Fugal
74b19eadfa Can pass a core to ardbg now. Fixed sometimes crash on saving history by
creating a memory leak(?) that will go away with the transition of XMLNode* to
shared_ptr<>. A few bits toward restoring history from XML.


git-svn-id: svn://localhost/ardour2/branches/undo@779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-10 01:45:49 +00:00
Hans Fugal
a160eb92db merge from trunk
git-svn-id: svn://localhost/ardour2/branches/undo@773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-09 21:31:36 +00:00
Hans Fugal
c26215c1e5 r283@gandalf: fugalh | 2006-08-09 08:13:37 -0600
Save state basics, including adding PBD::ID to the delinquents. Compiles but needs to be tested (because I can't get the whole thing to compile on OSX due to the Rect problem).


git-svn-id: svn://localhost/ardour2/branches/undo@769 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-09 14:15:05 +00:00
Hans Fugal
a32175bd41 r274@gandalf: fugalh | 2006-08-07 19:53:48 -0600
Nuke Serializable in favor of Stateful. Got rid of some warnings with stub
 code.


git-svn-id: svn://localhost/ardour2/branches/undo@767 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-09 14:14:17 +00:00
Hans Fugal
f07cb624c0 pull from trunk
git-svn-id: svn://localhost/ardour2/branches/undo@764 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-08 21:11:23 +00:00
Hans Fugal
79986643c0 r269@gandalf: fugalh | 2006-08-03 20:18:05 -0600
Trunk merge conflicts resolved


git-svn-id: svn://localhost/ardour2/branches/undo@756 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-04 02:18:45 +00:00
Hans Fugal
b0b7234458 r260@gandalf: fugalh | 2006-08-03 15:53:50 -0600
It compiles and runs and seems to still work. Still needed is the actual
 serialization. Time to merge back to trunk so things can be tested by all.


git-svn-id: svn://localhost/ardour2/branches/undo@754 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-03 21:54:14 +00:00
Hans Fugal
1f1c4981de Compiles, but doesn't link. The link errors are mostly expected and are
tomorrow's task.

git-svn-id: svn://localhost/ardour2/branches/undo@719 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-29 03:17:11 +00:00
Hans Fugal
277b771a97 r209@gandalf: fugalh | 2006-07-28 17:38:21 -0600
global {solo,mute,record enable,metering} state commands. Same philosophy as
 the MementoCommand but using only the appropriate state and not the entire
 state of the session.
 


git-svn-id: svn://localhost/ardour2/branches/undo@718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-28 23:38:30 +00:00
Hans Fugal
656d56b12d r205@gandalf: fugalh | 2006-07-26 18:11:47 -0600
More Command conversions


git-svn-id: svn://localhost/ardour2/branches/undo@697 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-27 00:19:12 +00:00
Hans Fugal
8e301e875a r199@gandalf: fugalh | 2006-07-26 17:22:38 -0600
Memento(Redo|Undo)Command has a noop for the undo or redo respectively, and
 we don't need both before and after state. This is primarily useful for
 drag start/finish callbacks, and really only makes sense where wrapped by
 (begin|commit)_reversible_command (a composite command).
 
 Also a few more "normal" MementoCommands.


git-svn-id: svn://localhost/ardour2/branches/undo@695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-26 23:28:54 +00:00
Hans Fugal
b7bffbe7a2 r191@gandalf: fugalh | 2006-07-24 19:50:10 -0600
All the obvious MementoCommand grunt work. Now there's some
 add_undo/add_redo_no_execute sprinkled around where one is separated from the
 other (e.g. in different callbacks) or perhaps even where there's only an undo
 and no redo. Also some sigc-based undo/redo pairs that probably need their own
 Command class.


git-svn-id: svn://localhost/ardour2/branches/undo@692 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-25 01:50:20 +00:00
Hans Fugal
55159005b9 r189@gandalf: fugalh | 2006-07-18 17:54:25 -0600
This is the first swath of changes, replacing add_undo with MementoCommand
 pattern, through most of the editor_mouse.cc file. However there were a few
 places that weren't symmetrical that I need to think about. The question is
 whether to tweak things so that they are symmetrical (add_undo paired with
 add_redo*), or to allow Commands to not be undoable or not be redoable. Your
 thoughts are welcome.


git-svn-id: svn://localhost/ardour2/branches/undo@685 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-18 23:54:31 +00:00
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
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
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
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
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
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
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