|
@ -1,92 +0,0 @@ |
|
|
# Using Gooey as a frontend for any language. |
|
|
|
|
|
|
|
|
|
|
|
Gooey can be used as the frontend for _any_ language. Whether you've built your application in Java, Node, or Haskell, Gooey can still be used to create a fast, free UI with just a little bit of Python. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Gooey let's you specify the `target` that is should execute during runtime as an argument to the main decorator. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Clojure example: |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
lein new app clojure-program |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
(ns clojure-program.core |
|
|
|
|
|
(:gen-class)) |
|
|
|
|
|
|
|
|
|
|
|
(defn -main |
|
|
|
|
|
"Tiny example." |
|
|
|
|
|
[& args] |
|
|
|
|
|
(println "here are the args: " args) |
|
|
|
|
|
(doseq [x (range 10)] |
|
|
|
|
|
(println x) |
|
|
|
|
|
(Thread/sleep 500))) |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
lein uberjar |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
./target/uberjar/clojure-program-0.1.0-SNAPSHOT-standalone.jar |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
java -jar target/uberjar/clojure-program-0.1.0-SNAPSHOT-standalone.jar -arg1 foo -arg2 bar |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
here are the args: (-f foo -b qwer) |
|
|
|
|
|
0 |
|
|
|
|
|
1 |
|
|
|
|
|
2 |
|
|
|
|
|
3 |
|
|
|
|
|
etc... |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
mkdir clojure-ui-example |
|
|
|
|
|
cd clojure-ui-example |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
virtualenv venv |
|
|
|
|
|
pip install gooey |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
``` |
|
|
|
|
|
mkdir resources |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
src/main.py |
|
|
|
|
|
``` |
|
|
|
|
|
from gooey import Gooey, GooeyParser, local_resource_path |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jar_path = local_resource_path('resources/clojure-gooey-0.1.0-SNAPSHOT-standalone.jar') |
|
|
|
|
|
|
|
|
|
|
|
@Gooey(image_dir=local_resource_path('stuff/images/'), target='java -jar ' + jar_path) |
|
|
|
|
|
def main(): |
|
|
|
|
|
parser = GooeyParser(description="My program") |
|
|
|
|
|
parser.add_argument('filename', metavar='Filename', help='filename', widget='FileChooser') |
|
|
|
|
|
parser.parse_args() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__': |
|
|
|
|
|
main() |
|
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|