13
0
Commit Graph

10611 Commits

Author SHA1 Message Date
nick_m
b104cb84c4 User Interaction pref shows the push points modifier in the 'beginning a drag' row.
- it is currently dual use (move both ends of a range marker
 	  during drag / push control points at the beginning of a drag).
	  this may have to be separated, but as it is called the push
	  points modifier, it belongs here.
2016-08-14 03:04:54 +10:00
nick_m
4eba9b8638 Resolve potential ambiguity between the constraint modifier and the copy modifier when beginning a drag. 2016-08-14 03:04:54 +10:00
nick_m
c62026b567 Ensure RelevantModifierKeyMask is updated on each modifier change.
- fixes bug where changing prefs in User Interaction
	  only took effect on restart.
2016-08-14 03:04:54 +10:00
nick_m
1c0651f7f4 Ensure BBTRulerDrag operates within the tempo map. 2016-08-14 03:04:54 +10:00
nick_m
e3a8f2786d Ensure positive length whan drag-adding new midi region. 2016-08-14 03:04:54 +10:00
nick_m
5c2ccc4f3e Allow negative return in TempoMap::beat_at_frame() and its exact_ variant.
- audio-locked midi regions can be start-trimmed properly
	  when close to 1|1|0
	- a midi region placed before the first meter
	  will continue the tempo curve and first meter.

Only a couple of callers require change, as bbt_at_beat() already
deals with this.
2016-08-14 03:04:53 +10:00
23d1d1f55b add nstewart to authors 2016-08-13 16:12:12 +02:00
Nathan Stewart
5b4584ad94 Add "Marker Toggle" #5193 2016-08-13 16:07:16 +02:00
313a32981e tweak strings now that 5.0 is out 2016-08-13 14:51:15 +02:00
836693036a add RMS region normalization option 2016-08-13 14:50:59 +02:00
73db972ab7 add plural forms for pt to gtk2_ardour/po/pt.po 2016-08-08 20:24:46 -04:00
186ac82471 (updated) pt(_BR) update for gtk2_ardour from Marcelo Teles 2016-08-08 20:20:45 -04:00
7691ee033a Revert "pt(_BR) update for gtk2_ardour from Marcelo Teles"
This reverts commit cf08eaa32d.
2016-08-08 20:19:55 -04:00
ed594c45fc updated russian translation from Alexandre Prokoudine 2016-08-08 20:12:56 -04:00
6a4fb58384 fix thinko that causes near duplicate menu items in group context menu when not in group tabs 2016-08-08 23:36:33 +02:00
f47ae6c0f9 fix bug when appdata.pot file cannot be regenerated 2016-08-08 13:51:20 -04:00
653df3ca4f GenericUI: better popup placement for automation mode 2016-08-08 16:44:40 +02:00
a51cd8689f Move anchored menu placement strategy to Gtkmm2ext utils
So that it can be used by others.
2016-08-08 16:44:40 +02:00
0d2ba3fe8e fix typo 2016-08-07 20:29:21 +02:00
f97696d7f3 Make ArdourDisplay a subclass of ArdourDropdown 2016-08-07 19:44:54 +02:00
054b347181 Remove the space for checks/radios/icons in dropdowns 2016-08-07 18:50:17 +02:00
5dd4c33915 Make Dropdown menus at least as wide as the button 2016-08-07 18:43:39 +02:00
5f6cec7c2f Improve placement of Dropdown popups.
When an item in the menu corresponds to the currently displayed choice,
vertically align the item with the button on menu popup.
2016-08-07 17:20:43 +02:00
625240fe30 Use a C++ bool constant 2016-08-07 16:17:39 +02:00
e1da96c472 Improve ArdourDropdown menu position 2016-08-07 16:14:59 +02:00
Edgar Aichinger
595684ddf7 update german translation 2016-08-06 16:49:41 +02:00
836f48457d add a "Pin Management" button to the plugin UI-header 2016-08-05 02:35:51 +02:00
Nils Philippsen
65c2e089ab workaround changes in glibmm 2.49.x
Glib::RefPtr defines the operator bool() as explicit which breaks
comparisons like "some_ref_ptr == 0" or "... != 0".

