 (defmethod set-value :default [input value]
   (println (format "set-value{%s value: %s}" (type input) value)))
 
-(defn- update-inputs [view values]
+(defn- update-inputs [view {values :input-values}]
   (doseq [input (inputs view)]
     (let [input-id (:id (meta input))
           value    (input-id values)]

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

(defn- tool-bar []
  (let [open-button    (gui/button :action :open-config
                                   :text "Open" 
                                   :tooltip-text "Open Config File") 
        save-button    (gui/button :action :save-config
                                   :text "Save" 
                                   :tooltip-text "Save current Config File")
        save-as-button (gui/button :action :save-config-as
                                   :text "Save As" 
                                   :tooltip-text "Save Config in new File")
        run-button     (gui/button :action :run-simulation
                                   :text "Run" 
                                   :tooltip-text "Start Simulation Run")
        tool-bar       (doto (JToolBar.)
                             (.setFloatable false)
                             (.add (:widget open-button))

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

(defn- buttons [view]
  (let [action-ids (into #{} action-ids)]
    (filter (comp action-ids :action meta)
            (widget-seq view))))

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

