Skip to content

Commit 3a361ec

Browse files
committed
Project in disarray
1 parent 1f77805 commit 3a361ec

File tree

13 files changed

+168
-22
lines changed

13 files changed

+168
-22
lines changed

MANIFEST

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# file GENERATED by distutils, do NOT edit
2+
LICENSE.txt
3+
README.txt
4+
setup.py
5+
dist\Gooey-0.1.0\LICENSE.txt
6+
dist\Gooey-0.1.0\README.txt
7+
dist\Gooey-0.1.0\dist\Gooey-0.1.0\LICENSE.txt
8+
dist\Gooey-0.1.0\dist\Gooey-0.1.0\README.txt
9+
dist\Gooey-0.1.0\dist\Gooey-0.1.0\gooey\TODO.txt
10+
dist\Gooey-0.1.0\gooey\TODO.txt
11+
gooey\TODO.txt
12+
gooey\__init__.py
13+
gooey\codegen.py
14+
gooey\gooey.py
15+
gooey\i18n.py
16+
gooey\i18n_unittest.py
17+
gooey\monkey_parser.py
18+
gooey\source_parser.py
19+
gooey\source_parser_unittest.py
20+
gooey\test_queue.py
21+
gooey\app\__init__.py
22+
gooey\app\dialogs\__init__.py
23+
gooey\app\dialogs\action_sorter.py
24+
gooey\app\dialogs\action_sorter_unittest.py
25+
gooey\app\dialogs\advanced_config.py
26+
gooey\app\dialogs\advanced_config_unittest.py
27+
gooey\app\dialogs\argparse_test_data.py
28+
gooey\app\dialogs\base_window.py
29+
gooey\app\dialogs\basic_config_panel.py
30+
gooey\app\dialogs\component_factory.py
31+
gooey\app\dialogs\component_register.py
32+
gooey\app\dialogs\component_register_unittest.py
33+
gooey\app\dialogs\components.py
34+
gooey\app\dialogs\components_unittest.py
35+
gooey\app\dialogs\config_model.py
36+
gooey\app\dialogs\controller.py
37+
gooey\app\dialogs\display_main.py
38+
gooey\app\dialogs\footer.py
39+
gooey\app\dialogs\header.py
40+
gooey\app\dialogs\imageutil.py
41+
gooey\app\dialogs\msg_dialog.py
42+
gooey\app\dialogs\option_reader.py
43+
gooey\app\dialogs\option_reader_unittest.py
44+
gooey\app\dialogs\runtime_display_panel.py
45+
gooey\app\images\__init__.py
46+
gooey\app\images\image_store.py
47+
gooey\languages\__init__.py
48+
gooey\languages\eng.py
49+
gooey\mockapplications\__init__.py
50+
gooey\mockapplications\example_argparse_souce_in_main.py
51+
gooey\mockapplications\example_argparse_souce_in_try.py
52+
gooey\mockapplications\mockapp.py
53+
gooey\mockapplications\module_with_no_argparse.py
54+
gooey\themes\__init__.py
55+
gooey\themes\thm.py