https://bugzilla.gnome.org/show_bug.cgi?id=769502
2016-08-04 09:52:22 +02:00
fcf9836da0 add a wrapper to launch the vst-scanner manually 2016-08-03 19:56:22 +02:00
cooltehno
57e9b502a7 Update clear-gray-ardour.colors
A peak rectangle in the mixer strip is ruled by "gtk_bright_indicator". In the previous commit I mixed up this item with "meterbridge label" & "meterbridge peakindicator". This commit changes "gtk_bright_indicator" from white to red and returns "meterbridge label" & "meterbridge peakindicator" state to primordial. So now the peak rectangle in the mixer strip will be red when a sound peak has a place.
2016-07-31 19:22:42 +04:00
nick_m
0a3aa9c324 Use S_ macro when comparing modifier names in User Interaction Preferences.
- Fixes bug where selecting 'Shift' as a modifier was ignored.
2016-08-01 01:04:28 +10:00
cooltehno
1a481e661b Update clear-gray-ardour.colors 2016-07-31 17:11:58 +04:00
pablus
68b78ac357 Update Spanish translation 2016-07-30 12:52:58 +02:00
46a69ade78 Update French translation 2016-07-29 22:10:49 +02:00
f41e0cd4a2 Make monitor detection reuse the port name translation
So that they never get out of sync, and translators don't get confused.

Also replace some N_() where X_() was really intended.
2016-07-29 22:10:49 +02:00
YQ-YSY
d0126be806 2016-07-29 Update zh.po for Ardoru 5.0 2016-07-29 21:34:52 +08:00
67cbdc6cf2 GenericUI: Update all input controls on preset load
The existing code relies on AutomationControls for getting parameter
changes and update the UI accordingly. One case where this doesn't yet
work is preset loading, where ARDOUR::Plugin is responsible for actually
loading the preset but doesn't notify the changes to AutomationControls.

Since the input_controls vector now contains all ControlUI's that rely on
AutomationControls to get updates, just listen to Plugin::PresetLoaded()
and trigger an update of all elements in input_controls.

This is temporary until a better solution is devised to make
AutomationControls aware of preset loading.
2016-07-29 02:06:55 +02:00
7e30161dc0 GenericUI: Show automation UI for dropdowns
Also merge the ControlUI local layout of dropdows with the local layout
of other control types (except FileButton).
2016-07-29 00:54:25 +02:00
5c5b7746a2 GenericUI: disable super rapid timer for input controls
The super rapid timer was disconnected by GenericPluginUI::stop_updating
but never connected again, so the generic UI worked often without
getting periodic update triggers anyway.

Try to disable the mechanism altogether, and see if there are updating
glitches.
2016-07-29 00:14:20 +02:00
a7b29d7966 GenericUI: replace if() by assert()
It makes no sense to check for the validity of mcontrol only for
controller creation, since the remainder of the code assumes that the
controller will have been created correctly.

Replace that by an assert.
2016-07-29 00:07:02 +02:00
3365722b8b GenericUI: remove duplicate connection to signal
Now that there isn't an early return anymore for Dropdowns, the common
path takes care of connecting the display update code to the correct
signal.
2016-07-28 23:21:10 +02:00
d26c3d380d GenericUI: replace early return by an else 2016-07-28 23:21:10 +02:00
535814cf98 GenericUI: don't add all inputs to automation vector
That list is used to set the automation state of all automatable
controls when the global automation state is changed with the buttons at
the top of the generic UI window. The controls were added to the list
regardless of the automatable status, and some controls were even added
multiple times: once in build_control_ui() and once in build().

Since changing the state of non-automatable controls is wrong, only add
the control UI in build_control_ui() which already has the knowledge of
automatable or not.
2016-07-28 23:21:09 +02:00
35a20a8bcc GenericUI: add a sanity-check for FileChoosers
Assert that all FileChooserButton created are for properties, because
the remaining code assumes that it should setup things for a property.
2016-07-28 23:20:04 +02:00
0e7b9c6a98 GenericUI: move up filepath property handling
Since it is the only case that's completely different from others in
that it only handles properties, and uses a different signal path for
updates, don't put it in the middle, but as the first case to check for.

Code move only, no behavior change (since it should be exclusive to all
other cases anyway).
2016-07-28 23:20:03 +02:00
63bbcf968a GenericUI: only connect one PropertyChanged callback
The code connected the callback to the PropertyChanged signal from the
plugin once per filepath control created. Should the plugin have several
files to open, this would be at best wasteful and at worst racy.

