13
0
Commit Graph

11617 Commits

Author SHA1 Message Date
edb9868e76 Remove conditional checks that are always true in RouteTimeAxisView class 2017-04-19 09:36:59 +10:00
8e07e4bd68 Use AxisView::get/set_gui_property API in RouteTimeAxisView class 2017-04-19 09:36:58 +10:00
634207dd6a Use AxisView::get/set_gui_property API in MixerStrip class 2017-04-19 09:36:58 +10:00
13d2670e96 Use AxisView::get_gui_property API in AutomationTimeAxis class 2017-04-19 09:36:58 +10:00
de80767c8c Use AxisView::get_gui_property in AudioRegionView class 2017-04-19 09:36:58 +10:00
2c4e801183 Use AxisView::get_gui_property API in TimeAxisView class 2017-04-19 09:36:58 +10:00
be59503364 Use AxisView::get_gui_property API in AxisView class 2017-04-19 09:36:58 +10:00
9d2d0ddf00 Add AxisView::get_gui_property method, use PBD::string_to<T> for string conversion 2017-04-19 09:36:58 +10:00
66004a5036 Use PBD::to_string to convert non-string types in AxisView::set_gui_property 2017-04-19 09:36:58 +10:00
7fdbabcd79 Let AxisView::set_gui_property perform type conversion in TimeAxisView::set_height 2017-04-19 09:36:57 +10:00
a6d71df0d0 Use XMLNode::get_property in AudioClock class 2017-04-19 09:36:57 +10:00
1534a2a4d1 Use XMLNode::get/set_property API in VideoTimeLine class 2017-04-19 09:36:57 +10:00
47f1183a15 Use XMLNode::set_property API in VideoMonitor class 2017-04-19 09:36:57 +10:00
b00b83f95a Use XMLNode::set_property API in UIConfiguration class 2017-04-19 09:36:57 +10:00
3ba34e13b1 Use XMLNode::get/set_property API in SelectionMemento class 2017-04-19 09:36:57 +10:00
8219e3c6ee Use XMLNode::get/set_property API in Selection class
There were many possible value truncations occuring and some precision loss
with the double conversions.
2017-04-19 09:36:57 +10:00
5b97b1a191 Use XMLNode::get/set_property API in ProcessorBox and ProcessorWindowProxy classes 2017-04-19 09:36:56 +10:00
657e32290e Use XMLNode::get/set_property API in ProcessorBox class 2017-04-19 09:36:56 +10:00
5cd88fa050 Use XMLNode::get/set_property API in MeterBridge class 2017-04-19 09:36:56 +10:00
4bf8f9f1a8 Use XMLNode::set_property API in LuaInstance class
Didn't seem worth converting from XMLNode::property API to
XMLNode::get_property and there may be some ordering issues.
2017-04-19 09:36:56 +10:00
a2c1e79660 Use XMLNode::get/set_property API in LocationUI class 2017-04-19 09:36:56 +10:00
7cb78301eb Use XMLNode::get/set_property API in Keyboard class 2017-04-19 09:36:56 +10:00
5b71470449 Use XMLNode::get_property API in AutomationTimeAxis class 2017-04-19 09:36:56 +10:00
8d90723e8c Use XMLNode::set_property API in GUIObject class 2017-04-19 09:36:56 +10:00
0bfdab738b Use XMLNode::get/set_property in ExportVideoDialog class 2017-04-19 09:36:56 +10:00
a8420d4b6b Use XMLNode::get/set_property API in EditorRulers class 2017-04-19 09:36:56 +10:00
df33a6e53a Use XMLNode::get/set_property API in EditorRegions class 2017-04-19 09:36:56 +10:00
346123e619 Use XMLNode::set_property API in ARDOUR_UI class 2017-04-19 09:36:55 +10:00
41493d556a Use XMLNode::get/set_property API in ARDOUR_UI class 2017-04-19 09:36:55 +10:00
dcc21b19a9 Add AudioClock::on() method as convenience method for serialization 2017-04-19 09:36:55 +10:00
d41d612276 Use XMLNode::get/set_property API in Mixer_UI class 2017-04-19 09:36:55 +10:00
8d6df23ebc Remove unused header include in video_timeline.cc 2017-04-19 09:36:55 +10:00
a4b9014932 Use XMLNode::get/set_property API in Editor class 2017-04-19 09:36:55 +10:00
800112c3b7 Use XMLNode::get/set_property API in EngineDialog class
Fixes many of the type conversions but I doubt any would have been an issue.

LocaleGuard is no longer necessary
2017-04-19 09:36:55 +10:00
697f0ce5e1 Add PBD::to_string/string_to template specialisations for types in editing.h 2017-04-19 09:36:55 +10:00
6ee1e4d6dd Add PBD::to_string/string_to template specialisations for types in enums.h 2017-04-19 09:36:55 +10:00
2b58bbd50a Use PBD string conversion functions in PBD::ConfigurationVariable
No longer need a specialization for bool as PBD::to_string/string_to already
has specializations for bool

