merged 2.4 branch into the trunk

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2002-12-04 14:11:26 +00:00
parent 59a944cb63
commit 2b5f62a0b2
1057 changed files with 37805 additions and 24034 deletions

View File

@@ -93,6 +93,7 @@ that are not static can have \helpref{validators}{wxvalidator} associated with t
\twocolitem{\helpref{wxStaticBox}{wxstaticbox}}{A static, or group box for visually grouping related controls}
\twocolitem{\helpref{wxListBox}{wxlistbox}}{A list of strings for single or multiple selection}
\twocolitem{\helpref{wxListCtrl}{wxlistctrl}}{A control for displaying lists of strings and/or icons, plus a multicolumn report view}
\twocolitem{\helpref{wxListView}{wxlistview}}{A simpler interface ({\it fa\c{c}ade} for wxListCtrl in report mode}
\twocolitem{\helpref{wxTabCtrl}{wxtabctrl}}{Manages several tabs}
\twocolitem{\helpref{wxTextCtrl}{wxtextctrl}}{Single or multiline text editing control}
\twocolitem{\helpref{wxTreeCtrl}{wxtreectrl}}{Tree (hierarchy) control}

View File

@@ -174,6 +174,7 @@
\input listctrl.tex
\input listevt.tex
\input listitem.tex
\input listview.tex
\input locale.tex
\input log.tex
\input longlong.tex

View File

@@ -67,6 +67,8 @@ Constructor, creating and showing a combobox.
\docparam{id}{Window identifier. A value of -1 indicates a default value.}
\docparam{value}{Initial selection string. An empty string indicates no selection.}
\docparam{pos}{Window position.}
\docparam{size}{Window size. If the default size (-1, -1) is specified then the window is sized

View File

@@ -368,18 +368,13 @@ a local or global config file is created or used. If the flag is present but
the parameter is empty, the parameter will be set to a default. If the
parameter is present but the style flag not, the relevant flag will be added
to the style. For wxFileConfig you can also add wxCONFIG\_USE\_RELATIVE\_PATH
by logicaly or'ing it to either of the \_FILE options to tell wxFileConfig to
by logically or'ing it to either of the \_FILE options to tell wxFileConfig to
use relative instead of absolute paths. For wxFileConfig, you can also
add wxCONFIG\_USE\_NO\_ESCAPE\_CHARACTERS which will turn off character
escaping for the values of entries stored in the config file: for example
a {\it foo} key with some backslash characters will be stored as
\begin{verbatim}
foo=C:\mydir
\end{verbatim}
instead of the usual storage of
\begin{verbatim}
foo=C:\\mydir
\end{verbatim}
a {\it foo} key with some backslash characters will be stored as {\tt foo=C:$\backslash$mydir} instead
of the usual storage of {\tt foo=C:$\backslash\backslash$mydir}.
The wxCONFIG\_USE\_NO\_ESCAPE\_CHARACTERS style can be helpful if your config
file must be read or written to by a non-wxWindows program (which might not
understand the escape characters). Note, however, that if

View File

@@ -1,6 +1,6 @@
\section{\class{wxCriticalSection}}\label{wxcriticalsection}
A critical section object is used for the same exactly purpose as
A critical section object is used for exactly the same purpose as
\helpref{mutexes}{wxmutex}. The only difference is that under Windows platform
critical sections are only visible inside one process, while mutexes may be
shared between processes, so using critical sections is slightly more

View File

@@ -235,6 +235,7 @@ values were correct as constructors can not return an error code.
\helpref{Set(double jdn)}{wxdatetimesetjdn}\\
\helpref{Set(h, m, s, ms)}{wxdatetimesettime}\\
\helpref{Set(day, mon, year, h, m, s, ms)}{wxdatetimesetdate}\\
\helpref{SetFromDOS(unsigned long ddt)}{wxdatetimesetfromdos}\\
\helpref{ResetTime}{wxdatetimeresettime}\\
\helpref{SetYear}{wxdatetimesetyear}\\
\helpref{SetMonth}{wxdatetimesetmonth}\\
@@ -268,7 +269,8 @@ some more complicated calculations to find the answer are under the
\helpref{GetWeekOfMonth}{wxdatetimegetweekofmonth}\\
\helpref{GetYearDay}{wxdatetimegetyearday}\\
\helpref{IsWorkDay}{wxdatetimeisworkday}\\
\helpref{IsGregorianDate}{wxdatetimeisgregoriandate}
\helpref{IsGregorianDate}{wxdatetimeisgregoriandate}\\
\helpref{GetAsDOS}{wxdatetimegetasdos}
\membersection{Date comparison}
@@ -882,6 +884,24 @@ Returns {\tt TRUE} if the given date os later than the date of adoption of the
Gregorian calendar in the given country (and hence the Gregorian calendar
calculations make sense for it).
%%%%%%%%%%%%%%%%%%%%%% dos date and time format %%%%%%%%%%%%%%%%%%%%%%%
\membersection{wxDateTime::SetFromDOS}\label{wxdatetimesetfromdos}
\func{wxDateTime\&}{Set}{\param{unsigned long }{ddt}}
Sets the date from the date and time in
\urlref{DOS}{http://developer.novell.com/ndk/doc/smscomp/index.html?page=/ndk/doc/smscomp/sms\_docs/data/hc2vlu5i.html}
format.
\membersection{wxDateTime::GetAsDOS}\label{wxdatetimegetasdos}
\constfunc{unsigned long}{GetAsDOS}{\void}
Returns the date and time in
\urlref{DOS}{http://developer.novell.com/ndk/doc/smscomp/index.html?page=/ndk/doc/smscomp/sms\_docs/data/hc2vlu5i.html}
format.
%%%%%%%%%%%%%%%%%%%%%%%%%%% comparison %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\membersection{wxDateTime::IsEqualTo}\label{wxdatetimeisequalto}
@@ -1127,7 +1147,7 @@ This function returns the time representation in the ISO 8601 format
\membersection{wxDateTime::SetToWeekDayInSameWeek}\label{wxdatetimesettoweekdayinsameweek}
\func{wxDateTime\&}{SetToWeekDayInSameWeek}{\param{WeekDay }{weekday}}
\func{wxDateTime\&}{SetToWeekDayInSameWeek}{\param{WeekDay }{weekday}, \param{WeekFlags}{flags = {\tt Monday\_First}}}
Adjusts the date so that it will still lie in the same week as before, but its
week day will be the given one.
@@ -1136,9 +1156,9 @@ Returns the reference to the modified object itself.
\membersection{wxDateTime::GetWeekDayInSameWeek}\label{wxdatetimegetweekdayinsameweek}
\constfunc{wxDateTime}{GetWeekDayInSameWeek}{\param{WeekDay }{weekday}}
\constfunc{wxDateTime}{GetWeekDayInSameWeek}{\param{WeekDay }{weekday}, \param{WeekFlags}{flags = {\tt Monday\_First}}}
Returns the copy of this object to which
Returns the copy of this object to which
\helpref{SetToWeekDayInSameWeek}{wxdatetimesettoweekdayinsameweek} was
applied.
@@ -1216,7 +1236,7 @@ Returns the copy of this object to which
\membersection{wxDateTime::SetToTheWeek}\label{wxdatetimesettotheweek}
\func{bool}{SetToTheWeek}{\param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}}
\func{bool}{SetToTheWeek}{\param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}, \param{WeekFlags}{flags = {\tt Monday\_First}}}
Set the date to the given {\it weekday} in the week with given number
{\it numWeek}. The number should be in range $1\ldots53$ and {\tt FALSE} will
@@ -1225,7 +1245,7 @@ date was changed successfully.
\membersection{wxDateTime::GetWeek}\label{wxdatetimegetweek}
\constfunc{wxDateTime}{GetWeek}{\param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}}
\constfunc{wxDateTime}{GetWeek}{\param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}, \param{WeekFlags}{flags = {\tt Monday\_First}}}
Returns the copy of this object to which
\helpref{SetToTheWeek}{wxdatetimesettotheweek} was applied.

View File

@@ -65,7 +65,7 @@ the dialog to respond to system close events.
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxCAPTION}}{Puts a caption on the dialog box.}
\twocolitem{\windowstyle{wxDEFAULT\_DIALOG\_STYLE}}{Equivalent to a combination of wxCAPTION, wxSYSTEM\_MENU and wxTHICK\_FRAME}
\twocolitem{\windowstyle{wxDEFAULT\_DIALOG\_STYLE}}{Equivalent to a combination of wxCAPTION and wxSYSTEM\_MENU (the latter is not used under Unix)}
\twocolitem{\windowstyle{wxRESIZE\_BORDER}}{Display a resizeable frame around the window.}
\twocolitem{\windowstyle{wxSYSTEM\_MENU}}{Display a system menu.}
\twocolitem{\windowstyle{wxTHICK\_FRAME}}{Display a thick frame around the window.}

View File

@@ -28,6 +28,14 @@ override \helpref{wxDragImage::DoDrawImage}{wxdragimagedodrawimage} and
Please see {\tt samples/dragimag} for an example.
%\wxheading{Notes}
%
%Using the native Windows implementation, you must supply an image with a mask, or
%the image will not show when dragged. It is not clear if this is a bug
%in Windows or in the wxDragImage implementation. You can add a mask
%with a call to wxImage::SetMaskColour, passing RGB values not likely
%to be in the image. [CURED by creating the ImageList with ILC_MASK]
\wxheading{Derived from}
\helpref{wxObject}{wxobject}

View File

@@ -164,7 +164,7 @@ Sets the default filename.
\func{void}{SetFilterIndex}{\param{int }{filterIndex}}
Sets the default filter index, starting from zero. Windows only.
Sets the default filter index, starting from zero.
\membersection{wxFileDialog::SetMessage}\label{wxfiledialogsetmessage}

View File