Connect the callback a single time, since the same callback handles all
property updates that we're interested in. Also rename the methods,
members and typedefs so that it's clear what the code is trying to do.
2016-07-28 23:19:08 +02:00
1d173bc84f GenericUI: replace ComboBoxText by ArdourDropdown 2016-07-28 23:18:47 +02:00
cf08eaa32d pt(_BR) update for gtk2_ardour from Marcelo Teles 2016-07-26 10:32:03 -04:00
c71cc6fe5b When showing a prefs pane, select the row in the tree
When programmatically showing a pane, instead of directly asking the
preferences notebook to show the pane, search for the asked path in the
panes tree, and select it. Since OptionEditor listens to selection
changes in its TreeView, the correct pane will be shown, with the added
benefit that the corresponding section in the tree will be highlighted
so that the user knows which pane is currently shown.
2016-07-26 08:02:40 +02:00
37dc4bd8a7 Factor out and simplify the search by components in options tree 2016-07-26 08:02:40 +02:00
78b7e07690 Make a right click on metronome really show click preferences
Solve http://tracker.ardour.org/view.php?id=6906
2016-07-26 03:19:22 +02:00
994df3aaa3 improve shuttle control response when grabbed. 2016-07-25 19:43:57 +02:00
793ff25e08 plugin spectrum analysis: plot A/B 2016-07-25 17:45:14 +02:00
822810b88f the endless quest to plug memory leaks -- episode 379 2016-07-25 17:38:59 +02:00
ac8f4baa00 add some flush_pending timeouts 2016-07-25 14:51:23 +02:00
42b20f15a2 fix crash in preferences dialog if lv2-extended is not defined 2016-07-25 01:33:23 +02:00
46c311b2b0 Fix frequence display for plugin analysis mouse over
When freq was changed to be an integer, the conversion to kHz became a
truncation. Divide by the float 1000.0 to pass the correct value to the
stringstream formatting routine.
2016-07-25 00:46:49 +02:00
9215710c59 Plugin Analysis: show numeric values on mouse over
For people who need more precise frequency or response amplitude, show
the values corresponding to the point under the mouse.
2016-07-25 00:31:47 +02:00
ad34eb7e0b fix some spelling inconsistencies. 2016-07-24 20:30:23 +02:00
864a1860cc gtk2_ardour: update UK English localisation 2016-07-24 16:11:46 +01:00
07959fb365 some more (untranslatable) lower case kilos. 2016-07-24 16:54:08 +02:00
4093cf6b90 Make the trim knob on busses show only if there is audio
The trim knob has been designed to operate only on audio channels. If
the bus has none, hide the knob that would otherwise have no effect at
all.

Factor the trim control show/hide code out of MixerStrip::set_route(),
and also call that code in response to I/O changes in the route.
2016-07-24 13:51:11 +02:00
ba815a903b add a ToDo note for after string-freeze 2016-07-24 13:33:09 +02:00
7897b750ea rework FFT-graph, add pointer-position annotations
* replace old Gdk graphics context with cairo drawing
* cache graph on an image-surface
* allow partial exposure
* add annotation overlay
2016-07-24 13:00:15 +02:00
46d2b03af0 retain desired samplerate when switching backends 2016-07-24 13:00:15 +02:00
bcee4e1518 add a lua timer callback signal 2016-07-24 13:00:15 +02:00
nick_m
6e49ca61a4 Remove the temporary note group in MidiRegionView, update start trim during drag. 2016-07-22 23:21:27 +10:00
43bdfa7197 invalidate meter-color cache when midi channel count changes
This fixes a bug of midi-colors being used for audio-meters or
vice versa when when the total channel count remained identical
2016-07-22 12:57:24 +02:00
34fe25c603 remove debug noise 2016-07-20 16:33:40 -04:00
85cdff7cb0 Use the new do_export() method when asked to export 2016-07-20 02:01:40 +02:00
0b5f2c5d58 Don't add Bundles to PortMatrix if they only have mistyped ports
PortMatrix is able to filter out ports that have an unwanted datatype, but
if a Bundle is added that has no port at all with a wanted datatype then
it is not weeded out correctly (and even if it were, there's no chance
that it will legitimately appear in the UI). Don't add that kind of
Bundle in the first place.
2016-07-19 02:10:40 +02:00
f5ed0c6d07 Remove bus ignore from MIDI tracks
Now that busses can contain MIDI, this special casing doesn't make sense
anymore.
2016-07-19 02:10:40 +02:00
901f8caf22 add a plugin-death connection
at application exit, there may otherwise be a race condition,
queue draw could be scheduled for a widget that's no longer present.
2016-07-18 23:52:40 +02:00
a450024c56 add some strategic lua gc steps. 2016-07-18 23:52:40 +02:00
1a55e83e98 move show_gdk_event_state() utility function from gtk2_ardour to libs/gtkmm2ext 2016-07-18 14:41:25 -04:00
653b113607 fix unused variable warnings and code tidy 2016-07-18 14:39:32 -04:00
cf4b4dea3e fix Pingback 2016-07-18 19:21:05 +02:00
c9959f742a clean up HttpGet 2016-07-18 19:21:05 +02:00
eed6d13b60 add 2 missing colors for clear gray theme 2016-07-18 12:06:31 -04:00
c17b4fd135 add new clear-gray color theme 2016-07-18 12:03:37 -04:00
56c4b3c9b0 turn back towards color theme files ALWAYS including the program name. also load both default and user colors (if present) 2016-07-18 11:50:38 -04:00
8c944c08ea Normalize API rename part 2 2016-07-18 17:37:13 +02:00
318472ab6e Update pingback to use ArdourCurl 2016-07-18 16:46:59 +02:00
e9a2eea867 remove old a3_curl API and switch some curl calls
Keep freesound-moocher as is until freesound-apiv2 branch is merged
or rebased.
2016-07-18 16:46:59 +02:00
004b57e9f6 ArdourCurl: prepare to unify various curl calls
mainly motivated by a central location to setup SSL.
2016-07-18 16:46:59 +02:00
05ec8c46a7 pingback:: use curl_free() for pointers returned by curl_easy_escape()
As per the curl documentation, use curl_free() for pointers returned by
curl_easy_escape() rather than plain free().
2016-07-18 10:53:48 +02:00
6424a0eab9 fix cURL/SSL
pingback comes first. We need defaults (with SSL). Later explicit
(Freesound Moocher) and implicit (curl_easy_init) calls to curl_global_init
are idempotent and won't get the flags back.
2016-07-17 19:16:45 +02:00
9c2682d6f1 quick hack to test SSL in bundles
this needs to be reverted, and we need a proper curl wrapper,
shared by video-timeline AND freesound moocher
2016-07-17 17:03:48 +02:00
1a7fd81f40 fix double quote in fr.po 2016-07-16 19:09:15 +02:00
5a8553f02c repeat "Scan" button in plugin sub-menus 2016-07-16 18:50:59 +02:00
786cb746d0 Better choice for ports on external send creation
Ardour tried to make an educated guess at the initial number of outputs
for a new send. It used the channel configuration of the master bus, if
it existed, else the channel configuration of the route itself.

