fixing the topic overviews

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Francesco Montorsi
2008-02-21 21:58:30 +00:00
parent e0a4791892
commit 59c0db6a93
3 changed files with 111 additions and 206 deletions

View File

@@ -8,19 +8,23 @@
/*! /*!
@page bitmap_overview Bitmaps and icons overview @page overview_bitmap Bitmaps and icons overview
Classes: #wxBitmap, #wxBitmapHandler, #wxIcon, #wxCursor. Classes: #wxBitmap, #wxBitmapHandler, #wxIcon, #wxCursor.
The wxBitmap class encapsulates the concept of a platform-dependent bitmap, The wxBitmap class encapsulates the concept of a platform-dependent bitmap,
either monochrome or colour. Platform-specific methods for creating a either monochrome or colour. Platform-specific methods for creating a
wxBitmap object from an existing file are catered for, and wxBitmap object from an existing file are catered for, and
this is an occasion where conditional compilation will sometimes be this is an occasion where conditional compilation will sometimes be
required. required.
A bitmap created dynamically or loaded from a file can be selected A bitmap created dynamically or loaded from a file can be selected
into a memory device context (instance of #wxMemoryDC). This into a memory device context (instance of #wxMemoryDC). This
enables the bitmap to be copied to a window or memory device context enables the bitmap to be copied to a window or memory device context
using wxDC::Blit, or to be used as a drawing surface. using wxDC::Blit, or to be used as a drawing surface.
See #wxMemoryDC for an example of drawing onto a bitmap. See #wxMemoryDC for an example of drawing onto a bitmap.
All wxWidgets platforms support XPMs for small bitmaps and icons. 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 You may include the XPM inline as below, since it's C code, or you
can load it at run-time. can load it at run-time.
@@ -30,7 +34,9 @@
@endcode @endcode
Sometimes you wish to use a .ico resource on Windows, and XPMs on 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). 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 A macro, #wxICON, is available which creates an icon using an XPM
on the appropriate platform, or an icon resource on Windows. on the appropriate platform, or an icon resource on Windows.
@@ -72,104 +78,100 @@
platform (unlike the code above which doesn't deal with wxMac, wxX11, ...) and platform (unlike the code above which doesn't deal with wxMac, wxX11, ...) and
are more short and clear than versions with @c #ifdefs. Even better, are more short and clear than versions with @c #ifdefs. Even better,
use the same XPMs on all platforms. use the same XPMs on all platforms.
@ref supportedbitmapformats_overview
@ref bitmaphandlers_overview @li @ref overview_bitmap_supportedformats
@li @ref overview_bitmap_handlers
@section supportedbitmapformats Supported bitmap file formats <hr>
@section overview_bitmap_supportedformats Supported bitmap file formats
The following lists the formats handled on different platforms. Note The following lists the formats handled on different platforms. Note
that missing or partially-implemented formats are automatically supplemented that missing or partially-implemented formats are automatically supplemented
by the #wxImage to load the data, and then converting by the #wxImage to load the data, and then converting
it to wxBitmap form. Note that using wxImage is the preferred way to 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 load images in wxWidgets, with the exception of resources (XPM-files or
native Windows resources). Writing an image format handler for wxImage native Windows resources).
is also far easier than writing one for wxBitmap, because wxImage has
exactly one format on all platforms whereas wxBitmap can store pixel data Writing an image format handler for wxImage is also far easier than writing
very differently, depending on colour depths and platform. 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.
@b wxBitmap @b wxBitmap
Under Windows, wxBitmap may load the following formats: Under Windows, wxBitmap may load the following formats:
@li Windows bitmap resource (wxBITMAP_TYPE_BMP_RESOURCE)
Windows bitmap resource (wxBITMAP_TYPE_BMP_RESOURCE) @li Windows bitmap file (wxBITMAP_TYPE_BMP)
Windows bitmap file (wxBITMAP_TYPE_BMP) @li XPM data and file (wxBITMAP_TYPE_XPM)
XPM data and file (wxBITMAP_TYPE_XPM) @li All formats that are supported by the #wxImage class.
All formats that are supported by the #wxImage class.
Under wxGTK, wxBitmap may load the following formats: Under wxGTK, wxBitmap may load the following formats:
@li XPM data and file (wxBITMAP_TYPE_XPM)
XPM data and file (wxBITMAP_TYPE_XPM) @li All formats that are supported by the #wxImage class.
All formats that are supported by the #wxImage class.
Under wxMotif and wxX11, wxBitmap may load the following formats: Under wxMotif and wxX11, wxBitmap may load the following formats:
@li XBM data and file (wxBITMAP_TYPE_XBM)
XBM data and file (wxBITMAP_TYPE_XBM) @li XPM data and file (wxBITMAP_TYPE_XPM)
XPM data and file (wxBITMAP_TYPE_XPM) @li All formats that are supported by the #wxImage class.
All formats that are supported by the #wxImage class.
@b wxIcon @b wxIcon
Under Windows, wxIcon may load the following formats: Under Windows, wxIcon may load the following formats:
@li Windows icon resource (wxBITMAP_TYPE_ICO_RESOURCE)
Windows icon resource (wxBITMAP_TYPE_ICO_RESOURCE) @li Windows icon file (wxBITMAP_TYPE_ICO)
Windows icon file (wxBITMAP_TYPE_ICO) @li XPM data and file (wxBITMAP_TYPE_XPM)
XPM data and file (wxBITMAP_TYPE_XPM)
Under wxGTK, wxIcon may load the following formats: Under wxGTK, wxIcon may load the following formats:
@li XPM data and file (wxBITMAP_TYPE_XPM)
XPM data and file (wxBITMAP_TYPE_XPM) @li All formats that are supported by the #wxImage class.
All formats that are supported by the #wxImage class.
Under wxMotif and wxX11, wxIcon may load the following formats: Under wxMotif and wxX11, wxIcon may load the following formats:
@li XBM data and file (wxBITMAP_TYPE_XBM)
XBM data and file (wxBITMAP_TYPE_XBM) @li XPM data and file (wxBITMAP_TYPE_XPM)
XPM data and file (wxBITMAP_TYPE_XPM) @li All formats that are supported by the #wxImage class.
All formats that are supported by the #wxImage class.
@b wxCursor @b wxCursor
Under Windows, wxCursor may load the following formats: Under Windows, wxCursor may load the following formats:
@li Windows cursor resource (wxBITMAP_TYPE_CUR_RESOURCE)
Windows cursor resource (wxBITMAP_TYPE_CUR_RESOURCE) @li Windows cursor file (wxBITMAP_TYPE_CUR)
Windows cursor file (wxBITMAP_TYPE_CUR) @li Windows icon file (wxBITMAP_TYPE_ICO)
Windows icon file (wxBITMAP_TYPE_ICO) @li Windows bitmap file (wxBITMAP_TYPE_BMP)
Windows bitmap file (wxBITMAP_TYPE_BMP)
Under wxGTK, wxCursor may load the following formats (in additional Under wxGTK, wxCursor may load the following formats (in additional
to stock cursors): to stock cursors):
@li None (stock cursors only).
None (stock cursors only).
Under wxMotif and wxX11, wxCursor may load the following formats: Under wxMotif and wxX11, wxCursor may load the following formats:
@li XBM data and file (wxBITMAP_TYPE_XBM)
XBM data and file (wxBITMAP_TYPE_XBM)
@section bitmaphandlers Bitmap format handlers @section overview_bitmap_handlers Bitmap format handlers
To provide extensibility, the functionality for loading and saving bitmap formats 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, 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 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 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 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 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.
@b Note: bitmap handlers are not implemented on all platforms, and new ones rarely need @b 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. to be implemented since wxImage can be used for loading most formats, as noted earlier.

View File

@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: bookctrl // Name: bookctrl.h
// Purpose: topic overview // Purpose: topic overview
// Author: wxWidgets team // Author: wxWidgets team
// RCS-ID: $Id$ // RCS-ID: $Id$
@@ -8,166 +8,51 @@
/*! /*!
@page bookctrl_overview wxBookCtrl overview @page overview_bookctrl wxBookCtrl overview
Classes: #wxNotebook, #wxListbook, #wxChoicebook, Classes: #wxNotebook, #wxListbook, #wxChoicebook, #wxTreebook, #wxToolbook
#wxTreebook, #wxToolbook
#Introduction
@ref bestbookctrl_overview
@section wxbookctrlintro Introduction @section overview_bookctrl_intro Introduction
A book control is a convenient way of displaying multiple pages of information, 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: displayed one page at a time. wxWidgets has five variants of this control:
@li wxNotebook: uses a row of tabs
#wxNotebook: uses a row of tabs @li wxListbook: controlled by a #wxListCtrl
#wxListbook: controlled by a #wxListCtrl @li wxChoicebook: controlled by a #wxChoice
#wxChoicebook: controlled by a #wxChoice @li wxTreebook: controlled by a #wxTreeCtrl
#wxTreebook: controlled by a #wxTreeCtrl @li wxToolbook: controlled by a #wxToolBar
#wxToolbook: controlled by a #wxToolBar
See @ref samplenotebook_overview for an example of wxBookCtrl usage. See @ref samplenotebook_overview for an example of wxBookCtrl usage.
@section wxbestbookctrl Best book
@section overview_bookctrl_bestbookctrl Best book
wxBookCtrl is mapped to the class best suited for a given platform. wxBookCtrl is mapped to the class best suited for a given platform.
Currently it provides #wxChoicebook for smartphones equipped with Currently it provides #wxChoicebook for smartphones equipped with
WinCE, and #wxNotebook for all other platforms. The mapping consists of: 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}
@row2col{wxEVT_COMMAND_BOOKCTRL_PAGE_CHANGING,
wxBookCtrl 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)}
@row2col{EVT_BOOKCTRL_PAGE_CHANGING(id\, fn),
EVT_CHOICEBOOK_PAGE_CHANGING(id, fn) or EVT_NOTEBOOK_PAGE_CHANGING(id, fn)}
wxChoicebook or wxNotebook @endTable
wxBookCtrlEvent
wxChoicebookEvent or wxNotebookEvent
wxEVT_COMMAND_BOOKCTRL_PAGE_CHANGED
wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED or wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED
wxEVT_COMMAND_BOOKCTRL_PAGE_CHANGING
wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING or wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING
EVT_BOOKCTRL_PAGE_CHANGED(id, fn)
EVT_CHOICEBOOK_PAGE_CHANGED(id, fn) or EVT_NOTEBOOK_PAGE_CHANGED(id, fn)
EVT_BOOKCTRL_PAGE_CHANGING(id, fn)
EVT_CHOICEBOOK_PAGE_CHANGING(id, fn) or EVT_NOTEBOOK_PAGE_CHANGING(id, fn)
For orientation of the book controller, use following flags in style: For orientation of the book controller, use following flags in style:
@li @b wxBK_TOP: controller above pages
@li @b wxBK_BOTTOM: controller below pages
@li @b wxBK_LEFT: controller on the left
@li @b wxBK_RIGHT: controller on the right
@li @b wxBK_DEFAULT: native controller placement
*/
@b wxBK_TOP
controller above pages
@b wxBK_BOTTOM
controller below pages
@b wxBK_LEFT
controller on the left
@b wxBK_RIGHT
controller on the right
@b wxBK_DEFAULT
native controller placement
*/

View File

@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// Name: bufferclasses // Name: bufferclasses.h
// Purpose: topic overview // Purpose: topic overview
// Author: wxWidgets team // Author: wxWidgets team
// RCS-ID: $Id$ // RCS-ID: $Id$
@@ -8,22 +8,40 @@
/*! /*!
@page bufferclasses_overview Buffer classes overview @page overview_bufferclasses Buffer classes overview
wxWidgets uses two classes of classes for dealing with buffers in memory. 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.
Secondly, wxWidgets uses, although only rarely currently, wxMemoryBuffer for dealing with raw buffers in memory. The first is one for dealing with character buffers, namely wxCharBuffer
@ref cbov_overview 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.
@li @ref overview_bufferclasses_wxcb
@section wxcbov wxXCharBuffer Overview <hr>
@section overview_bufferclasses_wxcb wxXCharBuffer Overview
@b General Usage @b 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. As mentioned, wxCharBuffer and its wide character variant wxWCharBuffer deal
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. 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.
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.
@b Destruction @b 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. 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.
*/