Commit graph

7445 commits

Author SHA1 Message Date
Paul Davis
8641dcdb0c permit initial contents of a FloatingTextEntry 2014-11-05 07:41:43 -05:00
Paul Davis
f1e6b28ab7 use ArdourCanvas::TimeRectangle for regions, notes, markers 2014-11-03 21:48:08 -05:00
Paul Davis
90825340c9 move start of a time axis view back to 0.0 on the x-axis, not 1.0 2014-11-03 21:48:08 -05:00
David Robillard
9f3f017736 Check whether frequency controls are audible or low and provide appropriate controls.
Always clamp set value to controller range.
2014-11-03 18:41:57 -05:00
David Robillard
6e16f69c26 Add menu to set frequency controls in beats, and half or double current value.
Test with e.g. fomp:cs_phaser1_lfo LFO frequency.
2014-11-03 17:29:11 -05:00
David Robillard
35672fb80a Note selector dialog for note controls. 2014-11-03 16:37:19 -05:00
David Robillard
7204702c3f Reduce coupling between Plugin and PluginInsert. 2014-11-03 13:40:50 -05:00
David Robillard
21dde8f2a7 Fix crash when showing UI for plugins with output control ports. 2014-11-02 13:02:54 -05:00
Paul Davis
23d95e1bca repropagate button press event outside of FloatingTextEntry so that the click is still effective, as well as terminating the edit 2014-11-02 11:25:49 -05:00
Paul Davis
f76109d873 use modal grab and event_is_inside_widget_window() to provide "expected" behaviour when editing in a FloatingTextEntry 2014-11-02 08:58:07 -05:00
Paul Davis
e4e6f00103 slightly increased debugging output for -D accelerators 2014-11-02 08:57:58 -05:00
David Robillard
47c4929bc2 Display gain and midiNote plugin parameters/properties nicely.
Show fancy values on generic GUI controls, automation lane controls, and automation lane verbose cursor.
Fix text display of midiNote values.
Make bigstep of midiNote parameters 12 (one octave).
Add ARDOUR::value_as_string() as a stateless one-stop-shop for value printing.
2014-11-02 02:10:24 -05:00
David Robillard
8a128b33d3 Automation of LV2 plugin properties.
Work towards ParameterDescriptor being used more universally to describe control characteristics.
2014-11-02 02:10:24 -05:00
David Robillard
6dfb11c2d0 Move ParameterDescriptor from Plugin to its own header.
This fixes circular dependency issues that arise when using ParameterDescriptor more widely.
2014-11-02 02:10:24 -05:00
David Robillard
bd6ba1717e Decouple ControlUI from port index. 2014-11-02 02:10:24 -05:00
David Robillard
0178f85b05 Don't complain about properties with plugins that do not support them. 2014-11-02 02:09:14 -05:00
Robin Gareus
7baa3275e0 one off by one off - red-selection outline
This mitigates issues introduced with 3.5-3406-g90872c2
but is not a final solution. The x-axis is still broken.
see #5589 comment0015955
2014-11-01 21:05:43 +01:00
Robin Gareus
dbecf44416 NOOP, just whitespace/indenting 2014-11-01 18:24:47 +01:00
Robin Gareus
049c11de58 Slider Controller API Change
Prepare to allow BarController (with Spinbutton) to translate
internal/interface values for the SpinBox.

(The change is irrelevant for the fader/slider itself which
always use the [user-]interface value)
2014-11-01 18:22:29 +01:00
Robin Gareus
45b7a03b7b retain selection on track-height change 2014-11-01 16:54:52 +01:00
Robin Gareus
52f44dc4da convert interface <> internal values for all automation
fixes Send-Fader, Gain-Automation and various Plugin-Slider ranges
2014-11-01 07:27:35 +01:00
David Robillard
5de6c21ec1 More generic RT-safe implementation of LV2 properties. 2014-10-31 20:46:43 -04:00
David Robillard
0a60077a61 Fix spelling error. 2014-10-31 20:46:09 -04:00
David Robillard
db98083f20 Remove unused variable. 2014-10-31 20:46:09 -04:00
Paul Davis
cbb4be908a add new floating text entry class (ported from Tracks) 2014-10-31 12:26:57 -04:00
Robin Gareus
f7ce57e5b2 plug memory leak 2014-10-31 06:02:32 +01:00
Robin Gareus
b8cea19b95 prototype [LV2]patch-change support for generic plugin UIs. 2014-10-31 03:26:47 +01:00
Robin Gareus
1648d9cbc6 fix "Session Setup" dialog obscures "File Open" dlg on windows. 2014-10-29 23:05:46 +01:00
Robin Gareus
da4365255c fix typo in 58fec98a
the documentation was correct: “GTK+ uses G_PRIORITY_HIGH_IDLE + 10
for resizing operations, and G_PRIORITY_HIGH_IDLE + 20 for redrawing
operations.”  but the priority for the idle visual changer was wrong.