That guess is good in most cases, but in the case of a track/bus without
audio channels, creating a send with audio doesn't make sense. In that
case, also use the route outputs as a base for the send configuration.
2016-07-16 02:29:58 +02:00
813b92c85b Review, import and augment translations from edwsaintesprit@hotmail.com 2016-07-16 02:27:31 +02:00
15433457f2 export RT support as Timespan option 2016-07-16 02:15:56 +02:00
d0f594ffd0 adjust plugin-UI height when toggling expanders 2016-07-16 02:12:16 +02:00
93ffece465 hotfix C++ locale (OSX, windows) 2016-07-15 16:10:42 +02:00
bfc6b6a3ab Update french translation 2016-07-15 00:04:35 +02:00
bb1a636633 Make french translation up-to-date with Ardour's current code 2016-07-15 00:04:35 +02:00
167b9dda37 fix OSX compilation 2016-07-14 23:08:23 +02:00
83d0a2d2a1 fix file permissions - themes are not executable 2016-07-14 21:41:16 +02:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
f53655d17c NO-OP whitespace 2016-07-14 18:48:31 +02:00
dcad5a6dfe fix plugin-analysis for VST (no in-place processing) 2016-07-14 18:43:19 +02:00
9da43c5ceb UIConfig needs C numeric locale while setting GTK color theme 2016-07-14 11:37:48 -04:00
521fe586d7 correctly initialize C++ locale as well as C locale 2016-07-14 11:37:48 -04:00
09bd7a4bca another i18n/.po update 2016-07-14 06:21:03 -04:00
bd865c8c90 fix plural form snafu in translation macro 2016-07-14 06:20:17 -04:00
bbc3447005 another i18n/.po update 2016-07-14 06:19:20 -04:00
81a10a26e0 regenerate and manually fix all PO files so that ./waf i18n doesn't generate unnecessary errors 2016-07-14 06:19:19 -04:00
d46e8a3d8b make ./waf install do the right thing with color files 2016-07-13 21:49:28 -04:00
868ed09499 better color choice for control master controls box in editor 2016-07-13 18:04:00 -04:00
dc43189c7e fix save/restore of preferences torn-off-window state 2016-07-13 16:39:26 -04:00
699d008e06 use Session::cancel_all_solo() 2016-07-13 14:33:46 -04:00
eab3c57b83 fix odd double conditional 2016-07-13 13:43:31 -04:00
0784660d91 set a theme color for VCA axes in the editor 2016-07-13 13:09:57 -04:00
065d9434b9 fix stem-export of no-input busses/tracks 2016-07-13 04:59:26 +02:00
0c914b8f1e initialize more uninitialized variables.. 2016-07-13 04:31:34 +02:00
28bb82cee7 remove VCA drop button 2016-07-12 17:05:07 -04:00
7ed6dab340 use new midi-note-name API 2016-07-12 23:02:46 +02:00
92713eaadf VCA/Control Masters are displayed at fixed positions (initially), so insert-at options are irrelevant when adding them 2016-07-12 16:55:12 -04:00
5408278802 VCA/Control Masters have no signal, so output i/o options are irrelevant when adding them 2016-07-12 16:51:02 -04:00
fc06525bb2 two more places where the user can explicitly set the session end now also make the end non-free 2016-07-12 12:31:02 -04:00
774ad0752a GUI side of : once the user has explicitly set the session range end, playlist/range changes do not move it.
The user may drag the marker, edit in the Location UI, or use nudge, to set the end
2016-07-12 11:19:49 -04:00
53274c5bae do not show windows derived from ArdourDialog at startup.
See code comment for more details
2016-07-12 10:27:19 -04:00
600697513e when using toggle-editor-and-mixer, if current tab is neither, go to mixer first.
This makes using Alt-m (the default binding) feel a lot more sensible
2016-07-12 09:42:34 -04:00
2afaa51717 remove pointless version of Stripable::set_presentation_order() 2016-07-12 09:20:50 -04:00
c49ac91b01 add mouse interaction to inline display 2016-07-12 14:38:28 +02:00
3c99ab0fb9 more compact generic knob-ui layout 2016-07-12 04:02:33 +02:00
10d11e0544 add _FrnchFrgg_ to credits 2016-07-11 18:57:04 +02:00
2f535e3410 fix OSX compilation (flat namespace)
reference to 'Rect' is ambiguous
..../CarbonCore.framework/Headers/MacTypes.h defines
typedef struct Rect
2016-07-11 13:42:42 +02:00
1a59019d33 tweak generic plugin knob-widgets
remove label, use tooltip (saves space, more compact layout)
2016-07-11 03:46:33 +02:00
d43d220f1f extend ArdourKnob ToolTips
allow to set/change tooltip-prefix and set a "printer" in preparation
for properly using the Knob in Plugin UIs
2016-07-11 03:45:13 +02:00
nick_m
b8a7ee001b Fix potential infinite loop in TempoCurve::set_position()
- it was previously possible for frame_step to be zero for tempo sections with
	  a short duration, resulting in endlessly adding 0 to current_frame.
