More items for glossary.
timbunce [Thu, 26 Mar 2009 16:31:34 +0000 (16:31 +0000)]
Improve layout for RenderPage manual and add a few notes.

lib/Reaction/Manual/Glossary.pod
lib/Reaction/Manual/RenderPage.pod

index 7fd4d22..d4cab76 100644 (file)
@@ -8,10 +8,14 @@ Reaction::Manual::Glossary - Terms and Definitions used in Reaction
 
 =head3 Domain Model
 
+=head3 Focus Stack
+
 =head3 Interface Model
 
 =head3 Layout
 
+=head3 LayoutSet
+
 =head3 ListView
 
 =head3 MVC
@@ -22,6 +26,8 @@ Model-View-Controller - a high-level software design pattern, which focuses on s
 
 A software design pattern in which one 
 
+=head3 RenderingContext
+
 =head3 Role
 
 A particular interface that a class implements.  Here, Role is used in the sense of Moose::Role; this same concept is sometimes called a Mix-In Class or a Decorator pattern.
index c0b92f8..2c2a19d 100644 (file)
@@ -3,37 +3,48 @@
 
 =head2 Or, how to track why your page failed to render
 
-Catalyst's C<end> action is supplied by
-L<Reaction::UI::Controller::Root>, which your C<Root> controller
-should inherit from, or at least the root controller of the part of
-your application that is using Reaction. The C<end> action calls
-L<Reaction::UI::Window/flush> which in turn calls
-L<Reaction::UI::View/render_window>.
+Catalyst's C<begin> and C<end> actions are supplied by
+L<Reaction::UI::Controller::Root>, which your C<Root> controller should inherit
+from, or at least the root controller of the part of your application that is
+using Reaction.
+
+The C<begin> action creates a new L<Reaction::UI::Window> and stores it in $c->stash->{window}.
+The C<end> action calls the flush() method on the stashed window object.
+L<Reaction::UI::Window/flush> then calls L<Reaction::UI::View/render_window>
+on the window's view.
 
 The View first fetches the root ViewPort from the Window's stack and
 creates a RenderingContext. The layout is chosen based on the ViewPort name or
 though the ViewPort's C<layout> attribute. The Widget is then used to render the
 content via the RenderingContext.
 
+Is your head spinning yet?
+
 Ingredients used:
-* LayoutSet class: Reaction::UI::LayoutSet
-* RenderingContext class: Reaction::UI::RenderingContext::TT
+
 * A Reaction::UI::Skin object built from:
- * The skin_name set on your View
- * The View object
- * The skin_base_dir (MyApp/share/skin)
- * The share/skin/defaults.conf + share/skin/<my_skin>/skin.conf
+
+    - The skin_name set on your View
+    - The View object
+    - The skin_base_dir (MyApp/share/skin)
+    - The share/skin/defaults.conf + share/skin/<my_skin>/skin.conf
+
 * A Reaction::UI::LayoutSet object built from:
- * The layoutset file itself, found in the share/skin/<my_skin>/layout directory
-   or the share/skin/default/layout directory.
- * The Skin object
+
+    - The layoutset file itself, found in the share/skin/<my_skin>/layout directory
+      or the share/skin/default/layout directory.
+    - The Skin object
+
 * A Reaction::UI::Widget object built from:
- * It's class, determined from the name of the ViewPort or read from the 
-   layoutset file, and found in the widget_search_path.
- * The View object
- * The LayoutSet object
+
+    - It's class, determined from the name of the ViewPort or read from the 
+      layoutset file, and found in the widget_search_path.
+    - The View object
+    - The LayoutSet object
+
 * A Reaction::UI::RenderingContext::TT object built from:
- * Nothing
+
+    - Nothing
 
 To render the window the correct Reaction::UI::Widget object is
 retrieved via the LayoutSet for the root ViewPort of the page.