Commit Graph

56 Commits

Author SHA1 Message Date
e152b80abd Playlist UI Tweaks: add playlist-creation buttons to Playlist Selector dialog.
Also fix gtk packing so the list grows if you resize the window.
2021-07-17 20:52:26 -05:00
d4392b4a1b
Playlist UI Tweaks: provide radio-buttons to switch ALL, Rec-armed, and grouped playlists (wip) 2021-07-03 19:06:04 +02:00
88e0b24163
Playlist UI Tweaks: allow Enter to control the transport, not close the playlist-selector dialog 2021-07-02 02:05:32 +02:00
6077cf1f7b Playlist UI Tweaks: only trigger playlist changes on a user-selection, not libardour
* avoid redundant updates when the user selects a playlist
* every track potentially has a playlist selector so avoid recursive updates
2021-06-27 09:54:06 -05:00
e63dc0eb29 Playlist UI tweaks: move pgroup_id out of the menu text, and into a column of the playlist selector 2021-06-08 08:33:48 -05:00
1c9bb9ab41 Playlist UI tweaks: refactor PlaylistSelector (life-cycle, code-cleanup)
* You can now show a selector for each track, rather than one global dialog
* Removed the 'cancel' button: it was too easy to unintentionally revert your selection
* Correctly sort and name new playlists when they are added or renamed from the P menu
* Fix problem where list contents disappeared when changing desktops (on_unmap_event)
2021-06-08 08:33:48 -05:00
66264eb68f use existing API for key forwarding 2021-06-06 08:11:13 -06:00
b03c8e7849 add key forwarding to playlist selector dialog 2021-06-06 08:06:11 -06:00
6e72232636 Playlist UI tweaks: revert to generic Gtk terms on dialog 2021-06-01 17:55:09 -05:00
892d641987 Playlist UI tweaks: Add (select, share, copy, steal) operations to the playlist selector (under Advanced... menu)
Use the same sorting for the menu list and playlist_selector items
Implement Copy, Share and Steal playlist actions. Need a RouteTimeAxis for this.
Rename persistent dialog buttons to make it clear you can Revert
2021-06-01 09:39:39 -05:00
Nikolaus Gullotta
a51e51b4f2 Playlist UI tweaks: Update PlaylistSelector (gtk2_ardour part)
Window is now no longer modal
Subscribes to new Track::PlaylistAdded signal
Move RouteUI setting to new dedicated method
Rename show_for to show
Hide PlaylistSelector if DropReference signal is emitted
2021-06-01 09:16:41 -05:00
Nikolaus Gullotta
8e22c4811e
Changes to PlaylistSelector
Users should be able to see the playlist they're about to switch to
while the dialog is up. Additionally, if the user cancels, the change
should be nullified and the original playlist used.
2020-09-09 15:08:13 -05:00
ec6237d703
Allow to select playlists from other MIDI tracks #6692 2020-08-25 23:13:22 +02: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
c09c7bab52
Update GUI, use Session::playlists() getter (2/2) 2019-03-19 05:14:40 +01:00
c724f3f82c Fix crash in playlist selector for removed tracks.
Removing a Track does not delete its playlists and one can keep
Playlists after Cleanup. Don't crash if a the track that the playlist
originally belonged to does no longer exist.
2017-09-23 01:57:25 +02:00
11baba0275 remove Session::track_by_diskstream_id() 2017-09-18 11:40:52 -04:00
a4a87f56e9 mega-commit to save state of first "it compilesand links" state for separated disk i/o changes.
THIS WILL NOT RUN. THIS REQUIRES MANY CHANGES
2017-09-18 11:40:52 -04:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
3973ce81b3 remove all of Gtk::Window::set_position (WIN_POS_MOUSE) for anything deriving from ArdourDialog or ArdourWindow; move the set_position() call into those classes' constructors, so that they are called before the windows are realized, and thus it actually works 2013-05-02 18:13:35 -04:00
Carl Hetherington
50aeca5fa5 Fix capitalisation.
git-svn-id: svn://localhost/ardour2/branches/3.0@12524 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-01 15:19:19 +00:00
6fa6514cfd Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different
configurations, but otherwise shouldn't cause any problems (i.e. no actual
changes other than include/naming/namespace stuff).  I deliberately avoided
removing libardour-config.h since this can mysteriously break things, though a
few of those do seem to be unnecessary.

