13
0
Commit Graph

28004 Commits

Author SHA1 Message Date
8cc1f8f8cb
Update icon render tool
* add "grid" mode
* re-build libwidgets as needed
* add a convenient `make show` target
2019-08-27 18:03:57 +02:00
7f2bfa362f
Cont'd icon tweaks
* unify line-width calculation
* thin line-width, approximate thickness of
  glyph stroke width at same UI scale
* don't use outlines (except main tool buttons)
  This fixes issues of generic buttons with bright-theme
* pixel align some lines
2019-08-27 18:03:57 +02:00
db831db1a5 Add/remove source(s) in our MSVC project (gtk2_ardour) 2019-08-27 15:10:00 +01:00
79ac8215e9
Update Plugin-Tag policy
* Don't store tags from plugin's own metadata
  Those are set during plugin-scan every time
* Save user-tags even if they're not new
* Reset tags to factory-file tag (if any)

Old user tag files (prior to this commit) are interpreted
as "factory-file". This will auto-correct after the
first save_tags().
2019-08-27 13:43:09 +02:00
37caa11b52
NO-OP: whitespace 2019-08-27 13:22:53 +02:00
5a7659fbdb
Resetting a tag implies changing it 2019-08-27 12:18:44 +02:00
79b23a893d
Update "By Tags" menu when Plugin-tags change -- #7800 2019-08-27 12:18:44 +02:00
191dea0248
Use latency-icon instead of text 2019-08-27 12:18:44 +02:00
64fd7a7511 Foldback bus should not appear in editor 2019-08-26 19:01:19 -07:00
fa94741f2c Monitor new signal to rebuild sendlist
remove debug lines, remove last FB bus works
2019-08-26 17:48:22 -07:00
220fa45d35 Add signal for foldback send add or remove 2019-08-26 17:48:22 -07:00
a2de8bd881 Add send controls to foldback GUI 2019-08-26 17:48:22 -07:00
fe1442dec9 Fix processor box for no crash on click 2019-08-26 17:48:22 -07:00
5414728c18 Start adding processor box 2019-08-26 17:48:22 -07:00
5bdfe4dc4c fix last foldback commit. 2019-08-26 17:48:22 -07:00
4f22bcea24 Add strip GUI first try for foldback bus 2019-08-26 17:48:22 -07:00
b01f6ead8b
Reduce girth of "plus" icon 2019-08-27 00:00:29 +02:00
b4addaaa0a
Tweak icon_strip_width icon lines to align to pixels 2019-08-26 23:34:20 +02:00
2dbeaaffa6
Add sample-rate as float option parameter for LV2 plugins and UIs 2019-08-26 23:30:21 +02:00
5e46108e95
Fix LV2 option size 2019-08-26 23:12:46 +02:00
646aded4f2
Add some scaleable "Latency" icon 2019-08-26 22:44:11 +02:00
cfc8a2c263
Push UI theme to backend, LV2 plugin options 2019-08-26 18:58:34 +02:00
80e30ea0d1
LV2 options for UI theme
Inform plugins about host theme (fg, bg colors) and UI scale-factor.
The latter follows an implementation already present in Carla and DPF.
These extension use proposed official URLs.
2019-08-26 18:57:47 +02:00
e286cce399
Borderless plugin UIs
This removes a border painted in the host's UI theme color around
any plugin UI.
This results in a much nicer look/feel for plugin-UIs that have their
own theme
2019-08-26 16:28:03 +02:00
09a71b4392
Allow Icon + Text on ArdourButton
Allow placing an icon left of some text in Ardour-button.
This also tweaks some spacing and alignment of Icons when
a LED toggle indicator is used.
2019-08-26 16:04:22 +02:00
e6e407f573
Tweak icon line widths
Scale line-width of all icons, some were left at 1px regardless
of scaling factor.
2019-08-26 16:01:19 +02:00
4538bcc7f4
Add/fix some TimeAxisView Lua bindings 2019-08-24 21:44:27 +02:00
1f05baa881
Tweak deletion, emit CatchDeletion() only once
Parent class d'tor runs after derived class d'tor. By the time
~TimeAxisView() is called, the actual object has already been
deleted and dyanamic_cast<RouteTimeAxisView*> or
dynamic_cast<AutomationTimeAxisView*> will fail.

CatchDeletion() needs to be emitted from the actual d'tor of the object.

There are currently three non-virtual TAVs:
 * RouteTimeAxisView
 * AutomationTimeAxisView
 * VCATimeAxisView

The first two already directly emit CatchDeletion(), there's no need to
call it again from ~TimeAxisView().
2019-08-24 18:42:51 +02:00
7859340191
Consolidate code, skip editor/mixer update check 2019-08-24 18:37:28 +02:00
629289dc4a
Fix crash when selected automation-lane is removed
When a plugin is deleted, automation-lanes of the given plugin
are removed, but previously a pointed to the deleted lane remained
in the selection.

This caused crashes later when the track selection is used. e.g.
during sensitize_the_right_region_actions()

Note that ~TimeAxisView() also emits CatchDeletion (this);
however "this" fails to be dynamic_cast<AutomationTimeAxisView*>
because that d'tor has already been completed.
2019-08-24 18:24:21 +02:00
9ce5184993
NO-OP: comment 2019-08-24 17:11:22 +02:00
3f19db4180
Mitigate issues of expensive plugin analysis -- #7795
Plugin analysis uses a GUI thread instance of a given plugin to
perform a IR analysis.

Some plugins can be rather CPU expensive to analyze.
e.g. a-hi/lo-filter when interpolating is recalculating biquad
coefficients every 64samples during the 8k IR analysis. This can take
a significant amount of time on older CPUs.

Furthermore live-signal collection happens in the rt-thread,
using cross-thread signals. Signal collection is  periodically initiated
from the same timeout signal as analysis.

Analysis is was done using default thread priority, which is higher
than the GUI redraw priority (PRIORITY_HIGH_IDLE).

So it was possible to contiguously initiate analysis, loading the CPU
and preventing redraws.
2019-08-24 17:11:10 +02:00
ab62c8a926
Towards fixing luadoc, manual page creation 2019-08-24 03:32:47 +02:00
89f0e70b82
Fix memory-leak in case of Vamp plugin setup error 2019-08-24 03:31:49 +02:00
1ea3435de6
Add missing Lua bindings for function arguments
PortEngine was accidentally removed in 1339d42c78
2019-08-24 03:31:45 +02:00
02cc959d93
Add missing headers for lua-doc 2019-08-24 01:35:38 +02:00
9c785749ba
Lua binding to change region name 2019-08-24 01:35:14 +02:00
69688d24c4
Another fix for input only ALSA-slave devices 2019-08-24 00:15:10 +02:00
f7968f15dd
LCXL: Fix uninitialized pointer function
See also 026b74e25d. FilterFunction must point to a valid function.
2019-08-24 00:01:28 +02:00
2920bd0253
Region selection cannot change without a session
Without a session, there are no regions. Besides,
there is an unconditional call using _session directly
after the if (_session) clause, which would segfault...
2019-08-23 23:54:34 +02:00
37d51037b9
Add tool to render ArdourIcon set 2019-08-23 21:09:38 +02:00
000d331ea1
NO-OP: cleanup
* remove unused code
* replace "default" to check for switch() enum completeness
2019-08-23 15:50:26 +02:00
f1c29a9324
Re-order enum, use "NoIcon" as sentinel 2019-08-23 15:49:25 +02:00
88a0429188
ArdorIcon is for display only, remove registration
These enum values are not used serialized in any state, and can
be removed.
2019-08-23 15:46:39 +02:00
9836bd786f
Some hints for clang static analysis 2019-08-23 05:15:17 +02:00
e5927d689c
Fix for half-duplex ALSA-slave devices 2019-08-23 04:39:51 +02:00
8fadf44978
Fix possible segfault when ALSA MIDI port registration fails 2019-08-23 04:39:12 +02:00
d52cf0f739
Tweak graph display, check direct sends
->feeds() follows connections "track -> master -> monitor"
(to detect feedback). Use direct_feeds_according_to_reality()
to correctly show sends-only.
2019-08-23 02:12:47 +02:00
b858b3b692
Detect monitor-send by instance, not name 2019-08-23 01:05:57 +02:00
22aa61b674
Use icons for plugin bypass and pinout 2019-08-22 21:03:44 +02:00