     "display: block;"
     "display: none;"))
 
+(defn visibility-class [visible?]
+  (if visible?
+    ""
+    "hidden"))
+
 (defn data-item [items channel]
   (for [item items] 
     [:div  

        active-channel (reaction (@channels @active-list-idx))] 
    (fn []
      (xform ctl-tpl 
             ["#import-dlg" {:style (display?  import-visible?)}]
             ["#control-panel" {:class (clojure.string/lower-case (playstates (:playstate @player)))}]
             ["#playbutton" {:on-click #(dispatch-sync [:toggle-play])} ]
             ["#dataview" {:style (display? dataview-visible?)}]
             ["#dataview" :*> (dataview active-channel channels active-list-idx)]

             ["#ejectbutton" {:on-click #(dispatch-sync [:toggle-dataview-visibility])} ]
             ["#play-state" (playstates (:playstate player))]

             :aria-hidden "true"
             :on-click #(dispatch-sync [:mute (data i)])} ]]))


(defn dataview [active-channel channels active-list-idx import-visible?]
  "Editing channels and data"
  (xform dataview-tpl
         [".datalist li" :* (data-item (:items @active-channel) @active-channel) ]
         [".nav-tabs li" :* (data-tab-item @channels @active-list-idx) ]
