configure.ac
[app.Builder.js] / README.txt
1 App Builder
2
3 This is a Seed based application builder.. - currently basically a prototype..
4
5
6 The idea is that it can build applications both web based (using roojs) and Desktop based using Gtk
7 and the gobject introspection bindings.
8
9 It's kind of like Glade on steroids..
10
11 ----------------------------------------------------
12 Usage:
13
14 seed gtkrun.js Builder
15
16 -> create a project
17 -> add a folder to the project
18 -> add a file to the project..
19 Files are JSON data files at present.. 
20
21 -----------------------------------------------------
22 Where it is..
23
24 * basic builder app runs - you can build a tree of elements making up a interface for roo and gtk.
25 * listeners are  created correctly.
26 * listeners with gtk prototypes
27 * Gtk properties that are enums - now show a combo selector..
28 * application is used to write itself...
29 * Projects can be created and deleted (basically a directory)
30 * sourceview to uses spaces rather than tabs. (and autoindents..)
31 * Help view - load docs..
32 * highlight in gtk preview - works but is klunky..
33 * Support for extra code in Roo HTML is done by "Set extra HTML in rendere"
34    
35
36 -----------------------------------------------------
37 INSTALL
38 GTK3
39
40 git clone git://github.com/roojs/app.Builder.js.git
41 cd app.Builder.js
42 git clone git://github.com/roojs/gir-1.2-gtk-3.4.git gir-1.2
43 cd gir-1.2
44 sh install-girs.sh
45 ** This file may need running as root if sudo fails..
46 cd ..
47
48 seed gtkrun.js Builder3 
49
50  
51
52 -----------------------------------------------------
53
54 TODO (Gtk)
55 * Tables are not rendering first time round..
56 * Dialog buttons - need special rendering on preview.
57 * Icon-size (should be an enum...??)
58 * (Image|....??? ).stock - should be a list of stock icons..
59 * fix pulldowns for types.. - it's a bit hap hazard with the delayed / loading of settings.
60 * packing - gather from methods to find out which match.. (including false)
61 * adding a file does not display on project tree straight awya..
62 * templates for elements... - eg. defaults for classic elements.
63 * sort out add heirachy for Gtk..
64 * Project Tree needs to work perhaps like a left hand popout.
65 * make heirachy editor...
66 * new file = should specify type (eg. gtk window etc..)
67 * Help view - next/back.. url?
68 -----------------------------------------------------
69
70 TODO (Roo)
71 * file properties - title, parent etc..
72
73 -----------------------------------------------------
74
75 Thoughts...
76 * Widget definition files.. (to replace our 'Usage.txt' files)
77 -> defaults  { ... }
78 -> onAdd(name_of_parent, cfg) { modifies defaults.. }
79 -> validParents : [ .... ]
80 -> validChildren???: [ .... ]
81
82 * how to handle stuff like GtkTable.. - 
83  - needs cols,rows in constructor.
84  - child properties do not appear to work?  -- investigate?
85
86 * XObject - Use Buildable interface???
87   
88 * Preview area - use glade widgets?
89
90 -----------------------------------------------------
91 Concepts
92
93 Basically both Roo and JS are built using a tree of elements (tagged with xtype/xns)
94 sub elements always go in the items array..
95 we have some special properties of elements, eg.
96
97 *prop (a property of the parent)
98 xtype (element type) eg. Window / Button etc..
99 |xns  (namespace) = eg. Gtk/Roo etc.
100
101 |**** anything starting with a pipe is raw data field rather than quoted..
102
103
104 each element can have a property listeners which is where the listeners go...
105
106