Commit Graph

56 Commits

Author SHA1 Message Date
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 39ed528e25 std-ize: convert all boost shared/weak ptr includes to <memory>
Also fix stdint.h -> cstdint and alphabetically order std includes
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 271860f630
Consistent port-matrix channel name display
Previously the columns always displayed port-names unconditionally,
while rows only showed them if there was one more port per bundle.
2021-04-17 00:27:38 +02:00
Robin Gareus 32acfbd52c
Fix blurry text in connection manager
Text that that is not on extract pixels will be anti-aliased
leading to blurry rendering.
2021-04-16 21:42:49 +02:00
Carl Hetherington 1f14a9d9a5 Scale the port matrix with the GUI/font-scaling setting. 2020-01-11 01:17:42 +01: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 31815b5f26
NO-OP: whitespace
This fixes mostly <tab> after <space> and similar <tab> not used
for indenting as well as some related code alignment issues.
2019-04-13 17:57:46 +02:00
Johannes Mueller cc83e1a9bf Consider size of port matrix column labels for size of row labels
The column labels are drawn in an angle towards the edge where the row labels
are. Therefore, if the column labels are much longer than the row labels it can
happen that they go beyond the left edge. In that case we have to add an extra
width to the row labels.
2018-11-01 18:53:27 +01:00
Robin Gareus 601c317d70 Clean up library inheritance (colors.h, utils.h)
make libwidget independent of libcanvas.
Confine basics to pbd and gtkmm2ext.
2017-07-17 21:06:04 +02:00
Paul Davis cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
Robin Gareus 22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
Robin Gareus 7679f7802b improve port-matrix text contrast 2015-03-14 22:59:07 +01:00
Robin Gareus a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00
Paul Davis 9fc7eb1f0d remove incorrect #includes of <cairo/cairo.h> and replace with <cairo.h> 2013-03-29 20:36:11 -04:00
Carl Hetherington 668c8b1f9e Pass whole GdkEventButton into port matrix button
press/release handlers, rather than just selected
highlights.  Remove port in the port matrix on Keyboard
is_delete_event (part of #4536).


git-svn-id: svn://localhost/ardour2/branches/3.0@10920 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-07 01:44:47 +00:00
Carl Hetherington 19e97d1d64 Attempt to fix some confusions caused by bundles containing
different types of port; if we loop over N MIDI channels of
a mixed bundle, for example, we must convert 0...N to the
indices of the channels within the bundle.  Also remove the
hack of creating new bundles to contain a subset of another
bundle's ports; if you do this, any signals emitted by the
other bundle are ignored.  Should fix #4454.


git-svn-id: svn://localhost/ardour2/branches/3.0@10490 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-08 02:10:56 +00:00
Paul Davis e69bfc745b use cairo image surfaces, not GdkPixmap, when computing text sizes for port matrix labels
git-svn-id: svn://localhost/ardour2/branches/3.0@10460 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-05 16:05:36 +00:00
Carl Hetherington 16884aff2a Fix port matrix dimensions on non-24-bit displays (#4077).
git-svn-id: svn://localhost/ardour2/branches/3.0@10444 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-04 20:33:26 +00:00
Carl Hetherington 07a58ffd62 Stop bundles disappearing from the port matrix when they
have no channels (#4209).  Also fix the remove all
channels menu option.


git-svn-id: svn://localhost/ardour2/branches/3.0@9986 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-08-13 20:19:39 +00:00
David Robillard ed626628b5 Delete trailing whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@9656 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 17:00:29 +00:00
Carl Hetherington 92e4126617 Allow port matrix to show both audio and midi ports at the same time, and use that facility for route IO selectors.
git-svn-id: svn://localhost/ardour2/branches/3.0@7344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-01 01:14:14 +00:00
Carl Hetherington 5f67a72c34 Basic tweaks to make the bundles and the port matrix accept that MIDI tracks may have audio IO, and vice versa. Allows connection of instrument tracks using the global port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@7335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-30 02:59:13 +00:00
Paul Davis fdf0db02a0 replace use of gdk_pixmap_unref() with g_object_unref
git-svn-id: svn://localhost/ardour2/branches/3.0@7184 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-28 15:20:39 +00:00
Paul Davis 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
Carl Hetherington da762129f1 Offer all of a bundle's ports for disconnection / removal when opening a menu over a bundle's name in the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@6365 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-14 16:44:20 +00:00
Carl Hetherington 1a44701643 Fix a couple of crashes with empty matrices. Some small optimisations.
Correctly handle descenders on text when plotting labels.  Minor layout
improvements.  Add some drawings of what's going on in the port matrix
so that I don't keep losing them.


git-svn-id: svn://localhost/ardour2/branches/3.0@6319 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-07 00:41:50 +00:00
Carl Hetherington be79bc7916 Tweak mouseover on port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@6278 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 12:49:58 +00:00
Carl Hetherington be55dcbce3 Primary-modifier click on a node in the port matrix toggles association for everything in a diagonal line down and to the right of the clicked node.
git-svn-id: svn://localhost/ardour2/branches/3.0@6122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 15:16:28 +00:00
Carl Hetherington 73a0cd56f8 Rework port matrix to use Gtk notebook tabs to select visible groups.
git-svn-id: svn://localhost/ardour2/branches/3.0@6117 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-18 13:35:31 +00:00
Carl Hetherington f2dbcec61d The matrix used to highlight connections on click-hold on a row or column label; now this happens, without a click, on any mouseover. Also mouseover a bundle name highlights everything connected to that bundle. Some cleanups along the way.
git-svn-id: svn://localhost/ardour2/branches/3.0@6102 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-17 00:30:42 +00:00
Carl Hetherington 9dbecd0fa1 Keep port matrix group labels on screen where possible.
git-svn-id: svn://localhost/ardour2/branches/3.0@6082 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-14 11:50:01 +00:00
Carl Hetherington c3d8d38f7f Compact the port matrix slightly, and fix a couple of minor layout bugs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6068 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-12 01:58:20 +00:00
Carl Hetherington dbb0b9ca4f Various adjustments to user bundle handling, with the general aim of allowing the user to create meaningful bundles with respect to their sound card an outboard setup, and having those user bundles take priority over ardour-generated ones.
git-svn-id: svn://localhost/ardour2/branches/3.0@6050 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-10 03:16:57 +00:00
David Robillard 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
Carl Hetherington b65f8073ba Fix some unused parameter warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@5403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 15:55:17 +00:00
Carl Hetherington 9f5b9f3c3e Outline highlighted labels in red.
git-svn-id: svn://localhost/ardour2/branches/3.0@5389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-19 21:46:38 +00:00
Carl Hetherington 82f31ffc79 No highlighting at all when mouse is over a collapsed group. Fix crash on clicking in a collapsed group.
git-svn-id: svn://localhost/ardour2/branches/3.0@5388 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-19 21:23:16 +00:00
Carl Hetherington 6da5dd6d41 Port matrix tweaks: scroll wheel support; use the correct verb for disassociation in the menu; fixes for gaps appearing when groups are hidden.
git-svn-id: svn://localhost/ardour2/branches/3.0@5382 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-19 19:07:31 +00:00
Carl Hetherington af5b9f92a5 Various tweaks to the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@5380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-18 13:10:08 +00:00
Carl Hetherington 91dae1fb03 Drag a line in the port matrix to connect a group of things together in one go. Probably futile attempt at some cleanup.
git-svn-id: svn://localhost/ardour2/branches/3.0@5375 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-18 02:10:15 +00:00
Carl Hetherington 50437bff22 Various tweaks to the port matrix: open to full size; remove buttons and move their functionality into a context menu;
set maximum size hint to stop port matrix windows being resized beyond their useful size; remove visibility checkbuttons -
visibility now controlled through menu or by clicking on group names; port groups fold down to a small tab when hidden;
don't swap the orientation of the matrix once it has been opened.

git-svn-id: svn://localhost/ardour2/branches/3.0@5373 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-17 22:54:45 +00:00
Carl Hetherington 748ad24ace Small optimisation. Fix mouseover highlighting in the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@5369 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-17 14:21:54 +00:00
Carl Hetherington 7eea227bcd Use track colours in the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@5367 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-17 13:18:58 +00:00
Carl Hetherington b895b677bf Optional tabs down the LHS of the editor window to indicate edit group membership.
git-svn-id: svn://localhost/ardour2/branches/3.0@5220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-20 13:41:55 +00:00
Carl Hetherington 1ae39840b3 Support for the port matrix working at the bundle level and hiding details of ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@5029 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-03 14:31:42 +00:00
Carl Hetherington ee42a6dd97 Fixes to bundle manager to make it vaguely usable.
Rework signal handling for bundles so that all changes should now be noticed by port matrices.


git-svn-id: svn://localhost/ardour2/branches/3.0@4501 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-09 03:18:10 +00:00
Carl Hetherington ee4e28751e Reduce header dependencies.
git-svn-id: svn://localhost/ardour2/branches/3.0@4490 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-04 17:05:26 +00:00
Carl Hetherington d06d697e41 Click and hold button 1 over a channel name in the port matrix highlights
connected channels.


git-svn-id: svn://localhost/ardour2/branches/3.0@4484 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-03 01:55:25 +00:00
Carl Hetherington a384dab130 More port matrix re-working. Global matrix now has separate visibility buttons
for ins and outs.  The matrix will now be arranged so that more ports are labelled
horizontally than vertically, to aid readability.


git-svn-id: svn://localhost/ardour2/branches/3.0@4467 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30 15:08:09 +00:00