]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/scopeguard.h
Make storing non-trivial data in wxThreadSpecificInfo possible.
[wxWidgets.git] / interface / wx / scopeguard.h
index c0a14ec1374194c1041d1cce4435f92226b2d07c..8da75963a45f6a87513301ce774a0c8207b5ecc3 100644 (file)
@@ -2,14 +2,18 @@
 // Name:        scopeguard.h
 // Purpose:     interface of global functions
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
+    @class wxScopeGuard
+
     Scope guard is an object which allows executing an action on scope exit.
 
     The objects of this class must be constructed using wxMakeGuard() function.
+
+    @nolibrary
+    @category{misc}
  */
 class wxScopeGuard
 {
@@ -33,7 +37,7 @@ public:
     void Dismiss();
 };
 
-/** @ingroup group_funcmacro_misc */
+/** @addtogroup group_funcmacro_misc */
 //@{
 /**
     Returns a scope guard object which will call the specified function with
@@ -50,7 +54,7 @@ wxScopeGuard wxMakeGuard(F func, P1 p1, ..., PN pN);
 
 //@}
 
-/** @ingroup group_funcmacro_misc */
+/** @addtogroup group_funcmacro_misc */
 //@{
 /**
     Ensure that the global @a function with a few (up to some
@@ -78,7 +82,7 @@ wxScopeGuard wxMakeGuard(F func, P1 p1, ..., PN pN);
 #define wxON_BLOCK_EXIT3(function, p1, p2, p3)
 //@}
 
-/** @ingroup group_funcmacro_misc */
+/** @addtogroup group_funcmacro_misc */
 //@{
 /**
     This family of macros is similar to wxON_BLOCK_EXIT(), but calls a method
@@ -93,7 +97,7 @@ wxScopeGuard wxMakeGuard(F func, P1 p1, ..., PN pN);
 #define wxON_BLOCK_EXIT_OBJ3(object, method, p1, p2, p3)
 //@}
 
-/** @ingroup group_funcmacro_misc */
+/** @addtogroup group_funcmacro_misc */
 //@{
 /**
     This family of macros is similar to wxON_BLOCK_OBJ(), but calls a method
@@ -108,7 +112,7 @@ wxScopeGuard wxMakeGuard(F func, P1 p1, ..., PN pN);
 #define wxON_BLOCK_EXIT_THIS3(method, p1, p2, p3)
 //@}
 
-/** @ingroup group_funcmacro_misc */
+/** @addtogroup group_funcmacro_misc */
 //@{
 /**
     This macro sets a variable to the specified value on scope exit.
@@ -126,6 +130,9 @@ wxScopeGuard wxMakeGuard(F func, P1 p1, ..., PN pN);
     }
     @endcode
 
+    Notice that @a value is copied, i.e. stored by value, so it can be a
+    temporary object returned by a function call, for example.
+
     @see wxON_BLOCK_EXIT_OBJ0(), wxON_BLOCK_EXIT_NULL()
 
     @header{wx/scopeguard.h}