Wiki source code of ERDivaLook

Version 248.1 by Ravi Mendis on 2009/07/27 09:53

Hide last authors
Ravi Mendis 227.1 1 == What is Div#a Look? ==
Ravi Mendis 84.1 2
3 Much like ExcelLook, that vends excel pages, Diva look generates a Web 2.0 interface for DirectToWeb.
4 More specifically, it generates pages that are:
5
6 * Semantically-rich or **tables-less**
Ravi Mendis 95.1 7 * XHTML 1.0 strict compliant
Ravi Mendis 84.1 8 * Sans images, inline styles or presentation attributes
Ravi Mendis 105.1 9
Ravi Mendis 205.1 10 They make use of:
11
Ravi Mendis 227.1 12 * CSS **themes**
Ravi Mendis 205.1 13 * Scriptaculous **effects**
Ravi Mendis 227.1 14 * Javascript **widgets**
Ravi Mendis 229.1 15 * **Ajax**
Ravi Mendis 205.1 16
Ravi Mendis 247.1 17 == Why Table-less Markup? ==
Ravi Mendis 105.1 18
19 Scriptaculous, jQuery effects, etc work by manipulating CSS attributes.
20 Mostly they don't work very well on tables, if at all.
21 Furthermore, the more sophisticated widgets (like accordions) make use of effects and so don't function as they should without.
22
23 This is even more true for unobtrusive javascript for which table-less markup is usually a prerequisite.
24 Like jQuery, which takes this a step further, by applying functionality via CSS selectors.
25 (So for jQuery it is an absolute requirement).
Ravi Mendis 109.1 26
27 Therefore, if you are developing a Web 2.0/Ajax UI, the transition to table-less markup is an imperative.
28
29 === What is a Diva Theme? ===
30
Ravi Mendis 135.1 31 In ERDivaLook, or Diva for short, your application is not complete without a CSS theme.
Ravi Mendis 109.1 32 All images, layout, colors and font information are maintained in the CSS.
33
34 All your customizations to the look and layout of your application is also done in the CSS (and via D2W rules).
35
Ravi Mendis 247.1 36 **Examples:**
Ravi Mendis 109.1 37
Ravi Mendis 119.1 38 |= Neutral |= WebObjects |= Simple |= Organica
Ravi Mendis 139.1 39 | [[image:Picture 1.jpg||]] | [[image:Picture 2.jpg||]] | [[image:Picture 3.jpg||]] | [[image:slides_directtoweb_04.jpg.jpeg||]]
Ravi Mendis 109.1 40 | D2W Neutral look reverse engineered
41 as a Diva Theme | D2W WebObjects look reverse engineered
Ravi Mendis 119.1 42 as a Diva Theme | [[//Simple//>>http://www.csszengarden.com/?cssfile=/174/174.css&page=2]] theme from css Zen Garden | [[//Organica//>>http://www.csszengarden.com/?cssfile=/188/188.css&page=0]] theme from css Zen Garden
43 | //Included in ERDivaLookExample// | //Included in ERDivaLookExample// | Shawn Chin [[mailto:schin@shawnchin.net]] | Eduardo Cesario [[mailto:design@criaturacreativa.com.ar]]
Ravi Mendis 123.1 44
Ravi Mendis 247.1 45 The above are a sample of themes for Diva look. The first two are included in the ##Wonder/Examples/Ajax/ERDivaLookExample## app.
Ravi Mendis 123.1 46 The graphics designer Eduardo Cesario wrote up his experience of developing his //Organica// design for an early prototype of ERDivaLook on his [[blog>>http://www.organicacreativa.com/organica-creativa.php?area=directtoweb&lang=en]].
Ravi Mendis 149.1 47
Ravi Mendis 227.1 48 == HowTos ==
Ravi Mendis 149.1 49
Ravi Mendis 227.1 50 {{children all="true"}}{{/children}}
51
52 == Features ==
53
54 === 1. CSS Themes ===
55
56 CSS theme you give your application is **fully-customizable**.
57 However, Diva lacks CSS theming tools (such as jQuery ThemeRoller).
58
59 Instead, the CSS themes need to be hand-rolled.
60
61 === 2. Scriptaculous Effects ===
62
63 The effects library used for ERDivaLook is Wonder's choice - Scriptaculous.
64
65 === 3. Javascript Widgets ===
66
Ravi Mendis 229.1 67 The [[widgets>>ERPrototaculous]] are all in the Prototype+Scriptaculous family.
Ravi Mendis 227.1 68
Ravi Mendis 229.1 69 === 4. Well-Formed Semantic Markup ===
Ravi Mendis 227.1 70
Ravi Mendis 241.1 71 The pages produced by Diva look will validate as (almost) XHTML strict. Features of the DOM:
Ravi Mendis 227.1 72
Ravi Mendis 229.1 73 * Unique IDs for elements
74 * Unique form control names
75 * Use of multiple CSS classes
Ravi Mendis 247.1 76 * Table-less markup (except for tabular data)
Ravi Mendis 227.1 77
Ravi Mendis 229.1 78 === 5. Ajax Page Configurations ===
79
80 Prototype provides the Ajax functionality in Diva in the form of [[ERPrototaculous>>ERPrototaculous]].
81 Diva look introduces the concept of **Ajax pageConfigs**.
82 Example page configurations:
83
84 * ##AjaxQueryMovie##
85 * ##AjaxEditStudio##
86 * ##AjaxListTalent##
87
Ravi Mendis 247.1 88 === 6. Dynamic D2W ===
89
90 ajax + //delayed// D2W rules = [[dynamic D2W>>How to use Dynamic D2W]].