@@ -89,7 +89,7 @@ on the file name format and the only portable way to answer to this question is
to use \helpref{IsAbsolute}{wxfilenameisabsolute} method. To ensure that the
filename is absolute you may use \helpref{Normalize}{wxfilenamenormalize}. There
is also an inverse function \helpref{MakeRelativeTo}{wxfilenamemakerelativeto}
which undoes what \helpref{Normalize(wxPATH\_NORM\_DOTS}{wxfilenamenormalize}
which undoes what \helpref{Normalize(wxPATH\_NORM\_DOTS)}{wxfilenamenormalize}
does.
Other functions returning information about the file format provided by this
@@ -598,7 +598,7 @@ Deletes the specified directory from the file system.
\membersection{wxFileName::SameAs}\label{wxfilenamesameas}
\func{bool}{SameAs}{\param{const wxFileName\& }{filepath}, \param{wxPathFormat }{format = wxPATH\_NATIVE}}
\constfunc{bool}{SameAs}{\param{const wxFileName\& }{filepath}, \param{wxPathFormat }{format = wxPATH\_NATIVE}}
Compares the filename using the rules of this platform.
@@ -674,9 +674,19 @@ Assigns the new value to this filename object.
\membersection{wxFileName::operator==}\label{wxfilenameoperatorequal}
\func{bool operator}{operator==}{\param{const wxFileName\& }{filename}}
\constfunc{bool operator}{operator==}{\param{const wxFileName\& }{filename}}
\func{bool operator}{operator==}{\param{const wxString\& }{filename}}
\constfunc{bool operator}{operator==}{\param{const wxString\& }{filename}}
Returns {\tt TRUE} if the filenames are equal for the native file format.
Returns {\tt TRUE} if the filenames are equal. The string {\it filenames} is
interpreted as a path in the native filename format.
\membersection{wxFileName::operator!=}\label{wxfilenameoperatornotequal}
\constfunc{bool operator}{operator!=}{\param{const wxFileName\& }{filename}}
\constfunc{bool operator}{operator!=}{\param{const wxString\& }{filename}}
Returns {\tt TRUE} if the filenames are different. The string {\it filenames}
is interpreted as a path in the native filename format.

View File

@@ -211,7 +211,7 @@ Returns {\tt TRUE} if the font is a fixed width (or monospaced) font,
\func{static wxFontEncoding}{GetDefaultEncoding}{\void}
Returns the current applications default encoding.
Returns the current application's default encoding.
\wxheading{See also}

View File

@@ -52,14 +52,14 @@ a wxEVT\_HELP event if the user clicked on an application window. {\it Note} tha
style and must be set by calling \helpref{SetExtraStyle}{wxwindowsetextrastyle} before Create is called (two-step construction).
You cannot use this style together with wxMAXIMIZE\_BOX or wxMINIMIZE\_BOX, so
you should use
{\tt wxDEFAULT\_FRAME\_STYLE \& \~ (wxMINIMIZE\_BOX | wxMAXIMIZE\_BOX)} for the
{\tt wxDEFAULT\_FRAME\_STYLE \& \verb$~$ (wxMINIMIZE\_BOX | wxMAXIMIZE\_BOX)} for the
frames having this style (the dialogs don't have minimize nor maximize box by
default)}
\end{twocollist}
The default frame style is for normal, resizeable frames. To create a frame
which can not be resized by user, you may use the following combination of
styles: {\tt wxDEFAULT\_FRAME\_STYLE \& \~ (wxRESIZE\_BORDER \pipe wxRESIZE\_BOX \pipe wxMAXIMIZE\_BOX)}.
styles: {\tt wxDEFAULT\_FRAME\_STYLE \& \verb$~$ (wxRESIZE\_BORDER \pipe wxRESIZE\_BOX \pipe wxMAXIMIZE\_BOX)}.
% Note: the space after the tilde is necessary or Tex2RTF complains.
See also \helpref{window styles overview}{windowstyles}.

View File

