13
0
Commit Graph

17 Commits

Author SHA1 Message Date
c791d5970f add GUIObjectState::remove_property() 2020-02-06 14:43:58 -07:00
bd229936ec add finite state machine to control/manage transport state 2019-09-17 18:26:03 -06:00
4050ca5633
Update GPL boilerplate and (C)
Copyright-holder and year information is extracted from git log.

git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
8d90723e8c Use XMLNode::set_property API in GUIObject class 2017-04-19 09:36:56 +10:00
2f71967be2 fix crash when loading a saved visual state 2016-07-05 23:49:50 +02:00
6f858b51d2 speed up track creation
For every added Trackview/Mixerstrip, Ardour looks up GUI properties which
results in a total of 13 calls for the initial default items per track:
("height", "visible", "layer-display", "strip-width")

Since the tracks don't yet exist, the properties don't either.
Every lookup result in iterating over all all XMLNotes and for every
"Object". ->property ("id") and ->value () allocates memory.

Adding 64 tracks to an empty session results in 528293 string
allocations and deallocations in XMLNode::property() taking ~30%
of the track creation time.

This commit XMLnode's const method to prevent memory allocation
and caches a pointer to the XMLNode* to skip iterating over object
state.
2016-05-03 14:27:36 +02:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
75e0f5a023 remove GUI object state when tracks/busses are removed.
Not doing this results in accumulation of useless GUI object state which is never cleaned up.
Taken from work by Grygorii Zharun.
2015-03-30 15:27:23 -04:00
69ca705286 fix erroneous use of i18n.h in a header file
git-svn-id: svn://localhost/ardour2/branches/3.0@13123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-08-10 15:56:25 +00:00
27a1cf2cf7 Compile cleanly with clang.
To compile Ardour with LLVM/clang, do the usual thing but set the CXX and CC
environment variables, e.g.:

CC=/usr/bin/clang CXX=/usr/bin/clang++ ./waf configure build


git-svn-id: svn://localhost/ardour2/branches/3.0@12418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 02:54:10 +00:00
cbfe2f2fa5 remove operator= from GUIObjectState since its no longer required (the default will do the right thing)
git-svn-id: svn://localhost/ardour2/branches/3.0@11613 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-03-07 02:08:46 +00:00
Carl Hetherington
5a53f2f1b9 Simple approach to putting plugin controls into the
processor box.


git-svn-id: svn://localhost/ardour2/branches/3.0@11288 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 18:02:48 +00:00
Carl Hetherington
3396a9a851 Simplify GUIOBjectState a bit by just walking the XML
directly rather than maintaining internal data
structures.


git-svn-id: svn://localhost/ardour2/branches/3.0@11287 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-01-20 18:02:43 +00:00
Carl Hetherington
80972784e3 Fix non visibility of previously-visible MIDI automation
tracks on session reload.


git-svn-id: svn://localhost/ardour2/branches/3.0@9863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-13 17:13:30 +00:00
6dc74f8c87 clean up GUIObjectState API, and use bools when setting "visible" property rather than string (not that it matters); don't unconditionally set visible to true unless a non-hidden track/bus has no visibility property already
git-svn-id: svn://localhost/ardour2/branches/3.0@9843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-11 20:32:33 +00:00
10cb0a7646 introduce GUIObjectState; massive, pervasive changes in visibility and height management for track displays in the editor
git-svn-id: svn://localhost/ardour2/branches/3.0@9796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-07 00:37:13 +00:00