  
 ;; =============================================================================
 ;; {{{ Some stuff for the game view
-(defn slider [view owner {:keys [e-range e-key e-label e-func]}]
+(defn slider [view owner {:keys [e-range e-key e-label e-func e-steps]}]
   (let [[min max] e-range
-        e-label (or e-label "NO LABEL!")]
+        e-label (or e-label "NO LABEL!")
+        e-steps (or e-steps 30)
+        ]
     (reify
       om/IInitState
       (init-state [_]


        (html
          [:div
                (om-slider "scale" game-view :scale [1 10] #(msg! :set-scale %))
                (om-slider "time" game-view :time-speed [0 5] #(msg! :set-time-speed %))

           [:p (str "ROGUEBOW ISLANDS : " msecs " " fps)] ])))))


(defmethod handle-message! :set-scale [_ scale]  (scale-swap! (constantly scale)))
(defmethod handle-message! :set-time-speed [_ time-speed]  (swap! game-view assoc :time-speed time-speed ))

(defn om-slider [ label data kork range steps func]
  (om/build slider data {:opts {:e-range range
                                :e-key kork
                                :e-label label 
                                :e-func func
                                :e-steps steps
                                }} ))


(defn game-component [data owner]