@@ -22,7 +22,7 @@ Example:
void MyFrame::OnAbout(wxCommandEvent&)
{
wxBusyCursor bcur;
wxFileSystem::AddHandler(new wxMemoryFSHandler);
wxMemoryFSHandler::AddFile("logo.pcx", wxBITMAP(logo), wxBITMAP_TYPE_PCX);
wxMemoryFSHandler::AddFile("about.htm",
"<html><body>About: "

View File

@@ -115,6 +115,13 @@ Default constructor.
Destructor will close the connection if connected.
\membersection{wxFTP::Abort}\label{wxftpabort}
\func{bool}{Abort}{\void}
Aborts the download currently in process, returns {\tt TRUE} if ok, {\tt FALSE}
if an error occured.
\membersection{wxFTP::CheckCommand}
\func{bool}{CheckCommand}{\param{const wxString\&}{ command}, \param{char }{ret}}
@@ -246,6 +253,21 @@ to specify a user and a password.
% ----------------------------------------------------------------------------
\membersection{wxFTP::FileExists}\label{wxftpfileexists}
\func{bool}{FileExists}{\param{const wxString\&}{ filename}}
Returns {\tt TRUE} if the given remote file exists, {\tt FALSE} otherwise.
\membersection{wxFTP::GetFileSize}\label{wxftpgetfilesize}
\func{int}{GetFileSize}{\param{const wxString\&}{ filename}}
Returns the file size in bytes or $-1$ if the file doesn't exist or the size
couldn't be determined. Notice that this size can be approximative size only
and shouldn't be used for allocating the buffer in which the remote file is
copied, for example.
\membersection{wxFTP::GetDirList}\label{wxftpgetdirlist}
\func{bool}{GetDirList}{\param{wxArrayString\& }{files}, \param{const wxString\&}{ wildcard = ""}}

View File

@@ -153,6 +153,8 @@ the corresponding topic.
\helpref{wxLogTrace}{wxlogtrace}\\
\helpref{wxLogVerbose}{wxlogverbose}\\
\helpref{wxLogWarning}{wxlogwarning}\\
\helpref{wxLL}{wxll}\\
\helpref{wxLongLongFmtSpec}{wxlonglongfmtspec}\\
\helpref{wxMakeMetafilePlaceable}{wxmakemetafileplaceable}\\
\helpref{wxMatchWild}{wxmatchwild}\\
\helpref{wxMessageBox}{wxmessagebox}\\
@@ -399,8 +401,8 @@ once for each previous successful call to \helpref{wxInitialize}{wxinitialize}.
Calls \helpref{wxApp::Yield}{wxappyield}.
This function is kept only for backwards compatibility, please use
\helpref{wxApp::Yield}{wxappyield}method instead in any new code.
This function is kept only for backwards compatibility. Please use
the \helpref{wxApp::Yield}{wxappyield} method instead in any new code.
\wxheading{Include files}
@@ -2109,6 +2111,44 @@ the compiler supports it or nothing otherwise. Thus, it can be used even in the
code which might have to be compiled with an old compiler without support for
this language feature but still take advantage of it when it is available.
\membersection{wxLL}\label{wxll}
\func{wxLongLong\_t}{wxLL}{\param{}{number}}
This macro is defined for the platforms with a native 64 bit integer type and
allows to define 64 bit compile time constants:
\begin{verbatim}
#ifdef wxLongLong_t
wxLongLong_t ll = wxLL(0x1234567890abcdef);
#endif
\end{verbatim}
\wxheading{Include files}
<wx/longlong.h>
\membersection{wxLongLongFmtSpec}\label{wxlonglongfmtspec}
This macro is defined to contain the {\tt printf()} format specifier using
which 64 bit integer numbers (i.e. those of type {\tt wxLongLong\_t}) can be
printed. Example of using it:
\begin{verbatim}
#ifdef wxLongLong_t
wxLongLong_t ll = wxLL(0x1234567890abcdef);
printf("Long long = %" wxLongLongFmtSpec "x\n", ll);
#endif
\end{verbatim}
\wxheading{See also}
\helpref{wxLL}{wxll}
\wxheading{Include files}
<wx/longlong.h>
\membersection{::wxNewId}\label{wxnewid}
\func{long}{wxNewId}{\void}
@@ -2576,7 +2616,7 @@ class wxFrame: public wxWindow
DECLARE_DYNAMIC_CLASS(wxFrame)
private:
const wxString\& frameTitle;
const wxString& frameTitle;
public:
...
};

View File

@@ -45,7 +45,7 @@ a similar style to the Microsoft HTML Help viewer and using some of the same fil
Although it has an API compatible with other help controllers, it has more advanced features, so it is
recommended that you use the specific API for this class instead. Note that if you
use .zip or .htb formats for your books, you
must add this line to your application initialization: \verb$wxFileSystem::AddHandler(new wxZipFSHandler);$
must add this line to your application initialization: {\tt wxFileSystem::AddHandler(new wxZipFSHandler);}
or nothing will be shown in your help window.
\end{itemize}

View File

@@ -41,6 +41,13 @@ Returns container's horizontal alignment.
Returns container's vertical alignment.
\membersection{wxHtmlContainerCell::GetBackgroundColour}\label{wxhtmlcontainercellgetbackgroundcolour}
\func{wxColour}{GetBackgroundColour}{\void}
Returns the background colour of the container or {\tt wxNullColour} if no background
colour is set.
\membersection{wxHtmlContainerCell::GetFirstCell}\label{wxhtmlcontainercellgetfirstcell}
\func{wxHtmlCell*}{GetFirstCell}{\void}

View File

@@ -256,3 +256,12 @@ Sets the virtual file system that will be used to request additional
files. (For example {\tt <IMG>} tag handler requests wxFSFile with the
image data.)
\membersection{wxHtmlParser::StopParsing}\label{wxhtmlparserstopparsing}
\func{void}{StopParsing}{\void}
Call this function to interrupt parsing from a tag handler. No more tags
will be parsed afterward. This function may only be called from
\helpref{wxHtmlParser::Parse}{wxhtmlparserparse} or any function called
by it (i.e. from tag handlers).

View File

@@ -911,7 +911,7 @@ Returns 'this' object.
\membersection{wxImage::operator $==$}
\func{bool}{operator $==$}{\param{const wxImage\& }{image}}
\constfunc{bool}{operator $==$}{\param{const wxImage\& }{image}}
Equality operator. This operator tests whether the internal data pointers are
equal (a fast test).
@@ -926,7 +926,7 @@ Returns TRUE if the images were effectively equal, FALSE otherwise.
\membersection{wxImage::operator $!=$}
\func{bool}{operator $!=$}{\param{const wxImage\& }{image}}
\constfunc{bool}{operator $!=$}{\param{const wxImage\& }{image}}
Inequality operator. This operator tests whether the internal data pointers are
unequal (a fast test).

View File

@@ -68,9 +68,11 @@ future versions completely. The use of the latter is especially discouraged as
it is not only unsafe but is also much less efficient than
\helpref{wxArrayString}{wxarraystring} class.
In the documentation of the list classes below, you should replace wxNode with
wxListName::Node and wxObject with the list element type (i.e. the first
parameter of WX\_DECLARE\_LIST) for the template lists.
In the documentation of the list classes below, the template notations are
used even though these classes are not really templates at all -- but it helps
to think about them as if they were. You should replace wxNode<T> with
wxListName::Node and T itself with the list element type (i.e. the first
parameter of WX\_DECLARE\_LIST).
\wxheading{Derived from}
@@ -138,9 +140,9 @@ members for getting to the next or previous node.
\func{}{wxList}{\param{unsigned int}{ key\_type}}
\func{}{wxList}{\param{int}{ n}, \param{wxObject *}{objects[]}}
\func{}{wxList}{\param{int}{ n}, \param{T *}{objects[]}}
\func{}{wxList}{\param{wxObject *}{object}, ...}
\func{}{wxList}{\param{T *}{object}, ...}
Constructors. {\it key\_type} is one of wxKEY\_NONE, wxKEY\_INTEGER, or wxKEY\_STRING,
and indicates what sort of keying is required (if any).
@@ -159,15 +161,16 @@ client data held in the nodes.
\membersection{wxList::Append}\label{wxlistappend}
\func{wxNode *}{Append}{\param{wxObject *}{object}}
\func{wxNode<T> *}{Append}{\param{T *}{object}}
\func{wxNode *}{Append}{\param{long}{ key}, \param{wxObject *}{object}}
\func{wxNode<T> *}{Append}{\param{long}{ key}, \param{T *}{object}}
\func{wxNode *}{Append}{\param{const wxString\& }{key}, \param{wxObject *}{object}}
\func{wxNode<T> *}{Append}{\param{const wxString\& }{key}, \param{T *}{object}}
Appends a new {\bf wxNode} to the end of the list and puts a pointer to the
\rtfsp{\it object} in the node. The last two forms store a key with the object for
later retrieval using the key. The new node is returned in each case.
Appends a new \helpref{wxNode}{wxnode} to the end of the list and puts a
pointer to the \rtfsp{\it object} in the node. The last two forms store a key
with the object for later retrieval using the key. The new node is returned in
each case.
The key string is copied and stored by the list implementation.
@@ -187,22 +190,26 @@ a node whenever the node is destroyed. The default is {\tt FALSE}.
\membersection{wxList::DeleteNode}\label{wxlistdeletenode}
\func{bool}{DeleteNode}{\param{wxNode *}{node}}
\func{bool}{DeleteNode}{\param{wxNode<T> *}{node}}
Deletes the given node from the list, returning {\tt TRUE} if successful.
\membersection{wxList::DeleteObject}\label{wxlistdeleteobject}
\func{bool}{DeleteObject}{\param{wxObject *}{object}}
\func{bool}{DeleteObject}{\param{T *}{object}}
Finds the given client {\it object} and deletes the appropriate node from the list, returning
{\tt TRUE} if successful. The application must delete the actual object separately.
\membersection{wxList::Find}\label{wxlistfind}
\func{wxNode *}{Find}{\param{long}{ key}}
\func{wxNode<T> *}{Find}{\param{T *}{ object}}
\func{wxNode *}{Find}{\param{const wxString\& }{key}}
Returns the node whose client date is {\it object} or NULL if none found.
\func{wxNode<T> *}{Find}{\param{long}{ key}}
\func{wxNode<T> *}{Find}{\param{const wxString\& }{key}}
Returns the node whose stored key matches {\it key}. Use on a keyed list only.
@@ -214,37 +221,37 @@ Returns the number of elements in the list.
\membersection{wxList::GetFirst}\label{wxlistgetfirst}
\func{wxNode *}{GetFirst}{\void}
\func{wxNode<T> *}{GetFirst}{\void}
Returns the first node in the list (NULL if the list is empty).
\membersection{wxList::GetLast}\label{wxlistgetlast}
\func{wxNode *}{GetLast}{\void}
\func{wxNode<T> *}{GetLast}{\void}
Returns the last node in the list (NULL if the list is empty).
\membersection{wxList::IndexOf}\label{wxlistindexof}
\func{int}{IndexOf}{\param{wxObject*}{ obj }}
\func{int}{IndexOf}{\param{T*}{ obj }}
Returns the index of {\it obj} within the list or wxNOT\_FOUND if {\it obj}
is not found in the list.
\membersection{wxList::Insert}\label{wxlistinsert}
\func{wxNode *}{Insert}{\param{wxObject *}{object}}
\func{wxNode<T> *}{Insert}{\param{T *}{object}}
Insert object at front of list.
\func{wxNode *}{Insert}{\param{size\_t }{position}, \param{wxObject *}{object}}
\func{wxNode<T> *}{Insert}{\param{size\_t }{position}, \param{T *}{object}}
Insert object before {\it position}, i.e. the index of the new item in the
list will be equal to {\it position}. {\it position} should be less than or
equal to \helpref{GetCount}{wxlistgetcount}; if it is equal to it, this is the
same as calling \helpref{Append}{wxlistappend}.
\func{wxNode *}{Insert}{\param{wxNode *}{node}, \param{wxObject *}{object}}
\func{wxNode<T> *}{Insert}{\param{wxNode<T> *}{node}, \param{T *}{object}}
Inserts the object before the given {\it node}.
@@ -257,13 +264,13 @@ Returns {\tt TRUE} if the list is empty, {\tt FALSE} otherwise.
% Use different label name to avoid clashing with wxListItem label
\membersection{wxList::Item}\label{wxlistitemfunc}
\constfunc{wxNode *}{Item}{\param{size\_t }{index}}
\constfunc{wxNode<T> *}{Item}{\param{size\_t }{index}}
Returns the node at given position in the list.
\membersection{wxList::Member}\label{wxlistmember}
\func{wxNode *}{Member}{\param{wxObject *}{object}}
\func{wxNode<T> *}{Member}{\param{T *}{object}}
{\bf NB:} This function is deprecated, use \helpref{Find}{wxlistfind} instead.
@@ -271,7 +278,7 @@ Returns the node associated with {\it object} if it is in the list, NULL otherwi
\membersection{wxList::Nth}\label{wxlistnth}
\func{wxNode *}{Nth}{\param{int}{ n}}
\func{wxNode<T> *}{Nth}{\param{int}{ n}}
{\bf NB:} This function is deprecated, use \helpref{Item}{wxlistitemfunc} instead.

View File

@@ -284,7 +284,7 @@ it.
\membersection{wxListBox::InsertItems}\label{wxlistboxinsertitems}
\func{void}{InsertItems}{\param{int}{ nItems}, \param{const wxString}{ items}, \param{int}{ pos}}
\func{void}{InsertItems}{\param{int}{ nItems}, \param{const wxString}{ *items}, \param{int}{ pos}}
Insert the given number of strings before the specified position.
@@ -331,9 +331,11 @@ TRUE if the given item is selected, FALSE otherwise.
\membersection{wxListBox::Set}\label{wxlistboxset}
\func{void}{Set}{\param{int}{ n}, \param{const wxString*}{ choices}}
\func{void}{Set}{\param{int}{ n}, \param{const wxString*}{ choices}, \param{void}{ **clientData = {\tt NULL}}}
Clears the list box and adds the given strings. Not implemented for GTK.
\func{void}{Set}{\param{const wxArrayString\&}{ choices}, \param{void}{ **clientData = {\tt NULL}}}
Clears the list box and adds the given strings to it.
\wxheading{Parameters}
@@ -341,10 +343,12 @@ Clears the list box and adds the given strings. Not implemented for GTK.
\docparam{choices}{An array of strings to set.}
\docparam{clientData}{Options array of client data pointers}
\wxheading{Remarks}
Deallocate the array from the calling program
after this function has been called.
You may free the array from the calling program after this function has been
called.
\membersection{wxListBox::SetClientData}\label{wxlistboxsetclientdata}

View File

@@ -14,7 +14,12 @@ without consuming much memory. To use virtual list control you must use
\helpref{OnGetItemText}{wxlistctrlongetitemtext} (and optionally
\helpref{OnGetItemImage}{wxlistctrlongetitemimage} and
\helpref{OnGetItemAttr}{wxlistctrlongetitemattr}) to return the information
about the items when the control requests it.
about the items when the control requests it. Virtual list control can be used
as a normal one except that no operations which can take time proportional to
the number of items in the control happen -- this is required to allow having a
practically infinite number of items. For example, in a multiple selection
virtual list control, the selections won't be sent when many items are selected
at once because this could mean iterating over all the items.
Using many of wxListCtrl features is shown in the
\helpref{corresponding sample}{samplelistctrl}.
@@ -606,12 +611,12 @@ the given {\it column} for the specified {\tt item}.
\func{bool}{ScrollList}{\param{int }{dx}, \param{int }{dy}}
Scrolls the list control. If in icon, small icon or report view mode,
dx specifies the number of pixels to scroll. If in list view mode, dx
specifies the number of columns to scroll.
Scrolls the list control. If in icon, small icon or report view mode,
{\it dx} specifies the number of pixels to scroll. If in list view mode,
{\it dx} specifies the number of columns to scroll. {\it dy} always specifies
the number of pixels to scroll vertically.
If in icon, small icon or list view mode, dy specifies the number of pixels
to scroll. If in report view mode, dy specifies the number of lines to scroll.
{\bf NB:} This method is currently only implemented in the Windows version.
\membersection{wxListCtrl::SetBackgroundColour}\label{wxlistctrlsetbackgroundcolour}

145
docs/latex/wx/listview.tex Normal file
View File

@@ -0,0 +1,145 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name: listview.tex
%% Purpose: wxListView documentation
%% Author: Vadim Zeitlin
%% Modified by:
%% Created: 07.11.02
%% RCS-ID: $Id$
%% Copyright: (c) 2002 Vadim Zeitlin <vadim@wxwindows.org>
%% License: wxWindows license
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{\class{wxListView}}\label{wxlistview}
This class currently simply presents a simpler to use interface for the
\helpref{wxListCtrl}{wxlistctrl} -- it can be thought of as a {\it fa\c{c}ade}
for that complicated class. Using it is preferable to using
\helpref{wxListCtrl}{wxlistctrl} directly whenever possible because in the
future some ports might implement wxListView but not the full set of wxListCtrl
features.
Other than different interface, this class is identical to wxListCtrl. In
particular, it uses the same events, same windows styles and so on.
\wxheading{Derived from}
\helpref{wxListCtrl}{wxlistctrl}\\
\helpref{wxControl}{wxcontrol}\\
\helpref{wxWindow}{wxwindow}\\
\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/listctrl.h>
%%%%%%%%%%%%% Methods in alphabetic order %%%%%%%%%%%%%
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxListView::ClearColumnImage}\label{wxlistviewclearcolumnimage}
\func{void}{ClearColumnImage}{\param{int }{col}}
Resets the column image -- after calling this function, no image will be shown.
\wxheading{Parameters}
\docparam{col}{the column to clear image for}
\wxheading{See also}
\helpref{SetColumnImage}{wxlistviewsetcolumnimage}
\membersection{wxListView::Focus}\label{wxlistviewfocus}
\func{void}{Focus}{\param{long }{index}}
Sets focus to the item with the given {\it index}.
\membersection{wxListView::GetFirstSelected}\label{wxlistviewgetfirstselected}
\constfunc{long}{GetFirstSelected}{\void}
Returns the first selected item in a (presumably) multiple selection control.
Tigether with \helpref{GetNextSelected}{wxlistviewgetnextselected} it can be
used to iterate over all selected items in the control.
\wxheading{Return value}
The fisrt selected item, if any, $-1$ otherwise.
\membersection{wxListView::GetFocusedItem}\label{wxlistviewgetfocuseditem}
\constfunc{long}{GetFocusedItem}{\void}
Returns the currently focused item or $-1$ if none.
\wxheading{See also}
\helpref{IsSelected}{wxlistviewisselected},\\
\helpref{Focus}{wxlistviewfocus}
\membersection{wxListView::GetNextSelected}\label{wxlistviewgetnextselected}
\constfunc{long}{GetNextSelected}{\param{long }{item}}
Used together with \helpref{GetFirstSelected}{wxlistviewgetfirstselected} to
iterate oevr all selected items in the control.
\wxheading{Return value}
Returns the next selected item or $-1$ if there are no more of them.
\membersection{wxListView::IsSelected}\label{wxlistviewisselected}
\func{bool}{IsSelected}{\param{long }{index}}
Returns {\tt TRUE} if the item with the given {\it index} is selected,
{\tt FALSE} otherwise.
\wxheading{See also}
\helpref{GetFirstSelected}{wxlistviewgetfirstselected},\\
\helpref{GetNextSelected}{wxlistviewgetnextselected}
\membersection{wxListView::Select}\label{wxlistviewselect}
\func{void}{Select}{long n, \param{bool }{on = TRUE}}
Selects or unselects the given item.
\wxheading{Parameters}
\docparam{n}{the item to select or unselect}
\docparam{on}{if {\tt TRUE} (default), selects the item, otherwise unselects it}
\wxheading{See also}
\helpref{SetItemState}{wxlistctrlsetitemstate}
\membersection{wxListView::SetColumnImage}\label{wxlistviewsetcolumnimage}
\func{void}{SetColumnImage}{\param{int }{col}, \param{int }{image}}
Sets the column image for the specified column. To use the column images, the
control must have a valid image list with at least one image.
\wxheading{Parameters}
\docparam{col}{the column to set image for}
\docparam{image}{the index of the column image in the controls image list}
\wxheading{See also}
\helpref{ClearColumnImage}{wxlistviewclearcolumnimage},\\
\helpref{SetImageList}{wxlistctrlsetimagelist}

