summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-10-27 17:12:58 -0400
committerJesse Luehrs <doy@tozt.net>2014-10-27 17:12:58 -0400
commit2444bb6440a3cfc4d560624eed7997a42863982c (patch)
tree80628f30ce14049954fc42e0ba9d15b60716c08a
parent5a4131f163aa3222ee433a2d945904b235f8d05e (diff)
downloadjulia-fractals-2444bb6440a3cfc4d560624eed7997a42863982c.tar.gz
julia-fractals-2444bb6440a3cfc4d560624eed7997a42863982c.zip
set up redraw handlers
i don't really understand how this works at all, just copying from the ImageView package at the moment
-rw-r--r--src/renderer.jl15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/renderer.jl b/src/renderer.jl
index e4596d8..8e0106e 100644
--- a/src/renderer.jl
+++ b/src/renderer.jl
@@ -13,8 +13,16 @@ type FractalCanvas
f = FractalExplorer.Fractal{Float64}(winsize, make_c, step)
image = [ HSV(0, 0, 0) for y=1:winsize[1], x=1:winsize[2] ]
fc = new(c, f, image)
- redraw(fc)
- setup_handlers(c)
+ imgc, imgslice = redraw(fc)
+ c.draw = function(x)
+ props = Dict()
+ img2 = ImageView.ImageSlice2d(fc.image, props)
+ imgc = ImageView.ImageCanvas(ImageView.cairo_format(fc.image), props)
+ imgc.c = fc.c
+ ImageView.allocate_surface!(imgc, winsize[2], winsize[1])
+ ImageView.rerender(imgc, img2)
+ ImageView.resize(imgc, img2)
+ end
return fc
end
end
@@ -67,9 +75,6 @@ function createwindow(winsize::(Integer, Integer) = (640, 480))
return canvas
end
-function setup_handlers(c::Canvas)
-end
-
function redraw(fc::FractalCanvas)
return view(fc.c, fc.image, interactive=false)
end