updates for wxPython docs

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
1999-09-30 07:13:40 +00:00
parent 2f90df854e
commit 76e1c2debf
10 changed files with 88 additions and 34 deletions

View File

@@ -137,6 +137,10 @@ Loads the accelerator table from a Windows resource (Windows only).
\docparam{resource}{Name of a Windows accelerator.} \docparam{resource}{Name of a Windows accelerator.}
\pythonnote{The wxPython constructor accepts a list of
wxAcceleratorEntry objects, or 3-tuples consisting of flags, keyCode,
and cmd values like you would construct wxAcceleratorEntry objects with.}
\membersection{wxAcceleratorTable::\destruct{wxAcceleratorTable}} \membersection{wxAcceleratorTable::\destruct{wxAcceleratorTable}}
\func{}{\destruct{wxAcceleratorTable}}{\void} \func{}{\destruct{wxAcceleratorTable}}{\void}

View File

@@ -282,6 +282,9 @@ Insert the given number of strings before the specified position.
\docparam{pos}{Position before which to insert the items: for example, if {\it pos} is 0 the items \docparam{pos}{Position before which to insert the items: for example, if {\it pos} is 0 the items
will be inserted in the beginning of the listbox} will be inserted in the beginning of the listbox}
\pythonnote{The first two parameters are collapsed into a single
parameter for wxPython, which is a list of strings.}
\membersection{wxListBox::Number}\label{wxlistboxnumber} \membersection{wxListBox::Number}\label{wxlistboxnumber}
\constfunc{int}{Number}{\void} \constfunc{int}{Number}{\void}

View File

@@ -163,7 +163,7 @@ EVT\_LIST\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
text control will appear for in-place editing. text control will appear for in-place editing.
If the user changed the label (i.e. s/he does not press ESC or leave If the user changed the label (i.e. s/he does not press ESC or leave
the text control without changes, a EVT\_LIST\_END\_LABEL\_EDIT event the text control without changes, a EVT\_LIST\_END\_LABEL\_EDIT event
will be sent which can be vetoed as well. will be sent which can be vetoed as well.
\membersection{wxListCtrl::EnsureVisible}\label{wxlistctrlensurevisible} \membersection{wxListCtrl::EnsureVisible}\label{wxlistctrlensurevisible}
@@ -246,8 +246,8 @@ Returns the specified image list. {\it which} may be one of:
Gets information about the item. See \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem} for more Gets information about the item. See \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem} for more
information. information.
\pythonnote{The wxPython version of this method takes a parameter \pythonnote{The wxPython version of this method takes an integer parameter
representing the item ID, and returns the wxListItem object. for the item ID, and returns the wxListItem object.
} }
\membersection{wxListCtrl::GetItemData}\label{wxlistctrlgetitemdata} \membersection{wxListCtrl::GetItemData}\label{wxlistctrlgetitemdata}

View File