View File

@@ -380,7 +380,9 @@ wxLogChain *logChain = new wxLogChain(new wxLogStderr);
// all the log messages are sent to stderr and also processed as usually
...
delete logChain;
// don't delete logChain directly as this would leave a dangling
// pointer as active log target, use SetActiveTarget() instead
delete wxLog::SetActiveTarget(...something else or NULL...);
\end{verbatim}

View File

@@ -25,10 +25,16 @@ also has operators for implicit construction from and conversion to the native
You would usually use this type in exactly the same manner as any other
(built-in) arithmetic type. Note that wxLongLong is a signed type, if you
want unsigned values use wxULongLong.
want unsigned values use wxULongLong which has exactly the same API as
wxLongLong except when explicitly mentioned otherwise.
If a native (i.e. supported directly by the compiler) 64 bit integer type was
found a typedef {\it wxLongLong\_t} will be defined to correspond it.
found to exist, {\it wxLongLong\_t} macro will be defined to correspond to it.
Also, in this case only, two additional macros will be defined:
\helpref{wxLongLongFmtSpec}{wxlonglongfmtspec} for printing 64 bit integers
using the standard {\tt printf()} function (but see also
\helpref{ToString()}{wxlonglongtostring} for a more portable solution) and
\helpref{wxLL}{wxll} for defining 64 bit integer compile-time constants.
\wxheading{Derived from}

View File

@@ -26,13 +26,13 @@
%\special{!/@scaleunit 1 def}
\parskip=10pt
\parindent=0pt
\title{wxWindows 2.3: A portable C++ and Python GUI toolkit}
\title{wxWindows 2.3.4: A portable C++ and Python GUI toolkit}
\winhelponly{\author{by Julian Smart et al
%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$}
}}
\winhelpignore{\author{Julian Smart, Robert Roebling, Vadim Zeitlin,
Robin Dunn, et al}
\date{August 2002}
\date{November 2002}
}
\makeindex
\begin{document}

View File

@@ -37,15 +37,36 @@ Constructor.
\constfunc{virtual size\_t}{MB2WC}{\param{wchar\_t* }{buf}, \param{const char* }{psz}, \param{size\_t }{n}}
Converts from multibyte encoding to Unicode, using the libc routine mbstowcs()
(this is overridden by derived classes). Returns the size of the destination buffer.
Converts from a string {\it psz} in multibyte encoding to Unicode putting the
output into the buffer {\it buf} of the size {\it n} (in wide characters, not
bytes). If {\it buf} is {\tt NULL}, nothing is written to it but the length of
the string which would result from the conversion is calculated and returned.
Note that this is the length and not size, i.e. the returned value does
{\bf not} include the trailing NUL. But when the function is called with a
non-{\tt NULL} buffer, the {\it n} parameter should be the size of the buffer
and so it {\bf should} take into account the trailing NUL.
\wxheading{Parameters}
\docparam{buf}{the output buffer, may be {\tt NULL} if the caller is only
interested in the length of the resulting string}
\docparam{psz}{the {\tt NUL}-terminated input string, cannot be {\tt NULL}}
\docparam{n}{the size of the output buffer, ignored if {\it buf} is {\tt NULL}}
\wxheading{Return value}
The length of the converted string.
\membersection{wxMBConv::WC2MB}\label{wxmbconvwc2mb}
\constfunc{virtual size\_t}{WC2MB}{\param{char* }{buf}, \param{const wchar\_t* }{psz}, \param{size\_t }{n}}
Converts from Unicode to multibyte encoding, using the libc routine wcstombs()
(this is overridden by derived classes). Returns the size of the destination buffer.
Converts from Unicode to multibyte encoding. The semantics of this function
(including the return value meaning) is the same as for
\helpref{MB2WC}{wxmbconvmb2wc}.
\membersection{wxMBConv::cMB2WC}\label{wxmbconvcmb2wc}

View File

@@ -27,6 +27,13 @@ of the item positions inserting or removing the items in the menu containing
the radio items risks to not work correctly. Finally note that the radio items
are only supported under Windows and GTK+ currently.
\wxheading{Allocation strategy}
All menus except the popup ones must be created on the heap. All menus
attached to a menubar or to another menu will be deleted by their parent when
it is deleted. As the frame menubar is deleted by the frame itself, it means
that normally all menus used are deleted automatically.
\wxheading{Derived from}
\helpref{wxEvtHandler}{wxevthandler}\\
@@ -104,7 +111,9 @@ Adds a string item to the end of the menu.
\func{void}{Append}{\param{int}{ id}, \param{const wxString\& }{ item}, \param{wxMenu *}{subMenu},\rtfsp
\param{const wxString\& }{helpString = ""}}
Adds a pull-right submenu to the end of the menu.
Adds a pull-right submenu to the end of the menu. Append the submenu to the parent
menu {\it after} you have added your menu items, or accelerators may not be
registered properly.
\func{void}{Append}{\param{wxMenuItem*}{ menuItem}}

View File

@@ -36,7 +36,9 @@ Constructs a wxMenuItem object.
\docparam{id}{Identifier for this menu item, or ID\_SEPARATOR to indicate a separator.}
\docparam{text}{Text for the menu item, as shown on the menu.}
\docparam{text}{Text for the menu item, as shown on the menu. An accelerator
key can be specified using the ampersand '\&' character. In order to embed an
ampersand character in the menu item text, the ampersand must be doubled.}
\docparam{helpString}{Optional help string that will be shown on the status bar.}

View File

@@ -1,12 +1,19 @@
\section{\class{wxNodeBase}}\label{wxnode}
\section{\class{wxNode}}\label{wxnode}
A node structure used in linked lists (see \helpref{wxList}{wxlist}) and
derived classes. You should never use wxNodeBase class directly because it
works with untyped (void *) data and this is unsafe. Use wxNode-derived classes
which are defined by WX\_DECLARE\_LIST and WX\_DEFINE\_LIST macros instead as
described in \helpref{wxList}{wxlist} documentation (see example there). wxNode
is defined for compatibility as wxNodeBase containing "wxObject *" pointer, but
usage of this class is deprecated.
wxNodeBase is the node structure used in linked lists (see
\helpref{wxList}{wxlist}) and derived classes. You should never use wxNodeBase
class directly, however, because it works with untyped ({\tt void *}) data and
this is unsafe. Use wxNodeBase-derived classes which are automatically defined
by WX\_DECLARE\_LIST and WX\_DEFINE\_LIST macros instead as described in
\helpref{wxList}{wxlist} documentation (see example there). Also note that
although there is a class called wxNode, it is defined for backwards
compatibility only and usage of this class is strongly deprecated.
In the documentation below, the type {\tt T} should be thought of as a
``template'' parameter: this is the type of data stored in the linked list or,
in other words, the first argument of WX\_DECLARE\_LIST macro. Also, wxNode is
written as wxNode<T> even though it isn't really a template class -- but it
helps to think of it as if it were.
\wxheading{Derived from}
@@ -22,32 +29,32 @@ None.
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxNodeBase::GetData}
\membersection{wxNode<T>::GetData}
\func{void *}{Data}{\void}
\constfunc{T *}{GetData}{\void}
Retrieves the client data pointer associated with the node.
\membersection{wxNodeBase::GetNext}
\membersection{wxNode<T>::GetNext}
\func{wxNodeBase *}{Next}{\void}
\constfunc{wxNode<T> *}{GetNext}{\void}
Retrieves the next node (NULL if at end of list).
Retrieves the next node or NULL if this node is the last one.
\membersection{wxNodeBase::GetPrevious}
\membersection{wxNode<T>::GetPrevious}
\func{wxNodeBase *}{GetPrevious}{\void}
\func{wxNode<T> *}{GetPrevious}{\void}
Retrieves the previous node (NULL if at start of list).
Retrieves the previous node or NULL if this node is the first one in the list.
\membersection{wxNodeBase::SetData}
\membersection{wxNode<T>::SetData}
\func{void}{SetData}{\param{void *}{data}}
\func{void}{SetData}{\param{T *}{data}}
Sets the data associated with the node (usually the pointer will have been
set when the node was created).
\membersection{wxNodeBase::IndexOf}
\membersection{wxNode<T>::IndexOf}
\func{int}{IndexOf}{\void}

View File

@@ -24,10 +24,11 @@ managed by wxNotebook.
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxNB\_FIXEDWIDTH}}{(Windows only)All tabs will have same width.}
\twocolitem{\windowstyle{wxNB\_LEFT}}{Place tabs on the left side.}
\twocolitem{\windowstyle{wxNB\_RIGHT}}{Place tabs on the right side.}
\twocolitem{\windowstyle{wxNB\_BOTTOM}}{Place tabs under instead of above the notebook pages.}
\twocolitem{\windowstyle{wxNB\_FIXEDWIDTH}}{(Windows only) All tabs will have same width.}
\twocolitem{\windowstyle{wxNB\_MULTILINE}}{(Windows only) There can be several rows of tabs.}
\end{twocollist}

