Replaced /*! with /** in remaining Doxygen headers, and removed intentation of overviews [a-c].

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Bryan Petty
2008-03-12 08:50:42 +00:00
parent b890136bc6
commit 880efa2a13
76 changed files with 761 additions and 755 deletions

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_cppconst Preprocessor symbols defined by wxWidgets

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_keycodes Keycodes

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_keymodifiers Key Modifiers

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_languagecodes Language identifiers

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_stdevtid Standard event identifiers

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_stockitems Stock items

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_wxusedef wxUSE preprocessor symbols defined by wxWidgets

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_constants Constants

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_copyright Copyright notice
@@ -29,7 +29,7 @@
*/
/*!
/**
@page page_copyright_wxlicense wxWindows Library License, Version 3.1
@@ -96,7 +96,7 @@
*/
/*!
/**
@page page_copyright_gnulicense GNU Library General Public License, Version 2

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_multiplatform Multi-platform development with wxWidgets

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_introduction Introduction

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_libs Library List

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@mainpage wxWidgets 2.9.0: A portable C++ GUI toolkit
@author Julian Smart, Robert Roebling, Vadim Zeitlin, Robin Dunn, et al

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_port Platform details

View File

@@ -7,7 +7,7 @@
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_strategies Programming strategies

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_topics Topic Overviews

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page page_utils Utilities and samples supplied with wxWidgets

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_app wxApp Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_arc Archive Formats

View File

@@ -6,18 +6,22 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_aui wxAUI overview
@page overview_aui wxAUI Overview
Class: wxAuiManager, wxAuiPaneInfo
Classes:
@li wxAuiManager
@li wxAuiPaneInfo
@li wxAuiNotebook
@li wxAuiDockArt
@li wxAuiTabArt
wxAUI stands for Advanced User Interface and the wxAUI framework
aims to give its user a cutting edge interface for use with the
wxWidgets based applications. The original wxAUI sources have
kindly been made available under the wxWindows licence
by Kirix Corp. and they have since then been integrated into
wxWidgets CVS and further improved.
wxAUI stands for Advanced User Interface. It aims to give the user a cutting
edge interface with floatable windows, and a user-customizable layout. The
original wxAUI sources have kindly been made available under the wxWindows
licence by Kirix Corp. and they have since then been integrated into wxWidgets
and further improved.
wxAUI attempts to encapsulate the following aspects of the user interface:
@@ -26,42 +30,44 @@
@li @ref overview_aui_modeless
@li @ref overview_aui_lnf
<hr>
@section overview_aui_frame Frame Management
Frame management provides the means to open, move and hide common
controls that are needed to interact with the document, and allow these
configurations to be saved into different perspectives and loaded at a
later time.
Frame management provides the means to open, move and hide common controls that
are needed to interact with the document, and allow these configurations to be
saved into different perspectives and loaded at a later time.
@subsection overview_aui_toolbar Toolbars
Toolbars are a specialized subset of the frame management system and
should behave similarly to other docked components. However, they also
require additional functionality, such as "spring-loaded" rebar support,
"chevron" buttons and end-user customizability.
@section overview_aui_toolbar Toolbars
@subsection overview_aui_modeless Modeless Controls
Toolbars are a specialized subset of the frame management system and should
behave similarly to other docked components. However, they also require
additional functionality, such as "spring-loaded" rebar support, "chevron"
buttons and end-user customizability.
Modeless controls expose a tool palette or set of options that float
above the application content while allowing it to be accessed. Usually
accessed by the toolbar, these controls disappear when an option is
selected, but may also be "torn off" the toolbar into a floating frame
of their own.
@subsection overview_aui_lnf Look and Feel
@section overview_aui_modeless Modeless Controls
Modeless controls expose a tool palette or set of options that float above the
application content while allowing it to be accessed. Usually accessed by the
toolbar, these controls disappear when an option is selected, but may also be
"torn off" the toolbar into a floating frame of their own.
@section overview_aui_lnf Look and Feel
Look and feel encompasses the way controls are drawn, both when shown
statically as well as when they are being moved. This aspect of user
interface design incorporates "special effects" such as transparent
window dragging as well as frame animation.
statically as well as when they are being moved. This aspect of user interface
design incorporates "special effects" such as transparent window dragging as
well as frame animation.
wxAUI adheres to the following principles:
Use native floating frames to obtain a native look and feel for all
platforms. Use existing wxWidgets code where possible, such as sizer
implementation for frame management. Use classes included in wxCore
and wxBase only. Use standard wxWidgets coding conventions.
wxAUI adheres to the following principles: Use native floating frames to obtain
a native look and feel for all platforms. Use existing wxWidgets code where
possible, such as sizer implementation for frame management. Use classes
included in @ref page_libs_wxcore and @ref page_libs_wxbase only.
*/

View File