Remove template specialization for float as string_to/to_string handles string
representations of infinity
2017-04-19 09:36:47 +10:00
cb3c564822 Use int32_t type instead of long for font-scale UI configuration variable
long type can not be used with PBD::to_string/string_to
2017-04-19 09:36:47 +10:00
3edb6b2e1f Use PBD string conversion functions in PBD::Property class 2017-04-19 09:36:47 +10:00
fda05ac64b Use ID::to_s() in gtk2_ardour instead of ID::print() 2017-04-19 07:49:58 +10:00
18dcd4d7ff FP8: Configuration UI layout & design (add image, separators) 2017-04-15 15:19:58 +02:00
cooltehno
57dfc0ffb1 Update blueberry_milk-ardour.colors 2017-04-14 13:22:18 -07:00
a8858ad311 Fix toggle-processors: operate on plugins only 2017-04-14 00:53:45 +02:00
d43a23fe28 Faderport8 control surface support 2017-04-13 21:21:59 +02:00
bcab83205b Keep the RhythmFerret dialog window around after using an action.
Since 5.8-245-g3e43585fa, a response hides the dialog Window
in ArdourDialog::on_response (to prevent dialogs windows staying
around unresponsive while Ardour does background work).

The RF is special, and also the only dialog using explicit
add_action_widget().
2017-04-07 00:29:21 +02:00
43a07bab51 mini-timeline: show labels for outside range markers 2017-04-03 16:14:01 +02:00
54bab5153f don't set region selection on loading a session 1 by 1, but just once after they should all exist 2017-04-03 00:33:44 +02:00
f201726286 NO-OP: whitespace 2017-04-03 00:33:44 +02:00
907fbdd19e Minitimeline: show markers immediately left/right of viewpoint 2017-04-02 22:20:12 +02:00
77e8c0c4df GUI options for rec-only metronome 2017-04-01 23:56:27 +02:00
2513aad1ed Remove duplicate msg (load_keybindings also prints an info) 2017-04-01 19:16:12 +02:00
a57914ed50 Another fix to reset keybindings:
Don't carry previously set global keybindings_path.
2017-04-01 19:16:12 +02:00
6fbe3f6408 Fix label for show-mixer 2017-04-01 10:02:04 -05:00
3e43585fa1 Pop splash on dialog response - not d'tor.
A Dialog Window may not be tightly scoped, and may be around
for a while (query settings from the dialog instance). The destructor
may only be called  later.
2017-04-01 16:40:07 +02:00
dae7e8dbd3 NO-OP: whitespace 2017-04-01 15:56:35 +02:00
16cdab6327 Fix engine state ordering 2017-04-01 15:39:02 +02:00
8bed793b48 Properly desensitize various engine-controls.
MIDI system and channel-count cannot be changed while the engine is
running.
2017-04-01 14:37:35 +02:00
752706911e Fix crash when dragging playhead or mouse in ruler area
This can be hard to reproduce and I have not been able to work out the steps to
reproduce reliably, but as it is still occuring work around the issue by just
checking the variable is valid before dereferencing it.

Resolves: #7304
2017-04-01 22:04:56 +10:00
a534258594 Reset Playhead interpolation when looping and locating 2017-03-31 14:16:04 +02:00
9436d0cb86 Hide eyedropper color-picker on mac
It not only does not work, but also locks up the Desktop/Window
manager in odd ways.
2017-03-31 02:21:38 +02:00
eea8fbd1c5 NO-OP, semantic tweak 2017-03-30 22:07:06 +02:00
02080a434f Consistent Color Selection Dialog (incl RouteGroups) 2017-03-30 15:21:06 +02:00
dd7063277a Add ColorButton drop-in replacement with palette support 2017-03-30 15:20:48 +02:00
05231949e6 When adding a PC, use the channel given in the dialog. 2017-03-29 23:53:56 +02:00
e66ba382da Remove expensive menu for sending immediate Patch Changes, use a dialog 2017-03-29 23:53:56 +02:00
c3f2cff8bc optimize LuaInstance::get_action_state, LuaInstance::get_hook_state
Lua serialize() is called recursively and concatenates strings.
(in Lua that results in a new string on the stack, with 2 unused old
strings). Collecting garbage every time becomes expensive, so do it
only once at the end. GUI scripts are not memory limited anyway.
2017-03-27 04:59:20 +02:00
47ea6534d0 Add option to disable blinking alert buttons. 2017-03-26 21:42:01 +02:00
5ac2d6dcd8 improve correct selection (in mixer) of newly added tracks/busses 2017-03-26 16:13:11 +02:00
453e07d0a2 make selection of tracks/busses after adding them slightly more efficient 2017-03-26 16:12:10 +02:00
7720caf36a whenever showing the add routes dialog, put focus in the SpinButton that determines how many <X> are added 2017-03-26 15:07:11 +02:00
aeae859c46 make it possible to drop a group from a VCA 2017-03-26 15:01:00 +02:00
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
55b8b44889 Improve playhead updates, reduce jitter for follow PH, stationary PH
* resolve rounding mistakes
* extrapolate and filter position using GUI timing
* track engine's position
2017-03-23 19:21:50 +01:00
585fa4302f Disallow Selection, context-menu & drag-start on peak-display Button 2017-03-23 01:53:31 +01:00
159e956225 Top-up "Utils" plugin filter
* move Generators unto Utility groups
* all "MIDI" plugins (which are not Instruments) are Utils
* Anaylsis, Analyser, Analyzer
2017-03-21 22:20:17 +01:00
de0e401214 Use NSGLView backed main editor canvas 2017-03-21 05:38:10 +01:00
d06de26a4f Towards a consistent render() API.
This fixes an -Woverloaded-virtual ambiguity introduced in b5e613d45

  void render (cairo_t*, cairo_rectagle*)
  void render (Cairo::RefPtr<Cairo::Context> const&, cairo_rectangle_t*)