@@ -1,7 +1,7 @@
\section{\class{wxSizer}}\label{wxsizer} \section{\class{wxSizer}}\label{wxsizer}
wxSizer is the abstract base class used for laying out subwindows in a window. You wxSizer is the abstract base class used for laying out subwindows in a window. You
cannot use wxSizer directly; instead, you'll have to use \helpref{wxBoxSizer}{wxboxsizer} cannot use wxSizer directly; instead, you'll have to use \helpref{wxBoxSizer}{wxboxsizer}
or \helpref{wxStaticBoxSizer}{wxstaticboxsizer}. or \helpref{wxStaticBoxSizer}{wxstaticboxsizer}.
The layout algorithm used by sizers in wxWindows closely related to layout The layout algorithm used by sizers in wxWindows closely related to layout
@@ -9,7 +9,7 @@ in other GUI toolkits, such as Java's AWT, the GTK toolkit or the Qt toolkit. It
based upon the idea of the individual subwindows reporting their minimal required based upon the idea of the individual subwindows reporting their minimal required
size and their ability to get stretched if the size of the parent window has changed. size and their ability to get stretched if the size of the parent window has changed.
This will most often mean, that the programmer does not set the original size of This will most often mean, that the programmer does not set the original size of
the dialog in the beginning, rather the top-most sizer will get queried and it will the dialog in the beginning, rather the top-most sizer will get queried and it will
then query its children. Its children can be normal windows or other sizers, so that then query its children. Its children can be normal windows or other sizers, so that
a hierachy of sizer can be constructed. Note that sizer are not derived from wxWindows a hierachy of sizer can be constructed. Note that sizer are not derived from wxWindows
and thus do not interfere with tab ordering and require very little resources compared and thus do not interfere with tab ordering and require very little resources compared
@@ -21,6 +21,10 @@ or different window (dialog item) sizes on different platforms without problems.
the standard font as well as the overall design of Motif widgets requires more space than the standard font as well as the overall design of Motif widgets requires more space than
on Windows, the intial dialog size will automatically be bigger on Motif than on Windows. on Windows, the intial dialog size will automatically be bigger on Motif than on Windows.
\pythonnote{If you wish to create a sizer class in wxPython you should
derive the class from \tt{wxPySizer} in order to get Python-aware
capabilities for the various virtual methods.}
\wxheading{Derived from} \wxheading{Derived from}
\helpref{wxObject}{wxobject} \helpref{wxObject}{wxobject}
@@ -42,11 +46,11 @@ The destructor.
\membersection{wxSizer::Add}\label{wxsizeradd} \membersection{wxSizer::Add}\label{wxsizeradd}
\func{void}{Add}{\param{wxWindow* }{window}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}} \func{void}{Add}{\param{wxWindow* }{window}, \param{int }{option = 0},\param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Add}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}} \func{void}{Add}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}} \func{void}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
Adds the {\it window} to the sizer. As wxSizer itself is an abstract class, the parameters Adds the {\it window} to the sizer. As wxSizer itself is an abstract class, the parameters
have no meaning in the wxSizer class itself, but as there currently is only one class have no meaning in the wxSizer class itself, but as there currently is only one class
@@ -72,7 +76,7 @@ the dialog.}
to indicate if a child of a sizer can change its size in the main orientation of the wxBoxSizer - where to indicate if a child of a sizer can change its size in the main orientation of the wxBoxSizer - where
0 stands for not changable and a value of more than zero in interpreted relative to the value of other 0 stands for not changable and a value of more than zero in interpreted relative to the value of other
children of the same wxBoxSizer. You might, e.g., have a horizontal wxBoxSizer with three children, two children of the same wxBoxSizer. You might, e.g., have a horizontal wxBoxSizer with three children, two
of which are supposed to change their size with the sizer, then the two stretchable windows would get a of which are supposed to change their size with the sizer, then the two stretchable windows would get a
value of 1 each to make them grow and shrink equally with the sizer's vertical dimension.} value of 1 each to make them grow and shrink equally with the sizer's vertical dimension.}
\docparam{flag}{This parameter can be used to set a number of flags which can be combined using \docparam{flag}{This parameter can be used to set a number of flags which can be combined using
@@ -89,13 +93,17 @@ wxALIGN\_BOTTOM have their obvious meaning.}
\docparam{border}{Determines the border width, if the {\it flag} parameter is set to any border.} \docparam{border}{Determines the border width, if the {\it flag} parameter is set to any border.}
\docparam{userData}{Allows an extra object to be attached to the sizer
item, for use in derived classes when sizing information is more
complex than what {\it option} and {\it flag} will allow for.}
\membersection{wxSizer::Prepend}\label{wxsizerprepend} \membersection{wxSizer::Prepend}\label{wxsizerprepend}
\func{void}{Prepend}{\param{wxWindow* }{window}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}} \func{void}{Prepend}{\param{wxWindow* }{window}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}} \func{void}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}} \func{void}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border= 0}, \param{wxObject* }{userData = NULL}}
Same as \helpref{wxSizer::Add}{wxsizeradd}, but prepends the items to the beginning of the Same as \helpref{wxSizer::Add}{wxsizeradd}, but prepends the items to the beginning of the
list of items (windows, subsizers or spaces) owned by this sizer. list of items (windows, subsizers or spaces) owned by this sizer.
@@ -177,7 +185,7 @@ of \helpref{wxBoxSizer}{wxboxsizer}.
\func{void}{SetSizeHints}{\param{wxWindow* }{window}} \func{void}{SetSizeHints}{\param{wxWindow* }{window}}
Tell the sizer to set the minimal size of the {\it window} to match the sizer's minimal size. Tell the sizer to set the minimal size of the {\it window} to match the sizer's minimal size.
This is commonly done in the constructor of the window itself, see sample in the description This is commonly done in the constructor of the window itself, see sample in the description
of \helpref{wxBoxSizer}{wxboxsizer} if the window is resizable (as many dialogs under Unix and of \helpref{wxBoxSizer}{wxboxsizer} if the window is resizable (as many dialogs under Unix and
frames on probably all platforms). frames on probably all platforms).

