   view)
 
 (defn render [view model]
-  (update-inputs view (:input-values model)))
+  (update-inputs view model))
 
 (defn lock [view model]
   (doseq [{widget :widget} (widget-seq view)]
     (.setEnabled widget false))
   view)
 
-(defn unlock [view model]
-  (doseq [{widget :widget} (widget-seq view)]
+(defn- unlock-buttons [view model]
+  (let [{:keys [enabled-actions]} model
+        buttons (filter (comp enabled-actions :action meta) (buttons view))]
+    (doseq [{widget :widget} buttons]
+      (.setEnabled widget true))
+    view))
+
+(defn- unlock-inputs [view model]
+  (doseq [{widget :widget} (mapcat widget-seq (inputs view))]
     (.setEnabled widget true))
   view)
 
+(defn unlock [view model]
+  (-> view
+      (unlock-buttons model)
+      (unlock-inputs model)))
+

    (filter (comp input-ids :id meta)
            (widget-seq view))))

(defmulti set-value {:private true} (fn [input value] 
                                      [(type input) (type value)]))


                                        {:type       :text
                                         :label-text "ACSR Size"}]))

(def ^{:private true} action-ids [:open-config
                                  :save-config
                                  :save-config-as
                                  :run-simulation
                                  :stuetz-count])

(def ^{:private true} action-specs 
                      (map #(assoc %2 :action %1)
                           action-ids
                           [{:text         "Open" 
                             :tooltip-text "Open Config File"}
                            {:text         "Save" 
                             :tooltip-text "Save current Config File"}
                            {:text         "Save As" 
                             :tooltip-text "Save Config in new File"}
                            {:text         "Run" 
                             :tooltip-text "Start Simulation Run"}]))

(defn- make-buttons []
  (->> action-specs
       (map #(vector (:action %) (apply gui/button (apply concat %))))
       (into {})))                      
                      
(defn- tool-bar []
  (let [buttons        (make-buttons)
        open-button    (:open-config buttons) 
        save-button    (:save-config buttons)
        save-as-button (:save-config-as buttons)
        run-button     (:run-simulation buttons)
        tool-bar       (doto (JToolBar.)
                             (.setFloatable false)
                             (.add (:widget open-button))