ArdourCanvas prefers cairomm and CairoWidget itself uses Cairo::Context,
this improves overall API consistency.
2017-03-20 17:12:08 +01:00
3294b82e25 Use NSGLView for EditorSummary 2017-03-20 17:12:08 +01:00
4491722eae Editor: forward unmap events to widgets 2017-03-20 17:12:08 +01:00
fc91cfc66b Fix Group assign to new VCA
For reasons unknown[1], The vca-counter may not be in sync with
actual number of VCAs present.

[1] possibly some shared-ptr references at the time of session-save, or
old session compatibility.
2017-03-18 23:06:42 +01:00
9c016c619f Hide SoundCloud uploader in optimized builds until it's fixed 2017-03-18 15:05:54 +01:00
921d2c5809 Add newline to DEBUG::Soundcloud so that it's readable & flushed 2017-03-18 14:26:53 +01:00
Hiroki Inagaki
70728fd739 Update Japanese translation 2017-03-17 19:48:33 +01:00
bbda37c28f Fix note-grid, canvas bounding-box offset.
Note lines on a MIDI-track were able to exceed the time-axis' height
towards the top. If a MIDI track was at the top, the TAV's canvas-group
would increase the overall bounding-box of the track-area and allow
tracks to visually bleed into the time markers group.
2017-03-16 03:47:46 +01:00
3aefd0e744 consolidate context-menu popup methods 2017-03-16 02:36:48 +01:00
b3722f7063 consistent use of context-menu popups 2017-03-16 02:36:48 +01:00
e5d48a8544 Plugin another menu memory leak. 2017-03-16 02:36:48 +01:00
4d95a4e205 Manage some Menus (memory leaks) 2017-03-16 02:36:48 +01:00
2623b227d5 fix windows builds 2017-03-15 12:52:16 +01:00
d87965d82d amend c9b1e6dbe 2017-03-15 12:47:14 +01:00
c9b1e6dbef Tweak idle-o-meter: reset-button & acquisition time display 2017-03-15 12:38:11 +01:00
4ae5737beb Add GUI-Idle debugging/profiling util 2017-03-15 11:34:05 +01:00
35407c7fe8 Update stripable color on the fly 2017-03-14 17:03:38 +01:00
ac46fb2700 Use a label for required script instance parameters 2017-03-13 21:25:16 +01:00
837ad93e7c Default to a pastel color tetrad palette. 2017-03-13 18:01:08 +01:00
400b3f82e7 Prevent multiple color-picker dialogs for a single stripable 2017-03-12 16:54:38 +01:00
6386ebafcd Update selection-clock when region properties change 2017-03-12 01:20:49 +01:00
3477ecb0aa Add API to check if a given region is part of the region-selection 2017-03-12 01:20:14 +01:00
69bcc38e99 Fader Group override (allow to enable on disabled groups/predicates) 2017-03-11 19:00:06 +01:00
fd9330f591 Tweak tempo-marker grab-handle (extend left/right) 2017-03-11 05:14:32 +01:00
0a87fbe820 Allow to customize color-picker-palette 2017-03-11 02:23:34 +01:00
d0fc7d37ab Show Stripable name in color-picker dialog. 2017-03-11 00:52:17 +01:00
05dfc1fdc1 Update color stripable color-picker(s)
* consistent behavior (Route, VCA)
* non-modal
* a single color picker for each RouteUI/VCA at most
* fix bug: VCA picker staying around even when VCA was deleted
2017-03-11 00:33:43 +01:00
2562a5ce3b Save/Restore TimeInfoBox clock modes
The clocks are not transient, so ARDOUR_UI::store_clock_modes takes
care of saving the state and the clock restores itself.
2017-03-10 20:39:46 +01:00
eac0a2b6ec Fix LocationUI clock-mode save/load & caching
(sidebar uses explicit LocationUI::set_state(), Location Window
implicit set_session)
2017-03-10 20:38:23 +01:00
6af51b52ff Use dedicated "show editor/mixer" actions 2017-03-10 17:52:42 +01:00
71f89f8214 Use Tempo Curve color for measure line beats. Fixes 4930. 2017-03-10 09:46:37 -06:00
55e6d3b40d Fix likely thinko in bbt ruler.
This fixes a bug for me:
  Measure lines appear & disappear during playback, at certain zoom scales.
  I think this is because the unecessary offset was causing beat_density to vary unnecessarily while rolling.
