13
0
Commit Graph

16443 Commits

Author SHA1 Message Date
luzpaz
44a869732c Fix various typos
Found via `codespell`
2023-02-20 17:35:24 -07:00
9df3058cd8 Add Graphics Acceleration heading to prefs on macOS 2023-02-17 15:57:32 +01:00
2c7bfa9ead require use of BBT_Argument as both parameter and return type from most methods (GUI edition) 2023-02-15 16:02:56 -07:00
8f248bd0ba update C++ preferences metadata object 2023-02-14 10:15:18 -07:00
9107c6d70c lots more preferences metadata 2023-02-14 10:15:06 -07:00
3dd9b2c201 rationalize single call to TempoMap::use() in AudioClock::set_bbt() 2023-02-14 10:14:39 -07:00
72bc6ac43d some edits for preferences metadata 2023-02-14 10:13:26 -07:00
8a23015ffb Update Russian translation 2023-02-13 04:56:58 +03:00
b8c4034af5 Fix a user-visible typo 2023-02-13 03:05:38 +03:00
168344a3f9
Indicate sample-rate mismatch in the status-bar 2023-02-12 16:23:42 +01:00
adf1eb34fb
Fix drawing percussive hits (#9234)
* HitCreateDrag::start_grab does not need to do anything
  a hit cannot be past end of region. Drawing at or past
  the end of a region will create a new region (not an event)
* HitCreateDrag::finished now calculates the position like
  NoteCreateDrag::finished.
* the selection does not need to be cleared. Creating new
  notes/hits selectes the newly created ones.
2023-02-11 20:27:43 +01:00
f1d784afbb deep fix to the way automation control point drags are handled/computed
The old code could not snap to the grid, because it had a lot of confusion about pixels vs. time,
and between line-origin-relative time and absolute time
2023-02-10 11:11:51 -07:00
03b32cb4a0 remove unused "beats" variable and computation from Editor::metric_get_bbt() 2023-02-10 11:11:51 -07:00
907b0bbfa0
Fix time-stretch dialog clock
This broke in 45e21de209, the clock is not yet visible,
so the value has to be forced.
2023-02-09 00:35:27 +01:00
cd6d7a8074
Fix another -Wabsolute-value 2023-02-08 03:50:21 +01:00
ae66304194 missing API change from e883c39e7 2023-02-06 21:51:28 -07:00
fe64ab9d31 control point drag: set time domain to match the list being modified
Previously this used the editor's default time domain
2023-02-06 21:04:17 -07:00
c41de90abd drags: add API to set time domain of a drag
This can slightly improve efficiency of temporal computation
during the drag.
2023-02-06 21:04:17 -07:00
e883c39e7a control point drag: fix the way bounding-to-region is computed 2023-02-06 21:04:17 -07:00
2de76147d2 automation line: fix pos/distance confusion that misplaces dragged control points 2023-02-06 21:04:17 -07:00
3d96a318ac automation line: add dump() method to inspect GUI control points 2023-02-06 21:04:17 -07:00
8c6fa19bcf use C++11 auto iterator 2023-02-06 21:04:17 -07:00
12ad052d98
Fix another class/struct mismatch 2023-02-07 03:07:22 +01:00
65d5d8162f
Add missing includes to satisfy linter 2023-02-07 03:06:51 +01:00
48efbb4cc5
One drag at a time (#9217)
When a drag is already active, do not allow to start
another one. e.g. start a middle-click (fixed time drag),
then left-click.
2023-02-07 02:57:58 +01:00
2b64c4afe4
Allow to move edit-cursor and PH in dropzone (#9222) 2023-02-07 02:14:38 +01:00
8c561b19a6
DisplaySuspender is a struct (not a class) 2023-02-07 01:50:04 +01:00
e74cb666ed
Allow to set transparency to 100%
Despite what the docs say Gtk::HScale(0,1,s) with a step-size
s > 0 has a range [0, 1 - s]. GTKMM does allow for a step-size
of zero, which also works around this issue.
This works because gtkmm sidesteps gtk_hscale_new_with_range() which
would fail with g_return_val_if_fail (step != 0.0, NULL);

The reason for this is that gtkmm creates an Adjustment with a
page-size = step-size:

```
Adjustment* adjustment = manage(new Adjustment(min, min, max, step, 10 * step, step));
```
and `gtk_adjustment_configure` limits the range:
```
value = MIN (value, upper - page_size);
```
2023-02-06 01:27:24 +01:00
3cb1410318 update preferences metadata object 2023-02-05 12:25:04 -07:00
7c07c87088 add MIDI max note height to preferences GUI 2023-02-05 12:25:01 -07:00
a365a7ebf3 respond to MIDI max note height changes 2023-02-05 12:24:12 -07:00
2756be4b62 add an option to control the maximum MIDI note height (not yet GUI exposed) 2023-02-05 11:36:24 -07:00
0bce5d24de update preferences metadata object 2023-02-05 10:58:11 -07:00
38b3e88582 more preferences metadata 2023-02-05 10:57:47 -07:00
e446e4c501 more preferences metadata 2023-02-05 10:41:03 -07:00
3105dcfbbc
Tweak new-plugins-active tooltip 2023-02-05 16:07:52 +01:00
be1462357b
Expose preference to create sidechain ports by default 2023-02-05 16:07:13 +01:00
f035a0baed
Remove prefs-search test-code 2023-02-05 15:36:43 +01:00
3cb89b7c6e
List custom resampler quality settings in prefernces 2023-02-05 03:38:35 +01:00
cooltehno
b4169a0391
Update blueberry_milk-ardour.colors 2023-02-04 23:43:53 +01:00
380005f50f Update preference to set macOS render performance 2023-02-04 22:34:12 +01:00
c707b056af
Add some preference search tags 2023-02-04 06:58:02 +01:00
51e93399ba
Update vari-speed availability, depending on port-resampler 2023-02-04 03:21:27 +01:00
19b8069720
Add preference to set port-resampler-quality 2023-02-04 03:20:47 +01:00
5316ac38e7
Export Dialog: remove redundant calls 2023-02-04 00:24:19 +01:00
b421cd26bb
Export Dialog: correctly init export channels
The state has to be pushed to the manager during initialization,
otherwise channel_config remains unset.

This fixes an issue with files using the same filename
(missing channel name) during stem export.
2023-02-04 00:24:07 +01:00
14606ac655
Rec-stop only writes a pending (recovery) file (#9215)
This is consistent, since after handling the
`SaveSessionRequested` signal the session remains dirty
(which may be a bug). However since the signal is handled
by the GUI, rec-stop only saves the session if there is a GUI.

It is however somewhat dangerous. Record, quit + no-save (or
changing snapshots w/o saving first) will loose any references
to the recorded data (even though it is still on disk).

Note that "remove last capture" still saves the session
(to prevent references to non-existent sources).
2023-02-03 07:56:49 +01:00
160ed4d056 tweak generation process for preferences metadata and start adding some 2023-02-01 18:14:33 -07:00
1333f39621 searchable prefs: fix behavior after find failure 2023-02-01 18:10:56 -07:00
ee151ee36e fix track scrolling by using API to reset controls_layout, not doing it directly 2023-02-01 13:10:43 -07:00
138b25c0b0
Do not update devices when JACK is already running 2023-02-01 03:09:13 +01:00
b481590268 macOS: use openGL surface by default 2023-02-01 01:32:48 +01:00
91fc57b943
Update sample-rate mismatch dialogs to reflect resampling 2023-01-31 01:21:48 +01:00
dcf4377b47 configuration_metadata.cc should be manually generated whenever metadata changes, so just commit current version 2023-01-28 08:27:56 -07:00
233baeb521 add comments to preferences-metadata describing the file 2023-01-27 15:26:02 -07:00
ea4b47f86d avoid local prefs var map building 2023-01-27 15:13:27 -07:00
3af3f7d6ee UIConfiguration now "builds" all metadata 2023-01-27 15:13:27 -07:00
2d74669c7e waf rule to "compile" preference metadata into C++ 2023-01-27 15:13:27 -07:00
625c099fd0 remove debug output 2023-01-27 15:13:27 -07:00
13251dd571 add session prefs metadata 2023-01-27 15:13:27 -07:00
125421f686 new files for preference metadata handling 2023-01-27 15:13:27 -07:00
26c09e6de3 continued work on use of Metadata in various Configuration objects (GUI edition) 2023-01-27 15:13:27 -07:00
9d4a65e30d most of the code to set up RC preferences metadata
Needs a slight change in the metadata data type, API and search code
2023-01-27 15:13:27 -07:00
John Emmas
b6f9829b70 Not quite sure what's changed but there's suddenly a conflict between Gtk::frame and ArdourWidgets::frame 2023-01-25 10:48:17 +00:00
220c319bf0 make preferences search case-insensitive 2023-01-23 09:25:40 -07:00
0923d898d2 remove preference highlighting on focus out 2023-01-23 09:13:15 -07:00
cooltehno
5ec0665457 Update clear_gray-ardour.colors 2023-01-23 13:04:51 +03:00
cooltehno
bdf1c29e02 Update blueberry_milk-ardour.colors 2023-01-23 13:04:20 +03:00
bd82e2cc07 fix transparency when opaque MIDI region is edited 2023-01-22 17:41:43 -07:00
15434456d5 architecture and implementation for preferences searching
Metadata is only defined for a single region at this point, (much)
more to come.
2023-01-22 17:41:43 -07:00
09acd5f8b4 add new gtk style name for "shaded entry", used in web-style search entry 2023-01-22 17:41:43 -07:00
3b40289740 add new color name to all themes (to be used for preferences search) 2023-01-22 17:41:43 -07:00
46a8073ff2 extend ArdourWidgets::Frame to allow no-draw of frame
Associated: disambiguate Frame use where necessary.
2023-01-22 17:41:43 -07:00
d982507085 move match_search_strings() function from plugin utils to PBD 2023-01-22 17:41:43 -07:00
65317ef0e0 Prevent engine dialog from changing devices when the engine is running
This fixes an issue with excessive "sample rate mismatches" warnings
via device_changed -> set_in/output_device_name -> set_sample_rate
2023-01-22 20:45:29 +01:00
86d9bcf525 Remove direct use of audio-engine rate (2/2)
This is in preparation for sample-rate independence.
2023-01-22 20:07:40 +01:00
7e4bb2ff68 only when necessary, parse GTK/GDK command line arguments 2023-01-20 16:51:57 -07:00
02515c2176 Set "image surface" preference sensitivity 2023-01-21 00:35:43 +01:00
54c765ad2a Expose preference to use NSGLView on macOS 2023-01-20 21:54:11 +01:00
db63f8320e
Plugin Setup dropdown heuristics, limit dropdown entries
The Plugin Pin dialog still shows all options, which can
potentially be a very large dropdown. During initial setup
however, we only need the common "stereo" and "all", options.
2023-01-17 22:02:11 +01:00
b410ed992b
Consolidate code duplication 2023-01-17 22:02:10 +01:00
0063211b4e
Indicate plugin-busses in the plugin pin dialog 2023-01-17 22:02:10 +01:00
b8e9e67f78 tweak ::define_one_bar() API to allow correct undo/redo command name 2023-01-16 14:57:23 -07:00
db987cf046 fix deadlock in Editor::define_one_bar() 2023-01-16 14:57:23 -07:00
c44b40afd7
Indicate UTF8 literals - fixes glyph rendering with MSVC (2/2) 2023-01-16 21:41:22 +01:00
e5eafea128
Fix small memory leak
g_file_open_tmp() requires the caller to free the filename.
2023-01-16 05:11:49 +01:00
d1b72b28ec
NO-OP: remove unused code 2023-01-13 21:20:21 +01:00
Marijn Kruisselbrink
aa163b05ca
Fix some minor copy-paste errors in ardour_ui_dependents.cc 2023-01-12 11:08:56 -08:00
1ff5592731
Remove UI side grid limit
This concept from 2007 is no longer required Temporal::get_grid
already limits the number of grid-lines depending on the step
size (mod-bar, beat_div) and start/end positions.
2023-01-11 00:32:47 +01:00
d322cfabdc
Use same time-domain for all drag copied regions
When copying regions from multiple tracks, use the same
time domain for each region (depends on grid).

The primary region position is set the time-domain from
RegionMotionDrag::_last_position replacing the region's
prior time-domain. Other regions should follow suit and not
retain their time-domain.

Fixes: Enable snap-to-grid, select regions on multiple tracks,
ctrl+drag copy them.
2023-01-10 22:39:44 +01:00
9d46bbab7b
Add 1/4 note symbol to ArdourMono 2023-01-09 22:56:33 +01:00
16a476ee5f
Fix foldback bus duplication
signal_sources() can traverse upwards. e.g. when creating a
foldback send to the master-bus, everything that feeds the master
also feeds the foldback (even if there is no direct send).
2023-01-04 04:00:36 +01:00
Olivier HUMBERT
4cb67f83a7
Make some string translatable 2023-01-01 19:41:43 +01:00
Olivier HUMBERT
84640d4f7d
Update French translation 2023-01-01 19:36:11 +01:00
Marijn Kruisselbrink
7a4ddf5cce
Group system ports by common prefix.
Extra "other" ("External") ports were already being grouped by their
common prefix into bundles to better display ports coming from different
jack clients. This commit factors out that logic into a separate method
to also apply this logic to extra "system" ("Hardware") ports. This way
hardware ports from different devices/clients (for example when using
pipewire as jack backend) are grouped by device rather than all being
listed as one bundle.
2023-01-01 18:19:14 +01:00
345008bdfd
Ardour celebrates the arrival of 2023 2023-01-01 01:30:20 +01:00
0be3a509af
MIDI-Tracer: allow to directly trace physical ports 2022-12-31 03:09:24 +01:00
78ec9294e1
TempoDialog: MIDI port fixes
* hide TempoTap MIDI port
* fall back to port-name (without client name) if pretty-name
  is unset.
* use namespace
2022-12-31 02:53:12 +01:00
54e1827e79
Allow to tap-tempo using a MIDI keyboard 2022-12-31 00:07:09 +01:00
1ad22e9ce9
Make engine dialog non-resizable (remove resize workarounds) 2022-12-30 23:43:35 +01:00
b6a4a6a84f
Sort simple-export range-list by range start-time. 2022-12-30 16:21:59 +01:00
42abd51e40
Ardour on Linux requires libX11 regardless of lxVST
The requirement is due to XResetScreenSaver
2022-12-28 20:04:17 +01:00
a4d9fb4935
Fix saving favorite plugin order
This broke in 7942897d93. Clearing the list triggered
favorite_plugins_deleted() for each plugin. This resulted
in an empty list being saved to disk.
2022-12-27 16:53:01 +01:00
b0b20ed1ed
There are only 6 user visible columns 2022-12-27 16:35:20 +01:00
b458eee160
Plugin Selector: allow to sort by Name
Previously the first 2 columns were Fav/Hide radio options.
Now there is only a boolean Favorite checkbox.
2022-12-27 16:32:47 +01:00
a5378e559a dsp_stats: aesthetic tweaks to text and padding 2022-12-26 07:53:34 -06:00
d5160b6e8c export_dialog: use more sensible padding around the preset widgets 2022-12-26 07:53:34 -06:00
Olivier HUMBERT
9c0fb6e49a
Update French translation 2022-12-26 11:51:16 +01:00
037de53c3f bbt_marker_dialog: improve layout + spacings 2022-12-21 19:22:29 -06:00
e2d265c018 tempo edit: use ::replace_tempo() instead of ::set_tempo() after dialog 2022-12-20 21:56:37 -07:00
253419a321 tempo marker drag: update GUI during drag 2022-12-20 21:54:59 -07:00
ed7e0a4166 snap: add missing break statements. oops! 2022-12-20 21:54:35 -07:00
e32d4f7b71 try to get BBTRulerDrag to work on all platforms 2022-12-19 15:03:57 -07:00
b48821887d restore primary-drag in BBT ruler function 2022-12-19 13:35:27 -07:00
90ae38e353 note create drag: tweak to fix dragging when snap is not bars 2022-12-19 12:19:05 -07:00
615aff92d7 note create drags: work better if snapping to bars 2022-12-19 12:19:05 -07:00
509d762cdd editor: fix snap_to_bbt() to do something closer to right for bars
At the very least, snapping to bars should be different from snapping to beats.
2022-12-19 12:19:05 -07:00
6725e8b661
GTK treeview: click to DnD (not edit), specialize per column 2022-12-19 15:21:24 +01:00
bd3f713d0e
Fix gain menu (polarity, envelope) with multiple selection 2022-12-17 19:13:26 +01:00
0f949bc02b
Add region polarity invert to Region menu 2022-12-17 13:15:42 +01:00
9819cdb117
GUI support for per region polarity invert 2022-12-17 13:15:37 +01:00
24ed994d02 redirect box: add a Reset action to the Presets submenu 2022-12-16 15:36:27 -06:00
483047635c Rec page: implement Undo actions and shortcuts
* undo is not (currently) a Global action, it's an Editor action
* ... but we want the ability to undo a recording

One option would be to chagne Undo to a Global action, which would have a
 sizable impact on code and existing shortcuts.

Instead I'm choosing to implement a Rec-page-specific Undo action & shortcut

It's conceivable that someday we would want the Recorder page to ONLY undo
 record operations, and the Mixer page to ONLY undo mixer operations, or
 something like that.  This lays the foundation for that.
2022-12-16 13:18:37 -06:00
10ef8535c7 Import dialog: tweak layout
* labels on the left, following conventions we use in Prefs et-al
* separate colums for Global, MIDI, Audio  settings
2022-12-16 13:18:37 -06:00
224f7bb263
Set imported regions to be opaque by default 2022-12-14 16:10:22 +01:00
6187556498
Opaque regions are supposed to be opaque 2022-12-13 01:35:28 +01:00
0b07e1b26a avoid crash during multi-region bounce 2022-12-12 16:21:31 -07:00
f8469a49ed fix compilation 2022-12-12 10:20:02 -07:00
06dfba2677 SessionDialog: do not invoke idle callbacks from response
This dialog is queued for idle delete by both StartupFSM and
ArdourUI. The deletion cannot be allowed to happen during
a response handler
2022-12-12 10:17:05 -07:00
095b84080a ArdourDialog: API to prevent idle callbacks during response handling 2022-12-12 10:15:55 -07:00
62bfd34ba8 fix mistake in f4827b470b 2022-12-12 08:17:53 -07:00
Edgar Aichinger
d92342fc90
update german translation 2022-12-12 11:42:39 +01:00
f4827b470b fix unnecessary error messages from time info box 2022-12-11 20:41:20 -07:00
jujudusud
723428e697 Some more FR translations 2022-12-11 16:04:36 -07:00
jujudusud
6d3847dfcb Espace disque -> : 2022-12-11 16:04:36 -07:00
jujudusud
33ff6d71cf Auto-Input -> Entrée-auto 2022-12-11 16:04:36 -07:00
jujudusud
ebd9782639 Some more fr translations 2022-12-11 16:04:36 -07:00
jujudusud
76ab489c0e Menu Greffons / plugins 2022-12-11 16:04:36 -07:00
jujudusud
6d3359bb3c Menu Apparence / Appearance 2022-12-11 16:04:36 -07:00
Olivier HUMBERT
b24da7ec3b Some more French update
Quelques traductions en français en + @jujudusud
2022-12-11 16:04:36 -07:00
jujudusud
5a8bc3a0b2 more fr translation 2022-12-11 16:04:36 -07:00
jujudusud
69d3fbab6a more fr translation 2022-12-11 16:04:36 -07:00
jujudusud
dbc89368e8 more fr translation 2022-12-11 16:04:36 -07:00
jujudusud
fca80697e8 more fr translation 2022-12-11 16:04:36 -07:00
jujudusud
a99d4de847 more translations for fr 2022-12-11 16:04:36 -07:00
jujudusud
9cbb78bee4 marqueur BBT et coquilles 2022-12-11 16:04:36 -07:00
jujudusud
bf86d08e21 cliché - snapshot 2022-12-11 16:04:36 -07:00
jujudusud
f3e2b65ffd signature rythmique - time signature 2022-12-11 16:04:36 -07:00
jujudusud
5271667d87 more fr translation 2022-12-11 16:04:36 -07:00
jujudusud
ef96061cb5 more fr translation 2022-12-11 16:04:36 -07:00
jujudusud
46f1aa87cb more fr translation 2022-12-11 16:04:36 -07:00
Olivier HUMBERT
1e71212e46 relecture de la traduction
- suppression de sauvegardes (à présent inutiles) de traductions passées
- ponctuations
- corrections diverses
2022-12-11 16:04:36 -07:00
jujudusud
d8372ccf5b more fr translations 2022-12-11 16:04:36 -07:00
jujudusud
5797cc2fce more fr translations 2022-12-11 16:04:36 -07:00
jujudusud
a74fba8c35 more fr translations 2022-12-11 16:04:36 -07:00
jujudusud
6f44786976 more fr translations 2022-12-11 16:04:36 -07:00
jujudusud
f906f854e0 more fr translations 2022-12-11 16:04:36 -07:00
jujudusud
b07fdba37d update selection 2022-12-11 16:04:36 -07:00
jujudusud
5daf4bbe3b update french translators 2022-12-11 16:04:36 -07:00
jujudusud
0560181e5b some more fr translation 2022-12-11 16:04:36 -07:00
sub26nico
af85c09d3e Update fr.po 2022-12-11 16:04:36 -07:00
jujudusud
1a9c205361 updating po files with new french translator 2022-12-11 16:04:35 -07:00
jujudusud
6b0a43af0a add sub26nico as translator 2022-12-11 16:04:35 -07:00
jujudusud
06963d6d39 update fr translation for ardour 7 2022-12-11 16:04:35 -07:00
sub26nico
f66880463c Update fr.po 2022-12-11 16:04:35 -07:00
jujudusud
f73fa81d34 update fr translation to ardour 7 2022-12-11 16:04:35 -07:00
6006e25c88 Update Russian translation 2022-12-12 00:58:51 +03:00
483ca4e19d
MIDI tracer: disable trace when window is closed
This fixes a bug with some MIDI port constantly tracing,
because trace_parser is never unset.
2022-12-11 13:13:02 +01:00
5637e811f9
MIDI Tracer connects to ports, remove unused tracer port 2022-12-11 12:53:57 +01:00
5e9e21911c corrections for methods that move playhead to region boundaries
1. "not found" is now indicated by a timepos_t::max() value, not a negative one.
2. if the direction to search is negative we should decrement (when possible)
before searching, to avoid finding the current position.
2022-12-10 18:13:48 -07:00
d62cba8ba5
Add tooltip for mixer-strip color/number label 2022-12-10 22:22:31 +01:00
dc74decdf7 remove luminance changes from ARDOUR_UI_UTILS::unique_palette_color() 2022-12-10 13:45:07 -07:00
6ed1402812 use ItemChangeBlocker to improve performance of RegionView::remove_silent_frames() 2022-12-10 13:40:06 -07:00
8237a8115c cleanup unused variables in Editor ruler display code 2022-12-10 10:48:59 -07:00
303f838a53 define new actions for stopping triggers/slots 2022-12-10 10:33:39 -07:00
4fdd8646b4 fix positioning of regions during multiduplicate or fill track operations 2022-12-10 09:43:43 -07:00
425f84493b fix display of selection end point and duration (again!) 2022-12-10 09:43:43 -07:00
cb2f08f50c
Consistent ruler area colors
This fixes a special case of the loop/punch ruler, which
only had effect on session-reload due to a copy/edit bug
(canvas_transport_marker_bar_event used "range marker bar")
2022-12-10 15:14:39 +01:00
eb42318d3e
Consolidate ruler prelight events
This fixes various copy/edit bugs (e.g. transport ruler uses
"range marker bar" colors, but only after a enter/leave event).
2022-12-10 15:14:29 +01:00
3875468935
Remove unused "opaque region base" from themes 2022-12-10 02:37:05 +01:00
516bf1fa17
Set "opaque region base" alpha to 1.0 2022-12-10 02:37:05 +01:00
a0d36a03b4
Tweak ARV waveform colors to match new transparency model 2022-12-10 02:37:05 +01:00
fc53754055
Remove "midi frame base" from themes 2022-12-10 02:37:05 +01:00
3442500002
Remove "midi frame base", consistent TAV color (1/2) 2022-12-10 02:37:05 +01:00
0bb81a9a18
Do not shade transparent regions in Layered mode
There already is a shaded coverage frame indicating
if a layer is audible. This leads to a more consistent view.

In addition changing layered mode now has to update the
colors (set_frame_color).
2022-12-10 02:37:05 +01:00
6c524b3f3b
Use a dedicated Canvas Group for ARV 2022-12-10 02:37:05 +01:00
f003bee985
Use a dedicated Canvas Group for MRV
This fixes rendering of opaque MIDI regions (previously
MIDI regions were always transparent). This change provides a
way to "flatten" layered MIDI regions, while still allowing
to show the note-line and grid behind the regions.
2022-12-10 02:37:05 +01:00
1efa5e9a55
Prepare themes for region/grid transparency 2022-12-10 02:37:05 +01:00
dcf981fe07
Remove remnants from AudioMidi Tracks
This fixes meter faceplace background color when adding
a MIDI port to an audio track.
2022-12-10 02:36:46 +01:00
b2fddeb43d
Add named ranges to quick export dialog 2022-12-09 19:22:59 +01:00
74f95ff0dd when use stripable palette colors, use them sequentially
Also break this code out into a separate method
2022-12-08 10:52:57 -07:00
cd4b6e85a8 pick route colors from the color palette (with random variation) #9115 2022-12-07 21:27:51 -07:00
ea50799ce2 Remove duplicate implementation
`bool cocoa_open_url (const char*)` is implemented in 
libs/pbd/cocoa_open_uri.mm
2022-12-08 01:32:41 +01:00
b9f9531fa1 duration clocks: fix display when mode is changed 2022-12-07 12:11:31 -07:00
ad9757e73c fix nudge/duration clocks when scrolling in BBT mode 2022-12-07 11:13:49 -07:00
9f85a0aaba fix behavior of duration clocks when scrolling in all modes except BBT 2022-12-07 11:13:49 -07:00
313f7ad344
Use new API to compare export format/spec 2022-12-07 17:57:56 +01:00
0abbe651ea
Remove debug output 2022-12-07 00:28:21 +01:00
f37687a985 various fixes for AudioClock duration/!duration confusion 2022-12-06 11:11:08 -07:00
7850628f6f fix manual drawing of MIDI automation (avoid offset) #9142
Change assumption that the "pos" argument to AutomationRegionView::add_automation_event is region-relative, by
making it global.

This did not affect non-MIDI automation because that used
AutomationTimeAxisView::add_automation_view() instead.
2022-12-06 11:11:08 -07:00
32b6db092c
NO-OP: whitespace and comment 2022-12-06 17:30:59 +01:00
e7b0df0231
Export Format Dialog: constrain sample-rates 2022-12-06 06:35:47 +01:00
4acc458a78
GUI support for OPUS encoding 2022-12-05 23:43:50 +01:00
8a7684bd2f
Use 1|1|0 for new BBT markers, always use dialog for new markers
Amend b972301a3b
2022-12-05 19:18:26 +01:00
2bca6395cc
Attempted fix for idle_drop_window random crashes (1/2) 2022-12-03 19:27:45 +01:00
b972301a3b
Add action to noninteractively add BBT marker at playhead 2022-12-02 21:31:56 +01:00
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
899cacdf86
Delete/BackSpc clears selected trigger-clos 2022-12-02 19:19:20 +01:00
5d42509a21
Report error to user in startupFSM
StartupFSM does not catch SessionException from Session::load_state,
but bails out early, after checking `get_info_from_path` instead.
So we have to explicitly report errors.
2022-11-29 20:03:44 +01:00
c312d570f4 move twist-tempo drag from tempo ruler to BBT ruler
Behavior remains unchanged, just the location/ruler for the start of the drag.
2022-11-29 10:09:39 -07:00
cd86521c65 rulers: improve labelling of non-quarter note beats in tempo ruler 2022-11-29 10:09:39 -07:00
8b06eb9878 editor rulers: do not try to generate "fill" ticks/lines for the grid
We now generate a grid from the TempoMap of appropriate "density". Doing this
in the editor just gets things wrong (and partially duplicates the (complex)
logic already present in the TempoMap).
2022-11-29 10:09:39 -07:00
148dfdd23c editor tempodisplay: use new TempoMap::get_grid() argument to get a finer grid 2022-11-29 10:09:39 -07:00
f2a725b311 NO-OP: add some explanatory comments to Editor::snap_to_bbt() 2022-11-29 10:09:39 -07:00
21c6c723c4 differentiate between StartupFSM::{Exit,Quit}Program
QuitProgram is a user choice, ExitProgram is an error condition
2022-11-29 10:09:39 -07:00
c19f3f07b0 on macOS, try to fix weird language preference handling
If the user has en_XX, consider that as untranslated english EXCEPT for en_GB
2022-11-29 10:09:39 -07:00
abf92e42c0
Do not explicitly copy [whole-file] Region
Playlist::add_region copies regions as needed (see 8d045e15dc),
without forking the Source.

This fixes an issue when importing MIDI files. When
midi-copy-is-fork is enabled (enabled by default), the
RegionFactory::create call used during import forked the
region. This resulted in two Sources being created for each
imported MIDI file.
2022-11-27 13:09:52 +01:00
Gon Solo
b7aa98ee0c /float*/std::vector/ in fft_result. 2022-11-26 12:29:23 +01:00
f98a14ed13 more debug output regarding macOS language preferences and translation 2022-11-23 08:08:00 -07:00
264140c191 do not label ticks generated to fill space between ::get_grid() results 2022-11-22 18:09:46 -07:00
6af9dffa7c
Remove UI code to import markers as locations (3/4) 2022-11-22 01:46:22 +01:00
4e77bbdd96
dd import_markers option (2/4) 2022-11-22 01:45:42 +01:00
8468607a37 be (more) professional 2022-11-19 22:25:03 -07:00
d757fd5506 print XML errors to stderr not just the error stream 2022-11-19 21:30:27 -07:00
fd78ea90b8 if the startupFSM detects a fatal error during startup, at least tell the user 2022-11-19 21:30:27 -07:00
Mads Kiilerich
88d4145b02 AudioClock: drop other unused stuff 2022-11-20 02:31:24 +01:00
Mads Kiilerich
6ae1f44c17 AudioClock: drop unused _edit_by_click_field 2022-11-20 02:31:24 +01:00
Mads Kiilerich
e16dd3866c AudioClock: drop unused set_mode noemit parameter 2022-11-20 02:31:24 +01:00
Mads Kiilerich
1e77814c62 MainClock: drop 'primary' parameter
The main clock no longer use direct access to the config system, and
is no longer restricted to know whether it is primary clock or not.
2022-11-20 02:31:22 +01:00
Mads Kiilerich
c805ff5fdf MainClock: introduce change_display_delta_mode signal
Avoid MainClock directly telling the config system which of the
MainClock instances was requested changed through the menu.
2022-11-20 02:29:33 +01:00
Mads Kiilerich
38d7d28b25 MainClock: introduce actual set_display_delta_mode
Make MainClock more self-contained and generic by moving logic from the
Config system and to the class itself, while making the class less aware
of how it is used in the config system.

It is slightly dirty to store the initial AudioClock widget name in
MainClock, but less dirty than having to pass the whole name correctly
every time the delta mode changes.

Also avoid confusing use of 'mode', which in AudioClock is used for the
units/formatting of the clock.
2022-11-20 02:12:40 +01:00
Mads Kiilerich
75f6b8fb66 MainClock: rename fake setter to change_display_delta_mode
We would like to introduce an actual setter, but the most appropriate
name for it was used by something else: the high level callback invoked
when selecting the menu item.
2022-11-20 02:12:40 +01:00
Mads Kiilerich
8f5b7aff3a MainClock: drop absolute_time as an alias for last_when 2022-11-20 02:12:40 +01:00
1314987f8b
Towards theme-able, scale-able step-entry
* use UTF-8 music symbols for both
  - note length
  - dynamics (velocity)
This allows for both color theming as well as scaling. Previously
fixed size, black icons were used.

* directly rely on ActionManager actions for radio actions
This simplifies code and removes ambiguities.

* hide Bank/Patch buttons. Those actions are not implemented
2022-11-20 02:01:12 +01:00
05b8df6da9
Item::grab_focus was a NO-OP (see 34e7c2ffc5) 2022-11-19 22:02:21 +01:00
f71996a985 fix spelling error 2022-11-19 10:22:16 -07:00
crshrprt
a23f536baf Update alert:cyan and widget:ruddy to Teal #9 2022-11-19 10:22:16 -07:00
2a9835d475
Remove cruft from diehard theme 2022-11-19 18:14:14 +01:00
2d1900b88f
Fix VU meter color in some themes #9090 2022-11-19 18:13:54 +01:00
d521c2ede6
src-tree cleanup: separate surfaces from libraries
libardourcp and now libardour_midisurface are not control
surfaces, but helper libraries for those.
They need to be deployed to the library folder (shared between
ctrl surfaces) and not scanned as ctrl surfaces at runtime.
2022-11-19 00:09:17 +01:00
44796e6702 redesign and reimplement save/restore of MIDI learn for triggers (GUI edition) 2022-11-18 14:04:59 -07:00
Mads Kiilerich
728e463d01 AudioClock: make last_when public and use it instead of current_time
Having current_time as a public alias of the private last_when did not
add any clarity to the abstraction of last_time. A small step, but still
room for improvement.
2022-11-17 18:04:08 +01:00
Mads Kiilerich
498dac3bc8 AudioClock: fix function name in error message 2022-11-17 18:04:08 +01:00
Mads Kiilerich
96d98ba320 AudioClock: drop unnecessary qualification of set_duration
This setter is not virtual.
2022-11-17 18:04:08 +01:00
Mads Kiilerich
e77965f4e6 AudioClock: drop unused force parameter for private setters 2022-11-17 18:04:08 +01:00
Mads Kiilerich
acf803d310 AudioClock: drop unused ModeChanged and is_transient
Clock settings are now retrieved using the clocks vector.
2022-11-17 18:04:08 +01:00
Mads Kiilerich
8c74099e80 AudioClock: drop unused offset
Recent refactorigns made it dead code. Kill it, even though it seems on
track to something useful ...
2022-11-17 18:04:08 +01:00
Mads Kiilerich
1ca64eb8c1 AudioClock: avoid sscanf to fixed length buffer
Ignored strings were scanned to a buffer that potentially could
overflow. There might be hidden invariants that make actual overflow
impossible, but that seems like a fragile defense.

Instead, just *really* ignore them.
2022-11-17 18:04:08 +01:00
8362e865ee save trigger custom MIDI learn as a binding map 2022-11-16 18:15:55 -07:00
93adb3fe1f bindings and actions for trigger stuff owned by trigger page 2022-11-16 14:15:34 -07:00