2016-07-11 03:53:36 +10:00
7745a37394 NO-OP whitespace 2016-07-10 15:59:50 +02:00
140258d8ab remove reference "const int32_t&" -> const int32_t"
this simplifies lua-bindings and also let's the compiler worry about
constant primitive types.
2016-07-10 15:30:41 +02:00
8ff46aa9c6 re-layout import dialog (better fit for narrow screens)
The instrument dropdown can be very wide (depending on available synths)
and combined with other dropdowns and the copy-checkbox in a single row,
the min. width was well above 1400px.
2016-07-10 14:08:24 +02:00
9389ee1e96 Better heuristics for guessing the primary type of an input or output
In order to choose which port name to display (if any) in the button,
MixerStrip::update_io_button() first chose a primary type for the input
or output. It was AUDIO in all cases, except if the route was a
MidiTrack where the primary type was MIDI.

In the latter case, it enabled the following code of update_io_button()
to show the MIDI sources feeding the MidiTrack rather than showing an
unhelpful dash.

But this simple heuristic has several shortcommings:
 - Going further, tracks and busses will probably loose strong types so
   the approach is not future-proof;
 - It doesn't take midi busses into account, yet there is no reason for
   them to be handled differently than midi tracks;
 - It falls short when the midi track contains a synthesiser and is
   meant to output audio.

Improve the heuristics by choosing the data type as follows:
 A) If there are connected audio ports, consider audio as primary type.
 B) Else, if there are connected midi ports, consider midi as primary type.
 C) If there are audio ports, consider audio as primary type.
 D) Else, if there are midi ports, consider midi as primary type.

These new heuristics give the same results for audio tracks and busses
(whose audio inputs have not been removed), and the same result for the
input of midi tracks (again, provided the inputs have not been tampered
with). It improves the situation for inputs of midi busses, and output
of midi tracks and busses, especially when synthesisers are in use.
2016-07-09 21:08:16 +02:00
35b4cb91d2 update_io_button: store input() or output() in a variable
This avoids repeating "if (for_input)" checks.
2016-07-09 21:08:16 +02:00
nick_m
0e2ed90cfc Revert incorrect 'optimisation' from 4f7a4cd233.
- fixes regression in stacked layering display.
2016-07-10 02:18:38 +10:00
nick_m
23da9acf7e Minimise duplicate calls to CairoWidget::set_dirty() in the editor summary.
- many regions may be changed by one operation.
2016-07-10 02:18:38 +10:00
nick_m
a44c8b96ae Edit note dialog fixes.
- position display is session-relative

	- Add missing undo to note edit.
