     (fn []
       [:div
        [modal-button
-        "5.2. looper"
+        :label    "5.2. looper"
         ;#(looper {:params [1 1] :results []} fib-step calculating?)]
-        #(do
-           (reset! calculating? true)
-           (looper
-            :initial-value {:params [1 1] :results []}
-            :func          (cancellable-step calculating? fib-step)
-            :when-done     (fn [] (reset! calculating? false)))
-           (util/console-log "FINISHED!!!!"))]
+        :on-click #(do
+                     (reset! calculating? true)
+                     (looper
+                      :initial-value {:params [1 1] :results []}
+                      :func          (cancellable-step calculating? fib-step)
+                      :when-done     (fn [] (reset! calculating? false)))
+                     (util/console-log "FINISHED!!!!"))]
        (when @calculating?
          [modal-window
           :markup [:div {:style {:width "300px"}}

    (fn []
      [:div
       [modal-button
        "1. I/O Load url"
        #(do
           (reset! loading? true)
           (load-url url loading?))]
       (when @loading?
         [loading-url-modal url loading?])
       ])



(defn modal-button
  [& {:keys [label on-click]}]
  "Render a button to launch a modal window"
  [button label on-click
   ;; :text    label
   ;; :on-click on-click
   :style {:font-weight "bold" :color "red" :margin "1px" :height "39px"}
   :class "btn-info"])

