13
0
Commit Graph

11617 Commits

Author SHA1 Message Date
e6d2eef929 Remove LocaleGuards from VideoTimeLine class
float <=> string conversion is done using PBD::string_to/to_string() via
XMLNode::get/set_property so the LocaleGuards are no longer necessary
2017-06-22 10:48:38 +10:00
4e31157ef4 Remove LocaleGuard from VideoUtils::video_query_info
PBD::string_to is now used for float <=> string conversions so a LocaleGuard is
no longer necessary.
2017-06-22 10:48:38 +10:00
f3d622f6f9 Remove LocaleGuards from UIConfiguration class
all float <=> string conversions are done via PBD::to_string/string_to. Either
via XMLNode::get/set_property or directly in HSV and SVAModifier classes
2017-06-22 10:48:38 +10:00
85732a66e3 Remove LocaleGuard from MixerUI class
The float <=> string conversions that this guard was protecting are now using
PBD::to_string/string_to() via XMLNode::get/set_property()
2017-06-22 10:48:38 +10:00
4e385b44a6 Remove LocaleGuards from LuaInstance state methods
There are no float <=> string conversions in these methods and g_base64_encode
etc functions are not affected by locale.
2017-06-22 10:48:38 +10:00
cec97e2a84 Remove LocaleGuards from ExportVideoDialog class
All float <=> string conversion is now done using PBD::to_string/string_to()
via XMLNode::get/set_property()
2017-06-22 10:48:38 +10:00
2b0adc8f75 Remove LocaleGuards from Editor class
All float <=> string conversions are now done using locale independent
PBD::to_string/string_to() via XMLNode::get/set_property
2017-06-22 10:48:38 +10:00
55df5b39bc Prepare removal of redundant get_user/set_user API. 2017-06-21 18:13:41 +02:00
8cd8cb1650 Temporary session-format compatibility (revert before release)
Saving the new ControlList interpolation methods (enum) breaks loading
the session in older version. The session-format version will
need to be increased.

Until then:
 * Fader automation + region gain envelope uses linear fades
 * The automation-line visible in the GUI does not match the actual fade
   (the y-axis is log/exp-scale, the fade is linear)
 * Adding new points on the line is not using the correct initial value
 * Custom changes of interpolation mode are not available