2017-03-10 09:09:30 -06:00
830728aaee compute_bbt_ruler_scale should not be necessary for every redraw of the timeline. Works OK here without it... 2017-03-10 08:50:29 -06:00
1519565890 Fix crash when removing time from track with automation
Resolves : #7287
2017-03-10 22:59:58 +10:00
e04d237674 Allow Edit -> Crop to work with edit point set to mouse
Crop is currently only dependent on having a valid time/range selection.

Resolves : #7278
2017-03-09 11:51:00 +10:00
b9ff329e36 Allow Separate using Loop/Punch range to work with edit point set to mouse
These operations are not dependent on the mouse position.

Resolves: #7276
2017-03-09 10:14:35 +10:00
c93bef0ab6 Consolidate code 2017-03-08 22:17:16 +01:00
da5b6566e6 The return of the Mixbus Send-options (allow aux-feedback override) 2017-03-08 19:00:04 +01:00
77d07545c5 Don't show Group UI for the master-bus 2017-03-08 18:37:36 +01:00
a67008a5cb Mixer sidebar: show group context menu on right-click only 2017-03-08 16:22:17 +01:00
a3a61c9c74 Pop down dialog before re-scanning VSTs 2017-03-08 13:03:46 +01:00
819d9fa3cd VST UI sizeing rework
* prefer signal over timer-poll for VST size changes
* properly offset VST window (Windows)
* constrain window size (Windows)
* explicitly notify re-parent'ed child window (Linux)
2017-03-08 13:03:46 +01:00
nick_m
028b042d2a snapped pencil drawing of new midi regions cannot be zero (7271).
- fixes a couple of other oddities in the behaviour.
2017-03-07 10:36:48 +11:00
nick_m
589c13c0eb allow setting end bpm in new tempo from tempo dialog. 2017-03-07 04:00:38 +11:00
nick_m
30dd692d13 rework tempo dialog formatting, add end bpm entry. 2017-03-07 03:59:42 +11:00
nick_m
4512b67fa5 fix crash when dragging region from list. 2017-03-07 02:30:48 +11:00
e8ea0548e0 Fix save-as progress dialog.
ScopedConnection and label,bar went out of scope.
2017-03-06 15:42:58 +01:00
nick_m
16089bff96 more linked midi region trim drag fixes.
- freeze the correct playlists on fiorst move.

	- only update the start offset of linked regions once the drag
	  has finished.
2017-03-06 15:51:53 +11:00
e7c85706e5 More fun with LinuxVSTs & threading 2017-03-06 01:48:46 +01:00
3cba51df26 Close the LXVST X11 connection for good measure 2017-03-05 22:15:30 +01:00
e9385c2297 Work around a crash at exit for Linux VST UIs abusing pthread-keys. 2017-03-05 22:14:49 +01:00
115987a29b Revert "some further debugging, just in case"
This reverts commit 04ed05ecc4.
2017-03-05 17:01:17 +01:00
04ed05ecc4 some further debugging, just in case 2017-03-05 16:45:55 +01:00
9b6aebe842 Prevent duplicate self-delete.
debug-prints indicat it was at least possible for the same Window to
receive  FloatingTextEntry::entry_focus_out twice (without idle)
2017-03-05 16:45:55 +01:00
abdadb0906 NO-OP: whitespace 2017-03-05 16:45:55 +01:00
nick_m
fc47da6511 ensure no movement when draggin regions with x constrained.
- should fix 7260
2017-03-06 01:57:12 +11:00
nick_m
a445e82776 fix undo if a midi region start trim changed the source offset.
- this diffs all playlists that use the same source.

	- the secons part hould be a no-op, but needs testing
	  (trim drag undo on audio and midi regions)