View File

@@ -43,7 +43,7 @@ A panel may be loaded from a wxWindows resource file (extension {\tt wxr}).
Default constructor.
\func{}{wxPanel}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp
\func{}{wxPanel}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = $-1$},\rtfsp
\param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp
\param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{long}{ style = wxTAB\_TRAVERSAL},\rtfsp

View File

@@ -19,6 +19,9 @@ exclusive options. It has a text label next to a (usually) round button.
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxRB\_GROUP}}{Marks the beginning of a new group of radio buttons.}
\twocolitem{\windowstyle{wxRB\_SINGLE}}{If your radio buttons are not
consecutive siblings, they cannot form a group under Windows and you should use
this style to indicate that each of them is handled individually.}
\end{twocollist}
See also \helpref{window styles overview}{windowstyles}.

View File

@@ -47,7 +47,7 @@ pointer array.
\end{verbatim}
A smart pointer holds a pointer to an object (which must be complete
when wxDEFINE_SCOPED_ARRAY() is called). The memory used by the object is
when wxDEFINE\_SCOPED\_ARRAY() is called). The memory used by the object is
deleted when the smart pointer goes out of scope. The first argument
of the macro is the pointer type, the second is the name of the new
smart pointer class being created. Below we will use wxScopedArray to

View File

@@ -47,7 +47,7 @@ pointer array.
\end{verbatim}
A smart pointer holds a pointer to an object (which must be complete
when wxDEFINE_SCOPED_PTR() is called). The memory used by the object is
when wxDEFINE\_SCOPED\_PTR() is called). The memory used by the object is
deleted when the smart pointer goes out of scope. The first argument
of the macro is the pointer type, the second is the name of the new
smart pointer class being created. Below we will use wxScopedPtr to

View File

@@ -5,9 +5,9 @@ member functions that take a wxScrollEvent argument. You can use
{\tt EVT\_COMMAND\_SCROLL...} macros with window IDs for when intercepting
scroll events from controls, or {\tt EVT\_SCROLL...} macros without window IDs
for intercepting scroll events from the receiving window - except for this,
the macros behave exactly the same
the macros behave exactly the same.
\twocolwidtha{7cm}
\twocolwidtha{9cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_SCROLL(func)}}{Process all scroll events.}
\twocolitem{{\bf EVT\_SCROLL\_TOP(func)}}{Process wxEVT\_SCROLL\_TOP scroll-to-top events (minium position).}
@@ -34,3 +34,22 @@ sent as the user drags the thumbtrack).}
\end{twocollist}%
\wxheading{The difference between {\tt EVT\_SCROLL\_THUMBRELEASE} and {\tt EVT\_SCROLL\_ENDSCROLL}}
The {\tt EVT\_SCROLL\_THUMBRELEASE} event is only emitted when actually dragging
the thumb using the mouse and releasing it (This {\tt EVT\_SCROLL\_THUMBRELEASE}
event is also followed by an {\tt EVT\_SCROLL\_ENDSCROLL} event).
The {\tt EVT\_SCROLL\_ENDSCROLL} event also occurs when using the keyboard to
change the thumb position, and when clicking next to the thumb (In all these
cases the {\tt EVT\_SCROLL\_THUMBRELEASE} event does not happen).
In short, the {\tt EVT\_SCROLL\_ENDSCROLL} event is triggered when scrolling/
moving has finished. The only exception (unfortunately) is that changing the
thumb position using the mousewheel does give a {\tt EVT\_SCROLL\_THUMBRELEASE}
event but NOT an {\tt EVT\_SCROLL\_ENDSCROLL} event.
Please see the widgets sample ("Slider" page) to see the difference
between {\tt EVT\_SCROLL\_THUMBRELEASE} and {\tt EVT\_SCROLL\_ENDSCROLL} in action.

View File

@@ -4,7 +4,47 @@ The wxScrolledWindow class manages scrolling for its client area, transforming
the coordinates according to the scrollbar positions, and setting the
scroll positions, thumb sizes and ranges according to the area in view.
As with all windows, an application can draw onto a wxScrolledWindow using a \helpref{device context}{dcoverview}.
Starting from version 2.4 of wxWindows, there are several ways to use a
wxScrolledWindow. In particular, there are now three ways to set the
size of the scrolling area:
One way is to set the scrollbars directly using a call to
\helpref{wxScrolledWindow::SetScrollbars}{wxscrolledwindowsetscrollbars}.
This is the way it used to be in any previous version of wxWindows
and it will be kept for backwards compatibility.
An additional method of manual control, which requires a little less
computation of your own, is to set the total size of the scrolling area by
calling either \helpref{wxWindow::SetVirtualSize}{wxwindowsetvirtualsize},
or \helpref{wxWindow::FitInside}{wxwindowfitinside}, and setting the
scrolling increments for it by calling
\helpref{wxScrolledWindow::SetScrollRate}{wxscrolledwindowsetscrollrate}.
Scrolling in some orientation is enabled by setting a non zero increment
for it.
The most automatic and newest way is to simply let sizers determine the
scrolling area. This is now the default when you set an interior sizer
into a wxScrolledWindow with \helpref{wxWindow::SetSizer}{wxwindowsetsizer}.
The scrolling area will be set to the size requested by the sizer and
the scrollbars will be assigned for each orientation according to the need
for them and the scrolling increment set by
\helpref{wxScrolledWindow::SetScrollRate}{wxscrolledwindowsetscrollrate}.
As above, scrolling is only enabled in orientations with a non-zero
increment. You can influence the minimum size of the scrolled area
controlled by a sizer by calling
\helpref{wxWindow::SetVirtualSizeHints}{wxwindowsetvirtualsizehints}.
(calling \helpref{wxScrolledWindow::SetScrollbars}{wxscrolledwindowsetscrollbars}
has analogous effects in wxWindows 2.4 -- in later versions it may not continue
to override the sizer)
Note: if Maximum size hints are still supported by SetVirtualSizeHints, use
them at your own dire risk. They may or may not have been removed for 2.4,
but it really only makes sense to set minimum size hints here. We should
probably replace SetVirtualSizeHints with SetMinVirtualSize or similar
and remove it entirely in future.
As with all windows, an application can draw onto a wxScrolledWindow using
a \helpref{device context}{dcoverview}.
You have the option of handling the OnPaint handler
or overriding the \helpref{OnDraw}{wxscrolledwindowondraw} function, which is passed

View File

@@ -60,7 +60,7 @@ Destructor is not virtual, don't use this class polymorphically.
\func{wxSemaError }{Post}{\void}
Increments the semaphore count and signals one of the waiting
threads in an atomic way. Returns wxSEMA_OVERFLOW if the count
threads in an atomic way. Returns wxSEMA\_OVERFLOW if the count
would increase the counter past the maximum.
\wxheading{Return value}

View File

@@ -54,11 +54,11 @@ The destructor.
\membersection{wxSizer::Add}\label{wxsizeradd}
\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{wxWindow* }{window}, \param{int }{proportion = 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}, \param{wxObject* }{userData = NULL}}
\func{void}{Add}{\param{wxSizer* }{sizer}, \param{int }{proportion = 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}, \param{wxObject* }{userData = NULL}}
\func{void}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{proportion = 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
have no meaning in the wxSizer class itself, but as there currently is only one class
@@ -76,11 +76,11 @@ horizontal boxes on the level beneath).}
\docparam{width and height}{The dimension of a spacer to be added to the sizer. Adding spacers to sizers
gives more flexibility in the design of dialogs; imagine for example a horizontal box with two buttons at the
bottom of a dialog: you might want to insert a space between the two buttons and make that space stretchable
using the {\it option} flag and the result will be that the left button will be aligned with the left
using the {\it proportion} flag and the result will be that the left button will be aligned with the left
side of the dialog and the right button with the right side - the space in between will shrink and grow with
the dialog.}
\docparam{option}{Although the meaning of this parameter is undefined in wxSizer, it is used in wxBoxSizer
\docparam{proportion}{Although the meaning of this parameter is undefined in wxSizer, it is used in wxBoxSizer
to indicate if a child of a sizer can change its size in the main orientation of the wxBoxSizer - where
0 stands for not changeable and a value of more than zero is interpreted relative to the value of other
children of the same wxBoxSizer. For example, you might have a horizontal wxBoxSizer with three children, two
@@ -93,7 +93,7 @@ using these flags. One is the border around a window: the {\it border}
parameter determines the border width whereas the flags given here determine
where the border may be (wxTOP, wxBOTTOM, wxLEFT, wxRIGHT or wxALL). The other
flags determine the child window's behaviour if the size of the sizer changes.
However this is not - in contrast to the {\it option} flag - in the main
However this is not - in contrast to the {\it proportion} flag - in the main
orientation, but in the respectively other orientation. So if you created a
wxBoxSizer with the wxVERTICAL option, these flags will be relevant if the
sizer changes its horizontal size. A child may get resized to completely fill
@@ -106,7 +106,7 @@ in the main orientation using wxALIGN\_CENTER\_VERTICAL (same as
wxALIGN\_CENTRE\_VERTICAL) and wxALIGN\_CENTER\_HORIZONTAL (same as
wxALIGN\_CENTRE\_HORIZONTAL) flags. Finally, you can also specify
wxADJUST\_MINSIZE flag to make the minimal size of the control dynamically adjust
to the value returned by its \helpref{GetBestSize()}{wxwindowgetbestsize}
to the value returned by its \helpref{GetAdjustedBestSize()}{wxwindowgetadjustedbestsize}
method - this allows, for example, for correct relayouting of a static text
control even if its text is changed during run-time.}
@@ -114,7 +114,7 @@ control even if its text is changed during run-time.}
\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 the {\it option} and {\it flag} will allow for.}
complex than the {\it proportion} and {\it flag} will allow for.}
\membersection{wxSizer::CalcMin}\label{wxsizercalcmin}
@@ -175,11 +175,11 @@ the current dimension.
\membersection{wxSizer::Prepend}\label{wxsizerprepend}
\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{wxWindow* }{window}, \param{int }{proportion = 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}, \param{wxObject* }{userData = NULL}}
\func{void}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{proportion = 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}, \param{wxObject* }{userData = NULL}}
\func{void}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{proportion = 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
list of items (windows, subsizers or spaces) owned by this sizer.
@@ -254,9 +254,18 @@ see sample in the description of \helpref{wxBoxSizer}{wxboxsizer} if the window
\func{void}{SetVirtualSizeHints}{\param{wxWindow* }{window}}
Tell the sizer to set the minimal size of the {\it window} virtual area to match the sizer's
minimal size. For windows with managed scrollbars this will set them appropriately.
minimal size. For windows with managed scrollbars this will set them appropriately.
\wxheading{See also}
\helpref{wxScrolledWindow::SetScrollbars}{wxscrolledwindowsetscrollbars}
\membersection{wxSizer::Show}\label{wxsizershow}
\func{void}{Show}{\param{wxWindow* }{window}, \param{bool }{show = TRUE}}
\func{void}{Show}{\param{wxSizer* }{sizer}, \param{bool }{show = TRUE}}
Shows or hides a window or sizer. To make a sizer item disappear or
reappear, use Show() followed by Layout().

View File

@@ -37,7 +37,7 @@ palette problems.
Default constructor.
\func{}{wxStaticBitmap}{\param{wxWindow* }{parent}, \param{wxWindowID}{ id},\rtfsp
\param{const wxBitmap\& }{label = ``"}, \param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{const wxBitmap\& }{label}, \param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{long}{ style = 0}, \param{const wxString\& }{name = ``staticBitmap"}}
Constructor, creating and showing a text control.
@@ -65,7 +65,7 @@ Constructor, creating and showing a text control.
\membersection{wxStaticBitmap::Create}\label{wxstaticbitmapcreate}
\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID}{ id},\rtfsp
\param{const wxBitmap\& }{label = ``"}, \param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{const wxBitmap\& }{label}, \param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{long}{ style = 0}, \param{const wxString\& }{name = ``staticBitmap"}}
Creation function, for two-step construction. For details see \helpref{wxStaticBitmap::wxStaticBitmap}{wxstaticbitmapconstr}.

