                     x y nil)))))
 
 (defn paint-screen [canvas screen-state visible-tiles]
-  (let [g (.getGraphics canvas)
-        image @slide-explorer.image/image]
+  (let [g (.getGraphics canvas)]
     (doto g
       (.translate (:x @screen-state) (:y @screen-state))
       enable-anti-aliasing

    (.setBounds 10 10 500 500)))

(defn show []
  (let [screen-state (atom (sorted-map :x 0 :y 0 :z 0))
        visible-tiles (agent {})
        canvas (main-canvas screen-state visible-tiles)
        frame (main-frame)]
    (def vt visible-tiles)
    (def ss screen-state)
    (.add (.getContentPane frame) canvas)
    (setup-fullscreen frame)
    (handle-drags canvas screen-state)
    (handle-wheel canvas screen-state)
    (handle-resize canvas screen-state)
    (display-follow canvas screen-state)
    (display-follow canvas visible-tiles)
    canvas))

(defn test-tile [nx ny]
  (add-to-visible-tiles vt [nx ny 0 0 0 0]))

;;;;;;;;


                          (update-size)))))
  size-atom)

(defn handle-zoom [window zoom-atom]
  (bind-window-key window "ADD" #(swap! zoom-atom update-in [:zoom] inc))
  (bind-window-key window "SUBTRACT" #(swap! zoom-atom update-in [:zoom] dec)))
  
(defn display-follow [canvas reference]
  (add-watch reference "display"
    (fn [_ _ _ _]
