Commit Graph

108 Commits

Author SHA1 Message Date
Robin Gareus 3364fdd9f3
Update context menu for subgroup bus creation
Rather than hiding options that are not available,
all options are shown and the sensitivity is
set accordingly.
2023-04-21 00:41:30 +02:00
Robin Gareus 295dbd8e1e
Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02:00
Paul Davis b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
Paul Davis 9ea1e5bdee move color utility functions from ARDOUR_UI_UTILS to Gtkmm2ext namespace (GUI) 2022-08-10 21:11:52 -06:00
Robin Gareus 88ed770bce
Implement group-tab sensitivity 2021-03-28 17:43:17 +02:00
Robin Gareus 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
Robin Gareus 54d8bcca57
Skip Subgroup menu-options when not available (no MIDI subgroups) 2019-04-11 02:08:36 +02:00
Len Ovens 0140b24248 Change get_routes to get_routelist where appropriate. 2018-11-07 17:00:16 -08:00
Robin Gareus e7f6eff84b Fix crash when re-assigning groups to a disjunct set.
Drag a group-tab's right-edge horizontally to the right to remove all
current routes from the groups before adding new routes to the group.

The group becomes temporarily empty, and
Session::route_removed_from_route_group() removes the group (before new
routes can be added).
2018-03-20 18:08:12 +01:00
Robin Gareus 7b597055ee GUI: create_vca() API change 2018-03-15 20:25:27 +01:00
Robin Gareus d7aa102ce5 Name New VCAs from Selection 2017-08-07 16:46:35 +02:00
Robin Gareus d55cb9ba94 Update GUI to follow Slavable API change 2017-06-22 22:04:10 +02:00
Robin Gareus 1d28665f86 Use Stripable::Sorter in GUI consistently. 2017-06-17 04:36:39 +02:00
Robin Gareus 3aa3413944 Fix use-after free (signal after deleting group) 2017-05-14 12:00:19 +02:00
Robin Gareus 95f225df8f Scaleable group-tabs: use Pango to layout text, scale with UI #7331 2017-05-04 19:15:18 +02:00
Robin Gareus 0b189a5766 GUI update: migrate group-color into the session (not GUI state) 2017-05-03 17:53:00 +02:00
Paul Davis aeae859c46 make it possible to drop a group from a VCA 2017-03-26 15:01:00 +02:00
Robin Gareus d06de26a4f Towards a consistent render() API.
This fixes an -Woverloaded-virtual ambiguity introduced in b5e613d45

  void render (cairo_t*, cairo_rectagle*)
  void render (Cairo::RefPtr<Cairo::Context> const&, cairo_rectangle_t*)

ArdourCanvas prefers cairomm and CairoWidget itself uses Cairo::Context,
this improves overall API consistency.
2017-03-20 17:12:08 +01:00
Robin Gareus fc91cfc66b Fix Group assign to new VCA
For reasons unknown[1], The vca-counter may not be in sync with
actual number of VCAs present.