View File

@@ -34,7 +34,7 @@ htmlIndex = true
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}} \constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\windowstyle [1] {{\bf #1}\index{#1}} \windowstyle [1] {{\bf #1}\index{#1}}
\bftt [1] {\bf{\tt{#1}}} \bftt [1] {\bf{\tt{#1}}}
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}}\\ #1} \pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1}
%\pythonnote [1] {} %\pythonnote [1] {}

View File

@@ -159,7 +159,7 @@ EVT\_TREE\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
text control will appear for in-place editing. text control will appear for in-place editing.
If the user changed the label (i.e. s/he does not press ESC or leave If the user changed the label (i.e. s/he does not press ESC or leave
the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event
will be sent which can be vetoed as well. will be sent which can be vetoed as well.
\wxheading{See also} \wxheading{See also}
@@ -203,6 +203,10 @@ The return value is TRUE if the rectangle was successfully retrieved or FALSE
if it was not (in this case {\it rect} is not changed) - for example, if the if it was not (in this case {\it rect} is not changed) - for example, if the
item is currently invisible. item is currently invisible.
\pythonnote{The wxPython version of this method requires only the
\tt{item} and \tt{textOnly} parameters. The return value is either a
\tt{wxRect} object or \tt{None}.}
\membersection{wxTreeCtrl::GetChildrenCount}\label{wxtreectrlgetchildrencount} \membersection{wxTreeCtrl::GetChildrenCount}\label{wxtreectrlgetchildrencount}
\constfunc{size\_t}{GetChildrenCount}{\param{const wxTreeItemId\&}{ item}, \param{bool}{ recursively = TRUE}} \constfunc{size\_t}{GetChildrenCount}{\param{const wxTreeItemId\&}{ item}, \param{bool}{ recursively = TRUE}}
@@ -392,7 +396,7 @@ Returns the root item for the tree control.
\constfunc{int}{GetItemSelectedImage}{\param{const wxTreeItemId\& }{item}} \constfunc{int}{GetItemSelectedImage}{\param{const wxTreeItemId\& }{item}}
Gets the selected item image (this function is obsolete, use Gets the selected item image (this function is obsolete, use
{\tt GetItemImage(item, wxTreeItemIcon\_Selected} instead). {\tt GetItemImage(item, wxTreeItemIcon\_Selected} instead).
\membersection{wxTreeCtrl::GetSelection}\label{wxtreectrlgetselection} \membersection{wxTreeCtrl::GetSelection}\label{wxtreectrlgetselection}
@@ -400,7 +404,7 @@ Gets the selected item image (this function is obsolete, use
\constfunc{wxTreeItemId}{GetSelection}{\void} \constfunc{wxTreeItemId}{GetSelection}{\void}
Returns the selection, or an invalid item if there is no selection. Returns the selection, or an invalid item if there is no selection.
This function only works with the controls without wxTR\_MULTIPLE style, use This function only works with the controls without wxTR\_MULTIPLE style, use
\helpref{GetSelections}{wxtreectrlgetselections} for the controls which do have \helpref{GetSelections}{wxtreectrlgetselections} for the controls which do have
this style. this style.
@@ -413,6 +417,9 @@ function can be called only if the control has the wxTR\_MULTIPLE style.
Returns the number of selected items. Returns the number of selected items.
\pythonnote{The wxPython version of this method accepts no parameters
and returns a Python list of \tt{wxTreeItemId}'s.}
\membersection{wxTreeCtrl::HitTest}\label{wxtreectrlhittest} \membersection{wxTreeCtrl::HitTest}\label{wxtreectrlhittest}
\func{long}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}} \func{long}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}}
@@ -562,14 +569,14 @@ usage and loading time.
\param{int }{image}, \param{int }{image},
\param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}} \param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}}
Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage} Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage}
for the description of {\it which} parameter. for the description of {\it which} parameter.
\membersection{wxTreeCtrl::SetItemSelectedImage}\label{wxtreectrlsetitemselectedimage} \membersection{wxTreeCtrl::SetItemSelectedImage}\label{wxtreectrlsetitemselectedimage}
\func{void}{SetItemSelectedImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{selImage}} \func{void}{SetItemSelectedImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{selImage}}
Sets the selected item image (this function is obsolete, use Sets the selected item image (this function is obsolete, use
{\tt SetItemImage(item, wxTreeItemIcon\_Selected} instead). {\tt SetItemImage(item, wxTreeItemIcon\_Selected} instead).
\membersection{wxTreeCtrl::SetItemText}\label{wxtreectrlsetitemtext} \membersection{wxTreeCtrl::SetItemText}\label{wxtreectrlsetitemtext}
@@ -607,7 +614,7 @@ Removes the selection from the currently selected item (if any).
\func{void}{UnselectAll}{\void} \func{void}{UnselectAll}{\void}
This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect} This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect}
if the control doesn't have wxTR\_MULTIPLE style, or removes the selection from if the control doesn't have wxTR\_MULTIPLE style, or removes the selection from
all items if it does have this style. all items if it does have this style.