2016-07-10 02:18:38 +10:00
nick_m
5f0ab71989 Midi note resizing uses exact beat. 2016-07-10 02:18:38 +10:00
nick_m
11f002ddc4 Use exact beat when adding midi notes. 2016-07-10 02:18:38 +10:00
nick_m
99653ae2ca Simplify Editor::mouse_add_new_meter_event() a bit. 2016-07-10 02:18:38 +10:00
nick_m
0bdbe56cf1 Stop passing references to things that may disappear when a metric section is replaced. 2016-07-10 02:18:37 +10:00
nick_m
39b70ceced Check meter/tempo section exists in copy drag. 2016-07-10 02:18:37 +10:00
nick_m
180445c18c Indicate meter frame even when adding a music-locked meter from the gui. 2016-07-10 02:18:37 +10:00
nick_m
3ee7972069 AudioRegionView - don't do coverage frames unless we're in stacked mode. 2016-07-10 02:18:37 +10:00
nick_m
f65c592567 Editor region list only updates columns that have changed, 2016-07-10 02:18:37 +10:00
nick_m
89ea747943 Make bbt ruler visible in default session. 2016-07-10 02:18:37 +10:00
nick_m
9603233a68 Fix note trimming over tempo changes, correct note length properly when resizing midi region. 2016-07-10 02:18:37 +10:00
nick_m
13c851f3cf Restore earlier midi region trim display. 2016-07-10 02:18:37 +10:00
nick_m
447f9ee062 Exact beat for added regions. 2016-07-10 02:18:37 +10:00
nick_m
b732147676 Use Note::set (Rect) for speed improvement when rendering notes. 2016-07-10 02:18:37 +10:00
nick_m
39692eed66 Add Note::set (Rect) for optimisation purposes (minimise begin/end changes) 2016-07-10 02:18:37 +10:00
nick_m
71ed5865f5 Temporary work-around for note colour. 2016-07-10 02:18:37 +10:00
nick_m
db686cca38 Show correct bbt representation of region length in region list.
- fixes single-tempo assumption.
2016-07-10 02:18:37 +10:00
nick_m
7a6efaaf3d Quick fix to get trim working again (bahaving oddly during trim right now) 2016-07-10 02:18:37 +10:00
nick_m
32a579ec28 Fix ordering thinko in note selected colour. 2016-07-10 02:18:37 +10:00
nick_m
550f2925cc Performance - don't redisplay model immediately in MidiRegionView::enable_display ().
- allows MidiRegionView::reset_width_dependent_items () to do it
	  as intended (i think).
2016-07-10 02:18:36 +10:00
nick_m
e856615c75 Performance tweak - NoteBase doesn't recalculate colour as often.
- not sure if we can store this atm.
2016-07-10 02:18:36 +10:00
nick_m
3c1bc99df9 Improve midi model redraw performance by caching colours. 2016-07-10 02:18:36 +10:00
nick_m
6b0eadc62f Use mostly beat-based calculation for displayed midi note position. 2016-07-10 02:18:36 +10:00
nick_m
0e63fa65b5 Remove frame conversion for MidiRegionView::note_in_region_range(), speed up tempo dilation 2016-07-10 02:18:36 +10:00
nick_m
93c24e4433 Paste uses exact beats. rework _start_beats calculation in copy-with-offset ctor. 2016-07-10 02:18:36 +10:00
nick_m
94e0a15325 Exact beat - provide audio->music mapping for region split.
- for those not in the know, this series provides a way to
	  remove the temporal distortion introduced when using an
	  audio frame-based gui for music-locked objects.

	  In short, the gui uses an audio frame representation to move
	  objects. It displays the object using frame_at_beat(), quantizing
	  the time value to audio frames. This is fine until the user selects
	  that frame but expects it to be interpreted as a beat.
	  Thus beat_at_frame() would not produce the user-expected beat
	  (temporal quantization error of up to 0.5 audio samples).
	  This is one method of mapping audio time to music time accurately.
2016-07-10 02:18:36 +10:00
nick_m
2d5238d875 Make some musical operations on music-locked regions operate in beats.
- use exact beats to determine frame position.
	- see comments in tempo.cc for more.
	- this hasn't been done for split yet, but dragging and
	  trimming are supported.
