Paul Davis
801099e057
use Gtkmm2ext::BindingSet for the GUI
2025-03-10 18:49:02 -06:00
Paul Davis
93225114d4
improve visibility management of clip property/editing displays
2025-02-09 10:41:21 -07:00
Robin Gareus
000c25edcc
Update gtkmm -> ytkmm header location (omnibus commit)
2025-02-01 15:25:14 +01:00
Robin Gareus
8e444ba45d
Correctly set sidebar tab selection for new users
2025-01-29 01:45:43 +01:00
Robin Gareus
41a591ad49
Restore Trigger Page sidebar tab on session load
2025-01-29 00:31:41 +01:00
Robin Gareus
6e5d48b7ff
Use meta-button for trigger-page sidebar notebook tabs
...
This reverts and replaces commit 82993157e5 .
2025-01-28 22:52:00 +01:00
Paul Davis
42bbd1afd5
wrap pianoroll in an event box so we can get events from "the whole thing"
2025-01-22 18:20:25 -07:00
Robin Gareus
82993157e5
Revert "Use dropdown instead of trigger-page sidebar notebook tabs"
...
This reverts commit e7ac13a834 .
2025-01-22 19:18:35 +01:00
Paul Davis
89c6c46f65
fix a few issues following the pianoroll renaming
2025-01-07 12:58:54 -07:00
Paul Davis
5635144e42
initial rename of MidiCueEditor -> Pianoroll
2025-01-07 11:30:26 -07:00
Robin Gareus
e7ac13a834
Use dropdown instead of trigger-page sidebar notebook tabs
2025-01-06 22:53:54 +01:00
Robin Gareus
72d03fb9a4
Vertically line up cues with trigger slots
2024-12-03 18:03:20 +01:00
Robin Gareus
940e1bc2df
NO-OP: rename layout widgets for clarity
2024-11-20 18:56:20 +01:00
Robin Gareus
1c5117444f
Replace custom TriggerUI pane with Tabbable pane
2024-11-16 19:31:28 +01:00
Robin Gareus
0b933127e9
Use new Tabbable API
2024-11-15 04:40:39 +01:00
Robin Gareus
19fc6e831b
Fix missing calls to SessionHandlePtr::session_going_away()
...
Explicit calls to set_session(0) will disconnect the
callback to session_going_away(). So don't do that.
2024-11-10 23:27:36 +01:00
Ben Loftis
983236f348
implement focus_on_clock for each tabbable
2024-11-10 23:27:35 +01:00
Ben Loftis
9a03fa59b1
store and recall the sidebar List visibility on the trigger page
2024-11-10 23:27:35 +01:00
Ben Loftis
8f183e26ee
Use tabbable visibility functions on all pages
2024-11-10 23:27:35 +01:00
Ben Loftis
4b1e09f810
Pack Pages using Tabbable constructs
2024-11-10 23:27:35 +01:00
Ben Loftis
1b18c3e76c
Use Transport Bar in top-level pages
2024-11-10 23:27:34 +01:00
Robin Gareus
b2e4dd91b9
Update Tabbable c'tor to allow member as top-level widget
...
Derived classes cannot use `Tabbable (_content_vbox,..)`
`_content_vbox` is a member of Tabbable (which has not
yet been initialized) at the point of construction.
This breaks internal API, hence the omnibus commit
2024-11-10 23:27:34 +01:00
Paul Davis
e11caf2dea
various changes to get MIDI clip recording to display the post-capture region
2024-10-22 14:49:50 -06:00
Robin Gareus
74c4ca3e52
Reduce reliance on boost - the hard part
...
the rest from `tools/convert_boost.sh`.
* replace boost::function, boost::bind with std::function and std::bind.
This required some manual fixes, notably std::placeholders,
some static_casts<>, and boost::function::clear -> = {}.
2024-10-19 03:47:21 +02:00
Paul Davis
70b41d10b1
actally stop doing clip recording visual stuff when disarmed (gui)
2024-10-18 09:50:48 -06:00
Paul Davis
229506147a
playhead for MIDI clip editor during playback (first steps)
2024-10-17 15:06:33 -06:00
Paul Davis
e390c2c3dd
trigger page should respond to rec-enable changes
2024-10-17 07:44:33 -06:00
Paul Davis
d7e85de7c2
first somewhat version of show-clip-capture MIDI notes as they arrive
2024-10-17 07:44:33 -06:00
Paul Davis
35f16f1bb6
preparations for clip data display (MIDI) while recording (GUI edition)
2024-10-17 07:44:33 -06:00
Paul Davis
1961a9207c
provide a better method to decide if a trigger(slot) is occupied
...
This is necessary with clip recording because for some short time after recording,
a trigger may be playable despite not yet having a region.
GUI edition.
2024-10-17 07:44:32 -06:00
Paul Davis
ee305a7169
catch up on TriggerReference API changes in GUI
2024-10-17 07:44:31 -06:00
Paul Davis
69871e0021
trigger page: use a VPane so we can enlarge the cue editor if desired
...
Plus fixup to get MIDI notes redrawn as pane is resized
2024-10-17 07:44:31 -06:00
Paul Davis
fcfa4fecb4
more preparation for MIDI cue editing to propagate to the slot (trigger)
2024-10-17 07:44:30 -06:00
Paul Davis
0d01e73b86
some state mgmt for EditingContexts
2024-10-17 07:44:30 -06:00
Paul Davis
fcf5bb88d5
cue editor/piano roll: starting to get mode buttons working and keybindings too
2024-10-17 07:44:30 -06:00
Paul Davis
e3205bded0
do something to make MIDI bindings accessible in any EditingContext
2024-10-17 07:44:29 -06:00
Paul Davis
182a24751b
get standalone MidiView to display notes
...
This also removes an unused TriggerBoxWidget from each regular
MixerStrip.
2024-10-17 07:44:29 -06:00
Paul Davis
2b997343a4
first working visual evidence of MIDI display/editing on cue page
2024-10-17 07:44:29 -06:00
Paul Davis
204d4237f8
further steps towards MidiRegionView outside the Editor
2024-10-17 07:44:29 -06:00
Paul Davis
6149771910
fix yet more cases where SMF are imported and named incorrectly
2024-10-15 22:35:04 -06: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
303f838a53
define new actions for stopping triggers/slots
2022-12-10 10:33:39 -07:00
Robin Gareus
d808315e2a
Offer dedicated alternatives for Delete/Backspace
...
This follows Processor Box:
<Binding key="Delete" action="ProcessorMenu/delete"/>
<Binding key="BackSpace" action="ProcessorMenu/backspace"/>
2022-12-02 19:50:39 +01:00
Robin Gareus
899cacdf86
Delete/BackSpc clears selected trigger-clos
2022-12-02 19:19:20 +01:00
Paul Davis
93adb3fe1f
bindings and actions for trigger stuff owned by trigger page
2022-11-16 14:15:34 -07:00
Paul Davis
0c2176dd71
move default_triggers_per_box into a namespace ; change value for Ardour to 16 (GUI edition)
2022-10-04 19:55:15 -06:00
Robin Gareus
07dea50456
Fix DnD import to grouped tracks
...
Import via Drag/Drop previously worked by selecting a track,
and then importing to the selected track.
This approach fails when the selected track is in a track-group,
and selecting the track also selects other tracks of different type.
Now the track to drop onto is passed directly passed through to
::finish_bringing_in_material as existing_track.
2022-09-30 21:30:48 +02:00
Mads Kiilerich
7f649efd42
gtkmm: use set_can_focus() instead of deprecated Gtk::Widget::set_flags(CAN_FOCUS)
2022-04-08 21:11:06 +02:00
Mads Kiilerich
d52c727ec5
gtkmm: use get_mapped instead of deprecated Gtk::Widget::is_mapped()
2022-04-08 20:20:10 +02:00
Paul Davis
ca22ba77e1
Constification: make Stateful::get_state() const, with all other required const-ness added (GUI)
2022-04-06 21:56:59 -06:00