c91c028c37
do not add items twice to their canvas parent!
2017-01-19 00:24:54 +01:00
88b3aa926a
Accommodate newly introduced source(s) in our MSVC project (cairocanvas)
2017-01-16 15:21:47 +00:00
09a8ec534f
canvas::grid: get padding and margin to work; remove some debug output
2017-01-15 21:40:42 +00:00
7c17327f56
get grid layout working
2017-01-15 12:13:03 +00:00
04e346a3d8
tweak Grid repositioning code to be a little more O(N)
2017-01-15 12:13:03 +00:00
99b86f0f05
basic (and probably wrong) Canvas::Grid child placement
2017-01-15 12:13:03 +00:00
0d1a083a5d
include Canvas::Grid in build script
2017-01-15 12:13:03 +00:00
9ed87f6693
initial skeleton for a Grid canvas item
2017-01-15 12:13:03 +00:00
nick_m
3129370bc5
add ArdourCanvas::Flag::width()
2016-12-29 04:16:09 +11:00
004431426d
Towards packing CairoWidgets on ArdourCanvas.
2016-12-19 13:36:42 +01:00
218d376154
vertically center text in time rulers
2016-12-19 13:27:22 +01:00
6bbb2c72f0
NO-OP: whitespace
2016-12-19 13:27:22 +01:00
nick_m
d118a60090
fix unused Outside filled framed curve for constant points outside the draw area.
2016-12-16 02:54:10 +11:00
nick_m
49c6d13386
revert c3ab67dd
now that this misbehaviour is understood.
2016-12-16 02:52:39 +11:00
nick_m
d3ad6dc001
fix issue with disappearing tempo curve at constant tempi.
2016-12-16 02:50:07 +11:00
nick_m
9afe719827
amend incomplete change in previous commit.
2016-12-16 02:01:50 +11:00
nick_m
a99331a4e9
more work on patch change redisplay.
...
- fixes just-introduced undo crash.
2016-12-16 01:58:58 +11:00
nick_m
c3ab67ddb6
go back to always interpolating framed curve points.
2016-12-11 23:54:03 +11:00
f1f47664ff
fix compilation with newer version of *mm and gcc-6.2 (RefPtr<> cast)
2016-11-30 16:00:05 +01:00
24c799cde3
prefer bool operator
2016-11-30 12:15:35 +01:00
5ed764178a
Fix crash with empty patch-names.
...
An empty text will not produce a bounding box.
2016-10-29 19:57:43 +02:00
nick_m
92920307ae
Tempo curve cleanup, now also works on optimized builds.
2016-10-17 01:28:33 +11:00
1552547f65
stop using gkd_pango_context_get() in ArdourCanvas::Canvas and require concrete instances to supply a Pango::Context; do this for GtkCanvas and Push2Canvas
2016-10-13 17:18:54 -04:00
1fe19ead70
Accommodate newly introduced source(s) in our MSVC project (cairocanvas)
2016-09-30 08:20:14 +01:00
c8ae41d598
fix errors reported by pixman for meter redraws (and add more comments to help the coordinate challenged
2016-09-28 13:37:19 -05:00
81f2ed452b
provide ArdourCanvas::Text::{width,height}()
2016-09-27 14:59:32 -05:00
df5bb70616
optimize canvas meter redrawing (as in the non-canvas version)
2016-09-27 14:59:32 -05:00
1c94f6490e
bug fixes for vertically-drawn Canvas::Meter
2016-09-27 14:59:32 -05:00
fccd0da9c6
bug fixes for Canvas::Box
2016-09-27 14:59:32 -05:00
29b8072555
add canvas-based Meter object
2016-09-27 14:59:32 -05:00
85c1523611
add new Box container for Canvas.
...
API subject to change and improvement
2016-09-27 14:59:32 -05:00
ba82e673fd
add variant of Rect::expand() that allows different amounts in each direction
2016-09-27 14:59:32 -05:00
5d43d2e43f
don't do as much work if a Rectangle has no outline width or outline what values
2016-09-27 14:59:32 -05:00
f66f7ba136
make inclusion/exclusion of hidden children optional in Item::add_child_bounding_boxes
2016-09-27 14:59:32 -05:00
5672419fff
add Item::add_front()
2016-09-27 14:59:32 -05:00
095bdb7d40
make Item::child_changed() virtual
2016-09-27 14:59:32 -05:00
0613f8e3bd
put change_alpha() into ArdourCanvas namespace as intended
2016-09-27 14:59:31 -05:00
216ce7bcb8
a slew of unconnected mostly minor tweaks to get Push2 support back to where it was...
...
... prior to using the canvas for the video screen
2016-09-27 14:59:31 -05:00
d4a64299c5
Add missing header include guards in canvas library
2016-09-13 14:32:22 +10:00
0ff233d234
Update our MSVC project files to generate the most recent Ardour session file format (ver 5) rather than the older v3 format
2016-08-30 07:15:00 +01:00
eec294a97e
the endless quest to plug memory leaks -- episode 378
2016-07-25 17:16:32 +02:00
062712c691
Remove 'i18n.h' from some VC projects where it's no longer needed
2016-07-18 09:41:46 +01:00
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
205fbb99ad
canvas HSV color serialization needs LocaleGuard
2016-07-14 11:46:02 -04:00
a66ad18402
initialize some uninitialized variables
2016-07-13 04:31:34 +02:00
17b162c5da
add fill-area feature to poly-line
2016-07-05 00:39:39 +02:00
nick_m
360f87b217
Fix FramedCurve Outside fill for curve.
2016-06-04 07:03:18 +10:00
nick_m
1eb8216408
More FramedCurve render work
...
- draw last point correctly if applicable
- comment intent.
2016-06-04 06:40:59 +10:00
nick_m
62be6b2ed8
Fix framed curve thinko.
...
- in FramedCurve, the first _point is used for the bounding box.
Don't confuse this with actual data.
2016-06-04 06:00:41 +10:00
nick_m
575bb7792f
Small cleanup in FramedCurve.
2016-06-03 02:02:50 +10:00
nick_m
8f88f42ba9
Fix assorted drawing bugs in framed curve.
...
- treat drawing area of boxes and curves similarly.
- handle a redraw request between
the last sample and the last point.
2016-06-03 00:00:31 +10:00
81a2fe39e8
port 7e716d27
to XFadeCurve
2016-06-01 17:48:33 +02:00
nick_m
7e716d27a8
Fix conditional on uninitialised idx (via n_samples) in framed curve.
...
- possibly fixes drawing artefacts in the tempo curve.
2016-06-02 01:11:23 +10:00
nick_m
0d7f73cb27
Hopefully finally fix tempo curve flickering.
2016-05-29 05:12:07 +10:00
4c4bb98052
Accommodate newly introduced source(s) in our MSVC project (cairocanvas)
2016-05-28 10:43:50 +01:00
nick_m
2d31fa7bb1
Tempo ramps - finally fix flicker in framed curve.
2016-05-27 23:38:17 +10:00
nick_m
2a8104f2f8
Yr,[p ramps - fix flickering tempo curves when zoomed in.
2016-05-27 23:38:17 +10:00
nick_m
0c7ecc6cbb
Tempo ramps - add Canvas::FramedCurve and use it in the tempo marker bar.
2016-05-27 23:38:16 +10:00
nick_m
6209b3f445
Tempo ramps - revert earlier change to Canvas::Curve
2016-05-27 23:38:16 +10:00
nick_m
86b0268e8b
Tempo ramps - add visualtempo curve, dragging bbt or music rulers with constraint modifier dilates previous tempo.
2016-05-27 23:38:16 +10:00
nick_m
4f7a4cd233
Crapola - this is an experimental performance hack that must be reverted.
2016-05-27 23:38:14 +10:00
nick_m
7fc3b0c34c
Initial stab at tempo ramps.
...
Replaces the list of points in TempoMap with TempoSection functions, which
compute tempo-at or tick-at time relative to tempo section start.
TempoMap consults them additively to determine things like bbt_time(),
frame_time() get_grid() etc.
This has a marked effect on scrolling speed along with the code simplification
in the places it has been attempted.
Several things are broken here.
Currently every ramp except the last one is an exponential ramp. this may
be simple to fix :).
Mouse-over midi grid doesn't match mouse click grid. should also be simple.
Many things seem to work, but their accuracy should be in question until
each area has been addressed.
2016-05-27 23:38:09 +10:00
742e113a7b
backport canvas color functions from Mixbus
2016-05-17 18:17:51 +02:00
6d343ba3c6
fix LocaleGuard contstructor ( 3dc77280
)
2016-05-07 12:19:41 +02:00
3dc7728038
we always only use the "C" locale when saving.
2016-05-05 21:49:56 +02:00
da26a55b31
canvas tooltips, too
2016-04-27 01:24:37 +02:00
40aa4cfe06
Modify our MSVC projects to build liblua as a DLL rather than a static lib
2016-04-04 16:40:20 +01:00
208dec7231
remove debug output
2016-03-01 18:37:19 +01:00
79d9973fa0
fix waveform flickering during recording
2016-03-01 18:06:29 +01:00
a27fed772b
NO OP, whitespace
2016-03-01 14:43:44 +01:00
4384aff43f
protect current_request with request_queue_lock
2016-03-01 14:43:28 +01:00
36d30f8c89
use glib mutex API
2016-03-01 12:53:54 +01:00
ba78359129
prepare for update to waf 1.8
...
uselib is no longer implicit (inherited by .use). This is still incomplete,
some uselibs for non-linux variants may be missing.
bld.is_defined("HAVE_XXX") also no longer works and will have to be
changed (I think to bld.env["HAVE_XXX"]) in countless places.
2016-02-28 21:16:44 +01:00
49148b627c
force waveform images to be least 1px wide
2016-02-28 18:07:46 +01:00
4cd77f0544
try to narrow down #6478
2016-02-27 23:16:05 +01:00
d3634c5779
Accommodate 'lua' search paths in various projects where they're needed
...
(i.e. so that MSVC can find header files from lua).
2016-02-27 16:29:55 +00:00
Adrian Knoth
6fa88273aa
Spelling correction patch from Debian
...
Patch taken (and forward-ported to HEAD) from
<https://anonscm.debian.org/cgit/pkg-multimedia/ardour.git/plain/debian/patches/0100-fix-typos.patch >
2016-02-22 15:13:01 -05:00
2d18283379
make threaded waveview rendering a configure time option (enabled by default)
2016-02-21 12:34:10 -05:00
b0518fa2be
Revert "disable threaded waveform rendering for 4.7"
...
This reverts commit b0032adb44
.
2016-02-19 21:13:29 +01:00
b0032adb44
disable threaded waveform rendering for 4.7
2016-02-18 18:56:05 -05:00
d61cf81997
The return of threaded waveform rendering and related crashes.
2016-01-16 14:18:59 +01:00
2992506652
disable threaded waveview rendering.
...
This will be re-enabled once 4.5 has been released
2015-12-16 10:28:17 -05:00
5f4f89fb39
Move PBD symbol demangle functions into pbd/demangle.h/cc
...
Add pbd/demangle.cc source file and move functions from pbd/stacktrace.cc into
it
2015-12-01 14:22:38 +10:00
73d1de3b75
NOOP, remove trailing whitespace, replace tabs in python scripts
2015-11-29 17:54:31 +01:00
160b24b137
fix crash when cleaning up canvas items
...
Backport from Mixbus. In Ardour this does not currently matter
since there is no top-level canvas destroyed top-down.
...
Editor::session_going_away
MixerStrip::~MixerStrip
MixbusStripCanvas::~MixbusStripCanvas
ArdourCanvas::GtkCanvas::~GtkCanvas
ArdourCanvas::Canvas::~Canvas
ArdourCanvas::Root::~Root
ArdourCanvas::Container::~Container
ArdourCanvas::Item::~Item
ArdourCanvas::Item::clear_items
GtkCanvas::item_going_away()
queue_draw_item_area()
..expose can take place async to garbage collection: crash in one of the
items.
2015-11-02 05:15:55 +01:00
5bdc869e49
remove invalid assertion - #6634
...
There is a highly unlikely case where the render thread can have zero
requests in the queue, but it is not supposed to be terminated.
1) WaveView::queue_get_image();
wake up thread, *but* the thread does not start yet
2) WaveView::cancel_my_render_request();
and now the thread starts.
1,2 are initiated by user actions from the GUI thread and are normally
orders of magnitude slower than scheduler-thread wakeup.
2015-10-22 12:20:42 +02:00
1c0265e27c
Include button number in canvas button press/release debug info
2015-10-06 13:29:57 +10:00
22b07e0233
NOOP, remove trailing tabs/whitespace.
2015-10-05 16:17:49 +02:00
4dc63966f0
globally remove all trailing whitespace from ardour code base.
...
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
8a4bf386a4
amend previous commit.
2015-09-14 21:25:57 +02:00
9a533c925b
fix short x-fade rendering
2015-09-14 21:18:56 +02:00
ec06f2c49f
spelling error fixes (notably "overriden" => "overidden") from IOhannes m zmölnig
2015-09-11 09:23:43 -04:00
57321bef35
consistent pango-text layout size - fixes #6490
...
Use gdk_pango_layout() for all text-size calculations.
In Canvas::Text always use the same context (local image surface)
for layouting (prior to this, local and window-context mix resulted in
different sizes).
2015-09-06 16:39:08 +02:00
2f69ee8ec8
a couple of debug output statements to help diagnose a crash, part 2
2015-09-02 12:58:07 -04:00
e91a0f7e11
a couple of debug output statements to help diagnose a crash
2015-09-02 12:24:37 -04:00
93aa8d3734
waveform, mutex for _current_image
...
may be used in render-thread while invalidate_image_cache() is called.
possible fix for #6478
2015-09-02 14:28:26 +02:00
c6d6f038b4
handle waveform drawing thread shutdown
2015-09-02 01:46:31 +02:00
e69368cc8f
clear out some SessionHandleRef's on close.
2015-08-20 22:27:35 +02:00
63e3f326e9
clear waveform cache when shape changes - fixes #6525
2015-08-20 03:01:51 +02:00
ca0c9b3636
Replace "%z" modifier with glib macro for portability.
2015-07-30 17:00:03 +02:00