View File

@@ -167,7 +167,7 @@ The wildcard may be a specification for multiple
types of file with a description for each, such as:
\begin{verbatim}
"BMP files (*.bmp) | *.bmp | GIF files (*.gif) | *.gif"
"BMP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif"
\end{verbatim}
\subsection{wxDirDialog overview}\label{wxdirdialogoverview}

View File

@@ -404,8 +404,8 @@ member.
\begin{verbatim}
wxDbConnectInf DbConnectInf;
DbConnectInf.SetDsn,"MyDSN");
DbConnectInf.SetUserID,"MyUserName");
DbConnectInf.SetDsn("MyDSN");
DbConnectInf.SetUserID("MyUserName");
DbConnectInf.SetPassword("MyPassword");
DbConnectInf.SetDefaultDir("");
\end{verbatim}
@@ -832,7 +832,7 @@ this example it was stored in "DbConnectInf.Henv") have been closed, then
it is safe to release the environment handle:
\begin{verbatim}
DbConnectInf->FreeHenv());
DbConnectInf->FreeHenv();
\end{verbatim}
Or, if the long form of the constructor was used and the constructor was allowed

View File

@@ -1,4 +1,6 @@
;;; Tex2RTF initialisation file
;;; Tex2RTF initialisation file, using NO style sheet for HTML. See
;;; tex2rtf_css.ini for a version using a style sheet. You can use
;;; -macros tex2rtf.ini to specify the ini file.
runTwice = yes
titleFontSize = 12
authorFontSize = 10
@@ -32,7 +34,7 @@ htmlFaceName = "Arial, Lucida, Helvetica"
\textbackslash [0]{{\tt$\backslash$}}
\gifsep [0]{\par}
ignoreInput = "ltx.tex"
htmlStylesheet = "wx.css"
; htmlStylesheet = "wx.css"
;\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}}
;\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}

View File

