]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/docs/latex/fl/cbgcupdatesmgr.tex
corrected version number extraction
[wxWidgets.git] / contrib / docs / latex / fl / cbgcupdatesmgr.tex
index 6450e54fc43b71b7d4d832ccc6a2c6931690119a..482d271a6047eacd0e31037d420183aa31752802 100644 (file)
@@ -1,83 +1,90 @@
 %
 % automatically generated by HelpGen $Revision$ from
 %
 % automatically generated by HelpGen $Revision$ from
-% gcupdatesmgr.h at 05/Jan/02 22:50:57
+% gcupdatesmgr.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbGCUpdatesMgr}}\label{cbgcupdatesmgr}
 
 
 %
 
 
 \section{\class{cbGCUpdatesMgr}}\label{cbgcupdatesmgr}
 
 
-class implements optimized logic for refreshing
-   areas of frame layout - which actually need to be updated. 
-   Is used as default updates-manager by wxFrameLayout.
-  
-   it is called "Garbage Collecting" u.mgr for it's implementation
-   tries to find out dependencies between bars, and to order
-   them ito "hierarchy", this hierarchical sorting resembles
-   implemenation of heap-garbage collectors, which resolve
-   dependencies between references.
-  
-   Example: there are situations where the order of moving
-            the windows does matter:
-  
-     case 1)                
-        ------             ---
-        | A     |                  |B|  
-               ------   --->   | |
-                       ---                     --- ------ 
-                       |B|                             | A  | 
-                       | |                             ------
-                       ---                             
-                                               (future)
-          (past)            
-  
-    past/future positions of A and B windows completely overlapp, i.e.
-    depend on each other, and there is not solution for
-    moving the windows witout refreshing both of them,
-    -- we have cyclic dependency here. The gc. alg will
-    find this cyclic dependecy and will force "refresh"
-    after movement.
-  
-     case 2)
-  
-        ------                                 
-        | A     |                                      
-               ------   --->                       
-                       ---                               
-                       |B|                                        ------   
-                       | |                                        | A  |   
-                       ---                                        ------         
-                                                ---
-                                                |B|
-                                                | |
-                                            ---
-  
-                                               (future)                
-          (past)       
-  
-    in this case past/future positions do not overlapp, thus
-    it's enough only to move windows, without refreshing them.
-    GC will "notice" it.
-  
-    there is also third case, when overlapping is partial
-    in this case the refershing can be also avoided by
-    moving windows in the order of "most-dependant" towards the
-    "least-dependent". GC handles this automatically, by
-    sorting windows by their dependency-level (or "hierarchy")
-  
-    See garbagec.h for more details of this method, garbagec.h/cpp
-    implement sorting of generic-dependencies (does not deal
-    with graphical objects directly)
-  
-    Summary: improves performance when complex/large windows are 
-             moved around, by reducing number of repaints. Also helps 
-             to avoid dirty non-client areas of moved windows
-             in some special cases of "overlapping anomalies"
+This class implements optimized logic for refreshing
+the areas of frame layout that actually need to be updated.
+It is used as the default updates manager by wxFrameLayout.
+
+It is called 'Garbage Collecting' updates manager because
+its implementation tries to find out dependencies between bars,
+and to order them into a 'hierarchy'. This hierarchical sorting resembles
+the implementation of heap-garbage collectors, which resolve
+dependencies between references.
+
+Example: there are situations where the order in which the user
+moves windows does matter.
+
+\begin{verbatim}
+  case 1)
+     ------            ---
+     | A     |             |B|
+        ------     --->      | |
+            ---               --- ------
+            |B|                   | A  |
+            | |                   ------
+            ---
+                        (future)
+       (past)
+\end{verbatim}
+
+Past/future positions of A and B windows completely overlap, i.e.
+depend on each other, and there is no solution for
+moving the windows without refreshing both of them
+-- we have a cyclic dependency here. The garbage collection algorithm will
+find this cyclic dependecy and will force refresh after movement.
+
+\begin{verbatim}
+  case 2)
+
+     ------
+     | A     |
+        ------     --->
+            ---
+            |B|                              ------
+            | |                              | A  |
+            ---                              ------
+                         ---
+                         |B|
+                         | |
+                         ---
+
+                        (future)
+       (past)
+\end{verbatim}
+
+In this case past/future positions do not overlap, so
+it is enough only to move windows without refreshing them.
+Garbage collection will 'notice' this.
+
+There is also a third case, when overlapping is partial.
+In this case the refreshing can also be avoided by
+moving windows in the order of 'most-dependant' towards the
+'least-dependent'. GC handles this automatically, by
+sorting windows by their dependency-level (or 'hierarchy').
+
+See garbagec.h for more details of this method; garbagec.h/cpp
+implement sorting of generic dependencies and does not deal
+with graphical objects directly.
+
+Summary: garbage collection improves performance when complex or large
+windows are moved around, by reducing the number of repaints. It also helps
+to avoid dirty non-client areas of moved windows
+in some special cases of 'overlapping anomalies'.
+
 \wxheading{Derived from}
 
 \helpref{cbSimpleUpdatesMgr}{cbsimpleupdatesmgr}
 
 \wxheading{Derived from}
 
 \helpref{cbSimpleUpdatesMgr}{cbsimpleupdatesmgr}
 