2016-07-10 02:18:36 +10:00
bda5a4a4e6 fix incorrect behaviour of mixer strip [X] (hide) buttons 2016-07-08 14:42:54 -04:00
b382ad8b22 towards a generic plugin grid layout 2016-07-08 18:19:31 +02:00
77e50f56f9 first step to separate generic-gui layout 2016-07-08 18:19:31 +02:00
da0bd3d8a5 fix region action sensitivity issues.
Desensitize all region actions initially, and toggle that state
appropriately when region selection changes
2016-07-08 08:44:21 -04:00
d7caa89b96 implement LeatusPenguin's excellent idea for the plugin manager window (#6916) 2016-07-06 18:25:57 -04:00
6e469ffb5e merge MixerActor API (back) into Mixer_UI; make solo/mute/recenable actions there do the right thing 2016-07-06 15:20:42 -04:00
da7d7f9502 many changes associated with rationalizing selection flow 2016-07-06 13:39:10 -04:00
9ff94edd6e some comments 2016-07-05 23:49:58 +02:00
2f71967be2 fix crash when loading a saved visual state 2016-07-05 23:49:50 +02:00
412fcafda0 Plugin GUI activate/enable update (prefer enable) 2016-07-05 23:30:21 +02:00
97ef89357a remove useless binding (fixes broken windows build) 2016-07-05 02:38:02 +02:00
4f7d3069ab highlight area below automation lanes 2016-07-05 00:39:43 +02:00
906f7e1edd GUI doesn't need to listen to old ControlProtocol signals for stripable selection 2016-07-04 12:45:53 -04:00
11f8e3adc4 stop-and-forget-capture should not toggle transport state, only stop it 2016-07-04 09:41:21 -04:00
bca1be28e3 avoid unnecessary multiple calls to RouteUI::update_monitoring_state() 2016-07-04 09:27:33 -04:00
d233b33707 operate directly on realtime controls, not via Session 2016-07-04 09:27:33 -04:00
d6338e6dfe unbind pangomm 1.30 API for compat. 2016-07-04 10:36:11 +02:00
a373e4cfc8 UI: Add editor_mixer route pointer to session so all UIs can know the same current_strip even in a selected group. 2016-07-03 18:22:09 -07:00
b68d537ded Prepare to use knobs in Generic Plugin UI 2016-07-04 00:20:11 +02:00
ff50b3780a Replace Gtk::ToggleButton with ArdourButton in Generic Plugin GUI 2016-07-04 00:20:11 +02:00
1f2d1b586e allow AutomatoinContoller to render as Knob instead of Slider. 2016-07-04 00:20:11 +02:00
1343f33706 add an ArdourButton/SpinButton Widget
alternative to ArdourDisplay (dropdown) to provide numeric entry with
ArdourKnob.
2016-07-04 00:20:11 +02:00
602b1597a4 fix background of ArdourButtons with no Body 2016-07-04 00:20:11 +02:00
f49d0a1b1d add PangoCairo lua bindings 2016-07-04 00:20:11 +02:00
d027ce8006 add Lua bindings for reference counted Cairo::ImageSurface 2016-07-02 23:36:34 +02:00
b47d7aec2d fix Preference checkbox sensitivity for inline displays 2016-07-02 23:36:34 +02:00
08d7485e85 fix inline display when cairo_surface_has_snapshots 2016-07-02 23:36:34 +02:00
8b142a2fd6 make Selection catch up with session/libardour-side selection status at session load 2016-07-02 16:09:19 -04:00
36d7e3c61b fix use of removed Session::get_nth_stripable() 2016-07-02 16:08:58 -04:00
13ce731fc7 more hacks to gkt rc file to get text entries to behave 2016-07-02 13:54:16 -04:00
e88e9a278a no need for a widget name here 2016-07-02 13:53:30 -04:00
7565e21341 partially revert incorrect changes to gain meter text entries/displays 2016-07-02 13:53:18 -04:00
ba0aa577b0 fix missing logic for RouteGroupMenu 2016-07-02 11:05:02 -04:00
e19646c3b1 remove commented code 2016-07-01 18:03:48 -04:00
176660fff4 fix logic of RouteUI::set_color_from_route() 2016-07-01 18:03:29 -04:00
1208c3472f remove gtk_entry_* colors from themes except for cursor color 2016-07-01 17:48:46 -04:00
fe9ee90b9a MotionFeedback vanished long ago 2016-07-01 17:47:05 -04:00
791c6d4d1f drop use of gtk_entry_* colors (except cursor); use original base/text choices but avoid using selected for entire bg 2016-07-01 17:47:05 -04:00
47144ee7f4 minor no-op hacks (unneeded or suboptimal code) 2016-07-01 17:47:05 -04:00
dd79aadb94 add (essentially random) color defs for text entries to other 3rd party themes 2016-06-30 17:42:48 -04:00
fcef47c4bb NO-OP: remove trailing whitespace 2016-06-30 17:41:11 -04:00
85cddf30ee assign appropriate styles for text entry and spinbuttons
SpinButtons do odd things to draw the two arrow buttons. So for now, leave them with the default theme,
even though this makes their text entry component different from the other text entry widgets
2016-06-30 17:41:11 -04:00
21eb660d9b remove non-zero xthickness from "small_entry" widgets (gain display, peak display in mixer strip).
Unnecessary and wrong once you can see the border in a different color from the base
2016-06-30 17:41:11 -04:00
5c12c421e7 new style for Gtk::Entry widgets
More legibility and easier to figure out what colors are used for what
2016-06-30 17:41:11 -04:00
190c18aa5c use a more appropriate @color name for the cursor color in a text entry 2016-06-30 17:41:11 -04:00
d243731c72 add text entry cursor color to dark theme 2016-06-30 17:41:11 -04:00
a8a06104c1 add new colors to dark theme 2016-06-30 17:41:11 -04:00
b8d92ba356 no reason to make floating text entry be in STATE_SELECTED when constructed 2016-06-30 17:41:11 -04:00
0809f088be Revert "remove unnecessary duplicate loading of GTK RC file"
This reverts commit 694d805bb0.
2016-06-29 17:38:40 -04:00
39bf4feecd consistent mixer sidebar layout (group, tracks show/hide)
* move checkbox to the left (unaffected by scrollbars)
 * use same expand & sizing strategy for both