@@ -6,19 +6,19 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_backwardcompat Backward compatibility
@page overview_backwardcompat Backwards Compatibility
Many of the GUIs and platforms supported by wxWidgets are continuously
evolving, and some of the new platforms wxWidgets now supports were quite
unimaginable even a few years ago. In this environment wxWidgets must also
evolve in order to support these new features and platforms.
However the goal of wxWidgets is not only to provide a consistent
programming interface across many platforms, but also to provide an
interface that is reasonably stable over time, to help protect its users
from some of the uncertainty of the future.
However the goal of wxWidgets is not only to provide a consistent programming
interface across many platforms, but also to provide an interface that is
reasonably stable over time, to help protect its users from some of the
uncertainty of the future.
@li @ref overview_backwardcompat_versionnumbering
@li @ref overview_backwardcompat_sourcecompat
@@ -29,155 +29,145 @@
<hr>
@section overview_backwardcompat_versionnumbering The version numbering scheme
@section overview_backwardcompat_versionnumbering The Version Numbering Scheme
wxWidgets version numbers can have up to four components, with trailing
zeros sometimes omitted:
wxWidgets version numbers can have up to four components, with trailing zeros
sometimes omitted:
@code
@vertatim
major.minor.release.sub-release
@endcode
@endverbatim
A stable release of wxWidgets will have an even number for @c minor, e.g. @c 2.6.0.
Stable, in this context, means that the API is not changing. In truth, some
changes are permitted, but only those that are backward compatible. For
example, you can expect later @c 2.6.x.x releases, such as @c 2.6.1
and @c 2.6.2 to be backward compatible with their predecessor.
A stable release of wxWidgets will have an even number for @e minor, e.g.
2.6.0. Stable, in this context, means that the API is not changing. In truth,
some changes are permitted, but only those that are backward compatible. For
example, you can expect later 2.6.x releases, such as 2.6.1 and 2.6.2 to be
backward compatible with their predecessor.
When it becomes necessary to make changes which are not wholly backward
compatible, the stable branch is forked, creating a new development
branch of wxWidgets. This development branch will have an odd number
for @c minor, for example @c 2.7.x.x. Releases from this branch are
known as development snapshots.
compatible, the stable branch is forked, creating a new development branch of
wxWidgets. This development branch will have an odd number for @e minor, for
example 2.7.x. Releases from this branch are known as development snapshots.
The stable branch and the development branch will then be developed in
parallel for some time. When it is no longer useful to continue developing
the stable branch, the development branch is renamed and becomes a new
stable branch, for example @c 2.8.0. And the process begins again.
This is how the tension between keeping the interface stable, and allowing
the library to evolve is managed.
The stable branch and the development branch will then be developed in parallel
for some time. When it is no longer useful to continue developing the stable
branch, the development branch is renamed and becomes a new stable branch, for
example: 2.8.0. And the process begins again. This is how the tension between
keeping the interface stable, and allowing the library to evolve is managed.
You can expect the versions with the same major and even minor
version number to be compatible, but between minor versions there will be
incompatibilities. Compatibility is not broken gratuitously however, so
many applications will require no changes or only small changes to work
with the new version.
You can expect the versions with the same major and even minor version number
to be compatible, but between minor versions there will be incompatibilities.
Compatibility is not broken gratuitously however, so many applications will
require no changes or only small changes to work with the new version.
@section overview_backwardcompat_sourcecompat Source level compatibility
@section overview_backwardcompat_sourcecompat Source Level Compatibility
Later releases from a stable branch are backward compatible with earlier
releases from the same branch at the source level.
This means that, for example, if you develop your application using
wxWidgets @c 2.6.0 then it should also compile fine with all later @c 2.6.x versions.
releases from the same branch at the source level. This means that, for
example, if you develop your application using wxWidgets 2.8.0 then it should
also compile fine with all later 2.8.x versions.
The converse is also @true providing you avoid any new
features not present in the earlier version. For example if you develop
using @c 2.6.1 your program will compile fine with wxWidgets @c 2.6.0
providing you don't use any @c 2.6.1 specific features.
The converse is also true providing you avoid any new features not present in
the earlier version. For example if you develop using 2.6.1 your program will
compile fine with wxWidgets 2.8.0 providing you don't use any 2.8.1 specific
features.
For some platforms binary compatibility is also supported, see 'Library
binary compatibility' below.
For some platforms binary compatibility is also supported, see
@ref overview_backwardcompat_libbincompat below.
Between minor versions, for example between @c 2.2.x, @c 2.4.x and @c 2.6.x, there
will be some incompatibilities. Wherever possible the old way of doing something
is kept alongside the new for a time wrapped inside:
Between minor versions, for example between 2.4.x, 2.6.x and 2.8.x, there will
be some incompatibilities. Wherever possible the old way of doing something is
kept alongside the new for a time wrapped inside:
@code
#if WXWIN_COMPATIBILITY_2_4
#if WXWIN_COMPATIBILITY_2_6
// deprecated feature
...
#endif
@endcode
By default the @c WXWIN_COMPATIBILITY@e _X_X macro is set
to 1 for the previous stable branch, for example
in @c 2.6.x @c WXWIN_COMPATIBILITY_2_4 = 1. For the next earlier
stable branch the default is 0, so @c WXWIN_COMPATIBILITY_2_2 = 0
for @c 2.6.x. Earlier than that, obsolete features are removed.
By default the @c WXWIN_COMPATIBILITY_X_X macro is set to 1 for the previous
stable branch, for example in 2.8.x, @c WXWIN_COMPATIBILITY_2_6 = 1. For the
next earlier stable branch the default is 0, so @c WXWIN_COMPATIBILITY_2_4 = 0
for 2.8.x. Earlier than that, obsolete features are removed.
These macros can be changed in @c setup.h. Or on UNIX-like systems you can
set them using the @c --disable-compat24 and @c --enable-compat22
options to @c configure.
These macros can be changed in @c setup.h. Or on UNIX-like systems you can set
them using the @c --disable-compat26 and @c --enable-compat24 options to
configure.
They can be useful in two ways:
@li changing @c WXWIN_COMPATIBILITY_2_4 to 0 can be useful to
find uses of deprecated features in your program.
@li changing @c WXWIN_COMPATIBILITY_2_2 to 1 can be useful to
compile a program developed using @c 2.2.x that no longer compiles
with @c 2.6.x.
@li Changing @c WXWIN_COMPATIBILITY_2_6 to 0 can be useful to find uses of
deprecated features in your program that should eventually be removed.
@li Changing @c WXWIN_COMPATIBILITY_2_4 to 1 can be useful to compile a program
developed using 2.4.x that no longer compiles with 2.8.x.
A program requiring one of these macros to be 1 will become
incompatible with some future version of wxWidgets, and you should consider
updating it.
A program requiring one of these macros to be 1 will become incompatible with
some future version of wxWidgets, and you should consider updating it.
@section overview_backwardcompat_libbincompat Library binary compatibility
@section overview_backwardcompat_libbincompat Library Binary Compatibility
For some platforms, releases from a stable branch are not only source level
compatible but can also be binary compatible.
Binary compatibility makes it possible to get the maximum benefit from
using shared libraries, also known as dynamic link libraries (DLLs) on
Windows or dynamic shared libraries on OS X.
Binary compatibility makes it possible to get the maximum benefit from using
shared libraries, also known as dynamic link libraries (DLLs) on Windows or
dynamic shared libraries on OS X.
For example, suppose several applications are installed on a system requiring
wxWidgets @c 2.6.0, @c 2.6.1 and @c 2.6.2. Since @c 2.6.2 is
backward compatible with the earlier versions, it should be enough to
install just wxWidgets @c 2.6.2 shared libraries, and all the applications
should be able to use them. If binary compatibility is not supported, then all
the required versions @c 2.6.0, @c 2.6.1 and @c 2.6.2 must be
installed side by side.
wxWidgets 2.6.0, 2.6.1 and 2.6.2. Since 2.6.2 is backward compatible with the
earlier versions, it should be enough to install just wxWidgets 2.6.2 shared
libraries, and all the applications should be able to use them. If binary
compatibility is not supported, then all the required versions 2.6.0, 2.6.1 and
2.6.2 must be installed side by side.
Achieving this, without the user being required to have the source code
and recompile everything, places many extra constraints on the changes
that can be made within the stable branch. So it is not supported for all
platforms, and not for all versions of wxWidgets. To date it has mainly
been supported by wxGTK for UNIX-like platforms.
Achieving this, without the user being required to have the source code and
recompile everything, places many extra constraints on the changes that can be
made within the stable branch. So it is not supported for all platforms, and
not for all versions of wxWidgets. To date it has mainly been supported by
wxGTK for UNIX-like platforms.
Another practical consideration is that for binary compatibility to work,
all the applications and libraries must have been compiled with compilers
that are capable of producing compatible code;
that is, they must use the
same ABI (Application Binary Interface). Unfortunately most different C++
compilers do not produce code compatible with each other, and often even
different versions of the same compiler are not compatible.
Another practical consideration is that for binary compatibility to work, all
the applications and libraries must have been compiled with compilers that are
capable of producing compatible code; that is, they must use the same ABI
(Application Binary Interface). Unfortunately most different C++ compilers do
not produce code compatible with each other, and often even different versions
of the same compiler are not compatible.
@section overview_backwardcompat_appbincompat Application Binary Compatibility
@section overview_backwardcompat_appbincompat Application binary compatibility
The most important aspect of binary compatibility is that applications compiled
with one version of wxWidgets, e.g. 2.6.1, continue to work with shared
libraries of a later binary compatible version, for example 2.6.2. The converse
can also be useful however. That is, it can be useful for a developer using a
later version, e.g. 2.6.2 to be able to create binary application packages that
will work with all binary compatible versions of the shared library starting
with, for example 2.6.0.
The most important aspect of binary compatibility is that applications
compiled with one version of wxWidgets, e.g. @c 2.6.1, continue to work
with shared libraries of a later binary compatible version, for example @c 2.6.2.
The converse can also be useful however. That is, it can be useful for a
developer using a later version, e.g. @c 2.6.2 to be able to create binary
application packages that will work with all binary compatible versions of
the shared library starting with, for example @c 2.6.0.
To do this the developer must, of course, avoid any features not available in
the earlier versions. However this is not necessarily enough; in some cases an
application compiled with a later version may depend on it even though the same
code would compile fine against an earlier version.
To do this the developer must, of course, avoid any features not available
in the earlier versions. However this is not necessarily enough;
in some cases an application compiled with a later version may depend on it even
though the same code would compile fine against an earlier version.
To help with this, a preprocessor symbol @c wxABI_VERSION can be defined
during the compilation of the application (this would usually be done in the
To help with this, a preprocessor symbol @c wxABI_VERSION can be defined during
the compilation of the application (this would usually be done in the
application's makefile or project settings). It should be set to the lowest
version that is being targeted, as a number with two decimal digits for each
component, for example @c wxABI_VERSION=20600 for @c 2.6.0.
component, for example @c wxABI_VERSION=20600 for 2.6.0.
Setting @c wxABI_VERSION should prevent the application from implicitly
depending on a later version of wxWidgets, and also disables any new features
in the API, giving a compile time check that the source is compatible with
the versions of wxWidgets being targeted.
in the API, giving a compile time check that the source is compatible with the
versions of wxWidgets being targeted.
Uses of @c wxABI_VERSION are stripped out of the wxWidgets sources when
each new development branch is created. Therefore it is only useful to help
achieve compatibility with earlier versions with the same major
and even minor version numbers. It won't, for example, help you write
code compatible with @c 2.4.x using wxWidgets @c 2.6.x.
Uses of @c wxABI_VERSION are stripped out of the wxWidgets sources when each
new development branch is created. Therefore it is only useful to help achieve
compatibility with earlier versions with the same major and even minor version
numbers. It won't, for example, help you write code compatible with 2.6.x using
wxWidgets 2.8.x.
*/

View File

@@ -6,44 +6,47 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_bitmap Bitmaps and icons overview
@page overview_bitmap Bitmaps and Icons
Classes: wxBitmap, wxBitmapHandler, wxIcon, wxCursor.
Classes:
@li wxBitmap
@li wxBitmapHandler
@li wxIcon
@li wxCursor
The wxBitmap class encapsulates the concept of a platform-dependent bitmap,
either monochrome or colour. Platform-specific methods for creating a
wxBitmap object from an existing file are catered for, and
this is an occasion where conditional compilation will sometimes be
required.
either monochrome or colour. Platform-specific methods for creating a wxBitmap
object from an existing file are catered for, and this is an occasion where
conditional compilation will sometimes be required.
A bitmap created dynamically or loaded from a file can be selected
into a memory device context (instance of wxMemoryDC). This
enables the bitmap to be copied to a window or memory device context
using wxDC::Blit, or to be used as a drawing surface.
A bitmap created dynamically or loaded from a file can be selected into a
memory device context (instance of wxMemoryDC). This enables the bitmap to be
copied to a window or memory device context using wxDC::Blit(), or to be used
as a drawing surface.
See wxMemoryDC for an example of drawing onto a bitmap.
All wxWidgets platforms support XPMs for small bitmaps and icons.
You may include the XPM inline as below, since it's C code, or you
can load it at run-time.
All wxWidgets platforms support XPMs for small bitmaps and icons. You may
include the XPM inline as below, since it's C code, or you can load it at
run-time.
@code
#include "mondrian.xpm"
@endcode
Sometimes you wish to use a .ico resource on Windows, and XPMs on
other platforms (for example to take advantage of Windows' support for
multiple icon resolutions).
Sometimes you wish to use a .ico resource on Windows, and XPMs on other
platforms (for example to take advantage of Windows' support for multiple icon
resolutions).
A macro, #wxICON, is available which creates an icon using an XPM
on the appropriate platform, or an icon resource on Windows.
A macro, wxICON(), is available which creates an icon using an XPM on the
appropriate platform, or an icon resource on Windows:
@code
wxIcon icon(wxICON(mondrian));
// Equivalent to:
// The above line is equivalent to this:
#if defined(__WXGTK__) || defined(__WXMOTIF__)
wxIcon icon(mondrian_xpm);
@@ -54,13 +57,12 @@
#endif
@endcode
There is also a corresponding #wxBITMAP macro which allows
to create the bitmaps in much the same way as #wxICON creates
icons. It assumes that bitmaps live in resources under Windows or OS2 and XPM
files under all other platforms (for XPMs, the corresponding file must be
included before this macro is used, of course, and the name of the bitmap
should be the same as the resource name under Windows with @c _xpm
suffix). For example:
There is also a corresponding wxBITMAP() macro which allows to create the
bitmaps in much the same way as wxICON() creates icons. It assumes that bitmaps
live in resources under Windows or OS2 and XPM files under all other platforms
(for XPMs, the corresponding file must be included before this macro is used,
of course, and the name of the bitmap should be the same as the resource name
under Windows with @c _xpm suffix). For example:
@code
// an easy and portable way to create a bitmap
@@ -74,7 +76,7 @@
#endif
@endcode
You should always use wxICON and wxBITMAP macros because they work for any
You should always use wxICON() and wxBITMAP() macros because they work for any
platform (unlike the code above which doesn't deal with wxMac, wxX11, ...) and
are shorter and more clear than versions with many @ifdef_ blocks. Even better,
use the same XPMs on all platforms.
@@ -86,19 +88,18 @@
<hr>
@section overview_bitmap_supportedformats Supported bitmap file formats
@section overview_bitmap_supportedformats Supported Bitmap File Formats
The following lists the formats handled on different platforms. Note
that missing or partially-implemented formats are automatically supplemented
by the wxImage to load the data, and then converting
it to wxBitmap form. Note that using wxImage is the preferred way to
load images in wxWidgets, with the exception of resources (XPM-files or
native Windows resources).
The following lists the formats handled on different platforms. Note that
missing or partially-implemented formats are automatically supplemented by
using wxImage to load the data, and then converting it to wxBitmap form. Note
that using wxImage is the preferred way to load images in wxWidgets, with the
exception of resources (XPM-files or native Windows resources).
Writing an image format handler for wxImage is also far easier than writing
one for wxBitmap, because wxImage has exactly one format on all platforms
whereas wxBitmap can store pixel data very differently, depending on colour
depths and platform.
Writing an image format handler for wxImage is also far easier than writing one
for wxBitmap, because wxImage has exactly one format on all platforms whereas
wxBitmap can store pixel data very differently, depending on colour depths and
platform.
@subsection overview_bitmap_supportedformats_bmp wxBitmap
@@ -120,7 +121,6 @@
@li XPM data and file (wxBITMAP_TYPE_XPM)
@li All formats that are supported by the wxImage class.
@subsection overview_bitmap_supportedformats_icon wxIcon
Under Windows, wxIcon may load the following formats:
@@ -140,7 +140,6 @@
@li XPM data and file (wxBITMAP_TYPE_XPM)
@li All formats that are supported by the wxImage class.
@subsection overview_bitmap_supportedformats_cursor wxCursor
Under Windows, wxCursor may load the following formats:
@@ -150,8 +149,8 @@
@li Windows icon file (wxBITMAP_TYPE_ICO)
@li Windows bitmap file (wxBITMAP_TYPE_BMP)
Under wxGTK, wxCursor may load the following formats (in additional
to stock cursors):
Under wxGTK, wxCursor may load the following formats (in addition to stock
cursors):
@li None (stock cursors only).
@@ -160,24 +159,24 @@
@li XBM data and file (wxBITMAP_TYPE_XBM)
@section overview_bitmap_handlers Bitmap Format Handlers
@section overview_bitmap_handlers Bitmap format handlers
To provide extensibility, the functionality for loading and saving bitmap
formats is not implemented in the wxBitmap class, but in a number of handler
classes, derived from wxBitmapHandler. There is a static list of handlers which
wxBitmap examines when a file load/save operation is requested.
To provide extensibility, the functionality for loading and saving bitmap formats
is not implemented in the wxBitmap class, but in a number of handler classes,
derived from wxBitmapHandler. There is a static list of handlers which wxBitmap
examines when a file load/save operation is requested.
Some handlers are provided as standard, but if you have special requirements,
you may wish to initialise the wxBitmap class with some extra handlers which
you write yourself or receive from a third party.
Some handlers are provided as standard, but if you
have special requirements, you may wish to initialise the wxBitmap class with
some extra handlers which you write yourself or receive from a third party.
To add a handler object to wxBitmap, your application needs to include the
header which implements it, and then call the static function
wxBitmap::AddHandler().
To add a handler object to wxBitmap, your application needs to include the header
which implements it, and then call the static function wxBitmap::AddHandler.
@note bitmap handlers are not implemented on all platforms, and new ones rarely need
to be implemented since wxImage can be used for loading most formats, as noted
earlier.
@note Bitmap handlers are not implemented on all platforms, and new ones rarely
need to be implemented since wxImage can be used for loading most formats, as
noted earlier.
*/

View File

@@ -6,11 +6,19 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_bookctrl wxBookCtrl overview
@page overview_bookctrl wxBookCtrl Overview
Classes: wxNotebook, wxListbook, wxChoicebook, wxTreebook, wxToolbook
Classes:
@li wxChoicebook
@li wxListbook
@li wxNotebook
@li wxTreebook
@li wxToolbook
Sections:
@li @ref overview_bookctrl_intro
@li @ref overview_bookctrl_bestbookctrl
@@ -24,32 +32,36 @@
A book control is a convenient way of displaying multiple pages of information,
displayed one page at a time. wxWidgets has five variants of this control:
@li wxNotebook: uses a row of tabs
@li wxListbook: controlled by a wxListCtrl
@li wxChoicebook: controlled by a wxChoice
@li wxListbook: controlled by a wxListCtrl
@li wxNotebook: uses a row of tabs
@li wxTreebook: controlled by a wxTreeCtrl
@li wxToolbook: controlled by a wxToolBar
See @ref page_utils_samples_notebook for an example of wxBookCtrl usage.
See the @ref page_utils_samples_notebook for an example of wxBookCtrl usage.
@section overview_bookctrl_bestbookctrl Best book
@section overview_bookctrl_bestbookctrl Best Book
wxBookCtrl is mapped to the class best suited for a given platform.
Currently it provides wxChoicebook for smartphones equipped with
WinCE, and wxNotebook for all other platforms. The mapping consists of:
wxBookCtrl is mapped to the class best suited for a given platform. Currently
it provides wxChoicebook for smartphones equipped with WinCE, and wxNotebook
for all other platforms. The mapping consists of:
@beginTable
@row2col{ wxBookCtrl, wxChoicebook or wxNotebook }
@row2col{ wxBookCtrlEvent, wxChoicebookEvent or wxNotebookEvent }
@row2col{ wxEVT_COMMAND_BOOKCTRL_PAGE_CHANGED,
wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED or wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED}
wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED or
wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED }
@row2col{ wxEVT_COMMAND_BOOKCTRL_PAGE_CHANGING,
wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING or wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING}
wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING or
wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING }
@row2col{ EVT_BOOKCTRL_PAGE_CHANGED(id\, fn),
EVT_CHOICEBOOK_PAGE_CHANGED(id, fn) or EVT_NOTEBOOK_PAGE_CHANGED(id, fn)}
EVT_CHOICEBOOK_PAGE_CHANGED(id, fn) or
EVT_NOTEBOOK_PAGE_CHANGED(id, fn) }
@row2col{ EVT_BOOKCTRL_PAGE_CHANGING(id\, fn),
EVT_CHOICEBOOK_PAGE_CHANGING(id, fn) or EVT_NOTEBOOK_PAGE_CHANGING(id, fn)}
EVT_CHOICEBOOK_PAGE_CHANGING(id, fn) or
EVT_NOTEBOOK_PAGE_CHANGING(id, fn) }
@endTable
For orientation of the book controller, use following flags in style:

View File

@@ -6,18 +6,18 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_bufferclasses Buffer classes overview
@page overview_bufferclasses Buffer Classes
wxWidgets uses two classes of classes for dealing with buffers in memory.
The first is one for dealing with character buffers, namely wxCharBuffer
for char pointer or multi-byte c strings and wxWCharBuffer for wchar_t pointer
or wide character c strings.
The first is one for dealing with character buffers, namely wxCharBuffer for
char pointer or multi-byte c strings and wxWCharBuffer for wchar_t pointer or
wide character c strings.
Secondly, wxWidgets uses, although only rarely currently, wxMemoryBuffer
for dealing with raw buffers in memory.
Secondly, wxWidgets uses, although only rarely currently, wxMemoryBuffer for
dealing with raw buffers in memory.
@li @ref overview_bufferclasses_xcb
@@ -25,25 +25,25 @@
<hr>
@section overview_bufferclasses_xcb wxXCharBuffer Overview
@section overview_bufferclasses_xcb wxXCharBuffer
@subsection overview_bufferclasses_xcb_general General Usage
As mentioned, wxCharBuffer and its wide character variant wxWCharBuffer deal
with c strings in memory. They have two constructors, one in which you pass
the c string you want them to have a copy of, and another where you specify
the size of the buffer in memory in characters you want.
the c string you want them to have a copy of, and another where you specify the
size of the buffer in memory in characters you want.
wxCharBuffer and its variant only contain the c string as a member, so they
can be used safely to c functions with variable arguments such as printf.
They also contain standard assignment, character access operators and a copy constructor.
wxCharBuffer and its variant only contain the c string as a member, so they can
be used safely to c functions with variable arguments such as printf. They also
contain standard assignment, character access operators and a copy constructor.
@subsection overview_bufferclasses_xcb_destruct Destruction
It should be noted that on destruction wxCharBuffer and its wide character
variant delete the c string that hold onto. If you want to get the pointer
to the buffer and don't want wxCharBuffer to delete it on destruction,
use the member function release to do so.
variant delete the c string that hold onto. If you want to get the pointer to
the buffer and don't want wxCharBuffer to delete it on destruction, use the
member function release to do so.
*/

