Commit graph

469 commits

Author SHA1 Message Date
Paul Davis
a2fefe68db use modified API name in GUI 2017-09-18 11:40:53 -04:00
Paul Davis
e6064b286e basic GUI framework for setting Disk I/O options 2017-09-18 11:40:53 -04:00
Robin Gareus
ae0dcdc0c5 Fix various tooltip markup (ampersand) entity-escape:
* track/port names
* plugin-names
* MIDI patch-names
2017-09-14 19:23:37 +02:00
Robin Gareus
0034f246cb Fix some GUI side XML node mem-leaks 2017-08-20 22:26:54 +02:00
Robin Gareus
2cc32456ab Lua may call C++ functions with throw. Catch them 2017-08-19 01:06:44 +02:00
Johannes Mueller
4a60c277db Some abstractions to make the display look good in the plugin gui 2017-07-31 21:31:22 +02:00
Johannes Mueller
37b03e353a Put plugin inline display into a freely available class ...
... and let ProcessorBox::PluginInlineDisplay inherit from it.
2017-07-31 21:31:22 +02:00
Robin Gareus
fde0e293a3 Remove unused "mark" parameter from stop_touch() API 2017-07-24 01:59:18 +02:00
Robin Gareus
25df9f1ba5 Start/end touch for generic-UI knob and proc-box inline ctrls 2017-07-24 01:59:03 +02: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
Robin Gareus
1f5ebc5485 Remove ArdourPrompter wrapper 2017-07-17 21:06:04 +02:00
Robin Gareus
f9e5e4360e Move more Gtkmm2ext widgets into libwidget 2017-07-17 21:06:04 +02:00
Robin Gareus
5c92613698 Separate Ardour UI widgets into dedicated library 2017-07-17 21:06:04 +02:00
Robin Gareus
5aecfc5acb Remove Timers to watch Controllable values
Depend on Changed() signals alone, which are usually much less frequent
than rapid-timer events.

As side-effect we now need to make the widgets insensitive when
playing automation. Previously the user could not change the value because
the Timer periodically reset it.
2017-07-16 16:58:00 +02:00
Robin Gareus
7bb48aaa3f Remove cruft, steps cannot be 0. 2017-07-06 16:39:28 +02:00
Robin Gareus
608f99ad1c Fix a plugin-insert position off-by-one and remove cruft.
Route::before_processor_for_index() uses display_to_user() which
includes the Amp.

Insert position is still be wrong with the debug mode
ProcessorBox::show_all_processors == true, but that's not a regression.
2017-07-04 18:08:36 +02:00
Robin Gareus
2fdeb54b78 Always add plugins in the order given by the Manager UI. 2017-07-04 18:08:36 +02:00
Robin Gareus
e2d19d1668 Retain plugins order for copy/cut/paste + DnD #7416 2017-07-04 18:08:36 +02:00
Robin Gareus
496f83bf83 Allow ctrl-surfaces to show/hide plugin UIs. 2017-07-02 01:59:24 +02:00
Robin Gareus
3c6ab7aca3 Remove old API to keep track of plugin GUI widgets
This was superseded by WindowProxy and the ARDOUR::Processor
[set_]window_proxy() API
2017-07-01 23:41:25 +02:00
Thomas Brand
63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
Robin Gareus
c3c4efaa09 Use mnemonic-save API for menu-element texts 2017-06-29 00:22:42 +02:00
Robin Gareus
55df5b39bc Prepare removal of redundant get_user/set_user API. 2017-06-21 18:13:41 +02:00
Robin Gareus
789fcff1fe Fix crash when showing plugin-UI in safe-mode 2017-06-08 21:21:41 +02:00
Paul Davis
dc0139d4af use CoreSelection for track selection 2017-05-05 18:56:25 +01:00
Tim Mayberry
5b97b1a191 Use XMLNode::get/set_property API in ProcessorBox and ProcessorWindowProxy classes 2017-04-19 09:36:56 +10:00
Tim Mayberry
657e32290e Use XMLNode::get/set_property API in ProcessorBox class 2017-04-19 09:36:56 +10:00
Robin Gareus
a8858ad311 Fix toggle-processors: operate on plugins only 2017-04-14 00:53:45 +02:00
Robin Gareus
962e7a214a Revert "consistent use of context-menu popups"
This reverts commit b3722f7063.