2016-06-29 17:27:18 +02:00
694d805bb0 remove unnecessary duplicate loading of GTK RC file 2016-06-29 01:23:12 -04:00
bb5fc5df6d fix german translation
'msgid' and 'msgstr' entries do not both end with '\n'
2016-06-28 12:46:34 +02:00
ae80aba3a9 quick prototype to allow changing *all* gain automation 2016-06-28 00:09:00 +02:00
b027d9df42 BSD portability
Adopted from Michael Beer -- GH pull-request #232
2016-06-26 16:44:45 +02:00
e9a8ccc7e2 major internal plugin & processor API change:
Pass current (latency compensated) cycle times to plugin.
This fixes time-reporting to plugins and also fixes automation
and when bouncing (the session->transport* is not valid) etc.
2016-06-25 02:23:56 +02:00
6a12022ccf fix vamp path:
* append, not replace
* make it work on wine/ardour
2016-06-25 00:44:04 +02:00
265c60126a fix KeyEditor::print() for windows (hopefully, untested) 2016-06-24 22:45:25 +02:00
6753efb780 show tooltips on favorite plugins -- closes #6902 2016-06-23 00:43:14 +02:00
68b6d0d796 fix some more thinkos related to user color file management 2016-06-21 19:39:13 -04:00
74f567b789 remove debug output 2016-06-21 19:32:50 -04:00
fdaaaacdbf remove old file 2016-06-21 19:27:11 -04:00
d2c4b6fe94 rename unastudia theme file to match per-program-name convention 2016-06-21 19:26:51 -04:00
120c4bd9f3 fixes for color theme manager's handling of color file choices, notably while running from source tree 2016-06-21 19:26:06 -04:00
d3a0355b55 tweaks to how UIConfiguration::color_file_name() operates 2016-06-21 19:26:05 -04:00
3884cae064 fix default color file name in code default definition 2016-06-21 19:26:05 -04:00
d4c26d63f6 remove unneeded declaration 2016-06-21 19:26:05 -04:00
a38b9737a7 fix incorrect color file name in default UI config file 2016-06-21 19:26:05 -04:00
d3d255753f use running_from_source_tree() 2016-06-21 19:26:05 -04:00
40bb2a5a08 use running_from_source_tree() 2016-06-21 19:26:05 -04:00
0cd43a553e provide ARDOUR_UI_UTILS::running_from_source_tree() 2016-06-21 19:26:05 -04:00
9c32bfdf4c add comment button fill color alias for *all* themes 2016-06-21 15:01:03 -04:00
f2648fdf4c add tempo curve colors to unastudia theme.
Colors need adjusting by a theme owner/maintainer
2016-06-21 14:59:02 -04:00
0d37928807 add shuttle colors to unastudia theme.
Colors need adjusting by a theme owner/maintainer
2016-06-21 14:57:38 -04:00
544f4a12dc new "studio one" theme from user straightothebar 2016-06-21 13:41:13 -04:00
e4ba62e4c4 show first word of comment on track's comment-button 2016-06-21 18:18:54 +02:00
6e10752a98 fix section naming in bindings file 2016-06-21 08:58:59 -04:00
b5a134d73a fix comment-button highlight 2016-06-20 00:59:21 +02:00
321615e8ea initial working version of "printing" keybindings (via a browser) 2016-06-15 19:46:12 -04:00
nick_m
8b0c5b8426 Register colour aliases for tempo curve. 2016-06-16 02:06:40 +10:00
1413bca842 no divider/full allocation of LHS of mixer "display" with no VCAs 2016-06-14 16:10:59 -04:00
351b43d51b avoid crash after removing a VCA 2016-06-14 16:10:32 -04:00
a843013165 no debug output, either 2016-06-14 12:22:04 -04:00
cc907f3df5 no pingbacks if running a development version 2016-06-14 12:21:46 -04:00
30fd6ed4de mark mixer strip name label (button) as having occasional text
Sometimes it shows a track number, sometimes not, but this should never affect its size request
2016-06-14 11:48:50 -04:00