@@ -0,0 +1,54 @@
;;; Tex2RTF initialisation file, using a style sheet for HTML.
;;; See tex2rtf.ini for a version using no style sheet, and instead
;;; setting explicit fonts. You can use -macros tex2rtf_css.ini to
;;; specify the ini file.
runTwice = yes
titleFontSize = 12
authorFontSize = 10
authorFontSize = 10
chapterFontSize = 12
sectionFontSize = 12
subsectionFontSize = 12
contentsDepth = 2
headerRule = yes
footerRule = yes
useHeadingStyles = yes
listItemIndent=40
generateHPJ = yes
htmlBrowseButtons = bitmap
winHelpContents = yes
winHelpVersion = 3 ; 3 for Windows 3.x, 4 for Windows 95
winHelpTitle = "wxWindows Manual"
truncateFilenames = yes
combineSubSections = yes
;;
;; These two are for generating MS HTML Help project, contents and index files.
;;
htmlWorkshopFiles = true
htmlIndex = true
; Finally, a way to specify face names
;htmlFaceName = "Arial, Lucida, Helvetica"
\textasciitilde [0]{{\tt\~}}
\textasciicircum [0]{{\tt\^}}
\textbackslash [0]{{\tt$\backslash$}}
\gifsep [0]{\par}
ignoreInput = "ltx.tex"
htmlStylesheet = "wx.css"
;\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}}
;\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}
;\sethotspotcolour{on}\sethotspotunderline{on}}
\overview [2] {\helpref{#1}{#2}}
\docparam [2]{\parskip{0}{\it #1}\htmlignore{\par}\parskip{10}\indented{1cm}{#2}}
\wxheading [1]{{\bf \htmlignore{\fcol{blue}{#1}}\htmlonly{\fcol{red}{#1}}}}
\const [0] {{\bf const}}
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\windowstyle [1] {{\bf #1}\index{#1}}
\bftt [1] {\bf{\tt{#1}}}
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1}
%\pythonnote [1] {}
\perlnote [1] {{\bf \fcol{blue}{wxPerl note:}} #1}
%\perlnote [1] {}

View File

@@ -125,6 +125,29 @@ it to always show it. It doesn't do anything under other platforms.}
See also \helpref{window styles overview}{windowstyles} and
\helpref{wxTextCtrl::wxTextCtrl}{wxtextctrlconstr}.
\wxheading{wxTextCtrl text format}
The multiline text controls always store the text as a sequence of lines
separated by {\tt $\backslash$n} characters, i.e. in the Unix text format even
on non-Unix platforms. This allows the user code to ignore the differences
between the platforms but at a price: the indices in the control such as those
returned by \helpref{GetInsertionPoint}{wxtextctrlgetinsertionpoint} or
\helpref{GetSelection}{wxtextctrlgetselection} can {\bf not} be used as
indices into the string returned by \helpref{GetValue}{wxtextctrlgetvalue} as
they're going to be slightly off for platforms using
{\tt $\backslash$r$\backslash$n} as separator (as Windows does), for example.
Instead, if you need to obtain a substring between the $2$ indices obtained
from the control with the help of the functions mentioned above, you should
use \helpref{GetRange}{wxtextctrlgetrange}. And the indices themselves can
only be passed to other methods, for example
\helpref{SetInsertionPoint}{wxtextctrlsetinsertionpoint} or
\helpref{SetSelection}{wxtextctrlsetselection}.
To summarize: never use the indices returned by (multiline) wxTextCtrl as
indices into the string it contains, but only as arguments to be passed back
to the other wxTextCtrl methods.
\wxheading{wxTextCtrl styles}
Multi-line text controls support the styles, i.e. provide a possibility to set
@@ -554,8 +577,9 @@ returned string is empty.
\constfunc{wxString}{GetValue}{\void}
Gets the contents of the control. Notice that for a multiline text control,
the lines will be separated by (Unix-style) $\backslash$n characters, even under
Windows where they are separated by a $\backslash$r$\backslash$n sequence in the native control.
the lines will be separated by (Unix-style) $\backslash$n characters, even
under Windows where they are separated by a $\backslash$r$\backslash$n
sequence in the native control.
\membersection{wxTextCtrl::IsEditable}\label{wxtextctrliseditable}

View File

@@ -55,20 +55,19 @@ The situation is particularly complicated with Cyrillic encodings for which
used on the Internet), ISO8859-5 (ISO standard for Cyrillic) and CP1251
(WinCyrillic).
This abundance of (incompatible) encoding:w
s should make it clear that using
This abundance of (incompatible) encodings should make it clear that using
encodings is less easy than it might seem. The problems arise both from the
fact that the standard encodings for the given language (say Russian, which is
written in Cyrillic) are different on different platforms and because the
fonts in the given encoding might just not be installed (this is especially a
problem with Unix, or, in general, non-Win32 systems).
To allow to see clearer in this, \helpref{wxFontEnumerator}{wxfontenumerator}
To clarify, the \helpref{wxFontEnumerator}{wxfontenumerator}
class may be used to enumerate both all available encodings and to find the
facename(s) in which the given encoding exists. If you can find the font in
the correct encoding with wxFontEnumerator then your troubles are over, but,
unfortunately, sometimes this is not enough. For example, there is no standard
way (I know of, please tell me if you do!) to find a font on a Windows system
way (that I know of, please tell me if you do!) to find a font on a Windows system
for KOI8 encoding (only for WinCyrillic one which is quite different), so
\helpref{wxFontEnumerator}{wxfontenumerator} will never return one, even if
the user has installed a KOI8 font on his system.
@@ -80,7 +79,7 @@ course, it would be fairly useless if it tried to determine these mappings by
itself, so, instead, it (optionally) ask the user and remember his answers
so that the next time the program will automatically choose the correct font.
All these topics are illustrated by the \helpref{font sample}{samplefont},
All these topics are illustrated by the \helpref{font sample}{samplefont};
please refer to it and the documentation of the classes mentioned here for
further explanations.

View File

@@ -20,6 +20,8 @@ In any case, you must start the timer with \helpref{Start}{wxtimerstart}
after constructing it before it actually starts sending notifications. It can
be stopped later with \helpref{Stop}{wxtimerstop}.
{\bf NB:} note that timer can only be used from the main thread currently.
\wxheading{Derived from}
\helpref{wxObject}{wxobject}

View File

@@ -1,7 +1,8 @@
\section{\class{wxTreeCtrl}}\label{wxtreectrl}
A tree control presents information as a hierarchy, with items that may be expanded
to show further items. Items in a tree control are referenced by wxTreeItemId handles.
to show further items. Items in a tree control are referenced by wxTreeItemId handles,
which may be tested for validity by calling wxTreeItemId::IsOk.
To intercept events from a tree control, use the event table macros described in \helpref{wxTreeEvent}{wxtreeevent}.
@@ -233,13 +234,23 @@ Creates the tree control. See \helpref{wxTreeCtrl::wxTreeCtrl}{wxtreectrlconstr}
\func{void}{Delete}{\param{const wxTreeItemId\&}{ item}}
Deletes the specified item.
Deletes the specified item. A {\tt EVT\_TREE\_DELETE\_ITEM} event will be
generated.
\membersection{wxTreeCtrl::DeleteAllItems}\label{wxtreectrldeleteallitems}
\func{void}{DeleteAllItems}{\void}
Deletes all the items in the control.
Deletes all the items in the control. Note that this will {\bf not} generate
any events unlike \helpref{Delete}{wxtreectrldelete} method.
\membersection{wxTreeCtrl::DeleteChildren}\label{wxtreectrldeletechildren}
\func{void}{DeleteChildren}{\param{const wxTreeItemId\& }{item}}
Deletes all children of the given item (but not the item itself). Note that
this will {\bf not} generate any events unlike
\helpref{Delete}{wxtreectrldelete} method.
\membersection{wxTreeCtrl::EditLabel}\label{wxtreectrleditlabel}
@@ -338,13 +349,14 @@ For this enumeration function you must pass in a `cookie' parameter
which is opaque for the application but is necessary for the library
to make these functions reentrant (i.e. allow more than one
enumeration on one and the same object simultaneously). The cookie passed to
GetFirstChild and GetNextChild should be the same.
GetFirstChild and GetNextChild should be the same variable.
Returns an invalid tree item if there are no further children.
\wxheading{See also}
\helpref{wxTreeCtrl::GetNextChild}{wxtreectrlgetnextchild}
\helpref{wxTreeCtrl::GetNextChild}{wxtreectrlgetnextchild},
\helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling}
\pythonnote{In wxPython the returned wxTreeItemId and the new cookie
value are both returned as a tuple containing the two values.}
@@ -370,6 +382,12 @@ Returns the normal image list.
Returns the current tree control indentation.
\membersection{wxTreeCtrl::GetItemBackgroundColour}\label{wxtreectrlgetitembackgroundcolour}
\constfunc{wxColour}{GetItemBackgroundColour}{\param{const wxTreeItemId\&}{ item}}
Returns the background colour of the item.
\membersection{wxTreeCtrl::GetItemData}\label{wxtreectrlgetitemdata}
\constfunc{wxTreeItemData*}{GetItemData}{\param{const wxTreeItemId\&}{ item}}
@@ -397,6 +415,12 @@ tree->GetItemData( item )->GetData(); ).}
\end{twocollist}}
}
\membersection{wxTreeCtrl::GetItemFont}\label{wxtreectrlgetitemfont}
\constfunc{wxFont}{GetItemFont}{\param{const wxTreeItemId\&}{ item}}
Returns the font of the item label.
\membersection{wxTreeCtrl::GetItemImage}\label{wxtreectrlgetitemimage}
\constfunc{int}{GetItemImage}{\param{const wxTreeItemId\& }{item},
@@ -421,6 +445,12 @@ item is expanded and the normal image is shown when it is collapsed)
Returns the item label.
\membersection{wxTreeCtrl::GetItemTextColour}\label{wxtreectrlgetitemtextcolour}
\constfunc{wxColour}{GetItemTextColour}{\param{const wxTreeItemId\&}{ item}}
Returns the colour of the item label.
\membersection{wxTreeCtrl::GetLastChild}\label{wxtreectrlgetlastchild}
\constfunc{wxTreeItemId}{GetLastChild}{\param{const wxTreeItemId\&}{ item}}
@@ -430,6 +460,7 @@ Returns the last child of the item (or an invalid tree item if this item has no
\wxheading{See also}
\helpref{GetFirstChild}{wxtreectrlgetfirstchild},
\helpref{wxTreeCtrl::GetNextSibling}{wxtreectrlgetnextsibling},
\helpref{GetLastChild}{wxtreectrlgetlastchild}
\membersection{wxTreeCtrl::GetNextChild}\label{wxtreectrlgetnextchild}

View File

@@ -20,8 +20,8 @@ functions that take a wxTreeEvent argument.
\twocolwidtha{9cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_TREE\_BEGIN\_DRAG(id, func)}}{The user has started dragging an item with the left mouse button.}
\twocolitem{{\bf EVT\_TREE\_BEGIN\_RDRAG(id, func)}}{The user has started dragging an item with the right mouse button.}
\twocolitem{{\bf EVT\_TREE\_BEGIN\_DRAG(id, func)}}{The user has started dragging an item with the left mouse button. The event handler must call {\bf wxTreeEvent::Allow()} for the drag operation to continue.}
\twocolitem{{\bf EVT\_TREE\_BEGIN\_RDRAG(id, func)}}{The user has started dragging an item with the right mouse button. The event handler must call {\bf wxTreeEvent::Allow()} for the drag operation to continue.}
\twocolitem{{\bf EVT\_TREE\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
\twocolitem{{\bf EVT\_TREE\_END\_DRAG(id, func)}}{The user has released the mouse after dragging an item.}
\twocolitem{{\bf EVT\_TREE\_END\_LABEL\_EDIT(id, func)}}{The user has finished editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}

View File

@@ -3,7 +3,8 @@
Classes: \helpref{wxSizer}{wxsizer}, \helpref{wxGridSizer}{wxgridsizer},
\helpref{wxFlexGridSizer}{wxflexgridsizer}, \helpref{wxBoxSizer}{wxboxsizer},
\helpref{wxStaticBoxSizer}{wxstaticboxsizer},
\helpref{wxNotebookSizer}{wxnotebooksizer}
\helpref{wxNotebookSizer}{wxnotebooksizer},
\helpref{CreateButtonSizer}{createbuttonsizer}
Sizers, as represented by the wxSizer class and its descendants in
the wxWindows class hierarchy, have become the method of choice to
@@ -192,7 +193,7 @@ the buttons shall be centred as the width of the dialog changes.
It is the unique feature of a box sizer, that it can grow in both directions (height and
width) but can distribute its growth in the main direction (horizontal for a row) {\it unevenly}
among its children. In our example case, the vertical sizer is supposed to propagate all its
height changes to only the text area, not to the button area. This is determined by the {\it option} parameter
height changes to only the text area, not to the button area. This is determined by the {\it proportion} parameter
when adding a window (or another sizer) to a sizer. It is interpreted
as a weight factor, i.e. it can be zero, indicating that the window may not be resized
at all, or above zero. If several windows have a value above zero, the value is interpreted
@@ -312,3 +313,25 @@ aware of:
box around the sizer. Note that this static box has to be created
separately.
\subsection{CreateButtonSizer}\label{createbuttonsizer}
As a convenience, CreateButtonSizer ( long flags ) can be used to create a standard button sizer
in which standard buttons are displayed. The following flags can be passed to this function:
\begin{verbatim}
wxYES_NO // Add Yes/No subpanel
wxYES // return wxID_YES
wxNO // return wxID_NO
wxNO_DEFAULT // make the wxNO button the default, otherwise wxYES or wxOK button will be default
wxOK // return wxID_OK
wxCANCEL // return wxID_CANCEL
wxHELP // return wxID_HELP
wxFORWARD // return wxID_FORWARD
wxBACKWARD // return wxID_BACKWARD
wxSETUP // return wxID_SETUP
wxMORE // return wxID_MORE
\end{verbatim}

View File

@@ -9,8 +9,8 @@ wxString is a class which represents a character string of arbitrary length (lim
arbitrary characters. The ASCII NUL character is allowed, although care should be
taken when passing strings containing it to other functions.
wxString works with both ASCII (8 bit characters) as well as UNICODE (16 but
characters) strings.
wxString works with both ASCII (traditional, 7 or 8 bit, characters) as well as
Unicode (wide characters) strings.
This class has all the standard operations you can expect to find in a string class:
dynamic memory management (string extends to accommodate new characters),
@@ -48,9 +48,10 @@ very useful but don't exist in most of other string classes: for example,
\helpref{BeforeLast}{wxstringbeforelast}, \helpref{operator<<}{wxstringoperatorout}
or \helpref{Printf}{wxstringprintf}. Of course, all the standard string
operations are supported as well.
\item {\bf UNICODE} In this release, wxString only supports {\it construction} from
a UNICODE string, but in the next one it will be capable of also storing its
internal data in either ASCII or UNICODE format.
\item {\bf Unicode} wxString is Unicode friendly: it allows to easily convert
to and from ANSI and Unicode strings in any build mode (see the
\helpref{Unicode overview}{unicode} for more details) and maps to either
{\tt string} or {\tt wstring} transparently depending on the current mode.
\item {\bf Used by wxWindows} And, of course, this class is used everywhere
inside wxWindows so there is no performance loss which would result from
conversions of objects of any other string class (including std::string) to

View File

@@ -6,7 +6,8 @@ The tree control displays its items in a tree like structure. Each item has its
own (optional) icon and a label. An item may be either collapsed (meaning that
its children are not visible) or expanded (meaning that its children are
shown). Each item in the tree is identified by its {\it itemId} which is of
opaque data type {\it wxTreeItemId}.
opaque data type {\it wxTreeItemId}. You can test whether an item is valid
by calling wxTreeItemId::IsOk.
The items text and image may be retrieved and changed with
\helpref{GetItemText}{wxtreectrlgetitemtext}/\helpref{SetItemText}{wxtreectrlsetitemtext}

View File

@@ -160,7 +160,7 @@ Although everything works fine inside the program, things can get nasty when
it tries to communicate with the outside world which, sadly, often expects
ANSI strings (a notable exception is the entire Win32 API which accepts either
Unicode or ANSI strings and which thus makes it unnecessary to ever perform
any conversions in the program).
any conversions in the program). GTK 2.0 only accepts UTF-8 strings.
To get a ANSI string from a wxString, you may use the
mb\_str() function which always returns an ANSI
@@ -175,7 +175,8 @@ the Unicode string.
\subsection{Unicode-related compilation settings}
You should define {\tt wxUSE\_UNICODE} to $1$ to compile your program in
Unicode mode. Note that it currently only works in Win32 and that some parts of
Unicode mode. Note that it currently only works in Win32 and GTK 2.0 and
that some parts of
wxWindows are not Unicode-compliant yet (ODBC classes, for example). If you
compile your program in ANSI mode you can still define {\tt wxUSE\_WCHAR\_T}
to get some limited support for {\tt wchar\_t} type.

View File

@@ -5,6 +5,7 @@ to give an application the chance to update various user interface elements.
\wxheading{Derived from}
\helpref{wxCommandEvent}{wxcommandevent}\\
\helpref{wxEvent}{wxevent}\\
\helpref{wxObject}{wxobject}

View File

@@ -55,8 +55,8 @@ checks if each input character is in the list (one character per list element),
\docparam{valPtr}{A pointer to a wxString variable that contains the value. This variable
should have a lifetime equal to or longer than the validator lifetime (which is usually
determined by the lifetime of the window). If NULL, the validator uses its own internal
storage for the value.}
determined by the lifetime of the window). % If NULL, the validator uses its own internal storage for the value. NOT TRUE
}
\membersection{wxTextValidator::\destruct{wxTextValidator}}

View File

@@ -3,13 +3,13 @@
wxWindow is the base class for all windows. Any children of the window will be deleted
automatically by the destructor before the window itself is deleted.
Please note that we documented a number of handler functions (OnChar(), OnMouse() etc.) in this
help text. These must not be called by a user program and are documented only for illustration.
On several platforms, only a few of these handlers are actually written (they are not always
needed) and if you are uncertain on how to add a certain behaviour to a window class, intercept
the respective event as usual and call \helpref{wxEvent::Skip}{wxeventskip} so that the native
platform can implement its native behaviour or just ignore the event if nothing needs to be
done.
%Please note that we documented a number of handler functions (OnChar(), OnMouse() etc.) in this
%help text. These must not be called by a user program and are documented only for illustration.
%On several platforms, only a few of these handlers are actually written (they are not always
%needed) and if you are uncertain on how to add a certain behaviour to a window class, intercept
%the respective event as usual and call \helpref{wxEvent::Skip}{wxeventskip} so that the native
%platform can implement its native behaviour or just ignore the event if nothing needs to be
%done.
\wxheading{Derived from}
@@ -521,6 +521,16 @@ The search is recursive in both cases.
Sizes the window so that it fits around its subwindows. This function won't do
anything if there are no subwindows.
\membersection{wxWindow::FitInside}\label{wxwindowfitinside}
\func{virtual void}{FitInside}{\void}
Similar to \helpref{Fit}{wxwindowfit}, but sizes the interior (virtual) size
of a window. Mainly useful with scrolled windows to reset scrollbars after
sizing changes that do not trigger a size event, and/or scrolled windows without
an interior sizer. This function similarly won't do anything if there are no
subwindows.
\membersection{wxWindow::Freeze}\label{wxwindowfreeze}
\func{virtual void}{Freeze}{\void}
@@ -535,6 +545,16 @@ wxTextCtrl under wxGTK) but is not implemented on all platforms nor for all
controls so it is mostly just a hint to wxWindows and not a mandatory
directive.
\membersection{wxWindow::GetAdjustedBestSize}\label{wxwindowgetadjustedbestsize}
\constfunc{wxSize}{GetAdjustedBestSize}{\void}
This method is similar to \helpref{GetBestSize}{wxwindowgetbestsize}, except
in one thing. GetBestSize should return the minimum untruncated size of the
window, while this method will return the largest of BestSize and any user
specified minimum size. ie. it is the minimum size the window should currently
be drawn at, not the minimal size it can possibly tolerate.
\membersection{wxWindow::GetBackgroundColour}\label{wxwindowgetbackgroundcolour}
\constfunc{virtual wxColour}{GetBackgroundColour}{\void}
@@ -1759,6 +1779,19 @@ erased.}
\docparam{rect}{If non-NULL, only the given rectangle will
be treated as damaged.}
\wxheading{See also}
\helpref{wxWindow::RefreshRect}{wxwindowrefreshrect}
\membersection{wxWindow::RefreshRect}\label{wxwindowrefreshrect}
\func{virtual void}{Refresh}{\param{const wxRect\& }{rect}}
Redraws the contents of the given rectangle: the area inside it will be
repainted.
This is the same as \helpref{Refresh}{wxwindowrefresh} but has a nicer syntax.
\membersection{wxWindow::ReleaseMouse}\label{wxwindowreleasemouse}
\func{virtual void}{ReleaseMouse}{\void}
@@ -2682,6 +2715,17 @@ Returns {\tt FALSE} if a transfer failed.
\helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow},\rtfsp
\helpref{wxValidator}{wxvalidator}, \helpref{wxWindow::Validate}{wxwindowvalidate}
\membersection{wxWindow::Update}\label{wxwindowupdate}
\func{virtual void}{Update}{\void}
Calling this method immediately repaints the invalidated area of the window
while this would usually only happen when the flow of control returns to the
event loop. Notice that this function doesn't refresh the window and does
nothing if the window hadn't been already repainted. Use
\helpref{Refresh}{wxwindowrefresh} first if you want to immediately redraw the
window unconditionally.
\membersection{wxWindow::Validate}\label{wxwindowvalidate}
\func{virtual bool}{Validate}{\void}

View File

@@ -134,9 +134,9 @@ also \helpref{GetBitmap}{wxwizardpagegetbitmap}.}
\docparam{pos}{The position of the dialog, it will be centered on the screen
by default.}
\membersection{wxWizard::Fit}\label{wxwizardfit}
\membersection{wxWizard::FitToPage}\label{wxwizardfittopage}
\func{void}{Fit}{\param{const wxWizardPage* }{firstPage}}
\func{void}{FittoPage}{\param{const wxWizardPage* }{firstPage}}
Sets the page size to be big enough for all the pages accessible via the
given {\it firstPage}, i.e. this page, its next page and so on.
@@ -160,6 +160,32 @@ Get the current page while the wizard is running. {\tt NULL} is returned if
Returns the size available for the pages.
\membersection{wxWizard::HasNextPage}\label{wxwizardhasnextpage}
\func{virtual bool}{HasNextPage}{\param{wxWizardPage *}{page}}
Return {\tt TRUE} if this page is not the last one in the wizard. The base
class version implements this by calling
\helpref{page->GetNext}{wxwizardpagegetnext} but this could be undesirable if,
for example, the pages are created on demand only.
\wxheading{See also}
\helpref{HasPrevPage}{wxwizardhasprevpage}
\membersection{wxWizard::HasPrevPage}\label{wxwizardhasprevpage}
\func{virtual bool}{HasPrevPage}{\param{wxWizardPage *}{page}}
Return {\tt TRUE} if this page is not the last one in the wizard. The base
class version implements this by calling
\helpref{page->GetPrev}{wxwizardpagegetprev} but this could be undesirable if,
for example, the pages are created on demand only.
\wxheading{See also}
\helpref{HasNextPage}{wxwizardhasnextpage}
\membersection{wxWizard::RunWizard}\label{wxwizardrunwizard}
\func{bool}{RunWizard}{\param{wxWizardPage* }{firstPage}}

180
docs/latex/wx/wx.css Normal file
View File

@@ -0,0 +1,180 @@
body
{
padding: 0px 0px 0px 26px;
background: #ffffff;
color: #000000;
font-family: Verdana, Arial, Helvetica, sans-serif;
}
div
{
width: 90%;
border: 2px solid #999999;
padding: 4px 8px;
background: #cccccc;
}
h1, h2, h3, h4
{
font-family: Verdana, Arial, Helvetica, sans-serif;
margin-left: -26px;
}
h1
{
font-size: 200%;
margin-top: 1em;
margin-bottom: .6em;
}
h2
{
font-size: 150%;
margin-top: 1em;
margin-bottom: .6em;
}
h3
{
font-size: 120%;
margin-left: 0px;
margin-bottom: 0.2em;
margin-top: 1.5em;
}
h4
{
margin-top: 1em;
margin-bottom: .6em;
}
h5
{
margin-bottom: 1em;
margin-top: 1.5em;
}
ul p, ol p, dl p
{
margin-left: 0em;
}
p
{
margin-top: .6em;
margin-bottom: .6em;
}
dl
{
margin-top: 0em;
}
dd
{
margin-bottom: 0em;
margin-left: 1.5em;
}
dt
{
margin-top: .6em;
}
ul, ol
{
margin-top: .6em;
margin-bottom: 0em;
}
ol
{
margin-left: 3.6em;
}
ul
{
list-style-type: disc;
margin-left: 1.9em;
}
li
{
margin-bottom: .6em;
}
tt
{
font-family: Andale Mono, Courier New, Courier, mono;
}
pre
{
margin-top: .6em;
margin-bottom: .6em;
margin-left: 2em;
margin-right: 2em;
font-family: Andale Mono, Courier New, Courier, mono;
color: #550000;
background: #eeeeee;
}
table
{
width: 90%;
background: #999999;
margin-top: 0em;
margin-bottom: .3em;
background: #ffffff;
}
th
{
padding: 2px 4px;
background: #dddddd;
text-align: left;
vertical-align: top;
margin: .25em;
}
td
{
margin: .25em;
padding: 2px 4px;
background: #eeeeee;
vertical-align: top;
}
tr
{
margin: .25em;
vertical-align: top;
}
a:link
{
color: #0066ff;
}
a:visited
{
color: #996600;
}
a:hover
{
color: #cc9900;
}
body, td, pre, tt
{
font-size: 100%;
}
h4, th
{
font-size: 120%;
}

View File

@@ -1,5 +1,5 @@
[OPTIONS]
BMROOT=c:\wx2dev\wxWind~1\docs/latex/wx ; Assume that bitmaps are where the source is
BMROOT=c:\wx24\wxwind~1\docs/latex/wx ; Assume that bitmaps are where the source is
TITLE=wxWindows Manual
CONTENTS=Contents
COMPRESS=HIGH

View File

@@ -5,7 +5,7 @@ from www.gtk.org. It makes use of GTK+'s native widgets wherever
possible and uses wxWindows' generic controls when needed. GTK+
itself has been ported to a number of systems, but so far only the
original X11 version is supported. Support for the recently released
GTK+ 2.0 including Unicode support is still under construction.
GTK+ 2.0 including Unicode support is work in progress.
You will need GTK+ 1.2.3 or higher which is available from:

View File

@@ -660,7 +660,7 @@ If {\it fromEnd} is TRUE, reverse search direction.
If {\bf caseSensitive}, comparison is case sensitive (the default).
Returns the index of the first item matched, or NOT\_FOUND.
Returns the index of the first item matched, or wxNOT\_FOUND.
% TODO
%\membersection{wxString::insert}\label{wxstringinsert}

View File

@@ -229,6 +229,12 @@ Loads a toolbar.
Sets the global resources object and returns a pointer to the previous one (may be NULL).
\membersection{wxXmlResource::SetFlags}\label{wxxmlresourcesetflags}
\func{int}{SetFlags}{\void}
Sets flags (bitlist of wxXRC\_USE\_LOCALE and wxXRC\_NO\_SUBCLASSING).
\membersection{wxXmlResource::UpdateResources}\label{wxxmlresourceupdateresources}
\func{void}{UpdateResources}{\void}

View File

@@ -56,6 +56,13 @@ Add styles common to all wxWindow-derived classes.
Returns TRUE if it understands this node and can create
a resource from it, FALSE otherwise.
\wxheading{Note}
You must {\bf not} call any wxXmlResourceHandler methods except
\helpref{IsOfClass}{wxxmlresourcehandlerisofclass} from this method! The instance
is not yet initialized with node data at the time CanHandle is called and it is only
safe to operate on {\it node} directly or to call IsOfClass.
\membersection{wxXmlResourceHandler::CreateChildren}\label{wxxmlresourcehandlercreatechildren}
\func{void}{CreateChildren}{\param{wxObject* }{parent}, \param{bool }{this\_hnd\_only = FALSE}}