README.txt

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
Gooey
2+
=====
3+
4+
(image)
5+
6+
Turn (almost) any command line program into a full GUI application with one line
7+
8+
What is it?
9+
-----------
10+
11+
Gooey converts your Console Applications into end-user friendly GUI applications. It lets you focus on building robust, configurable programs without having to worry about how it will be presented to and interacted with by your average non-techie person.
12+
13+
Why?
14+
---
15+
16+
Because as much as we love the command prompt, the rest of the world looks at it like some horrific relic from the '80s. As I embarked in the world of freelancing, I wanted to deliver something a little more polished than a black box with white text, and something which was easily understandable and configurable to the end-user.
17+
18+
How does it work?
19+
------------------
20+
21+
Gooey is attached to your code via a simple decorator on your `main` method.
22+
23+
@gooey <--- all it takes! :)
24+
def main():
25+
# rest of code
26+
27+
At runtime, it loads the Abstract Syntax Tree of your module and parses it for all references to `ArgumentParser` (The older `optparse` is currently not supported). These references are then extracted and assigned a `component type` based on the function they provide.
28+
29+
Currently, the `ArgumentParser._actions` are mapped to the following components.
30+
31+
| Action | WxWidget |
32+
|:----------------------|-----------|
33+
| store | TextCtrl |
34+
| store_const | CheckBox |
35+
| store_true| CheckBox |
36+
| store_False | CheckBox|
37+
| append | TextCtrl |
38+
| count| DropDown|
39+
|choice| DropDown|
40+
41+
42+
43+
44+
Installation instructions
45+
------------------------
46+
47+
TODO
48+
----
49+
50+
* Get this thing working.
51+
(picture of osx)
52+
53+
* Themes
54+
* update graphics
55+
* robustify parser
56+
* Optparse support? (do people still use it)
57+
58+
59+
Wanna help?
60+
-----------
61+
62+
Do you art? I'd love to swap out the graphics to something more stylistically unified. That ajax loader is pretty out of place..
63+
64+
Image Credits
65+
-------------
66+
67+
68+
69+
70+
71+
72+

gooey/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from app import *
2+

gooey/app/dialogs/advanced_config_unittest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import advanced_config
1212
import argparse_test_data
1313
from argparse import ArgumentParser
14-
from app.dialogs.config_model import ConfigModel
14+
from gooey_decorator.app.dialogs.config_model import ConfigModel
1515

1616
class TestAdvancedConfigPanel(unittest.TestCase):
1717

gooey/app/dialogs/component_register_unittest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def __init__(self):
1818
self.test_class = FakeClassWithoutImplementation()
1919

2020
def testHostClassReceivesMixinFunctions(self):
21-
21+
pass
2222

2323

2424
if __name__ == "__main__":

gooey/app/dialogs/config_model.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66

77
import sys
88
import types
9-
from monkey_parser import ArgumentError
10-
from app.dialogs.action_sorter import ActionSorter
9+
from gooey.monkey_parser import ArgumentError
10+
from gooey.app.dialogs.action_sorter import ActionSorter
1111

1212

1313

gooey/app/images/__init__.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
import os
1313

1414
PATH = os.path.dirname(__file__)
15-
print PATH
1615

1716
def render_class(assignments):
1817
template = '''

gooey/gooey.py renamed to gooey/gooey_decorator.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,11 @@
77
import os
88
import wx
99
import sys
10-
import argparse
1110
import source_parser
12-
from app.dialogs.config_model import ConfigModel, EmptyConfigModel
13-
14-
from app.dialogs import window
15-
from app.dialogs.base_window import BaseWindow
16-
from app.dialogs.advanced_config import AdvancedConfigPanel
17-
from app.dialogs.basic_config_panel import BasicConfigPanel
18-
from i18n import I18N
11+
from gooey.app.dialogs.config_model import ConfigModel, EmptyConfigModel
12+
from gooey.app.dialogs.base_window import BaseWindow
13+
from gooey.app.dialogs.advanced_config import AdvancedConfigPanel
14+
from gooey.app.dialogs.basic_config_panel import BasicConfigPanel
1915
from functools import partial
2016

2117

gooey/mockapplications/mockapp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from time import time as _time
99
from time import sleep as _sleep
1010
from argparse import ArgumentParser
11-
from gooey import Gooey
11+
from gooey_decorator import Gooey
1212

1313

1414

gooey/monkey_parser.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,9 @@
66

77
import types
88
from argparse import ArgumentParser
9+
from parser_exceptions import ArgumentError
10+
911

10-
class ArgumentError(Exception):
11-
'''Thrown when the parser is supplied with an incorrect argument format'''
12-
pass
1312

1413
class MonkeyParser(object):
1514
'''

0 commit comments

Comments
 (0)