Commit graph

14156 commits

Author SHA1 Message Date
Paul Davis
3be5f658ea use newly factored canvas in gtk2_ardour 2014-08-17 17:43:03 -04:00
Paul Davis
98aa604aa0 refactor Canvas so that all Items have children; add Container abstract base class; rename Group as "Layout" and retain only drawing semantics 2014-08-17 17:42:59 -04:00
Robin Gareus
eeca22c67a virtual abstraction of Alsa Raw+Seq 2014-08-17 17:42:45 -04:00
Robin Gareus
048d127208 prepare ALSA sequencer 2014-08-17 17:42:39 -04:00
Robin Gareus
35b5f853cd alsa sequencer device/port listing 2014-08-17 17:42:34 -04:00
Paul Davis
dc757ab7c1 fix conflicts caused by XML-ization of old 2-canvas design 2014-08-17 17:40:48 -04:00
Paul Davis
af3143ba4a manually catch up on API changes in libs/ardour/import.cc 2014-08-17 17:40:19 -04:00
Paul Davis
157512cce3 fix missed API changes in editor dragging code 2014-08-17 17:39:50 -04:00
Paul Davis
4af36f221d new API for Session::possible_states() required minor changes in session dialog logic 2014-08-17 17:39:19 -04:00
Paul Davis
2219436888 clean up un-fixed merge conflict 2014-08-17 17:38:48 -04:00
Paul Davis
2987e8ba8b fix some confusion when redrawing editor/mixer track/strip displays after track/bus deletion
The code relied on the idea that the order-key resync that occurs after deletion would change the order keys and thus cause
a redisplay. But since both the editor and mixer can initiate an order-key resync, the other window's resync will actually
do nothing (the order keys will already be correct). This led to the incorrect placement of material in the tracks canvas,
because the first resync triggered a redisplay while the route still existed, and then the second resync didn't cause a
redisplay (repositioning) but the canvas elements representing the track went away.

Fixed by forcing a redisplay in both editor and mixer if a route deletion is believed to be triggering a row deletion
in their underlying data models.

Conflicts:
	gtk2_ardour/editor_routes.cc
2014-08-17 16:39:01 -04:00
Paul Davis
207bbbb395 fix some confusion when redrawing editor/mixer track/strip displays after track/bus deletion
The code relied on the idea that the order-key resync that occurs after deletion would change the order keys and thus cause
a redisplay. But since both the editor and mixer can initiate an order-key resync, the other window's resync will actually
do nothing (the order keys will already be correct). This led to the incorrect placement of material in the tracks canvas,
because the first resync triggered a redisplay while the route still existed, and then the second resync didn't cause a
redisplay (repositioning) but the canvas elements representing the track went away.

Fixed by forcing a redisplay in both editor and mixer if a route deletion is believed to be triggering a row deletion
in their underlying data models.

Conflicts:
	gtk2_ardour/editor_routes.cc
	gtk2_ardour/editor_routes.h
2014-08-17 16:29:16 -04:00
Paul Davis
08768cef90 ensure that all waveviews have ALL their colors set accurately before first render
Avoids occasional bright red zero line drawn because the color(s) had not been reset correctly
2014-08-17 16:28:11 -04:00
Paul Davis
27be517b9f explanatory comment 2014-08-17 16:28:05 -04:00
Paul Davis
281ebd951e correct conversion of drop y-position into trackview for drag-n-drop of external files 2014-08-17 16:28:00 -04:00
Robin Gareus
ca90eea96c no more stack smashing, renice debug messages 2014-08-17 16:27:56 -04:00
Robin Gareus
b1e3adbc56 latency measurement dialog updates:
* distinguish errors: no ports and no engine.
* fix "No measurement results yet" message at successful end
* stop update callback
2014-08-17 16:27:50 -04:00
Robin Gareus
8ca38ef634 engine-dialog: properly restore previous active state 2014-08-17 16:26:51 -04:00
Robin Gareus
f2c98d886b rework raw-midi drain strategy (workaround for sync devices) 2014-08-17 16:26:46 -04:00
Robin Gareus
c1345f2bb7 fix port-unregister (on failed latency measurement) 2014-08-17 16:26:38 -04:00
Paul Davis
9efe20d919 fix non-working cmd-Q on OS X. For some reason the shenanigans related to removing it from various menus as part of OS X standards breaks the accel system 2014-08-17 16:26:32 -04:00
Paul Davis
b2e2b7639c change the way font specifications are used in UI config files
If no font family is specified, enforce use of Sans to match GTK behaviour (which we inadvertently relied on, it appears)
2014-08-17 16:26:28 -04:00
Paul Davis
cca9f676a1 modifications to region drag implementation
(1) if we're dragging over the drop zone, then x-axis motion is irrelevant for threshold-of-move
(2) store original time axis view of a dragged region so that if we create a new track with the region drag, it can be the same height
2014-08-17 16:26:21 -04:00
Paul Davis
7f63055578 various fixes for places that used get_font_for_style() ... converted to use UIConfiguration::get_canvasvar_*Font()
Conflicts:
	gtk2_ardour/mono_panner.cc
