Robin Gareus
a0b032efe2
Revert more "frame/sample" replacements
...
- Coverage concerns rectangles (frames, not sample)
- frame-handles are rectangles
- layout container boxes are frames
- inline display boxes are display_frame
2019-04-08 22:42:47 +02:00
Robin Gareus
1fa2d15a9d
Don't allow to cut/copy inserts via Drag/Drop
...
It was already verboten via ctrl-x/c/v since copying inserts using
the same I/O makes no sense, nor does moving them.
2019-03-28 01:51:50 +01:00
Robin Gareus
3bc9281c31
Fix some Gtk::Menu related memory leaks
...
A Gtk::manage()d widget will be deleted when its parent container
is destroyed. Top-level context menus are not inside a container and
hence need to be manually deallocated.
This adds explicit delete calls for menus where there is a
member variable reference to the Menu.
2019-03-07 23:50:32 +01:00
Robin Gareus
6be7fa2d45
Prefix an asterisk to indicate plugin replication
...
This saves space compared to "(NxN) ", especially with narrow
mixer-strips
2019-03-01 17:48:46 +01:00
Robin Gareus
6daba61ab2
Replicated plugin instances may or may not be mono
2019-03-01 17:43:44 +01:00
Paul Davis
1d8e533553
explicitly clear ProcessorEntries from ProcessorBox when the latter's Route is destroyed
2018-12-19 17:19:51 -05:00
Paul Davis
685c4f8955
change action group owner pointer to be the relevant keybindings; reorder setting keybindings value and defining actions
...
The reorder is required so that the value of "bindings" has been set and is meaningful
2018-12-11 05:06:26 -05:00
Paul Davis
5981b7f1b8
add nominal owners for all action groups
...
Note: this is not yet correct. The owner (pointer) values passed in are not yet usable
2018-12-10 18:44:05 -05:00
Paul Davis
fc83d044f8
use ActionManager namespace, rather than ActionMap objects, and remove all per-context action maps
2018-12-10 08:34:01 -05:00
Robin Gareus
245d48dbd0
NO-OP: Clarify function name
2018-11-28 15:16:25 +01:00
Robin Gareus
76f9764a44
Use central method to check for engine for processor operations
2018-11-28 00:02:57 +01:00
Robin Gareus
f150f6c074
Use central method to check for engine where required
...
These are generally places where tracks/busses are created or port
connections change.
2018-11-28 00:01:50 +01:00
Len Ovens
9b2612f686
Make foldback bus match foldback sends namewise
...
to avoid confusion with listener sends or monitor bus
2018-11-12 22:30:32 -08:00
Len Ovens
f27ca29d6c
Changed send/deliver role "Personal" to "Foldback" so bus type can match
2018-11-12 22:30:32 -08:00
Len Ovens
c04fc2efe2
Allow strips to add or remove personal sends
...
in processor box context menu
2018-11-01 17:43:35 -07:00
Len Ovens
06ffebca76
A listen route has no aux sends
2018-11-01 17:43:35 -07:00
Robin Gareus
a79fe23935
Allow to limit strip-inline controls (GUI optimization)
2018-10-31 23:44:04 +01:00
Robin Gareus
20fb871d5a
Processor-box control context menu update
2018-10-28 21:03:43 +01:00
Robin Gareus
ebcabf59da
Don't show hidden controls inline in the mixer-strip
2018-10-28 20:37:20 +01:00
Robin Gareus
fe4df1bee3
Prevent adding aux-sends to master or monitor
2018-10-03 18:16:42 +02:00
Johannes Mueller
f647ac7dae
Allow plugin inline displays to shrink
...
Plugin inline displays were forbidden to shrink as this might cause a deadlock
when the shrinkage causes the scrollbar to disappear.
display shrink → scrollbar unneeded → scrollbar disappears →
more horizontal space -> display grows -> scrollbar appears →
less horizontal space -> display shrink and so forth
This was formerly avoided by not allowing display shrinkage.
The solution proposed here sets the maximum height of the display to the
current height, if a scrollbar is present during resizing and has not been
present during the last resizing. So if this scrollbar disappears (after
resizing it might no longer be needed), the display would have the possibility
to grow, but it does not grow vertically as the maximum height is limited to
the current height.
2018-06-20 21:06:16 +02:00
Robin Gareus
dc88471695
Don't automatically open plugin-GUI if there are no controls
2018-01-30 12:40:22 +01:00
Robin Gareus
4c7664e3f8
Fix UI for Sends & Inserts (regression was in 0c59ba649e)
2017-12-16 16:53:05 +01:00
Robin Gareus
0c59ba649e
Save <UI> state for plugins only.
...
Only PluginInserts have UIs and PinMgs and unique IDs.
Other processors may not be saved explicitly, [re-]created
dynamically, change ID (eg. capturing processor) and clutter up
the list.
TODO: removing a processor should also remove its UI state.
2017-10-18 04:15:15 +02:00
Paul Davis
30b087ab3d
globally change all use of "frame" to refer to audio into "sample".
...
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
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