summaryrefslogtreecommitdiff
path: root/libs/pbd/pbd/stateful.h
AgeCommit message (Collapse)Author
2019-08-03Update core library GPL boilerplate and (C) from git logRobin Gareus
2015-12-17add API to query stateful ID override modeRobin Gareus
2015-11-12provide a mechanism to force ID regeneration/reset in PBD::Stateful when ↵Paul Davis
settingthe ID object from XML or string sources
2015-11-10Replace spaces with tabs in pbd/stateful.hTim Mayberry
2015-10-05NOOP, remove trailing tabs/whitespace.Robin Gareus
2015-10-04globally remove all trailing whitespace from ardour code base.Paul Davis
Paul Davis was responsible for introducing almost all of this.
2013-10-17get everything compiling with libardour built using -fvisibility=hiddenPaul Davis
2013-10-16add export visibility control to libpbd (works thus far on linux/gcc)Paul Davis
2012-10-29fix complaints from OS X gcc about constnessPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13359 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-07-25convert from Glib:: to Glib::Threads for all thread-related APIPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-23Replace PBD::sys::path use in PBD::StatefulTim Mayberry
git-svn-id: svn://localhost/ardour2/branches/3.0@12843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-17Clear up confusion with overloads of _frozen and frozen()Carl Hetherington
meaning different things. git-svn-id: svn://localhost/ardour2/branches/3.0@11016 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-10-18make Stateful::_id private and provide appropriate methods to set it, and ↵Paul Davis
use them throughout ardour git-svn-id: svn://localhost/ardour2/branches/3.0@10222 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-11major, substantive reworking of how we store GUI information (visibility, ↵Paul Davis
height) for automation data. old design stored (insufficient) identifying information plus actual data in a GUI-only XML node; new scheme adds GUI data via extra_xml node to each AutomationControl object. reworked public/private methods for showing/hiding TimeAxisView objects; changed labelling of automation tracks to just show the name of the controlled parameter - more info can be viewed in the tooltip for the track headers. NOTE: Session file format ALTERED. No data loss but track visibility may be different than previous ardour3 versions git-svn-id: svn://localhost/ardour2/branches/3.0@9703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-20add notification of what was changed in Stateful::post_set() callPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@8306 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-27don't display internal returns to userPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@8113 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-21(1) remove almost-never used block/unlock_property_changes() methods from ↵Paul Davis
PBD::Stateful (2) hide used and path columns from region list (3) detect mouse position within MIDI notes and thus allow move or trim from the same mouse mode (object or trim; first & last 1/4 of each note is for trimming git-svn-id: svn://localhost/ardour2/branches/3.0@7823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-26Fix crossfade undo using the stateful diff system. Fixes #3257.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7694 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-25clear_history -> clear_changes and some comments.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7685 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-25Modify StatefulDiffCommand undo record to only contain the changes in one ↵Carl Hetherington
direction, as the other direction can be inferred. Breaks session history file compatibility. git-svn-id: svn://localhost/ardour2/branches/3.0@7684 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-25Move various code up the Property / Stateful hierarchies.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7682 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-25Rename various things in the property system.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7681 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-23midway snapshot of work done on managing Region & Source lifetimes ↵Paul Davis
correctly. may fix missing MIDI file bug ; save empty playlists because they may be referred to by the history file ; undo commands auto-delete when objects they refer to die (currently not commands built from XML deserialization); Sources now know how many regions are using them for something, meaning that we know if we can delete the files holding any data for the source git-svn-id: svn://localhost/ardour2/branches/3.0@7291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-31Rework to set Stateful properties automagically in the Stateful class rather ↵Carl Hetherington
than delegating to subclasses. git-svn-id: svn://localhost/ardour2/branches/3.0@6817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-04goodbye to MementoCommand for playlistsPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6726 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02(1) remove most uses of MementoCommand for Playlist and Region (2) move ↵Paul Davis
frozen state from Region into Stateful, renamed "suspend property changes" (3) successive changes to a Property (scalar) after clear_history() do not keep resetting the old value (fixes region trim) git-svn-id: svn://localhost/ardour2/branches/3.0@6720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02the mega-properties/SequenceProperty patch. split is broken at present ↵Paul Davis
(right hand starts has start-in-source of zero) git-svn-id: svn://localhost/ardour2/branches/3.0@6718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19change PropertyChange from a bitfield into a real object, with all the many ↵Paul Davis
widespread changes that causes git-svn-id: svn://localhost/ardour2/branches/3.0@6701 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-18the Properties & 64bit region commitPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@6695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-11tweak Stateful/StatefulDiffCommand changes so that SessionObject's actually ↵Paul Davis
get a name; make StatefulDiffCommand use a weak_ptr, not a raw ptr; use .val() rather than .get() to avoid confusion with boost:: smart ptr method of the same name git-svn-id: svn://localhost/ardour2/branches/3.0@6678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-11More tinkering with State<>. Use some StateDiffCommands instead ofCarl Hetherington
MementoCommand<Region>. More use of State<> for Region members. git-svn-id: svn://localhost/ardour2/branches/3.0@6675 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-10Move ARDOUR::Change into PBD so that Stateful can be aware ofCarl Hetherington
what Change a State reflects. Hence allow Stateful to do some of the work of set/get_state in Region. git-svn-id: svn://localhost/ardour2/branches/3.0@6671 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-09Modify Stateful to allow undo to be done using differences in state.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@6664 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15rework Stateful::set_state() patch to avoid default version argumentPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15Part 1 of loading 2.X sessions; some things work, some things don't, hacks ↵Carl Hetherington
a-plenty. LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE, MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION. So don't do that unless you make a backup of the session file first. git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25*** NEW CODING POLICY ***David Robillard
All #include statements that include a header that is a part of a library bundled with ardour MUST use quotes, not angle brackets. Do this: #include "ardour/types.h" NOT this: #include <ardour/types.h> Rationale: This is best practice in general, to ensure we include the local version and not the system version. That quotes mean "local" (in some sense) and angle brackets mean "system" (in some sense) is a ubiquitous convention and IIRC right in the C spec somewhere. More pragmatically, this is required by (my) waf (stuff) for dependencies to work correctly. That is: !!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!! Failure to comply is punishable by death by torture. :) P.S. It's not that dramatic in all cases, but this (in combination with some GCC flags specific to the include type) is the best way I have found to be absolutely 100% positive the local ones are being used (and we definitely want to be absolutely 100% positive on that one). git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02rollback to 3428, before the mysterious removal of libs/* at 3431/3432Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02remove empty sigc++2 directoryDoug McLain
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17Modify PBD::Stateful::add_instant_xml/instant_xml to take a PBD::sys::path ↵Tim Mayberry
instead of a string git-svn-id: svn://localhost/ardour2/trunk@2013 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17Make Stateful::*instant_xml methods protected and non-virtualTim Mayberry
Add add_instant_xml and instant_xml methods to the Session class which call the corresponding Stateful methods with the session directory for the directory argument Add add_instant_xml and instant_xml methods to the Configuration class which call the Stateful methods with ARDOUR::get_user_ardour_path() for the directory argument git-svn-id: svn://localhost/ardour2/trunk@2012 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17Move Stateful class declared in pbd/stateful.h into the PBD namespaceTim Mayberry
git-svn-id: svn://localhost/ardour2/trunk@2011 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17Whitespace fixes in pbd/stateful.hTim Mayberry
git-svn-id: svn://localhost/ardour2/trunk@2010 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-02-28remove Id: lines from many/all headers and some more source filesPaul Davis
git-svn-id: svn://localhost/ardour2/trunk@1535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-09-07remove all duplicated _id members from children of PBD::Stateful.Paul Davis
Sources now know about Session. rearrange session directory heirarchy. remove tape_dir stuff. NSD allows absolute/relative paths to be typed straight into the text entry. Session history reloaded after all 3rd party registrations done. Editor restores its ID; other objects still need this. use g_mkdir_with_parents() instead of mkdir() one example of using g_file_test() instead of access. git-svn-id: svn://localhost/ardour2/trunk@908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-12 r316@gandalf: fugalh | 2006-08-11 17:06:48 -0600Hans Fugal
Reconstitution. Comiples, untested. git-svn-id: svn://localhost/ardour2/branches/undo@797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-04 r269@gandalf: fugalh | 2006-08-03 20:18:05 -0600Hans Fugal
Trunk merge conflicts resolved git-svn-id: svn://localhost/ardour2/branches/undo@756 d708f5d6-7413-0410-9779-e7cbd77b26cf