View File

@@ -6,26 +6,35 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_cmndlg Common dialogs overview
@page overview_cmndlg Common Dialogs
Classes: wxColourDialog, wxFontDialog, wxPrintDialog, wxFileDialog,
wxDirDialog, wxTextEntryDialog, wxPasswordEntryDialog,
wxMessageDialog, wxSingleChoiceDialog, wxMultiChoiceDialog
Classes:
Common dialog classes and functions encapsulate commonly-needed dialog box requirements.
They are all 'modal', grabbing the flow of control until the user dismisses the dialog,
to make them easy to use within an application.
@li wxColourDialog
@li wxFontDialog
@li wxPrintDialog
@li wxFileDialog
@li wxDirDialog
@li wxTextEntryDialog
@li wxPasswordEntryDialog
@li wxMessageDialog
@li wxSingleChoiceDialog
@li wxMultiChoiceDialog
Some dialogs have both platform-dependent and platform-independent implementations,
so that if underlying windowing systems do not provide the required functionality,
the generic classes and functions can stand in. For example, under MS Windows, wxColourDialog
uses the standard colour selector. There is also an equivalent called wxGenericColourDialog
for other platforms, and a macro defines wxColourDialog to be the same as wxGenericColourDialog
on non-MS Windows platforms. However, under MS Windows, the generic dialog can also be
used, for testing or other purposes.
Common dialog classes and functions encapsulate commonly-needed dialog box
requirements. They are all 'modal', grabbing the flow of control until the user
dismisses the dialog, to make them easy to use within an application.
Some dialogs have both platform-dependent and platform-independent
implementations, so that if underlying windowing systems do not provide the
required functionality, the generic classes and functions can stand in. For
example, under MS Windows, wxColourDialog uses the standard colour selector.
There is also an equivalent called wxGenericColourDialog for other platforms,
and a macro defines wxColourDialog to be the same as wxGenericColourDialog on
non-MS Windows platforms. However, under MS Windows, the generic dialog can
also be used, for testing or other purposes.
@li @ref overview_cmndlg_colour
@li @ref overview_cmndlg_font
@@ -42,49 +51,46 @@
<hr>
@section overview_cmndlg_colour wxColourDialog overview
@section overview_cmndlg_colour wxColourDialog Overview
Classes: wxColourDialog, wxColourData
The wxColourDialog presents a colour selector to the user, and returns
with colour information.
The wxColourDialog presents a colour selector to the user, and returns with
colour information.
@subsection overview_cmndlg_colour_msw The MS Windows colour selector
@subsection overview_cmndlg_colour_msw The MS Windows Colour Selector
Under Windows, the native colour selector common dialog is used. This
presents a dialog box with three main regions: at the top left, a
palette of 48 commonly-used colours is shown. Under this, there is a
palette of 16 'custom colours' which can be set by the application if
desired. Additionally, the user may open up the dialog box to show
a right-hand panel containing controls to select a precise colour, and add
it to the custom colour palette.
Under Windows, the native colour selector common dialog is used. This presents
a dialog box with three main regions: at the top left, a palette of 48
commonly-used colours is shown. Under this, there is a palette of 16
'custom colours' which can be set by the application if desired. Additionally,
the user may open up the dialog box to show a right-hand panel containing
controls to select a precise colour, and add it to the custom colour palette.
@subsection overview_cmndlg_colour_generic The generic colour selector
@subsection overview_cmndlg_colour_generic The Generic Colour Selector
Under non-MS Windows platforms, the colour selector is a simulation of
most of the features of the MS Windows selector. Two palettes of 48
standard and 16 custom colours are presented, with the right-hand area
containing three sliders for the user to select a colour from red,
green and blue components. This colour may be added to the custom colour
palette, and will replace either the currently selected custom colour,
or the first one in the palette if none is selected. The RGB colour sliders
are not optional in the generic colour selector. The generic colour
selector is also available under MS Windows; use the name
wxGenericColourDialog.
Under non-MS Windows platforms, the colour selector is a simulation of most of
the features of the MS Windows selector. Two palettes of 48 standard and 16
custom colours are presented, with the right-hand area containing three sliders
for the user to select a colour from red, green and blue components. This
colour may be added to the custom colour palette, and will replace either the
currently selected custom colour, or the first one in the palette if none is
selected. The RGB colour sliders are not optional in the generic colour
selector. The generic colour selector is also available under MS Windows; use
the name wxGenericColourDialog.
@subsection overview_cmndlg_colour_example Example
In the samples/dialogs directory, there is an example of using
the wxColourDialog class. Here is an excerpt, which
sets various parameters of a wxColourData object, including
a grey scale for the custom colours. If the user did not cancel
the dialog, the application retrieves the selected colour and
In the samples/dialogs directory, there is an example of using the
wxColourDialog class. Here is an excerpt, which sets various parameters of a
wxColourData object, including a grey scale for the custom colours. If the user
did not cancel the dialog, the application retrieves the selected colour and
uses it to set the background of a window.
@code
wxColourData data;
data.SetChooseFull(true);
for (int i = 0; i 16; i++)
for (int i = 0; i < 16; i++)
{
wxColour colour(i*16, i*16, i*16);
data.SetCustomColour(i, colour);
@@ -103,38 +109,35 @@
@endcode
@section overview_cmndlg_font wxFontDialog overview
@section overview_cmndlg_font wxFontDialog Overview
Classes: wxFontDialog, wxFontData
The wxFontDialog presents a font selector to the user, and returns
with font and colour information.
The wxFontDialog presents a font selector to the user, and returns with font
and colour information.
@subsection overview_cmndlg_font_msw The MS Windows font selector
@subsection overview_cmndlg_font_msw The MS Windows Font Selector
Under Windows, the native font selector common dialog is used. This
presents a dialog box with controls for font name, point size, style, weight,
underlining, strikeout and text foreground colour. A sample of the
font is shown on a white area of the dialog box. Note that
in the translation from full MS Windows fonts to wxWidgets font
conventions, strikeout is ignored and a font family (such as
Swiss or Modern) is deduced from the actual font name (such as Arial
or Courier).
Under Windows, the native font selector common dialog is used. This presents a
dialog box with controls for font name, point size, style, weight, underlining,
strikeout and text foreground colour. A sample of the font is shown on a white
area of the dialog box. Note that in the translation from full MS Windows fonts
to wxWidgets font conventions, strikeout is ignored and a font family (such as
Swiss or Modern) is deduced from the actual font name (such as Arial or
Courier).
@subsection overview_cmndlg_font_generic The generic font selector
@subsection overview_cmndlg_font_generic The Generic Font Selector
Under non-MS Windows platforms, the font selector is simpler.
Controls for font family, point size, style, weight,
underlining and text foreground colour are provided, and
a sample is shown upon a white background. The generic font selector
is also available under MS Windows; use the name wxGenericFontDialog.
Under non-MS Windows platforms, the font selector is simpler. Controls for font
family, point size, style, weight, underlining and text foreground colour are
provided, and a sample is shown upon a white background. The generic font
selector is also available under MS Windows; use the name wxGenericFontDialog.
@subsection overview_cmndlg_font_example Example
In the samples/dialogs directory, there is an example of using
the wxFontDialog class. The application uses the returned font
and colour for drawing text on a canvas. Here is an excerpt:
In the samples/dialogs directory, there is an example of using the wxFontDialog
class. The application uses the returned font and colour for drawing text on a
canvas. Here is an excerpt:
@code
wxFontData data;
@@ -152,106 +155,99 @@
@endcode
@section overview_cmndlg_print wxPrintDialog overview
@section overview_cmndlg_print wxPrintDialog Overview
Classes: wxPrintDialog, wxPrintData
This class represents the print and print setup common dialogs.
You may obtain a wxPrinterDC device context from
a successfully dismissed print dialog.
This class represents the print and print setup common dialogs. You may obtain
a wxPrinterDC device context from a successfully dismissed print dialog.
The samples/printing example shows how to use it: see @ref overview_printing for
an excerpt from this example.
The samples/printing example shows how to use it: see @ref overview_printing
for an excerpt from this example.
@section overview_cmndlg_file wxFileDialog overview
@section overview_cmndlg_file wxFileDialog Overview
Classes: wxFileDialog
Pops up a file selector box. In Windows and GTK2.4+, this is the common
file selector dialog. In X, this is a file selector box with somewhat less
functionality. The path and filename are distinct elements of a full file pathname.
Pops up a file selector box. On Windows and GTK 2.4+, this is the common file
selector dialog. In X, this is a file selector box with somewhat less
functionality. The path and filename are distinct elements of a full file
pathname.
If path is "", the current directory will be used. If filename is "",
no default filename will be supplied. The wildcard determines what files
are displayed in the file selector, and file extension supplies a type
extension for the required filename. Flags may be a combination of wxFD_OPEN,
wxFD_SAVE, wxFD_OVERWRITE_PROMPT, wxFD_HIDE_READONLY, wxFD_FILE_MUST_EXIST,
wxFD_MULTIPLE, wxFD_CHANGE_DIR or 0.
If path is "", the current directory will be used. If filename is "", no
default filename will be supplied. The wildcard determines what files are
displayed in the file selector, and file extension supplies a type extension
for the required filename. Flags may be a combination of wxFD_OPEN, wxFD_SAVE,
wxFD_OVERWRITE_PROMPT, wxFD_HIDE_READONLY, wxFD_FILE_MUST_EXIST, wxFD_MULTIPLE,
wxFD_CHANGE_DIR or 0.
Both the X and Windows versions implement a wildcard filter. Typing a
filename containing wildcards (*, ?) in the filename text item, and
clicking on Ok, will result in only those files matching the pattern being
displayed. In the X version, supplying no default name will result in the
wildcard filter being inserted in the filename text item; the filter is
ignored if a default name is supplied.
Both the X and Windows versions implement a wildcard filter. Typing a filename
containing wildcards (*, ?) in the filename text item, and clicking on Ok, will
result in only those files matching the pattern being displayed. In the X
version, supplying no default name will result in the wildcard filter being
inserted in the filename text item; the filter is ignored if a default name is
supplied.
The wildcard may be a specification for multiple
types of file with a description for each, such as:
The wildcard may be a specification for multiple types of file with a
description for each, such as:
@code
@verbatim
"BMP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif"
@endcode
@endverbatim
@section overview_cmndlg_dir wxDirDialog overview
@section overview_cmndlg_dir wxDirDialog Overview
Classes: wxDirDialog
This dialog shows a directory selector dialog, allowing the user to select
a single directory.
This dialog shows a directory selector dialog, allowing the user to select a
single directory.
@section overview_cmndlg_textentry wxTextEntryDialog overview
@section overview_cmndlg_textentry wxTextEntryDialog Overview
Classes: wxTextEntryDialog
This is a dialog with a text entry field. The value that the user
entered is obtained using wxTextEntryDialog::GetValue.
This is a dialog with a text entry field. The value that the user entered is
obtained using wxTextEntryDialog::GetValue().
@section overview_cmndlg_password wxPasswordEntryDialog overview
@section overview_cmndlg_password wxPasswordEntryDialog Overview
Classes: wxPasswordEntryDialog
This is a dialog with a password entry field. The value that the user
entered is obtained using wxTextEntryDialog::GetValue.
This is a dialog with a password entry field. The value that the user entered
is obtained using wxTextEntryDialog::GetValue().
@section overview_cmndlg_msg wxMessageDialog overview
@section overview_cmndlg_msg wxMessageDialog Overview
Classes: wxMessageDialog
This dialog shows a message, plus buttons that can be chosen from OK, Cancel, Yes, and No.
Under Windows, an optional icon can be shown, such as an exclamation mark or question mark.
This dialog shows a message, plus buttons that can be chosen from OK, Cancel,
Yes, and No. Under Windows, an optional icon can be shown, such as an
exclamation mark or question mark.
The return value of wxMessageDialog::ShowModal indicates
which button the user pressed.
The return value of wxMessageDialog::ShowModal() indicates which button the
user pressed.
@section overview_cmndlg_singlechoice wxSingleChoiceDialog overview
@section overview_cmndlg_singlechoice wxSingleChoiceDialog Overview
Classes: wxSingleChoiceDialog
This dialog shows a list of choices, plus OK and (optionally) Cancel. The user can
select one of them. The selection can be obtained from the dialog as an index,
a string or client data.
This dialog shows a list of choices, plus OK and (optionally) Cancel. The user
can select one of them. The selection can be obtained from the dialog as an
index, a string or client data.
@section overview_cmndlg_multichoice wxMultiChoiceDialog overview
@section overview_cmndlg_multichoice wxMultiChoiceDialog Overview
Classes: wxMultiChoiceDialog
This dialog shows a list of choices, plus OK and (optionally) Cancel. The user can
select one or more of them.
This dialog shows a list of choices, plus OK and (optionally) Cancel. The user
can select one or more of them.
*/

View File

@@ -6,57 +6,57 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_config wxConfig classes overview
@page overview_config wxConfig Overview
Classes: wxConfigBase
This overview briefly describes what the config classes are and what they are
for. All the details about how to use them may be found in the description of
the wxConfigBase class and the documentation of the
file, registry and INI file based implementations mentions all the
features/limitations specific to each one of these versions.
the wxConfigBase class and the documentation of the file, registry and INI file
based implementations mentions all the features/limitations specific to each
one of these versions.
The config classes provide a way to store some application configuration
information. They were especially designed for this usage and, although may
probably be used for many other things as well, should be limited to it. It
means that this information should be:
@li Typed, i.e. strings or numbers for the moment.
You can not store binary data, for example.
@li Small. For instance, it is not recommended to use the Windows
registry for amounts of data more than a couple of kilobytes.
@li Not performance critical, neither from speed nor from a memory
consumption point of view.
@li Typed, i.e. strings or numbers for the moment. You can not store binary
data, for example.
@li Small. For instance, it is not recommended to use the Windows registry for
amounts of data more than a couple of kilobytes.
@li Not performance critical, neither from speed nor from a memory consumption
point of view.
On the other hand, the features provided make them very useful for storing all
kinds of small to medium volumes of hierarchically-organized, heterogeneous
data. In short, this is a place where you can conveniently stuff all your data
(numbers and strings) organizing it in a tree where you use the
filesystem-like paths to specify the location of a piece of data. In
particular, these classes were designed to be as easy to use as possible.
(numbers and strings) organizing it in a tree where you use the filesystem-like
paths to specify the location of a piece of data. In particular, these classes
were designed to be as easy to use as possible.
From another point of view, they provide an interface which hides the
differences between the Windows registry and the standard Unix text format
configuration files. Other (future) implementations of wxConfigBase might also
understand GTK resource files or their analogues on the KDE side.
In any case, each implementation of wxConfigBase does its best to
make the data look the same way everywhere. Due to limitations of the underlying
physical storage, it may not implement 100% of the base class functionality.
In any case, each implementation of wxConfigBase does its best to make the data
look the same way everywhere. Due to limitations of the underlying physical
storage, it may not implement 100% of the base class functionality.
There are groups of entries and the entries themselves. Each entry contains either
a string or a number (or a boolean value; support for other types of data such as
dates or timestamps is planned) and is identified by the full path to it: something
like @c /MyApp/UserPreferences/Colors/Foreground.
There are groups of entries and the entries themselves. Each entry contains
either a string or a number (or a boolean value; support for other types of
data such as dates or timestamps is planned) and is identified by the full path
to it: something like @c /MyApp/UserPreferences/Colors/Foreground.
The previous elements in the path are the group names, and each name may
contain an arbitrary number of entries and subgroups.
The path components are @b always separated with a slash,
even though some implementations use the backslash internally. Further
details (including how to read/write these entries) may be found in
the documentation for wxConfigBase.
The path components are @e always separated with a slash, even though some
implementations use the backslash internally. Further details (including how to
read/write these entries) may be found in the documentation for wxConfigBase.
*/

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_constraints Constraints overview
@page overview_constraints Window Layout Constraints
Classes: wxLayoutConstraints, wxIndividualLayoutConstraint.

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_container Container classes overview
@page overview_container Container Classes
Classes: wxList<T>, wxArray<T>, wxVector<T>
@@ -32,7 +32,8 @@
The list classes in wxWidgets are doubly-linked lists which may either own the
objects they contain (meaning that the list deletes the object when it is
removed from the list or the list itself is destroyed) or just store the
pointers depending on whether you called or not wxList::DeleteContents method.
pointers depending on whether or not you called wxList<T>::DeleteContents()
method.
Dynamic arrays resemble C arrays but with two important differences: they
provide run-time range checking in debug builds and they automatically expand
@@ -41,23 +42,24 @@
"int" or "bool" or the pointers to arbitrary objects, or "object arrays" which
own the object pointers to which they store.
For the same portability reasons, the container classes implementation in wxWidgets
does not use templates, but is rather based on C preprocessor i.e. is done with
the macros: @e WX_DECLARE_LIST and @e WX_DEFINE_LIST for the linked
lists and @e WX_DECLARE_ARRAY, @e WX_DECLARE_OBJARRAY and @e WX_DEFINE_OBJARRAY for
the dynamic arrays.
For the same portability reasons, the container classes implementation in
wxWidgets does not use templates, but is rather based on C preprocessor i.e. is
done with the macros: WX_DECLARE_LIST() and WX_DEFINE_LIST() for the linked
lists and WX_DECLARE_ARRAY(), WX_DECLARE_OBJARRAY() and WX_DEFINE_OBJARRAY()
for the dynamic arrays.
The "DECLARE" macro declares a new container class containing the elements of
given type and is needed for all three types of container classes: lists,
arrays and objarrays. The "DEFINE" classes must be inserted in your program
in a place where the @b full declaration of container element class is in scope
arrays and objarrays. The "DEFINE" classes must be inserted in your program in
a place where the @e full declaration of container element class is in scope
(i.e. not just forward declaration), otherwise destructors of the container
elements will not be called!
As array classes never delete the items they contain anyhow, there is
no WX_DEFINE_ARRAY macro for them.
As array classes never delete the items they contain anyhow, there is no
WX_DEFINE_ARRAY() macro for them.
Examples of usage of these macros may be found in wxList and wxArray documentation.
Examples of usage of these macros may be found in wxList<T> and wxArray<T>
documentation.
Finally, wxWidgets predefines several commonly used container classes. wxList
is defined for compatibility with previous versions as a list containing
@@ -69,3 +71,4 @@
uses its knowledge about wxString reference counting schema.
*/

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_dataobject wxDataObject overview
@page overview_dataobject wxDataObject Overview
Classes: wxDataObject, wxClipboard, wxDataFormat, wxDropSource, wxDropTarget

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_datetime Date and time classes overview
@page overview_datetime Date and Time
Classes: wxDateTime, wxDateSpan, wxTimeSpan, wxCalendarCtrl

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_dc Device context overview
@page overview_dc Device Contexts
Classes: wxBufferedDC, wxBufferedPaintDC, wxDC, wxPostScriptDC,
wxMetafileDC, wxMemoryDC, wxPrinterDC, wxScreenDC, wxClientDC,

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_debugging Debugging overview
@page overview_debugging Debugging
Classes, functions and macros: wxDebugContext, wxObject, wxLog,
@ref page_func_cat_log, @ref page_macro_cat_debugging

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_dialog wxDialog overview
@page overview_dialog wxDialog Overview
Classes: wxDialog, wxDialogLayoutAdapter

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_dnd Drag and drop overview
@page overview_dnd Drag and Drop Overview
Classes: wxDataObject, wxTextDataObject, wxDropSource, wxDropTarget,
wxTextDropTarget, wxFileDropTarget

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_docview Document/view overview
@page overview_docview Document/View Framework
Classes: wxDocument, wxView, wxDocTemplate, wxDocManager, wxDocParentFrame,
wxDocChildFrame, wxDocMDIParentFrame, wxDocMDIChildFrame,

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_envvars Environment variables
@page overview_envvars Environment Variables
This section describes all environment variables that affect execution of
wxWidgets programs.

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_eventhandling Event handling overview
@page overview_eventhandling Event Handling
Classes: wxEvtHandler, wxWindow, wxEvent

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_exceptions C++ exceptions overview
@page overview_exceptions C++ Exceptions
@li @ref overview_exceptions_introduction
@li @ref overview_exceptions_strategies

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_file File classes and functions overview
@page overview_file File Classes and Functions
Classes: wxFile, wxDir, wxTempFile, wxTextFile

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_fs wxFileSystem overview
@page overview_fs wxFileSystem Overview
The wxHTML library uses a @b virtual file systems mechanism
similar to the one used in Midnight Commander, Dos Navigator,

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_font wxFont overview
@page overview_font wxFont Overview
Class: wxFont, wxFontDialog

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_fontencoding Font encoding overview
@page overview_fontencoding Font Encodings
wxWidgets has support for multiple font encodings.

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_grid wxGrid classes overview
@page overview_grid wxGrid Overview
Classes: wxGrid

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_helloworld wxWidgets Hello World sample
@page overview_helloworld Hello World Example
Many people have requested a mini-sample to be published here
so that some quick judgment concerning syntax

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_html wxHTML overview
@page overview_html wxHTML Overview
The wxHTML library provides classes for parsing and displaying HTML.
It is not intended to be a high-end HTML browser. If you are looking for

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_i18n Internationalization

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_ipc Interprocess Communication Overview
@page overview_ipc Interprocess Communication
Classes: wxServer, wxConnection, wxClient

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_listctrl wxListCtrl Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_log wxLog Classes Overview

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_mbconv wxMBConv Classes Overview
@page overview_mbconv wxMBConv Overview
Classes: wxMBConv, wxMBConvLibc, wxMBConvUTF7, wxMBConvUTF8, wxCSConv,
wxMBConvUTF16, wxMBConvUTF32

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_nonenglish Writing Non-English Applications

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_printing Printing Overview
@page overview_printing Printing
Classes:
@li wxPrintout

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_python wxPython Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_refcount Reference Counting

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_referencenotes Notes on Using the Reference

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_resyntax Syntax of the Built-in Regular Expression Library
@page overview_resyntax Regular Expressions
A <em>regular expression</em> describes strings of characters. It's a pattern
that matches certain strings and doesn't match others.

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_richtextctrl wxRichTextCtrl Overview

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_roughguide Writing a wxWidgets Application: A Rough Guide
@page overview_roughguide A Quick Guide to Writing Applications
To set a wxWidgets application going, you will need to derive a wxApp class and
override wxApp::OnInit.

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_rtti Runtime Type Information (RTTI)

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_scrolling Scrolling Overview
@page overview_scrolling Scrolled Windows
Classes:
@li wxWindow

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_sizer Sizer Overview
@page overview_sizer Sizers
Classes: wxSizer, wxGridSizer, wxFlexGridSizer, wxBoxSizer, wxStaticBoxSizer

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_splitterwindow wxSplitterWindow Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_stream wxStreams Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_string wxString Overview

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_thread Multithreading Overview
@page overview_thread Multithreading
Classes: wxThread, wxMutex, wxCriticalSection, wxCondition

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_tips wxTipProvider Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_toolbar Toolbar Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_treectrl wxTreeCtrl Overview

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_unicode Unicode Support in wxWidgets

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_unixprinting Printing Under Unix (GTK+)

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_validator wxValidator Overview

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_windowdeletion Window Deletion Overview
@page overview_windowdeletion Window Deletion
Classes: wxCloseEvent, wxWindow

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_windowids Window IDs Overview
@page overview_windowids Window IDs
@li @ref overview_windowids_intro
@li @ref overview_windowids_type

View File

@@ -6,9 +6,9 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_windowsizing Window Sizing Overview
@page overview_windowsizing Window Sizes
It can sometimes be confusing to keep track of the various size-related
attributes of a wxWindow, how they relate to each other, and how they interact

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_windowstyles Window Styles

View File

@@ -6,7 +6,7 @@
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/*!
/**
@page overview_xrc XML Based Resource System (XRC)