X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6776a0b25c1122df4e2a29655ed9de2fcde1735f..8c517ddd1a2dd7eee7f95eb9ac1783f4a2e6fd76:/docs/latex/wx/function.tex?ds=sidebyside

diff --git a/docs/latex/wx/function.tex b/docs/latex/wx/function.tex
index 7216744074..bb08c1b42d 100644
--- a/docs/latex/wx/function.tex
+++ b/docs/latex/wx/function.tex
@@ -1586,28 +1586,60 @@ function.
 
 These macros are defined in wxWindows.
 
-\membersection{CLASSINFO}\label{classinfo}
+\membersection{wxINTXX\_SWAP\_ALWAYS}\label{intswapalways}
 
-\func{wxClassInfo *}{CLASSINFO}{className}
+\func{wxInt32}{wxINT32\_SWAP\_ALWAYS}{\param{wxInt32 }{value}}
 
-Returns a pointer to the wxClassInfo object associated with this class.
+\func{wxUint32}{wxUINT32\_SWAP\_ALWAYS}{\param{wxUint32 }{value}}
 
-\wxheading{Include files}
+\func{wxInt16}{wxINT16\_SWAP\_ALWAYS}{\param{wxInt16 }{value}}
 
-<wx/object.h>
+\func{wxUint16}{wxUINT16\_SWAP\_ALWAYS}{\param{wxUint16 }{value}}
 
-\membersection{WXDEBUG\_NEW}\label{debugnew}
+This macro will swap the bytes of the {\it value} variable from little
+endian to big endian or vice versa.
 
-\func{}{WXDEBUG\_NEW}{arg}
+\membersection{wxINTXX\_SWAP\_ON\_BE}\label{intswaponbe}
 
-This is defined in debug mode to be call the redefined new operator
-with filename and line number arguments. The definition is:
+\func{wxInt32}{wxINT32\_SWAP\_ON\_BE}{\param{wxInt32 }{value}}
 
-\begin{verbatim}
-#define WXDEBUG_NEW new(__FILE__,__LINE__)
-\end{verbatim}
+\func{wxUint32}{wxUINT32\_SWAP\_ON\_BE}{\param{wxUint32 }{value}}
 
-In non-debug mode, this is defined as the normal new operator.
+\func{wxInt16}{wxINT16\_SWAP\_ON\_BE}{\param{wxInt16 }{value}}
+
+\func{wxUint16}{wxUINT16\_SWAP\_ON\_BE}{\param{wxUint16 }{value}}
+
+This macro will swap the bytes of the {\it value} variable from little
+endian to big endian or vice versa if the program is compiled on a
+big-endian architecture (such as Sun work stations). If the program has 
+been compiled on a little-endian architecture, the value will be unchanged.
+
+Use these macros to read data from and write data to a file that stores 
+data in little endian (Intel i386) format.
+
+\membersection{wxINTXX\_SWAP\_ON\_LE}\label{intswaponle}
+
+\func{wxInt32}{wxINT32\_SWAP\_ON\_LE}{\param{wxInt32 }{value}}
+
+\func{wxUint32}{wxUINT32\_SWAP\_ON\_LE}{\param{wxUint32 }{value}}
+
+\func{wxInt16}{wxINT16\_SWAP\_ON\_LE}{\param{wxInt16 }{value}}
+
+\func{wxUint16}{wxUINT16\_SWAP\_ON\_LE}{\param{wxUint16 }{value}}
+
+This macro will swap the bytes of the {\it value} variable from little
+endian to big endian or vice versa if the program is compiled on a
+little-endian architecture (such as Intel PCs). If the program has 
+been compiled on a big-endian architecture, the value will be unchanged.
+
+Use these macros to read data from and write data to a file that stores 
+data in big endian format.
+
+\membersection{CLASSINFO}\label{classinfo}
+
+\func{wxClassInfo *}{CLASSINFO}{className}
+
+Returns a pointer to the wxClassInfo object associated with this class.
 
 \wxheading{Include files}
 
@@ -1810,8 +1842,59 @@ base classes.
 
 <wx/object.h>
 
+\membersection{WXDEBUG\_NEW}\label{debugnew}
+
+\func{}{WXDEBUG\_NEW}{arg}
+
+This is defined in debug mode to be call the redefined new operator
+with filename and line number arguments. The definition is:
+
+\begin{verbatim}
+#define WXDEBUG_NEW new(__FILE__,__LINE__)
+\end{verbatim}
+
+In non-debug mode, this is defined as the normal new operator.
+
+\wxheading{Include files}
+
+<wx/object.h>
+
+\membersection{wxDynamicCast}\label{wxdynamiccast}
+
+\func{}{wxDynamicCast}{ptr, classname}
+
+This macro returns the pointer {\it ptr} cast to the type {\it classname *} if
+the pointer is of this type (the check is done during the run-time) or NULL
+otherwise. Usage of this macro is prefered over obsoleted wxObject::IsKindOf()
+function.
+
+The {\it ptr} argument may be NULL, in which case NULL will be returned.
+
+Example:
+
+\begin{verbatim}
+    wxWindow *win = wxWindow::FindFocus();
+    wxTextCtrl *text = wxDynamicCast(win, wxTextCtrl);
+    if ( text )
+    {
+        // a text control has the focus...
+    }
+    else
+    {
+        // no window has the focus or it's not a text control
+    }
+\end{verbatim}
+
+\wxheading{See also}
+
+\helpref{RTTI overview}{runtimeclassoverview}
+
 \membersection{WXTRACE}\label{trace}
 
+\wxheading{Include files}
+
+<wx/object.h>
+
 \func{}{WXTRACE}{formatString, ...}
 
 Calls wxTrace with printf-style variable argument syntax. Output