[1] possibly some shared-ptr references at the time of session-save, or
old session compatibility.
2017-03-18 23:06:42 +01:00
Robin Gareus 4d95a4e205 Manage some Menus (memory leaks) 2017-03-16 02:36:48 +01:00
Robin Gareus c56635e71c Group-Tabs keyboard shortcuts
* The return of the ctrl+right-click (edit)
* and consistent shift+right click (remove)
2017-02-21 00:11:38 +01:00
Paul Davis 8876955762 use "VCA" rather than "Control Master" in the GUI 2017-02-20 15:40:24 +01:00
Paul Davis edd1061c3d save/restore VCA master state inside slaves, so that a reloaded session ends up back in the same state 2017-02-06 16:49:08 +01:00
Paul Davis 415c841645 more consisten code to set menu item name from VCA name 2017-01-28 13:04:32 +01:00
Ed Ward c0c13d7c45 Patch to bug 0007204 : Some options in the Group List context menu are not working 2017-01-28 13:04:32 +01:00
Paul Davis e5aa0d774e use RAII for class-wide PresentationInfo::Change signal, along with properties to describe what changed 2017-01-27 22:17:53 +01:00
Robin Gareus 96cb9ba626 Fix un/setting group colors 2016-12-01 15:51:00 +01:00
Paul Davis 6a4fb58384 fix thinko that causes near duplicate menu items in group context menu when not in group tabs 2016-08-08 23:36:33 +02:00
Paul Davis cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
Paul Davis 2afaa51717 remove pointless version of Stripable::set_presentation_order() 2016-07-12 09:20:50 -04:00
Paul Davis 0852d05643 remove RouteGroupDialog::do_run() and replace its use with code that doesn't rely on a recursive run loop 2016-06-12 14:54:01 -04:00
Paul Davis 2c44225df2 make RouteGroupDialog non-modal.
Not really how/why it was modal, but it did run a recursive main event loop, and these are
always a bad idea for lots of reasons. So I removed that feature, which makes it non-modal.
Not 100% tested yet.
2016-06-11 15:49:38 -04:00
Paul Davis 2d4358ddb5 Various changes to PresentationInfo and a small consolidation of sorters.
The semantics for sorting PresentationInfo are up to the caller, not the
PresentationInfo object, so operator<() was removed and callers specifically
invoke ::order() for sorting.
2016-06-10 13:57:18 -04:00
Paul Davis 3e12d4b4a6 use PresentationInfo color to set route colors. GUI appears to respond as expected 2016-06-05 17:16:20 -04:00
Paul Davis b685b6e175 use modified PresentationInfo/Stripable API 2016-06-05 16:33:01 -04:00
Paul Davis 260058a4a9 move from PresentationInfo::global_order() to PresentationInfo::order, and fix up part of reordering behaviour
Dragging tracks/busses in the editor *below* VCAs still does not work
2016-06-03 15:15:39 -04:00
Paul Davis 4aea553467 not quite as many magic numbers when deciding if a group color is too close to black 2016-05-31 15:30:44 -04:00
Paul Davis f8f7894ad9 make create group with master actually create (and name) master 2016-05-31 15:30:44 -04:00
Paul Davis b81fec9d58 rearrange group tabs menu 2016-05-31 15:30:43 -04:00
Paul Davis c6ad232796 more work on presenting GUI actions to connect Route groups and control masters 2016-05-31 15:30:43 -04:00
Paul Davis c1592864e1 a start at the group/master menu related structure 2016-05-31 15:30:43 -04:00
Paul Davis e0ff70cf86 first vaguely working version using PresentationInfo
remote control ID and "order keys" have been removed.
2016-05-31 15:30:42 -04:00
Paul Davis 653ae4acd6 universal change in the design of the way Route/Track controls are designed and used. The controls now own their own state, rather than proxy for state in their owners.
Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
2016-05-31 15:30:40 -04:00
Robin Gareus 637f4cc817 fix "Collect Groups" -- closes #6794 2016-02-26 17:25:21 +01:00
Robin Gareus d308fceb21 update signal connetion for new CairoWidget::set_dirty() API 2016-02-12 22:58:33 +01:00
Robin Gareus 22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
Todd Naugle cb0b22cb79 Hide create new item from Group Tab context menu
Creating a new empty group from the group tab area just looks broken since
nothing visible happens, so hide this item when the context menu is
triggered from this location.
2015-09-21 16:50:45 -05:00
Todd Naugle 203a72f883 Create new Groups with a consistent set of default properties.
This is part of a larger fix for #6450. Previously new route groups were
created with different default properties depending on which code created
the new group. The group tab method had all properties set and that is now
going to be the default for all other methods (mixer strip button, etc).
2015-09-21 14:52:25 -05:00
Tim Mayberry 553c3ef557 Remove ui_config.h inclusion from ardour_ui.h 2015-09-16 16:55:17 -04:00
Tim Mayberry 6b019a4953 Move UIConfiguration Singleton into UIConfiguration header
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00