sync
[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 builder_run.js
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
29 -----------------------------------------------------
30 WHAT'S NEEDED SO ALL DEV CAN BE DONE USING IT..
31 * Write files 'save' feature..
32  - Needs to prevent us 'breaking' stuff....
33  - Simple version...
34    Write to 'XXXX.js' - that is all that is really needed?!?!
35 * Add support for subfiles..? - eg. the dialogs etc...
36  - in our sample file 'Sample/builder.js' (would be generated)
37  - this includes Builder/Provider/..... - for all the model code - M/(VC)
38  - this becomes problematic for Sample/StandardErrorDialog.js ????
39  - ?? unless the 'run file is a merge of the whole lot!!?? 
40  - ?? we could use '/' as an id to force registration (since we do not use sandbox anymore.. - this should be ok)
41 * Add better test-time runner ... basically use source files, rather than generated ones..
42  - Will not work!!?! - due to any use of __script_path__ and complexities with { '|prop': Gtk.XXXX.YYYY }
43  
44    
45
46 TODO
47 * change sourceview to use spaces rather than tabs.
48 * Icon-size (should be an enum...??)
49 * (Image|....??? ).stock - should be a list of stock icons..
50 * fix pulldowns for types.. - it's a bit hap hazard with the delayed / loading of settings.
51 * packing - gather from methods to find out which match.. (including false)
52 * order of palete needs fixing.
53 * support user functions/properties..
54 * adding a file does not display on project tree straight awya..
55 * calculate mouseover for rendered view of Gtk preview.
56 * create output to JS ...
57 * templates for elements... - eg. defaults for classic elements.
58 * sort out add heirachy for Gtk..
59 * Project Tree needs to work perhaps like a left hand popout.
60 * make heirachy editor...
61 * use application to write itself...
62 * Help view - load docs..
63
64 -----------------------------------------------------
65 Concepts
66
67 Basically both Roo and JS are built using a tree of elements (tagged with xtype/xns)
68 sub elements always go in the items array..
69 we have some special properties of elements, eg.
70
71 *prop (a property of the parent)
72 xtype (element type) eg. Window / Button etc..
73 |xns  (namespace) = eg. Gtk/Roo etc.
74
75 |**** anything starting with a pipe is raw data field rather than quoted..
76
77
78 each element can have a property listeners which is where the listeners go...
79
80