]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/variant.tex
Fixed to work with the new wxMacControl system.
[wxWidgets.git] / docs / latex / wx / variant.tex
index f91ca59e148b920d98762efb77d44eac52dca34c..951992df297d62ffea9b84c4383b1af982c590bc 100644 (file)
@@ -17,10 +17,6 @@ for different data types, or a remote procedure call protocol.
 An optional name member is associated with a wxVariant. This might be used, for example, in CORBA
 or OLE automation classes, where named parameters are required.
 
-wxVariant is similar to wxExpr and also to wxPropertyValue. However, wxExpr is efficiency-optimized for
-a restricted range of data types, whereas wxVariant is less efficient but more extensible.
-wxPropertyValue may be replaced by wxVariant eventually.
-
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
@@ -45,7 +41,8 @@ Default constructor.
 
 Copy constructor.
 
-\func{}{wxVariant}{\param{const char*}{ value}, \param{const wxString\& }{name = ``"}}\\
+\func{}{wxVariant}{\param{const char*}{ value}, \param{const wxString\& }{name = ``"}}
+
 \func{}{wxVariant}{\param{const wxString\&}{ value}, \param{const wxString\& }{name = ``"}}
 
 Construction from a string value.
@@ -79,20 +76,14 @@ Construction from a list of strings. This constructor
 copies {\it value}, the application is still responsible for
 deleting {\it value} and its contents.
 
-%Note: this constructor is currently disabled because it causes a C++ ambiguity.
-
-\func{}{wxVariant}{\param{const wxTime\&}{ value}, \param{const wxString\& }{name = ``"}}
-
-Construction from a time.
-
-\func{}{wxVariant}{\param{const wxDate\&}{ value}, \param{const wxString\& }{name = ``"}}
-
-Construction from a date.
-
 \func{}{wxVariant}{\param{void*}{ value}, \param{const wxString\& }{name = ``"}}
 
 Construction from a void pointer.
 
+\func{}{wxVariant}{\param{wxObject*}{ value}, \param{const wxString\& }{name = ``"}}
+
+Construction from a wxObject pointer.
+
 \func{}{wxVariant}{\param{wxVariantData*}{ data}, \param{const wxString\& }{name = ``"}}
 
 Construction from user-defined data. The variant holds on to the {\it data} pointer.
@@ -145,12 +136,6 @@ Returns the character value.
 
 Returns a pointer to the internal variant data.
 
-\membersection{wxVariant::GetDate}\label{wxvariantgetdate}
-
-\constfunc{wxDate}{GetDate}{\void}
-
-Gets the date value.
-
 \membersection{wxVariant::GetDouble}\label{wxvariantgetdouble}
 
 \constfunc{double}{GetDouble}{\void}
@@ -175,12 +160,6 @@ Returns a constant reference to the variant name.
 
 Gets the string value.
 
-\membersection{wxVariant::GetTime}\label{wxvariantgettime}
-
-\constfunc{wxTime}{GetTime}{\void}
-
-Gets the time value.
-
 \membersection{wxVariant::GetType}\label{wxvariantgettype}
 
 \constfunc{wxString}{GetType}{\void}
@@ -195,6 +174,12 @@ If the variant is null, the value type returned is the string ``null" (not the e
 
 Gets the void pointer value.
 
+\membersection{wxVariant::GetWxObjectPtr}\label{wxvariantgetwxobjectptr}
+
+\constfunc{void*}{GetWxObjectPtr}{\void}
+
+Gets the wxObject pointer value.
+
 \membersection{wxVariant::Insert}\label{wxvariantinsert}
 
 \func{void}{Insert}{\param{const wxVariant\&}{ value}}
@@ -205,13 +190,19 @@ Inserts a value at the front of the list.
 
 \constfunc{bool}{IsNull}{\void}
 
-Returns TRUE if there is no data associated with this variant, FALSE if there is data.
+Returns true if there is no data associated with this variant, false if there is data.
 
 \membersection{wxVariant::IsType}\label{wxvariantistype}
 
 \constfunc{bool}{IsType}{\param{const wxString\&}{ type}}
 
-Returns TRUE if {\it type} matches the type of the variant, FALSE otherwise.
+Returns true if {\it type} matches the type of the variant, false otherwise.
+
+\membersection{wxVariant::IsValueKindOf}\label{wxvariantisvaluekindof}
+
+\constfunc{bool}{IsValueKindOf}{\param{const wxClassInfo* type}{ type}}
+
+Returns true if the data is derived from the class described by {\it type}, false otherwise.
 
 \membersection{wxVariant::MakeNull}\label{wxvariantmakenull}
 
@@ -229,7 +220,7 @@ Makes a string representation of the variant value (for any type).
 
 \constfunc{bool}{Member}{\param{const wxVariant\&}{ value}}
 
-Returns TRUE if {\it value} matches an element in the list.
+Returns true if {\it value} matches an element in the list.
 
 \membersection{wxVariant::NullList}\label{wxvariantnulllist}
 
@@ -262,10 +253,6 @@ Sets the internal variant data, deleting the existing data if there is any.
 
 \func{void}{operator $=$}{\param{const double }{value}}
 
-\func{void}{operator $=$}{\param{const wxDate\& }{value}}
-
-\func{void}{operator $=$}{\param{const wxTime\& }{value}}
-
 \func{void}{operator $=$}{\param{void* }{value}}
 
 \func{void}{operator $=$}{\param{const wxList\& }{value}}
@@ -290,10 +277,6 @@ Assignment operators.
 
 \func{bool}{operator $==$}{\param{const double }{value}}
 
-\func{bool}{operator $==$}{\param{const wxDate\& }{value}}
-
-\func{bool}{operator $==$}{\param{const wxTime\& }{value}}
-
 \func{bool}{operator $==$}{\param{void* }{value}}
 
 \func{bool}{operator $==$}{\param{const wxList\& }{value}}
@@ -318,10 +301,6 @@ Equality test operators.
 
 \func{bool}{operator $!=$}{\param{const double }{value}}
 
-\func{bool}{operator $!=$}{\param{const wxDate\& }{value}}
-
-\func{bool}{operator $!=$}{\param{const wxTime\& }{value}}
-
 \func{bool}{operator $!=$}{\param{void* }{value}}
 
 \func{bool}{operator $!=$}{\param{const wxList\& }{value}}
@@ -357,24 +336,12 @@ Operator for implicit conversion to a double, using \helpref{wxVariant::GetDoubl
 
 Operator for implicit conversion to a long, using \helpref{wxVariant::GetLong}{wxvariantgetlong}.
 
-\membersection{wxVariant::operator wxDate}\label{wxvariantwxdate}
-
-\constfunc{wxDate}{operator wxDate}{\void}
-
-Operator for implicit conversion to a wxDate, using \helpref{wxVariant::GetDate}{wxvariantgetdate}.
-
 \membersection{wxVariant::operator wxString}\label{wxvariantwxstring}
 
 \constfunc{wxString}{operator wxString}{\void}
 
 Operator for implicit conversion to a string, using \helpref{wxVariant::MakeString}{wxvariantmakestring}.
 
-\membersection{wxVariant::operator wxTime}\label{wxvariantwxtime}
-
-\constfunc{wxTime}{operator wxTime}{\void}
-
-Operator for implicit conversion to a wxTime, using \helpref{wxVariant::GetTime}{wxvariantgettime}.
-
 \membersection{wxVariant::operator void*}\label{wxvariantvoid}
 
 \constfunc{void*}{operator void*}{\void}
@@ -416,7 +383,7 @@ Copy the data from `this' object to {\it data}.
 
 \constfunc{bool}{Eq}{\param{wxVariantData\&}{ data}}
 
-Returns TRUE if this object is equal to {\it data}.
+Returns true if this object is equal to {\it data}.
 
 \membersection{wxVariantData::GetType}\label{wxvariantdatagettype}
 
@@ -424,6 +391,13 @@ Returns TRUE if this object is equal to {\it data}.
 
 Returns the string type of the data.
 
+\membersection{wxVariantData::GetValueClassInfo}\label{wxvariantdatagetvalueclassinfo}
+
+\constfunc{wxClassInfo*}{GetValueClassInfo}{\void}
+
+If the data is a wxObject returns a pointer to the objects wxClassInfo structure, if
+the data isn't a wxObject the method returns NULL.
+
 \membersection{wxVariantData::Read}\label{wxvariantdataread}
 
 \func{bool}{Read}{\param{ostream\&}{ stream}}
@@ -441,4 +415,17 @@ Reads the data from {\it stream} or {\it string}.
 Writes the data to {\it stream} or {\it string}.
 
 
+\membersection{wxGetVariantCast}\label{wxgetvariantcast}
+
+\func{classname *}{wxGetVariantCast}{wxVariant\&, classname}
+
+This macro returns the data stored in {\it variant} cast to the type {\it classname *} if
+the data is of this type (the check is done during the run-time) or
+{\tt NULL} otherwise. 
+
+
+\wxheading{See also}
+
+\helpref{RTTI overview}{runtimeclassoverview}\\
+\helpref{wxDynamicCast}{wxdynamiccast}