Skip to content

Instantly share code, notes, and snippets.

@frankhale
Last active December 29, 2015 03:29
Show Gist options
  • Save frankhale/7608113 to your computer and use it in GitHub Desktop.
Save frankhale/7608113 to your computer and use it in GitHub Desktop.
Trying to learn Clojurescript by creating a menubar with a menu in Node-Webkit. I know this can be done better and more succinctly, this is really rough but it works.
(def gui (js/require "nw.gui"))
(def window (.get (.-Window gui)))
(def m (.-Menu gui))
(def mi (.-MenuItem gui))
(defn create [obj opts]
(obj. (clj->js opts)))
(def menubar (create m {:type "menubar"}))
(def menu1 (create m {:type "contextmenu"}))
(def menuitem1 (create mi {:label "Menu-Item1"}))
(def menuitem2 (create mi {:label "Menu-Item2"}))
(def menuitem-separator (create mi {:type "separator"}))
(def menuname (create mi {:label "Menu-1" :submenu menu1}))
(.append menu1 menuitem1)
(.append menu1 menuitem-separator)
(.append menu1 menuitem2)
(.append menubar menuname)
(set! (.-menu window) menubar)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment