;; Command_Launcher.clj starts here (import '(java.awt Color) '(java.awt.event TextListener) '(ij.gui GenericDialog) '(ij IJ) '(ij Menus)) (let [commands (keys (. Menus getCommands)) gd (GenericDialog. "Command Launcher")] (.addStringField gd "Command: " "") (let [prompt (. (. gd getStringFields) get 0)] (doto prompt (.setForeground (. Color red)) (.addTextListener (proxy [TextListener] [] (textValueChanged [tvc] (let [text (.getText prompt)] (.setForeground prompt (if (some #{text} commands) (. Color black) (. Color red))))))))) (.showDialog gd) (when-not (.wasCanceled gd) (IJ/doCommand (.getNextString gd)))) ;; end of file