This commit only targets includes of ardour/*.h.  There is also a very large
number of unnecessary includes of stuff in gtk2_ardour; tackling that should
also give a big improvement in build time when things are modified.


git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 06:09:29 +00:00
Carl Hetherington
3fa134e8ae Fix another out-of-scope variable access (#4811).
git-svn-id: svn://localhost/ardour2/branches/3.0@11809 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 01:54:06 +00:00
Carl Hetherington
8d300dae85 Fix out-of-scope access to variable (#4810).
git-svn-id: svn://localhost/ardour2/branches/3.0@11808 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-04-07 01:53:56 +00:00
d23a6de077 fix for most (all? we can dream ...) issues involved in #4399 (editing multiply-applies operations to playlists used more than once), and as a side-issue, fix playlist selection which broke when we hid Diskstreams inside Tracks by using orig_track_id() rather than orig_diskstream_id()
git-svn-id: svn://localhost/ardour2/branches/3.0@10968 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-10 19:20:15 +00:00
Carl Hetherington
1b9bf21aa4 A little copy-editing.
git-svn-id: svn://localhost/ardour2/branches/3.0@7046 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-02 23:54:25 +00:00
Carl Hetherington
061a85191c Move Diskstream ownership to Track, so that Session no longer holds lists of Diskstreams. Breaks 3.0 file format again.
git-svn-id: svn://localhost/ardour2/branches/3.0@6945 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-21 20:42:22 +00:00
f6fdd8dcbf switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
64dc5427e4 make all use of bind/mem_fun be explicitly sigc::
git-svn-id: svn://localhost/ardour2/branches/3.0@6354 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:29:48 +00:00
Carl Hetherington
478fd92039 Use a shared_ptr for SessionPlaylists so that it can be explicitly destroyed in ~Session to ease debugging.
git-svn-id: svn://localhost/ardour2/branches/3.0@6282 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 19:09:08 +00:00
Carl Hetherington
ee9455af40 Move some (most) playlist-related code and data into a separate object
(SessionPlaylists).  Main point being to ensure that, when a Session
is destroyed (especially as a result of its constructor throwing an
exception) SessionPlaylists::track is disconnected from its signal
at the same time as the list of playlists is destroyed.  Otherwise
problems abound.


git-svn-id: svn://localhost/ardour2/branches/3.0@6270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-03 21:52:10 +00:00
Carl Hetherington
09ec342926 Tidy up window titles, according to GNOME HIG and as suggested in mantis 2803.
git-svn-id: svn://localhost/ardour2/branches/3.0@5805 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 17:25:37 +00:00
bb9cc45cd2 Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red.  I don't know the emacs equivalent...


git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
e0aaed6d65 *** NEW CODING POLICY ***
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
2009-02-25 18:26:51 +00:00
Sakari Bergen
572fa80aa7 Add Import from session -functionality
git-svn-id: svn://localhost/ardour2/branches/3.0@3805 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-26 08:29:30 +00:00
cd9fdb935f Use boost::shared_ptr instead of raw pointers for RouteUI track (etc) accessors (fix FIXME in route_ui.h).
git-svn-id: svn://localhost/ardour2/trunk@1986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-15 22:05:07 +00:00
c69ef10067 fix rect redraw problem(s); make zoom range rect visible again at the right time; apply tim's window title patch
git-svn-id: svn://localhost/ardour2/trunk@1617 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-03-18 16:45:43 +00:00
d6ef740e90 remove all lines to avoid recompiles after commits
git-svn-id: svn://localhost/ardour2/trunk@1488 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-02-22 18:36:03 +00:00
bb02870c15 various fixes to named selection mgmt and display, plus fixes for xfade mgmt and a bit of debugging for them too
git-svn-id: svn://localhost/ardour2/trunk@1313 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-01-11 21:45:21 +00:00
486020b403 save keybindings to file used at startup; allow keybindings file to be cmdline-specified; remove some GTK2FIX comments; fix feedback based on john anderson's patch; apply scons patches; fix crash when taking MIDI ports online+offline; try to prevent aborts when shutting down due to metering thread; start work on reconstructing GlobalFOOCommand commands; use ftruncate to hint at peakfile preallocation to reduce fragmentation
git-svn-id: svn://localhost/ardour2/trunk@1223 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-12-19 02:41:19 +00:00
af12adb34f use shared_ptr for all Playlist handling; cleanup works again
git-svn-id: svn://localhost/ardour2/trunk@1209 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-12-14 14:15:43 +00:00
ce234f363e use shared_ptr<> for all region handling
git-svn-id: svn://localhost/ardour2/trunk@852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-25 01:07:15 +00:00
1ae0948138 RCU-ification of AudioEngine port list, and DiskStreams. not well tested, but basically functional. better to get this in now rather than later.
git-svn-id: svn://localhost/ardour2/trunk@828 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-16 01:19:06 +00:00
6f4a92f740 Heavy-duty abstraction work to split type-specific classes into
specializations of (new, for the most part) generic bases.  (eg. most everything
from the MIDI branch except for actual MIDI things, so merges have a chance of
succeeding).  Also the new edit toolbar, and various other cleanup things I did
along the way.

Should be functionally equivalent (except the toolbar), this is just design work.

She's a big'un....



git-svn-id: svn://localhost/ardour2/trunk@727 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-08-01 03:23:35 +00:00
cc2767caf3 added RCU handling of Session route list, and major use of shared_ptr<T> everywhere else. plus a few bug fixes for issues discovered with -Wextra
git-svn-id: svn://localhost/ardour2/trunk@707 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-27 16:52:14 +00:00
8b46567e06 id_t becomes a fully-fledged object, UUID's used for IDs, generic MIDI now owns bindings, MIDI binding concept removed from libardour itself in favor of generic Controllables
git-svn-id: svn://localhost/ardour2/trunk@669 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-07-07 23:51:30 +00:00
912da52a53 the return of VST support
git-svn-id: svn://localhost/ardour2/trunk@629 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-21 23:01:03 +00:00
b09ab54654 use libsndfile for all audio file i/o, and rename DiskStream AudioDiskStream
git-svn-id: svn://localhost/ardour2/trunk@589 d708f5d6-7413-0410-9779-e7cbd77b26cf
2006-06-14 21:17:32 +00:00