2017-03-06 01:01:37 +11:00
992ab1a273 Remove space between _ and ( 2017-03-04 12:33:22 -08:00
nick_m
2780662432 no-op - comment/whitespace fixes. 2017-03-05 05:34:41 +11:00
nick_m
5c741b7a07 tempo editing updates
- a tempo marker may now be set to always continue (clamped)
	  this means that the end tempo of the previous section will
	  track the start tempo during tempo ops.
	  it mimics the behaviour in 5.8, with the gui indicating
	  the curves to be changed.
2017-03-05 05:21:56 +11:00
nick_m
345f38f1de undoing a create note drag restores screen position. 2017-03-05 02:06:49 +11:00
nick_m
1f9c26136c rework percussive hit spraying.
- the spray is limited to the first entered note.

	- all new notes are selected (requires a selection change to
	  MRV::create_note_at()
2017-03-05 01:57:10 +11:00
nick_m
fb4b72231a spraying percussive hits has one undo step per drag.
- should fix 7134
2017-03-05 01:50:04 +11:00
nick_m
2012cf0d1a remove bogus variable from last commit 2017-03-05 01:23:12 +11:00
ddb4b8a7c3 Add reset region gain action for selected regions 2017-03-04 15:26:00 +10:00
nick_m
e8b5b4fcf3 offset linked regions to compensate for negative start after trim drag.
- should fix 7105
2017-03-04 11:28:49 +11:00
645441d093 Add 7890 aka tom- to contributor list 2017-03-03 20:07:26 +01:00
f0a3c84e8c Fix crash when inserting time with split intersected regions 2017-03-02 21:20:09 +01:00
5524bac04b Don't try to auto-start engine for new sessions
Work around logic-flow in EngineDialog which should already have
done that, but may no longer heed this special-case if sample-rate
dropdown is refreshed to only devices supported ones.
2017-03-02 20:01:48 +01:00
05b0102668 ArdourButton: if _act_on_release is true, only trigger actions/signal clicks on key release, and vice versa
This should really be split in separate semantics for key and button events.

Fixes a subtle but nasty bug in the EngineDialog where the change of the default focus
widget from a Gtk::Button (acts on press) to an ArdourButton (acts on release) caused
events occuring after a dialog has grabbed focus to trigger button clicks
2017-03-01 22:30:20 +01:00
96b3f8ec92 Don't automatically open generic UIs for plugins w/o controls 2017-03-01 17:17:27 +01:00
88a22d40b5 Fix implicit selection when operating track-header ctrl buttons
Stop event propagation. Otherwise, on release the event is passed
up and handled by the TAV which scrolls the editor viewpoint
and the button is no longer under the mouse.
2017-03-01 11:55:32 +01:00
f1571ab7ed initialize some uninitialized vars 2017-02-28 16:29:10 +01:00
nick_m
38b5d88795 allow continuation of tempo via right-click 'Continue' where appropriate.
- this is the opposite of 'Ramp to Next'.
	  it removes discontinuities between the
	  last end tempo and the current by altering the current one.
2017-03-01 01:58:53 +11:00
5c4a2025f1 Fix touching mute automation (mostly)
controllable->set_value() from GUI context will eventually queue
a session-rt command. By the time the realtime command runs, the
controllable needs to be in "touch" mode.

The AutomationController "toggle" UI worked around this by directly using
the underlying API (ignoring slaved-controls and ignoring groups).
The RouteUI's GUI wasn't able to write mute-automation at all.

This commit is a compromise: press + hold (touch) + release button.

(it may need further special-casing for _desc.toggled in
AutomationControl::actually_set_value(), also undoing automation-writes
is currently  not working correctly)
2017-02-28 05:01:17 +01:00
1071c0e788 Likely fix for bug: cannot change track colors in older 4.x sessions. 2017-02-27 20:51:17 -06:00
nick_m
d5fad959e6 probable fix for importing tempo maps that use non-quarter note pulse.
- actually i'm not certain that this is correct,
	  but it works ok Beethoven's fifth.
2017-02-27 20:16:10 +01:00
nick_m
e55b882a09 _group, group.. who cares? 2017-02-27 20:16:10 +01:00
nick_m
07b4da44bf clicking on curve text does the right thing. 2017-02-27 20:16:10 +01:00
nick_m
4496babc8f initial rework of tempo text display (numbers are curve items)
- move tempo numbers to a layer above the curve.

	- the offset of the text box in Marker is horrible here.
	  what to do?
2017-02-27 20:16:10 +01:00
nick_m
abd89ffa7d remove scroll wheel editing nonsense (tempo) 2017-02-27 20:16:10 +01:00
nick_m
5b38fbab4d fix compilation 2017-02-27 20:16:10 +01:00
nick_m
243fd7a428 remove 'mouse:' verbose cursor when shift-dragging a curve. 2017-02-27 20:16:10 +01:00
nick_m
25d78ef306 only allow 'ramp to next' if the next tempo is actually different. 2017-02-27 20:16:10 +01:00
nick_m
f69f546717 poor man's display of end tempo for ramps. 2017-02-27 20:16:10 +01:00
nick_m
3a7bc1fd3f Tempo Marks : set point colour by discontinuity, display non-quarter pulse if we are non-quarter.
- a jump in tempo by more than 1 ntpm results in a red
	 tempo mark pointer.

	- ignore UIConfiguration::get_allow_non_quarter_pulse()
	  when displaying note type in the marker text (only display
	  note type if we are non-quarter).
2017-02-27 20:16:10 +01:00
nick_m
f41748803a remove commented line 2017-02-27 20:16:10 +01:00
nick_m
bb8b229a1e fix tempo marker ramp to next. 2017-02-27 20:16:10 +01:00
nick_m
663d0e1743 add right-click 'Ramp to Next' tempo marker menu item. 2017-02-27 20:16:10 +01:00
nick_m
f8a6f8918d back to using shift-ctrl for pinch drag. set colours of affected curves. 2017-02-27 20:16:10 +01:00
nick_m
8e944953c6 highlight the tempo curve that is to be altered, modify text to suit. 2017-02-27 20:16:10 +01:00
nick_m
f4d51ee0d0 fix verbose cursor display when shift-dragging end tempo. 2017-02-27 20:16:10 +01:00
nick_m
636583e6ef restore pinch tempo. it now operates via shift + alt drag on the curve. 2017-02-27 20:16:10 +01:00
nick_m
211226983d remove tempo end drag (the control drag on the curve). a;ter tempo marker drag.
- holding down shift before initiating a tempo mark drag
	  alters the end tempo of the previous one as before, but
	  this is now a separate drag.
	- restore vertical dragging of the tempo mark to alter start/
	  end tempo. shift during the makrker drag alters start tempo.
	  xontrol + shift during the drag alters end tempo.
2017-02-27 20:16:10 +01:00
nick_m
c9387055e4 remove "Make Ramped" from right click tempo marker menu. 2017-02-27 20:16:10 +01:00
nick_m
1359f18543 fix formatting of bbtruler drag verbose cursor. 2017-02-27 20:16:10 +01:00
nick_m
97c4c2a28c complete changes to tempo type.
- this implements in the intention behind the previous commit.
	  a tempo mark is constant until its end has been changed by a
	  shift-drag on the next marker.
2017-02-27 20:16:10 +01:00
nick_m
ccb51a8ddb rework tempo editing.
most changes are due to a new design where tempo discontinuities at the
beginning of a ramped section may be set.
this allows easier mapping of live performance, especially in
the common case of a ramped ritard before the beginning of a new section.

feature summary:

holding constraint modifier (shift) while dragging the BBT ruler area
drags the tempo lines by changing the start tempo (as before)

holding copy modifier (control) while dragging the BBT ruler area
drags the tempo lines by changing the end tempo (ahem. not quite there)

dragging a tempo mark while holding constraint (shift) will change the
previous end tempo to match the marker position *worth trying*.

holding constraint and copy modifier (control + shift) while dragging
the BBT ruler area attempts to'pinch' or twist the surrounding tempi
sp that later ones are not repositioned (currently suffereng from
rounding errors)
2017-02-27 20:16:10 +01:00
dd72d2bf65 De-cramp the transcoding dialog widgets. 2017-02-27 09:49:35 -06:00
007808a6ad fix crash caused by thinko in 123fcf3cf 2017-02-27 16:39:22 +01:00
7cd70e0c91 make sure that when extending the selection in the editor and mixer, the clicked-upon track gets set_selected() called last
This makes it be the "first" selected strip for control surfaces and the editor mixer
2017-02-26 18:24:56 +01:00
f64441aa58 remove method no longer needed
Editor::track_selection_changed() is now invoked by EditorRoutes::sync_treeview_from_presentation_info(),
AFTER the Selection has been updated
2017-02-26 18:24:56 +01:00
5456fd5717 make Selection::set (TrackViewList*) more efficient and emit less PI::Change signals 2017-02-26 18:24:56 +01:00
e653da32c0 avoid doing needless duplicate work in Selection::add (TimeAxisView*) 2017-02-26 18:24:56 +01:00
02cf331403 upcoming codenames 2017-02-26 15:35:40 +01:00
96ec230c32 Fix windows builds, rename icons following 4e96285ba5 2017-02-26 14:26:13 +01:00
a5c2dc0525 Don't use upper-case in options (only headings) 2017-02-25 20:03:52 +01:00
123fcf3cff fix potential crash bug in RouteProcessorSelection 2017-02-25 19:55:39 +01:00
8c1e06a5e9 prevent double-emission of PresentationInfo::Change when making mixer-view selection set changes 2017-02-25 19:55:39 +01:00
18ec1840e7 Tweak preferences text 2017-02-25 17:44:08 +01:00
b37d3776d2 Tweak metering prefs: clarify default type behavior 2017-02-25 04:46:49 +01:00
841b15c453 NO-OP, re-arrange code 2017-02-25 04:46:46 +01:00
5b4f5c477d Snap-back fader on release (follow-up to e8cebac6a3)
When dragging a fader out-of-bounds (VCA slave constraint), move it back
on release.
2017-02-24 23:55:55 +01:00
4afa3aa65e Group-override for faders
Tentative solution. Eventually the gain_adjustment should be moved
into the PixFader or SliderController and a dedicated API
should replace  gain_adjustment.signal_value_changed()
2017-02-24 23:41:22 +01:00
a1a2e088a5 Allow to switch master-meter type in the toolbar-meter 2017-02-24 23:41:22 +01:00
d0286d3df1 NO-OP resolve an ambiguity, just because.
Due to  LevelMeterVBox : public LevelMeterBase, public Gtk::VBox;

LevelMeterBase::get_type() overloads Gtk::Widget::get_type(),
Glib::Object::get_type(), Atk::Implementor::get_type() etc..

Besides Ardour-style prefers not to use  get_...()
2017-02-24 23:41:21 +01:00
437ec10b31 gui: debug output for faderport/editor mixer strip sync 2017-02-24 23:10:09 +01:00
b83ea5bd49 Save Lua script file origin (for later updates) -- GUI+Session plugin 2017-02-24 16:10:14 +01:00
9e543beb56 Add some convenient public editor methods (for lua-bindings)
and s/get// in the old API for consistency.
2017-02-24 16:10:14 +01:00
89c02f4fd7 the daily dose of const'ness 2017-02-24 16:10:14 +01:00
3780a9526e re-order inheritance
LuaBridge only allows one parent class, others need explicit casts.
Allowing RoutUI to be passed as Selectable argument is handy.
2017-02-24 16:10:14 +01:00
1e4e97019d Lua bindings to access editor selection + region selection bindings 2017-02-23 22:32:32 +01:00
5d8a3ea2f0 remove explicit line-break (rely on wrap) 2017-02-23 17:40:33 +01:00
f484e8a923 Clarify prefs 2017-02-23 15:54:30 +01:00
nick_m
62cef7feff also fix flying percussive hits while copy-dragging. 2017-02-24 01:11:56 +11:00
nick_m
ae3c50c495 hotfix for flying percussive hits while dragging.
- Hit::position still may not be set correctly,
	  but this patch eliminates the error for now.
2017-02-24 00:36:58 +11:00
c373169f35 Move Select-All-Tracks into the Selection category. Currently used only when printing keybindings. But we should also use this for categorizing the keybindings dialog IMHO. 2017-02-22 18:15:55 -06:00
8e1c68eb63 GUI support to re-locate missing external (abs-path) files 2017-02-22 10:51:13 +01:00
75773a43d4 NO-OP: whitespace 2017-02-22 10:47:59 +01:00
9bfbde944b remove cruft 2017-02-22 10:47:59 +01:00
2926555e29 fix crash when removing a TimeAxisView from the selection 2017-02-21 19:11:14 +01:00
419006dd83 PBD::Signal<...>::connect() is already thread safe, so drop intermediate proxy/call_slot() invocation in handling Controllable::Changed within AutomationController 2017-02-21 18:45:29 +01:00
e00d35f1e8 Revert "ARDOUR_UI transport buttons should use ArdourButton::set_related_action()."
This reverts commit 35f35ad662.

This commit was a mistake: the controllables are needed to allow MIDI binding
to transport buttons.
2017-02-21 15:49:31 +01:00
9de5c61b9e better solution of 3c25d26e9 2017-02-21 12:25:57 +01:00
3c25d26e91 Fix potential crash at exit/close.
~DisplaySuspender's  PresentationInfo::unsuspend_change_signal
can try to update Stripable PresentationInfo for a session that's
no longer present.
2017-02-21 01:35:18 +01:00
c56635e71c Group-Tabs keyboard shortcuts
* The return of the ctrl+right-click (edit)
* and consistent shift+right click (remove)
2017-02-21 00:11:38 +01:00
b409a27f4b fix typo in prev commit 2017-02-21 00:07:47 +01:00
13cce8957c MB: prefs are detached initially 2017-02-20 22:55:46 +01:00
15eb6f716d fix thinko in prev commit 2017-02-20 21:52:13 +01:00
4ece934e66 Fix iterator off-by-one: Allow to move top-most track. via ctrl up/down 2017-02-20 21:37:50 +01:00
3a50975c3d First-time startup logic update.
When *not* copying old config, Ardour should display the "first time"
dialog.
2017-02-20 20:47:57 +01:00
5f5bdca15b Consistent VCA naming (Ardour/Mixbus) 2017-02-20 16:50:42 +01:00
6df23c4e65 consolidate Ardour+Mixbus code, fix duplicate SeparatorElem in MB. 2017-02-20 16:35:55 +01:00
8876955762 use "VCA" rather than "Control Master" in the GUI 2017-02-20 15:40:24 +01:00
006a4c0373 ensure that when mixer is shown in its own tab, it has a default focus widget, so that alt-m will always work 2017-02-20 13:58:54 +01:00
0aa631b6af Increase default size of script-editor pane 2017-02-20 03:57:53 +01:00
2157cd0e94 Lua binding for pango_cairo_layout_path (text outlines) 2017-02-20 03:56:32 +01:00
542b789a42 probable fix for crash while dragging playhead 2017-02-19 19:44:37 +01:00
94ec54a3c4 Consistent dialog title (match "Show Protocol Settings" button) 2017-02-19 17:14:59 +01:00
05149f9bc5 Connect Script Manager "Edit" -> Lua Scripting Window 2017-02-19 01:29:08 +01:00
ceb7884380 Build-in some doc (script types)
This should probably be optional, but there's space in the dialog.
2017-02-19 01:29:08 +01:00
b15bebd3c0 Remove unused ArdourUI code to add/remove Lua Session Scripts. 2017-02-19 01:29:08 +01:00
356a422531 Update menu for Lua
- remove "Session > Scripting" entry point
- change ActionScripts to LuaScripts (all of them sans DSP)
2017-02-19 01:29:08 +01:00
a732c7c9fa Allow to un/load Lua Session Scripts in the Script Manager 2017-02-19 01:29:08 +01:00
nick_m
b066ad3164 fix missing command in Editor::snap_regions_to_grid ()
- fixes 7246
2017-02-19 07:13:26 +11:00
695554ab9b re-layout script-selector (only grow description vertically) 2017-02-18 19:01:00 +01:00
92e203a19e Consolidate ActionChanged callbacks, add tooltips 2017-02-18 16:14:41 +01:00
2d50871034 Remove LuaCairo.color_to_rgba (now Ardour.LuaAPI.color_to_rgba) 2017-02-18 16:13:49 +01:00
2c992c093f Allow to un-assign action-scripts via shift+right-click 2017-02-18 02:24:23 +01:00
c8d6ddfd10 Don't scroll-jump when selecting all tracks 2017-02-18 01:25:13 +01:00
85e3d2158e Prevent direct and indirect selection of VCAs
the ::selection_filter() does not cover select-all and various other
indirect selection operations.
2017-02-18 00:45:37 +01:00
4258bad19d VCA spill should not show hidden tracks 2017-02-18 00:09:52 +01:00
dcce5f0080 Allow to re-scan VST plugins after changing VST-paths 2017-02-17 23:30:30 +01:00
09bb0bf1e6 Add gcc suggested parentheses 2017-02-17 23:29:12 +01:00
3bbb4b76f7 Add Lua API to convert Canvas::Color to Cairo RGBA 2017-02-17 23:28:03 +01:00
b5b9e1d1e5 Fix button sizing for IconRenderCallback 2017-02-17 20:51:15 +01:00
472f14c803 Allow Lua action scripts to provide a button icon 2017-02-17 18:58:11 +01:00
3b8348f009 Implement icon-render callback in ArdourButton 2017-02-17 18:58:11 +01:00
4f4400b764 PT import: Add MIDI import functionality
This change adds support for importing all MIDI regions
from a PT session onto a single track.

Unfortunately, currently we don't know how to set the start
offset of MIDI regions reliably, therefore all midi regions
get dumped at the beginning of the Ardour session.

Signed-off-by: Damien Zammit <damien@zamaudio.com>
2017-02-17 15:36:02 +01:00
cded378e17 Mark session dirty when changing scripts 2017-02-17 11:17:54 +01:00
61d038637a Allow binding Lua Action Scripts via right-click 2017-02-17 11:15:14 +01:00
3864f2c32c Version keybindings file.
Allow to run both Ardour 5.5 and later (changed bindings name)
with the same config folder.

Like with .color files, custom .keys files won't be taken into account
when updating to a new version.

This is mostly a stopgap solution. Eventually we'll have to come up with a
merge&prune mechanism for bindings or maintain a separate version for
these files. Hopefully some better idea will come up...
2017-02-17 00:59:48 +01:00
91cee14ca6 Fix route ordering (mixer TV lacks master-bus)
Skip master bus' order-key when re-ordering routes in the mixer.

This also fixes a related issue:
When a new track is added, Session::RouteAdded will call be handled by
Editor::add_routes AND Mixer_UI::add_routes, leading to calls to both:

- EditorRoutes::sync_presentation_info_from_treeview()
- Mixer_UI::sync_presentation_info_from_treeview ()

which potentially set different order-keys.
2017-02-17 00:44:02 +01:00
d2b823b3c5 Toolbar spacing: Add back one pixel of vertical padding, and preserve it regardless of which button sections are hidden. 2017-02-16 14:37:56 -06:00