Neither of these issues is a regression.
2017-06-21 18:13:36 +02:00
df6655ac68 Add interpolation-mode menu to ATAV. 2017-06-21 18:13:06 +02:00
fd36355e2c Log-scale/relative automation point dragging 2017-06-21 18:13:03 +02:00
1db9ce4c90 update GUI to use new APIs 2017-06-21 18:13:01 +02:00
555fcb89e5 GUI: prepare for API changes
remove use of
- unbound_min/max
- list->default_value and min/max_y
2017-06-21 18:12:16 +02:00
567c0a8f53 Switch to PBD control-math and prefer Controllable API
Note: Control-surfaces should always use interface_to_internal()
and internal_to_interface().
2017-06-21 18:12:04 +02:00
7c94499aec Remove Cruft -- AutomationStyle never did anything.
Trim automation is planned via SlavableAC as normal AutomationMode.
Some of this code have a revival (a special "Trim+Preview" state
before merging Automation but that has to be more general than Pan & Gain.
2017-06-21 13:16:27 +02:00
973d58e8f9 Add option add automation-lane points on the line -- #7397 2017-06-18 22:13:02 +02:00
Hiroki Inagaki
c0611fb55e Update Japanese translation, including a fix for an issue that translation for a certain string leads failure to launch the application on Windows 10 2017-06-17 22:15:41 +02:00
506b478fe7 NO-OP, just cleanup & scope 2017-06-17 18:29:26 +02:00
fec5aec9a0 Fix TrackView selection after re-order.
because reordering a TreeView [pragmatically] does not retain selection.
2017-06-17 18:29:23 +02:00
ea1669aa00 Remove delayed selection which causes duplicate selection actifacts.
The first click to select a new stripable may actually un-select strip.
counting and ignoring this leads to strange behavior.
Also when the selection_counter hit zero, VCAs were not ignored.

whatever this workaround was good for, it's more trouble than it's worth.
As side-effect this also improves DnD + Gtk::Entry behavior with stock GTK.
2017-06-17 18:29:19 +02:00
cfe63b7b15 Simplify route-display TreeView.
There's no TargetEntry receiver for the custom DnDTreeView<Route> object.
We can just use a default Gtk::TreeView.
2017-06-17 18:29:15 +02:00
af2ee3c856 Don't de-select tracks when order changes 2017-06-17 16:14:28 +02:00
8fa60eaf05 Ignore Selection::set() without actual changes 2017-06-17 16:11:24 +02:00
f77540120c Remove Cruft 2017-06-17 15:52:03 +02:00
1e97c09eed Fix adding tracks/busses at the top 2017-06-17 04:37:10 +02:00
237aa3e3a0 Remove Cruft 2017-06-17 04:36:55 +02:00
d88da33949 NO-OP: whitespace 2017-06-17 04:36:50 +02:00
1d28665f86 Use Stripable::Sorter in GUI consistently. 2017-06-17 04:36:39 +02:00
921bdd4a51 Fix engine-state history.
Remove old code to remove duplicate engine state which was used to
work-around a bug since 3.x saved duplicates but broke with 4.x separate
i/o devices.

Add a new variant to purge old unused states per backend (after sorting).
2017-06-16 22:32:56 +02:00
af6941ac34 Prepare VCA Automation Lanes -- refactor TAV
* add an abstract StripableTimeAxisView (Route TAV + VCA TAV)
* move common strip-methods into STAV
* Add Automation Lanes to VCA TAV
* Allow ATAV without Automatable for VCA Controls
2017-06-15 16:06:32 +02:00
5957a4619a Remove another explicit Close button. 2017-06-15 16:06:05 +02:00
34abc2dc2d Squelch error message when toggling master-bus visibility. 2017-06-14 21:23:12 +02:00
1794d08789 Fix Monitor Group override 2017-06-12 20:47:44 +02:00
8faf07bd6c Consistent "cancel/close" button position on the left.
"Add and Close" is an odd one out and this button should really be
removed for consistency. Still it allows for a 2-click or
2-keyboard-shortcut very common action.
2017-06-12 17:20:41 +02:00
140ce4daec Restore the state of the autoplay button in the import dialog 2017-06-13 00:08:26 +10:00
19384be74b Make Import the default action in the Import Dialog
Double clicking on a file or pressing the Return key will now import it.

This means with autoplay enabled you can navigate a directory of audio files
using the up and down arrow keys and import the wanted files (with Return)
without having to touch the mouse.

Being able to use double click to import a file means you don't have to move
the mouse back and forth between the file browser and the import button.

You can still manually audition the file with space as before.
2017-06-13 00:07:47 +10:00
nick_m
8502aa18c5 NoteCreateDrag - Fix incorrect note length due to use of region-relative position 2017-06-10 03:49:01 +10:00
99b064274f Update GUI, drop Automatable::value_as_string() API 2017-06-09 16:54:21 +02:00
b0f68a0f5c Prepare AutomationTimeAxisView for non-route (VCA) automation 2017-06-09 16:54:21 +02:00
nick_m
b4ddbce1ff Fix incorrect positioning of tempo line subdivisions if first meter is non-zero
Commit cebefe6 assumed that frame 0 was the music origin.
Silly me.
2017-06-09 11:05:56 +10:00
789fcff1fe Fix crash when showing plugin-UI in safe-mode 2017-06-08 21:21:41 +02:00
nick_m
b086d33937 TempoLines deletes its bfc on destruction 2017-06-09 01:56:28 +10:00
nick_m
cebefe69d9 Tempo lines display subdivisions correctly over a tempo change
TempoMap::get_grid() supplies a list of beat positions, leaving the lines
to work out any subdivision positions.
This is fine, unless a tempo section falls in between beats.
Use a BeatsFramesConverter along with a quarter note position
(in the BBTPointsList) to make this easier.
2017-06-09 01:44:48 +10:00
nick_m
e9f2e32b71 Delete tempo lines when session goes away 2017-06-09 01:08:59 +10:00
b57b1de491 Fix rec-box w/count-in
Since 478f26b2ad, transport_rolling() is only true when actually rolling.
Count-in is a no-roll process (don't move playhead, no playhead UI
position interpolation 55b8b448).

But transport isn't exactly stopped either (preparing to roll), so
during count-in transport_stopped() == transport_rolling() == false.
2017-06-08 13:34:23 +02:00
ed5761a8b4 Add a file-chooser LuaDialog Widget 2017-06-08 13:22:00 +02:00
6ac76734f5 cut buffer must not mess around with libardour selection
Fixes range mode selection/cut/copy that would previously clear track selection
2017-06-07 12:28:53 -04:00
Daniel Sheeler
2c41df9474 add route dialog now has "Add" and "Add and Close" buttons. "Add" keeps dialog open so user can add multiple templates. 2017-06-03 21:44:48 -05:00
cc971b6d9b Import Dialog is Window. Dialog Esc behavior needs to be emulated. 2017-06-02 18:21:31 +02:00
4b0e2ad682 Remove "Close" button from import-dialog (prefer WM close button) 2017-06-01 11:57:08 +02:00
82cb046fa3 if actively recording, prevent interaction between mouse and audio clock widget(s) 2017-05-31 13:04:26 -04:00
da021ef08f Credit where credit is due 2017-05-29 23:48:17 +02:00
b21c4b41a3 when creating a new session after working on one, the "Cancel" button should be a quit button.
This avoids ending up with a null Session pointer in the GUI (#7369)
2017-05-29 15:35:03 -04:00
54efcbaa35 Update Russian translation 2017-05-26 12:45:08 +02:00
af8d027fc5 Remove attempt to retrieve invalid Meterbridge properties
The property names with underscores are "normalized" to replace the underscores
with hyphens in the XMLProperty constructor from within Meterbridge::get_state
and so have always been written with hyphens.
2017-05-26 08:48:04 +10:00
3747d1688c Use correct property names in Meterbridge::get_state()
These property names have been "normalized"/changed to use a hyphen in the
XMLProperty ctor since 2008. That is before the Meterbridge existed so there
should be no files existing that contain these properties with underscores.
2017-05-26 08:48:04 +10:00
c72e3f16a1 Use correct property names for Editor transport controllable state
These are normalized in the PBD::XMLProperty ctor, which is why
Editor::get_transport_controllable_state() uses the hyphenated names to
retrieve the properties and will not result in any state format change.
2017-05-26 08:48:04 +10:00
a48f0cfd63 Pretty print control-outputs in generic-UI 2017-05-25 13:49:18 +02:00
7c6a62452d Remove unused header file in gtk2_ardour 2017-05-23 09:23:34 +10:00
29447f48eb Remove dead assignment in Editor::export_audio() 2017-05-23 09:13:27 +10:00
42441d322d Remove dead assignment in Editor::metric_get_bbt 2017-05-23 09:13:27 +10:00
3b8afbcd00 Remove dead assignment in MiniTimeline::draw_edge 2017-05-23 09:13:27 +10:00
Nil Geisweiller
8242f4f636 Support note name editing in midi list editor 2017-05-14 18:16:24 +02:00
André Nusser
77a2632e34 Fix compiler warning of unused variable. 2017-05-14 18:15:10 +02:00
Edgar Aichinger
c55c814177 one more update to german translation 2017-05-14 16:09:53 +02:00
Edgar Aichinger
278d5bdab2 update german translation 2017-05-14 15:29:27 +02:00
2fe3bac92f yet another stupid typo 2017-05-14 15:15:10 +02:00
André Nusser
092ce6dc01 Fix double "Tape" in Record Mode drop down when adding new track.
This bug probably also lead to "Tape" being shown in mixbus even
though it should not.
2017-05-14 14:28:29 +02:00
3aa3413944 Fix use-after free (signal after deleting group) 2017-05-14 12:00:19 +02:00
f806799c1c Fix typos (thanks edogawa) 2017-05-13 20:33:04 +02:00
38285d0e54 Remove cfgtool, it's not useful anymore
cfgtool was used to dump the current config defaults into ./system_config
on the system it runs. It was manually invoked (usually on Linux) and
hence produced incorrect settings for Windows and OSX variants.

Since ea4bbcf5 Ardour binaries bundle a minimal empty system_config,
and the built-in defaults are used (correct for every platform).
2017-05-12 16:35:08 +02:00
eb3f50e15c change the way ControlProtocols (control surfaces) are notified and handle Stripable selection changes
The Editor continues to notify them, but via a direct call to ControlProtocolManager, not a signal.
The CP Manager calls the ControlProtocol static method to set up static data structures holding
selection info for all surfaces and then notifies each surface/protocol that selection has changed.
2017-05-12 14:51:39 +01:00
24d5f1a624 Tweak/fix splash screen event-loop
Prevent possible endless loop in Splash::display() and handle
some related edge-cases and race conditions WRT expose_done
and is_visible().
2017-05-11 14:20:56 +02:00
26593d08ed NO-OP: whitespace 2017-05-11 14:20:56 +02:00
b4346862e1 context click on marker > loop range should set loop range 2017-05-11 13:16:07 +01:00
2b33d35e5c Remove ambiguity to keep MSVC happy
NB: Do we really need 'floor()' here?? (we seem to be multiplying integers)
2017-05-10 12:22:57 +01:00
7b0ac0e20a ArdourButton: Pick up initial action sensitivity
e.g. monitor-section show/hide button
2017-05-10 00:26:02 +02:00
0e6e6cfde6 Remember Monitor-section state (show/hide, attached/detached) 2017-05-10 00:26:02 +02:00
2c7cb9065f Limit clock displays to 30days (720hours) by default.
This prevents various edge-cases of selection-clocks (eg. unbound range
selection after start-range; and makes it near impossible to roll-over
2^63 using GUI operations)
2017-05-08 12:37:17 +02:00
7b2063d62d remove misc. debug output 2017-05-08 10:41:12 +01:00
8ddbbe427d when a Route is removed, don't bother triggering a sync-presentation-info-from-treeview because it isn't necessary
Also, don't update mixer selection unless selection actually changed
2017-05-08 10:40:27 +01:00
d51049f343 when a Route is removed, don't bother triggering a sync-presentation-info-from-treeview because it isn't necessary 2017-05-08 10:40:27 +01:00
Hiroki Inagaki
eb133dd934 Update Japanese translation 2017-05-08 11:02:24 +02:00
26decc032c -Wnon-virtual-dtor 2017-05-06 15:52:32 +02:00
69f61936ff part two of add missing files from selection development branch(es) 2017-05-05 19:26:10 +01:00
35a9facdae add missing files from selection development branch(es) 2017-05-05 19:25:35 +01:00
a84b1a375a Editor::axis_view_by_control() needs to explore child tracks, now that Selection is relying on it 2017-05-05 18:56:25 +01:00
589f6f67a3 maintain CoreSelection order in GUI track selection 2017-05-05 18:56:25 +01:00
dc0139d4af use CoreSelection for track selection 2017-05-05 18:56:25 +01:00
8335155863 fix ruler scaling -- #7226 2017-05-05 14:00:30 +02:00
95f225df8f Scaleable group-tabs: use Pango to layout text, scale with UI #7331 2017-05-04 19:15:18 +02:00
4aeb086fe3 Scale scommer and piano-keyboard width with GUI 2017-05-04 17:22:43 +02:00
ed4d17a8ff Update Tempo Tapping:
* Allow tap with keyboard (Space, Enter)
* Ignore double-clicks (2nd rapid event skewed calculation)
2017-05-04 16:13:10 +02:00
0afd18eb5d NO-OP: whitespace 2017-05-04 00:43:40 +02:00
a23ac120f2 The return of explicit exclusive solo. 2017-05-04 00:42:07 +02:00
0b189a5766 GUI update: migrate group-color into the session (not GUI state) 2017-05-03 17:53:00 +02:00
ba24f287ca Make -A open action list in a browser instead of command terminal. 2017-04-29 22:47:24 -07:00
0bb0dbad68 Time flies 2017-04-30 01:22:25 +02:00
57e9de232b Fix copy/paste typos in --help 2017-04-30 01:22:25 +02:00
73e80b4429 Set -b to open in browser. 2017-04-29 15:37:31 -07:00