In some cases ardour shows context-menu on right-mouse-button
release. In this case selecting a menu-entry should happen
with the left-mouse button (or any button?!)

Using ev->button is only correct if the menu is temporary and only
visible while the button is held, button release then activates the
menu-item.

This needs further work, in some cases allowing any button (0) to work
makes sense and overall consistency needs to be improved.
Different places use different strategies for context-menus which
don't always match the button used in the event-handler.

This is a hotfix (to make TAV context menus work again with left-click)
2017-03-24 14:48:46 +01:00
Robin Gareus
b3722f7063 consistent use of context-menu popups 2017-03-16 02:36:48 +01:00
Robin Gareus
96b3f8ec92 Don't automatically open generic UIs for plugins w/o controls 2017-03-01 17:17:27 +01:00
Robin Gareus
7330357e1c Reset window-size when switching between custom and generic plugin UI.
Both views have uncorrelated geometry, apply one size to the other
makes no sense and usually results in odd window sizes, particularly
for custom plugin UIs with aspect-ratio constraints.
2017-02-14 01:05:43 +01:00
Robin Gareus
c6a7c9417e Plug some mixer memory leaks 2017-01-20 13:53:45 +01:00
Robin Gareus
e07f465516 fix default output map display for no plugin processors
(eg. mono->stereo deliveries)
2016-11-25 13:03:25 +01:00
Robin Gareus
e6ff4d8455 Add tooltip info for inline-display 2016-10-18 23:40:14 +02:00
Robin Gareus
389cacab11 Processor box interaction:
Allow to toggle inline display with tertiary + double-click.
also fix tooltip and fix inconsistent modifiers on inline display.
2016-10-18 22:26:23 +02:00
Robin Gareus
a4ad0a90d1 GUI to allow aux-send feedback loops 2016-10-14 16:07:30 +02:00
Paul Davis
b339cde446 remove debug output from last commit 2016-08-21 21:44:33 -04:00
Paul Davis
ed5091d7ae editing plugin with generic GUI has a tooltip saying it uses the primary modifier. Make it so 2016-08-21 21:42:16 -04:00
Robin Gareus
ba815a903b add a ToDo note for after string-freeze 2016-07-24 13:33:09 +02:00
Robin Gareus
901f8caf22 add a plugin-death connection
at application exit, there may otherwise be a race condition,
queue draw could be scheduled for a widget that's no longer present.
2016-07-18 23:52:40 +02:00
Robin Gareus
a450024c56 add some strategic lua gc steps. 2016-07-18 23:52:40 +02:00
Julien "_FrnchFrgg_" RIVAUD
786cb746d0 Better choice for ports on external send creation
Ardour tried to make an educated guess at the initial number of outputs
for a new send. It used the channel configuration of the master bus, if
it existed, else the channel configuration of the route itself.

That guess is good in most cases, but in the case of a track/bus without
audio channels, creating a send with audio doesn't make sense. In that
case, also use the route outputs as a base for the send configuration.
2016-07-16 02:29:58 +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
c49ac91b01 add mouse interaction to inline display 2016-07-12 14:38:28 +02:00
Robin Gareus
412fcafda0 Plugin GUI activate/enable update (prefer enable) 2016-07-05 23:30:21 +02:00
Robin Gareus
08d7485e85 fix inline display when cairo_surface_has_snapshots 2016-07-02 23:36:34 +02:00
Robin Gareus
843b6b90b0 fix switching from generic to custom plugin UI 2016-06-05 23:55:08 +02:00
Paul Davis
301000c94e make new action to bind BackSpace to in processors box 2016-06-02 14:46:35 -04:00
Robin Gareus
cfee8ac852 fix UI wire display to not coalesce views for non-linear i/o. 2016-05-24 18:18:26 +02:00