added some asciio diagrams, still need some work (Skin entity, etc.)
phaylon [Thu, 16 Apr 2009 15:12:42 +0000 (15:12 +0000)]
lib/Reaction/Manual/Overview.pod
lib/Reaction/Manual/RenderPage.pod
maint/asciio/render-page.asciio [new file with mode: 0644]
maint/asciio/request.asciio [new file with mode: 0644]

index 084a89a..219475c 100644 (file)
@@ -38,7 +38,53 @@ down to very small parts.
 Full separation of interface rendering structure and templating, making re-usable
 extensions even easier.
 
-=back
+=bac
+
+=head1 THE BIG PICTURE
+
+          .=========.
+          | Request |
+          '========='
+               |
+               |
+               v
+    .--------------------.   .============================.
+    |  Web Application   |   |      Interface Model       |
+    | Action Dispatching |<--| Object, Collection, Action |
+    '--------------------'   '============================'
+               |                            ^
+               v                            |
+    .====================.        .-------------------.
+    |      ViewPort      |        |   Domain Model    |
+    | Plain, Collection, |        |  Business Logic,  |
+    |   Object, Action   |        | Persistence Layer |
+    '===================='        '-------------------'
+               |
+               v
+    .====================.
+    |     FocusStack     |
+    | Contains ViewPorts |
+    '===================='
+               |
+               v
+         .-----------.     .===================.
+         |   View    |     | RenderingContext  |
+         | HTML, PDF |---->| Template Toolkit  |----.
+         '-----------'     '==================='    |
+               |                     ^              |
+               v                     |              |
+   .======================.          |              |
+   | LayoutSet / ViewPort |          |              |
+   | Layouts: widget, foo |          |              |
+   '======================'          |              |
+               |                     |              |
+               v                     |              |
+  .========================.         |              |
+  |   Widget / LayoutSet   |         |              |
+  | Fragments: widget, foo |---------'              v
+  '========================'                  .==========.
+                                              | Response |
+                                              '=========='
 
 =head1 APPLICATION
 
index 2c2a19d..4b832b0 100644 (file)
@@ -1,6 +1,42 @@
 
 =head1 Page rendering
 
+=head2 A little overview
+
+  .---------------------------------------.
+  |           Controller Action           |
+  |---------------------------------------|
+  | Decides which logical part to provide |
+  '---------------------------------------'
+                      |
+                      v
+      .------------------------------.
+      |           ViewPort           |
+      |------------------------------|----------.
+      | A logical part of the page   |          |
+      '------------------------------'          |
+                      |                  Inner ViewPorts
+                      v                       Data      
+   .-------------------------------------.      |
+   |              LayoutSet              |      |
+   |-------------------------------------|------.
+   | A representational part of the page |      |
+   '-------------------------------------'      |
+                      |                       Looks  
+                      v                     Structure
+      .-------------------------------.         |
+      |            Widget             |         |
+      |-------------------------------|---------.
+      | A functional part of the page |         |
+      '-------------------------------'         |
+                                           Preparation
+                                            Structure 
+      .-------------------------------.         |
+      |            Output             |         |
+      |-------------------------------|<--------'
+      | The rendered part of the page |
+      '-------------------------------'
+
 =head2 Or, how to track why your page failed to render
 
 Catalyst's C<begin> and C<end> actions are supplied by
diff --git a/maint/asciio/render-page.asciio b/maint/asciio/render-page.asciio
new file mode 100644 (file)
index 0000000..d6c9376
Binary files /dev/null and b/maint/asciio/render-page.asciio differ
diff --git a/maint/asciio/request.asciio b/maint/asciio/request.asciio
new file mode 100644 (file)
index 0000000..1664d61
Binary files /dev/null and b/maint/asciio/request.asciio differ