View File

@@ -22,7 +22,7 @@ For more information, please see \helpref{Validator overview}{validatoroverview}
\wxheading{See also} \wxheading{See also}
\helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator}, \helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator},
\helpref{wxTextValidator}{wxtextvalidator} \helpref{wxTextValidator}{wxtextvalidator}
\latexignore{\rtfignore{\wxheading{Members}}} \latexignore{\rtfignore{\wxheading{Members}}}
@@ -73,13 +73,13 @@ Clones the generic validator using the copy constructor.
\membersection{wxGenericValidator::TransferFromWindow}\label{wxgenericvalidatortransferfromwindow} \membersection{wxGenericValidator::TransferFromWindow}\label{wxgenericvalidatortransferfromwindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}} \func{virtual bool}{TransferToWindow}{}
Transfers the value to the window. Transfers the value to the window.
\membersection{wxGenericValidator::TransferToWindow}\label{wxgenericvalidatortransfertowindow} \membersection{wxGenericValidator::TransferToWindow}\label{wxgenericvalidatortransfertowindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}} \func{virtual bool}{TransferToWindow}{}
Transfers the window value to the appropriate data type. Transfers the window value to the appropriate data type.

View File

@@ -18,6 +18,10 @@ To specify a default, `null' validator, use the symbol {\bf wxDefaultValidator}.
For more information, please see \helpref{Validator overview}{validatoroverview}. For more information, please see \helpref{Validator overview}{validatoroverview}.
\pythonnote{If you wish to create a validator class in wxPython you should
derive the class from \tt{wxPyValidator} in order to get Python-aware
capabilities for the various virtual methods.}
\wxheading{Derived from} \wxheading{Derived from}
\helpref{wxEvtHandler}{wxevthandler}\\ \helpref{wxEvtHandler}{wxevthandler}\\
@@ -29,9 +33,9 @@ For more information, please see \helpref{Validator overview}{validatoroverview}
\wxheading{See also} \wxheading{See also}
\helpref{Validator overview}{validatoroverview}, \helpref{Validator overview}{validatoroverview},
\helpref{wxTextValidator}{wxtextvalidator}, \helpref{wxTextValidator}{wxtextvalidator},
\helpref{wxTextValidator}{wxgenericvalidator}, \helpref{wxGenericValidator}{wxgenericvalidator},
\latexignore{\rtfignore{\wxheading{Members}}} \latexignore{\rtfignore{\wxheading{Members}}}
@@ -82,14 +86,14 @@ Associates a window with the validator.
\membersection{wxValidator::TransferFromWindow}\label{wxvalidatortransferfromwindow} \membersection{wxValidator::TransferFromWindow}\label{wxvalidatortransferfromwindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}} \func{virtual bool}{TransferToWindow}{}
This overridable function is called when the value in the window must be This overridable function is called when the value in the window must be
transferred to the validator. Return FALSE if there is a problem. transferred to the validator. Return FALSE if there is a problem.
\membersection{wxValidator::TransferToWindow}\label{wxvalidatortransfertowindow} \membersection{wxValidator::TransferToWindow}\label{wxvalidatortransfertowindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}} \func{virtual bool}{TransferToWindow}{}
This overridable function is called when the value associated with the validator must be This overridable function is called when the value associated with the validator must be
transferred to the window. Return FALSE if there is a problem. transferred to the window. Return FALSE if there is a problem.

View File

@@ -16,7 +16,7 @@ For more information, please see \helpref{Validator overview}{validatoroverview}
\wxheading{See also} \wxheading{See also}
\helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator}, \helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator},
\helpref{wxGenericValidator}{wxgenericvalidator} \helpref{wxGenericValidator}{wxgenericvalidator}
\latexignore{\rtfignore{\wxheading{Members}}} \latexignore{\rtfignore{\wxheading{Members}}}
@@ -111,13 +111,13 @@ Sets the validator style.
\membersection{wxTextValidator::TransferFromWindow}\label{wxtextvalidatortransferfromwindow} \membersection{wxTextValidator::TransferFromWindow}\label{wxtextvalidatortransferfromwindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}} \func{virtual bool}{TransferFromWindow}{}
Transfers the string value to the window. Transfers the string value to the window.
\membersection{wxTextValidator::TransferToWindow}\label{wxtextvalidatortransfertowindow} \membersection{wxTextValidator::TransferToWindow}\label{wxtextvalidatortransfertowindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}} \func{virtual bool}{TransferToWindow}{}
Transfers the window value to the string. Transfers the window value to the string.

View File

@@ -13,7 +13,7 @@ wxPython is a blending of the wxWindows GUI classes and the
\wxheading{Python} \wxheading{Python}
So what is Python? Go to So what is Python? Go to
\urlref{http://www.python.org}{http://www.python.org} to learn more, \urlref{http://www.python.org}{http://www.python.org} to learn more,
but in a nutshell Python is an interpreted, but in a nutshell Python is an interpreted,
interactive, object-oriented programming language. It is often interactive, object-oriented programming language. It is often
@@ -54,7 +54,7 @@ details about getting wxPython working for you.
So why would you want to use wxPython over just C++ and wxWindows? So why would you want to use wxPython over just C++ and wxWindows?
Personally I prefer using Python for everything. I only use C++ when Personally I prefer using Python for everything. I only use C++ when
I absolutely have to eke more performance out of an algorithm, and even I absolutely have to eek more performance out of an algorithm, and even
then I ususally code it as an extension module and leave the majority then I ususally code it as an extension module and leave the majority
of the program in Python. of the program in Python.
@@ -113,7 +113,7 @@ to use the GUI portions.
There are quite a few other GUI modules available for Python, some in There are quite a few other GUI modules available for Python, some in
active use, some that havn't been updated for ages. Most are simple active use, some that havn't been updated for ages. Most are simple
wrappers around some C or C++ toolkit or another, and most are not wrappers around some C or C++ toolkit or another, and most are not
cross-platform compatible. See \urlref{this link}{http://www.python.org/download/Contributed.html\#Graphics} cross-platform compatible. See \urlref{this link}{http://www.python.org/download/Contributed.html\#Graphics}
for a listing of a few of them. for a listing of a few of them.
%---------------------------------------------------------------------- %----------------------------------------------------------------------
@@ -129,7 +129,7 @@ generated C++ code is included under the src directory.
I added a few minor features to SWIG to control some of the code I added a few minor features to SWIG to control some of the code
generation. If you want to play around with this you will need to get generation. If you want to play around with this you will need to get
a recent version of SWIG from their CVS or from a daily build. See a recent version of SWIG from their CVS or from a daily build. See
\urlref{http://www.swig.org/}{http://www.swig.org/} for details. \urlref{http://www.swig.org/}{http://www.swig.org/} for details.
wxPython is organized as a Python package. This means that the wxPython is organized as a Python package. This means that the
@@ -159,6 +159,7 @@ You can use whatever flags you want, but I know these work.
For Win32 systems I use Visual C++ 6.0, but 5.0 should work also. The For Win32 systems I use Visual C++ 6.0, but 5.0 should work also. The
build utility currently does not support any other Win32 compilers. build utility currently does not support any other Win32 compilers.
\item At this point you may want to make an alias or symlink, script, \item At this point you may want to make an alias or symlink, script,
batch file, whatever on the PATH that invokes \tt{\$(WXWIN)/utils/wxPython/distrib/build.py} to batch file, whatever on the PATH that invokes \tt{\$(WXWIN)/utils/wxPython/distrib/build.py} to
help simplify matters somewhat. For example, on my Win32 system I have a file named help simplify matters somewhat. For example, on my Win32 system I have a file named
@@ -167,6 +168,7 @@ help simplify matters somewhat. For example, on my Win32 system I have a file na
\tt{python \%WXWIN/utils/wxPython/distrib/build.py \%1 \%2 \%3 \%4 \%5 \%6} \tt{python \%WXWIN/utils/wxPython/distrib/build.py \%1 \%2 \%3 \%4 \%5 \%6}
\item Change into the \tt{\$(WXWIN)/utils/wxPython/src} directory. \item Change into the \tt{\$(WXWIN)/utils/wxPython/src} directory.
\item Type "\tt{build -b}" to build wxPython and "\tt{build -i}" to \item Type "\tt{build -b}" to build wxPython and "\tt{build -i}" to
install it, or "\tt{build -bi}" to do both steps at once. install it, or "\tt{build -bi}" to do both steps at once.
@@ -176,10 +178,13 @@ If you have troubles building or you want it built or installed in
a different way, take a look at the docstring in build.py. You are a different way, take a look at the docstring in build.py. You are
able to to override many configuration options in a file named able to to override many configuration options in a file named
build.local. build.local.
\item To build and install the add-on modules, change to the appropriate \item To build and install the add-on modules, change to the appropriate
directory under \tt{\$(WXWIN)/utils/wxPython/modules} and run the build directory under \tt{\$(WXWIN)/utils/wxPython/modules} and run the build
utility again. utility again.
\item Change to the \tt{\$(WXWIN)/utils/wxPython/demo} directory. \item Change to the \tt{\$(WXWIN)/utils/wxPython/demo} directory.
\item Try executing the demo program. For example: \item Try executing the demo program. For example:
\tt{python demo.py} \tt{python demo.py}
@@ -296,6 +301,7 @@ into the current module's namespace. If you prefer to reduce
namespace pollution you can use "\tt{from wxPython import wx}" and namespace pollution you can use "\tt{from wxPython import wx}" and
then access all the wxPython identifiers through the wx module, for then access all the wxPython identifiers through the wx module, for
example, "\tt{wx.wxFrame}". example, "\tt{wx.wxFrame}".
\item At line 13 the frame's sizing and moving events are connected to \item At line 13 the frame's sizing and moving events are connected to
methods of the class. These helper functions are intended to be like methods of the class. These helper functions are intended to be like
the event table macros that wxWindows employs. But since static event the event table macros that wxWindows employs. But since static event
@@ -303,9 +309,11 @@ tables are impossible with wxPython, we use helpers that are named the
same to dynamically build the table. The only real difference is same to dynamically build the table. The only real difference is
that the first arguemnt to the event helpers is always the window that that the first arguemnt to the event helpers is always the window that
the event table entry should be added to. the event table entry should be added to.
\item Notice the use of \tt{wxDLG\_PNT} and \tt{wxDLG\_SZE} in lines 19 \item Notice the use of \tt{wxDLG\_PNT} and \tt{wxDLG\_SZE} in lines 19
- 29 to convert from dialog units to pixels. These helpers are unique - 29 to convert from dialog units to pixels. These helpers are unique
to wxPython since Python can't do method overloading like C++. to wxPython since Python can't do method overloading like C++.
\item There is an \tt{OnCloseWindow} method at line 34 but no call to \item There is an \tt{OnCloseWindow} method at line 34 but no call to
EVT\_CLOSE to attach the event to the method. Does it really get EVT\_CLOSE to attach the event to the method. Does it really get
called? The answer is, yes it does. This is because many of the called? The answer is, yes it does. This is because many of the
@@ -314,6 +322,7 @@ called? The answer is, yes it does. This is because many of the
C++ classes in this area to determine what is \em{standard} but since C++ classes in this area to determine what is \em{standard} but since
that changes from time to time I can make no guarentees, nor will it that changes from time to time I can make no guarentees, nor will it
be fully documented. When in doubt, use an EVT\_*** function. be fully documented. When in doubt, use an EVT\_*** function.
\item At lines 17 to 21 notice that there are no saved references to \item At lines 17 to 21 notice that there are no saved references to
the panel or the static text items that are created. Those of you the panel or the static text items that are created. Those of you
who know Python might be wondering what happens when Python deletes who know Python might be wondering what happens when Python deletes
@@ -325,11 +334,13 @@ when necessary. For this reason, most wxPython objects do not need to
have a \_\_del\_\_ method that explicitly causes the C++ object to be have a \_\_del\_\_ method that explicitly causes the C++ object to be
deleted. If you ever have the need to forcibly delete a window, use deleted. If you ever have the need to forcibly delete a window, use
the Destroy() method as shown on line 36. the Destroy() method as shown on line 36.
\item Just like wxWindows in C++, wxPython apps need to create a class \item Just like wxWindows in C++, wxPython apps need to create a class
derived from \tt{wxApp} (line 56) that implements a method named derived from \tt{wxApp} (line 56) that implements a method named
\tt{OnInit}, (line 59.) This method should create the application's \tt{OnInit}, (line 59.) This method should create the application's
main window (line 62) and use \tt{wxApp.SetTopWindow()} (line 66) to main window (line 62) and use \tt{wxApp.SetTopWindow()} (line 66) to
inform wxWindows about it. inform wxWindows about it.
\item And finally, at line 72 an instance of the application class is \item And finally, at line 72 an instance of the application class is
created. At this point wxPython finishes initializing itself, and calls created. At this point wxPython finishes initializing itself, and calls
the \tt{OnInit} method to get things started. (The zero parameter here is the \tt{OnInit} method to get things started. (The zero parameter here is
@@ -354,6 +365,7 @@ as possible to the C++ spec over time.
\item \helpref{wxBitmapButton}{wxbitmapbutton} \item \helpref{wxBitmapButton}{wxbitmapbutton}
\item \helpref{wxBitmap}{wxbitmap} \item \helpref{wxBitmap}{wxbitmap}
\item wxBMPHandler \item wxBMPHandler
\item \helpref{wxBoxSizer}{wxBoxSizer}
\item \helpref{wxBrush}{wxbrush} \item \helpref{wxBrush}{wxbrush}
\item \helpref{wxButton}{wxbutton} \item \helpref{wxButton}{wxbutton}
\item \helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent} \item \helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent}
@@ -389,6 +401,14 @@ as possible to the C++ spec over time.
\item wxGridCell \item wxGridCell
\item wxGridEvent \item wxGridEvent
\item \helpref{wxGrid}{wxgrid} \item \helpref{wxGrid}{wxgrid}
\item \helpref{wxHtmlCell}{wxHtmlCell}
\item \helpref{wxHtmlContainerCell}{wxHtmlContainerCell}
\item \helpref{wxHtmlParser}{wxHtmlParser}
\item \helpref{wxHtmlTagHandler}{wxHtmlTagHandler}
\item \helpref{wxHtmlTag}{wxHtmlTag}
\item \helpref{wxHtmlWinParser}{wxHtmlWinParser}
\item \helpref{wxHtmlWinTagHandler}{wxHtmlWinTagHandler}
\item \helpref{wxHtmlWindow}{wxHtmlWindow}
\item wxIconizeEvent \item wxIconizeEvent
\item \helpref{wxIcon}{wxicon} \item \helpref{wxIcon}{wxicon}
\item \helpref{wxIdleEvent}{wxidleevent} \item \helpref{wxIdleEvent}{wxidleevent}
@@ -455,16 +475,20 @@ as possible to the C++ spec over time.
\item \helpref{wxScrollBar}{wxscrollbar} \item \helpref{wxScrollBar}{wxscrollbar}
\item \helpref{wxScrollEvent}{wxscrollevent} \item \helpref{wxScrollEvent}{wxscrollevent}
\item \helpref{wxScrolledWindow}{wxscrolledwindow} \item \helpref{wxScrolledWindow}{wxscrolledwindow}
\item \helpref{wxScrollWinEvent}{wxscrollwinevent}
\item wxShowEvent \item wxShowEvent
\item \helpref{wxSingleChoiceDialog}{wxsinglechoicedialog} \item \helpref{wxSingleChoiceDialog}{wxsinglechoicedialog}
\item \helpref{wxSizeEvent}{wxsizeevent} \item \helpref{wxSizeEvent}{wxsizeevent}
\item \helpref{wxSize}{wxsize} \item \helpref{wxSize}{wxsize}
\item \helpref{wxSizer}{wxSizer}
\item wxSizerItem
\item \helpref{wxSlider}{wxslider} \item \helpref{wxSlider}{wxslider}
\item \helpref{wxSpinButton}{wxspinbutton} \item \helpref{wxSpinButton}{wxspinbutton}
\item wxSpinEvent \item wxSpinEvent
\item \helpref{wxSplitterWindow}{wxsplitterwindow} \item \helpref{wxSplitterWindow}{wxsplitterwindow}
\item \helpref{wxStaticBitmap}{wxstaticbitmap} \item \helpref{wxStaticBitmap}{wxstaticbitmap}
\item \helpref{wxStaticBox}{wxstaticbox} \item \helpref{wxStaticBox}{wxstaticbox}
\item \helpref{wxStaticBoxSizer}{wxStaticBoxSizer}
\item wxStaticLine \item wxStaticLine
\item \helpref{wxStaticText}{wxstatictext} \item \helpref{wxStaticText}{wxstatictext}
\item \helpref{wxStatusBar}{wxstatusbar} \item \helpref{wxStatusBar}{wxstatusbar}
@@ -481,8 +505,12 @@ as possible to the C++ spec over time.
\item \helpref{wxTreeItemData}{wxtreeitemdata} \item \helpref{wxTreeItemData}{wxtreeitemdata}
\item wxTreeItemId \item wxTreeItemId
\item \helpref{wxUpdateUIEvent}{wxupdateuievent} \item \helpref{wxUpdateUIEvent}{wxupdateuievent}
\item \helpref{wxValidator}{wxvalidator}
\item \helpref{wxWindowDC}{wxwindowdc} \item \helpref{wxWindowDC}{wxwindowdc}
\item \helpref{wxWindow}{wxwindow} \item \helpref{wxWindow}{wxwindow}
\end{itemize} \end{itemize}
%---------------------------------------------------------------------- %----------------------------------------------------------------------