+\wxheading{Include files}
+
+<wx/fl/gcupdatesmgr.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -87,30 +94,38 @@ class implements optimized logic for refreshing
 
 \func{}{cbGCUpdatesMgr}{\void}
 
 
 \func{}{cbGCUpdatesMgr}{\void}
 
+Default constructor.
+
 
 \func{}{cbGCUpdatesMgr}{\param{wxFrameLayout* }{pPanel}}
 
 
 \func{}{cbGCUpdatesMgr}{\param{wxFrameLayout* }{pPanel}}
 
+Constructor, taking a frame layout.
+
 
 \membersection{cbGCUpdatesMgr::AddItem}\label{cbgcupdatesmgradditem}
 
 \func{void}{AddItem}{\param{wxList\& }{itemList}, \param{cbBarInfo* }{pBar}, \param{cbDockPane* }{pPane}, \param{wxRect\& }{curBounds}, \param{wxRect\& }{prevBounds}}
 
 
 \membersection{cbGCUpdatesMgr::AddItem}\label{cbgcupdatesmgradditem}
 
 \func{void}{AddItem}{\param{wxList\& }{itemList}, \param{cbBarInfo* }{pBar}, \param{cbDockPane* }{pPane}, \param{wxRect\& }{curBounds}, \param{wxRect\& }{prevBounds}}
 
+Internal function for repositioning items.
+
 
 \membersection{cbGCUpdatesMgr::DoRepositionItems}\label{cbgcupdatesmgrdorepositionitems}
 
 \func{void}{DoRepositionItems}{\param{wxList\& }{items}}
 
 
 \membersection{cbGCUpdatesMgr::DoRepositionItems}\label{cbgcupdatesmgrdorepositionitems}
 
 \func{void}{DoRepositionItems}{\param{wxList\& }{items}}
 
+Internal function for repositioning items.
+
 
 \membersection{cbGCUpdatesMgr::OnStartChanges}\label{cbgcupdatesmgronstartchanges}
 
 \func{void}{OnStartChanges}{\void}
 
 
 \membersection{cbGCUpdatesMgr::OnStartChanges}\label{cbgcupdatesmgronstartchanges}
 
 \func{void}{OnStartChanges}{\void}
 
-notificiactions received from Frame Layout :
+Receives notifications from the frame layout.
 
 
 \membersection{cbGCUpdatesMgr::UpdateNow}\label{cbgcupdatesmgrupdatenow}
 
 \func{void}{UpdateNow}{\void}
 
 
 
 \membersection{cbGCUpdatesMgr::UpdateNow}\label{cbgcupdatesmgrupdatenow}
 
 \func{void}{UpdateNow}{\void}
 
-refreshes parts of the frame layout, which need an update
+Refreshes the parts of the frame layout which need an update.