2014-08-17 16:26:14 -04:00
Paul Davis
4311b70d4f add bold monospace font specs to canvas_vars/ardour3_ui_default.conf 2014-08-17 16:25:31 -04:00
Paul Davis
7599947477 use new canvas cursor API to manage cursors while embedding audio 2014-08-17 16:25:25 -04:00
Paul Davis
9ea96981b1 fix potential crash in Editor::set_canvas_cursor() if inadvertently passed a null cursor (semantics are different on OS X vs. X Window) 2014-08-17 16:25:05 -04:00
John Emmas
f80271b0df Remove (no longer needed) sources from an MSVC project 2014-08-17 16:24:56 -04:00
John Emmas
8d0e77a4d8 Move the definition for 'strtok_r' (to avoid clashing with a different definition in pthread_win32) 2014-08-17 16:24:48 -04:00
Paul Davis
833983e7af change verbose cursor font selection to use canvas variable mechanism, plus a few developing comment edits 2014-08-17 16:24:42 -04:00
Paul Davis
ad67a36d7d more work on cursor tracking state 2014-08-17 16:24:38 -04:00
Paul Davis
2ee319e317 explanatory comment 2014-08-17 16:24:34 -04:00
Paul Davis
499cec2acb fix naming of selection rect-related items 2014-08-17 16:24:28 -04:00
Paul Davis
1ba94eab60 if we're not going to notify parents of bbox changes while an item is hidden, we need to remind it when the item is hidden or shown 2014-08-17 16:24:21 -04:00
nick_m
5f8205ef0b Summary changes :
* Use correct image format for background image
	* Construct thr ImageSurface as per cairo docs
	* Place start/end markers in background image
Tempo bars :
      * adjust beats display threshold to (hopefully) coincide with BBT ruler better.
2014-08-17 16:24:15 -04:00
Paul Davis
4d4851cffc a whole slew of changes related to centralizing and rationalizing cursor management.
Debugging output left in place to help address the reports that will come in as people test this more
2014-08-17 16:23:52 -04:00
nick_m
929a787b71 Canvas tweaks.
* Only queue a draw for changed items that are set visible and in-window.
2014-08-17 16:23:37 -04:00
Paul Davis
3ef2430ae0 a set of 3 fixes that cure Canvas::Text leaving dirty pixels when being dragged. or might not - testing is non-deterministic, which is alarming 2014-08-17 15:34:13 -04:00
Paul Davis
df72a6ca25 use a different approach for indicating expose rects (from robin gareus). #ifdef'd out by default 2014-08-17 15:34:05 -04:00
Robin Gareus
35dfe93322 prepare midi-latency measurement using sysex messages 2014-08-17 15:33:59 -04:00
nick_m
36a93b0d18 Cache entries are now region colour aware. 2014-08-17 15:33:22 -04:00
Paul Davis
2e8f7c5c93 a set of inter-related subtle changes to get vertical autoscrolling to work, or at least work better. 2014-08-17 15:33:01 -04:00
nick_m
ac39db608f Render tracks and regions to a background image in the editor summary.
Connect to editor's SelectionChanged signal to display corresponding region colour change.
2014-08-17 15:32:55 -04:00
Tim Mayberry
9b0308a6aa Remove PathScanner class from libpbd 2014-08-17 15:32:50 -04:00
Tim Mayberry
10a6fe553e Replace all use of PathScanner with equivalent functions from pbd/file_utils.h 2014-08-17 15:32:42 -04:00
Tim Mayberry
576c81d50e Remove unused header includes 2014-08-17 15:32:33 -04:00
Tim Mayberry
2339fdc1aa Add default arguments to match those in PathScanner::operator() 2014-08-17 15:32:29 -04:00
Tim Mayberry
e75f227fe3 Move member functions from PathScanner to functions in pbd/file_utils.h
This allows us to remove PathScanner source file and keep PathScanner class
as header only until it is removed
2014-08-17 15:32:25 -04:00
Tim Mayberry
2334880bc9 Move PathScanner::operator() into header 2014-08-17 15:32:20 -04:00
Tim Mayberry
7974046301 Remove unused methods in PathScanner
Now that these methods are only a few lines it doesn't make much sense
to keep them seeing as they are unused. There are also functions with
near identical functionality in pbd/file_utils.h
2014-08-17 15:32:16 -04:00