]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/weakref.h
Add some missing wxGraphicsContext methods
[wxWidgets.git] / interface / wx / weakref.h
index a94b65f6561dc5cd6c21d0583fbb5b9a4eaadf9a..bf79582c7e15c2a40f709cff6b5aaf6f336aa2c9 100644 (file)
@@ -3,12 +3,11 @@
 // Purpose:     interface of wxWeakRefDynamic<T>, wxWeakRef<T>
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
 /**
-
     wxWeakRefDynamic<T> is a template class for weak references that is used in
     the same way as wxWeakRef<T>. The only difference is that wxWeakRefDynamic
     defaults to using @c dynamic_cast for establishing the object reference
@@ -19,7 +18,7 @@
     is to handle objects which derived type one does not know.
 
     @note wxWeakRef<T> selects an implementation based on the static type of T.
-          If T does not have wxTrackable statically, it defaults to to a mixed-
+          If T does not have wxTrackable statically, it defaults to a mixed-
           mode operation, where it uses @c dynamic_cast as the last measure
           (if available from the compiler and enabled when building wxWidgets).
 
     For API documentation, see: wxWeakRef<T>.
 
     @tparam T
-        @todo docme
+        The type to which the smart pointer points to.
 
     @nolibrary
-    @category{misc}
+    @category{smartpointers}
 */
 template<typename T>
 class wxWeakRefDynamic<T>
@@ -92,10 +91,10 @@ public:
     @endcode
 
     @tparam T
-        @todo docme
+        The type to which the smart pointer points to.
 
     @nolibrary
-    @category{misc}
+    @category{smartpointers}
 
     @see wxSharedPtr<T>, wxScopedPtr<T>
 */
@@ -103,6 +102,9 @@ template<typename T>
 class wxWeakRef<T> : public wxTrackerNode
 {
 public:
+    /// Type of the element stored by this reference.
+    typedef T element_type;
+
     /**
         Constructor. The weak reference is initialized to @e pobj.
     */
@@ -116,7 +118,7 @@ public:
     /**
         Destructor.
     */
-    ~wxWeakRef();
+    virtual ~wxWeakRef();
 
     /**
         Called when the tracked object is destroyed. Be default sets
@@ -154,11 +156,10 @@ public:
     T& operator*() const;
 
     /**
-        Smart pointer member access.
-        Returns a pointer to the tracked object.
+        Smart pointer member access. Returns a pointer to the tracked object.
         If the internal pointer is @NULL this method will cause an assert in debug mode.
     */
-    T* operator-();
+    T* operator->();
 
     /**
         Releases the currently tracked object and starts tracking @e pobj.