fixes, follow-playhead and zoom/scrolling under load (no idle)
2014-10-29 18:31:13 +01:00
Robin Gareus
1d0612ceb6 redraw summary when theme preference changes & consolidate code. 2014-10-29 16:07:13 +01:00
Robin Gareus
fdedf7153e Kind of Blue 2014-10-29 12:06:20 +01:00
Robin Gareus
cca7ddf046 fix vertical canvas scrolling
* properly account for hidden tracks
 * allow to scroll to last track
2014-10-29 12:06:20 +01:00
Robin Gareus
300d765f17 fix summary display (offset on-canvas rulers) 2014-10-29 12:06:20 +01:00
Robin Gareus
ea26d70cad fix summary re-size
w/USE_CAIRO_IMAGE_SURFACE
2014-10-29 12:06:20 +01:00
Paul Davis
bb792c0e07 ugly hacks to make the peak display widget not act like a text entry widget. This should die. 2014-10-28 20:31:06 -04:00
Paul Davis
0abcce0735 Revert "change the peak display widget from Gtkmm2ext::FocusEntry to ArdourButton, since it is absolutely not editable."
This reverts commit 58f7d02bf2.

Conflicts:
	gtk2_ardour/default_ui_config.in
	gtk2_ardour/gain_meter.cc
2014-10-28 20:31:06 -04:00
Robin Gareus
4ed910748c don't show x-fade menu when right-clicking on frame handles
Fix crash with midi-regions (they have a frame-handle but no x-fade).
fixes 2nd part of #5992 (backtrace 20141021-B)

This is nicer in one way: When the cursor is "trim" the x-fade
context menu is no longer accessible.
And a bit worse: The x-fade context menu is only accessible on the
small fade-handles (boxes) and on the x-fade itself.
2014-10-28 16:43:45 +01:00
Robin Gareus
c0a28fca09 add win IRC channel 2014-10-28 02:40:04 +01:00
Robin Gareus
8dc41bb700 fix potential crash at session close (when port-matrix is visible)
remove_aux_or_listen() -> PortMatrix::route_processors_changed()
-> setup_global_ports() -> PortGroupList::gather() -> crash
if some session ports were already removed.
2014-10-27 21:15:39 +01:00
Robin Gareus
ec92524fe9 file binary compat is for windows in general (not msvc)
Fixes crash with MIDI file save/load.
2014-10-26 03:10:53 +01:00
Robin Gareus
baea04713f combine short periodic timeout functions for windows.
Fixes excessive CPU usage (spinlock instead of sleep/WaitForSingleObject)

MS Windows has a scheduler time-slice of 15ms.
Ardour has two fast timeout functions: The FPS timeout (20-60Hz, clock
video-monitor) and a fast-screen-update (25Hz, meters etc).
They are loosely coupled (async) and scheduled from the main application
thread (gtk main).

Since they're async, gtk schedules them as needed. Even though the actual
period of the separate timeouts is larger. The effective period between
all timeout callbacks is <15ms and the main application thread never idles.
2014-10-25 19:21:15 +02:00
Paul Davis
f900711136 port changes to ARDOUR::Location and ARDOUR::Locations APIs from Tracks to Ardour.
Fixes deadlocks caused by mutex on Locations list, and clarifies the purposes and uses of the class-level and
object-level change-related signals.
2014-10-24 12:18:46 -04:00
Robin Gareus
a7ca603ab6 show meter-bridge context-menu on mouse-down 2014-10-23 14:45:54 +02:00
Robin Gareus
c5e97ea21b Don't show meter-type menu for MIDI-only meters 2014-10-23 14:45:49 +02:00
Robin Gareus
730e09ce65 another round of compiler warning fixes 2014-10-23 05:31:40 +02:00
Robin Gareus
ca48fffd72 avoid name conflict with Note (gtk2_ardour/note.h) 2014-10-23 03:43:04 +02:00
Robin Gareus
c6a3d6bc48 small round of compiler warning fixes 2014-10-23 03:43:04 +02:00
Paul Davis
5ff0c6b319 prevent negative playhead positions from entering code via serialized state 2014-10-22 17:07:11 -04:00
Robin Gareus
aa7fdf82a0 windows: allow loading session with absolute path 2014-10-22 15:22:55 +02:00
Robin Gareus
1428d003df hide splash screen on Windows
..until we get GDK window stack to play along.
2014-10-22 14:30:11 +02:00