Merge in from trunk r67662 to r64801

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/SOC2011_WEBVIEW@68402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Steve Lamerton
2011-07-25 16:54:53 +00:00
727 changed files with 42813 additions and 46104 deletions

View File

@@ -59,43 +59,6 @@ changes:
their overridden OnExecute() or override a more convenient OnExec() instead.
Use of STL containers by default
--------------------------------
wxWidgets uses STL containers for the implementation of wxVector, wxList,
wxDList and wxStack by default since 2.9.2 release. While the STL-based
versions are mostly compatible with the old ones, there are some differences:
- wxList::compatibility_iterator must be used instead of wxList::Node* when
iterating over the list contents. The compatibility_iterator class has the
same semantics as a Node pointer but it is an object and not a pointer, so
you need to write
for ( wxWindowList::compatibility_iterator it = list.GetFirst();
it;
it = it->GetNext() )
...
instead of the old
for ( wxWindowList::Node *n = list.GetFirst(); n; n = n->GetNext() )
...
- wxSortedArrayString and wxArrayString are separate classes now and the
former doesn't derive from the latter. If you need to convert a sorted array
to a normal one, you must copy all the elements. Alternatively, you may
avoid the use of wxSortedArrayString by using a normal array and calling its
Sort() method when needed.
- WX_DEFINE_ARRAY_INT(bool) cannot be used because of the differences in
std::vector<bool> specialization compared with the generic std::vector<>
class. Please either use std::vector<bool> directly or use an integer array
instead.
Finally notice that you may set wxUSE_STD_CONTAINERS to 0 when compiling
wxWidgets to use the non-STL containers.
wxODBC and contrib libraries removal
------------------------------------
@@ -471,13 +434,40 @@ Major new features in this release
was added.
2.9.2:
2.9.3:
------
All:
- Fix parsing of negated long options in wxCmdLineParser (roed_bis).
All (GUI):
- Added documented, public wxNavigationEnabled<> class.
- Support float, double and file name values in wxGenericValidator (troelsk).
- Fix keyboard navigation in wxGrid with hidden columns (ivan_14_32).
- Add wxDataViewEvent::IsEditCancelled() (Allonii).
- Allow marking wxTreeBook nodes to expand initially in XRC (RedTide).
- Added customizable wxDocManager::OnMRUFileNotExist() virtual method.
OSX:
- Implement wxRegion::Equal() (Dr.Acula).
GTK:
- Generate events for two auxiliary mouse buttons in wxGTK (Marcin Wojdyr).
MSW:
- Added wxGCDC(wxEnhMetaFileDC) ctor (Marcin Wojdyr).
2.9.2: (released 2011-07-05)
------
All:
- Use standard implementations of container classes by default, you need to
explicitly set wxUSE_STD_CONTAINERS to 0 to use wxWidgets implementations.
- Added cwd and env arguments to wxExecute() (Emilien Kia).
- Added "rest" argument to wxString::Before{First,Last}().
- Added wxThread::OnKill() and OnDelete() callbacks.
@@ -492,6 +482,7 @@ All:
- Added wxThread::Wait() and Delete() "wait mode" parameter (Catalin Raceanu).
- Allow showing milliseconds in wxLog time stamps (tan).
- Added support for processing instructions in wxXmlDocument (Nick Matthews).
- Added wxThreadEvent for communicating between threads to wxBase.
Unix:
@@ -504,6 +495,7 @@ All (GUI):
- Added wxCommandLinkButton (Rickard Westerlund, GSoC 2010 project).
- Added wxUIActionSimulator (Steven Lamerton, GSoC 2010 project).
- Added support for dynamic auto-completion in wxTextEntry.
- Added images support to wxToggleButton (Garrick Meeker).
- wxAUI: support auto-orientable toolbars (wsu).
- wxAUI: add support for icons in pane title bars (triton).
- Added wxPanel::SetBackgroundBitmap().
@@ -512,6 +504,7 @@ All (GUI):
- wxHTML: render in RTL order inside RTL window (Richard Bullington-McGuire).
- wxRibbon: added EVT_RIBBONGALLERY_CLICKED event (John Roberts).
- wxRibbon: allow hiding the panels and showing tabs only (snowleopard).
- Add support for child documents to docview framework.
- Add support for CP-866 encoding to wxEncodingConverter (madnut).
- Consistency fixes for keyboard events across all major ports.
- Added EVT_RIBBONBAR_TAB_LEFT_DCLICK event (snowleopard).
@@ -522,10 +515,13 @@ All (GUI):
- Added wxDocManager::FindTemplate() (troelsk).
- Return bool, not void, from wxImage::ConvertAlphaToMask() (troelsk).
- Fixed resizing columns in wxGrid when they were reordered.
- Fixed keyboard navigation when wxGrid columns are reordered.
- Added wxImage::Rotate180() (Jeff Tupper).
- Added support for saving TGA files.
- Added wxArtProvider returning higher quality icons from Tango project.
- wxPropertyGrid: Added "HasAlpha" attribute for wxColourProperty.
- wxPropertyGrid: Disabling a property didn't work properly if a child item
was selected (Sébastien Gallou).
- Added support for saving PNG files with palette (troelsk).
- Added support for saving as GIF and animated GIF (troelsk).
- Fix wxWrapSizer minimal size calculation (Catalin Raceanu).
@@ -541,6 +537,7 @@ All (GUI):
- Allow customizing AUI tab colours in wxAuiTabArt (snowleopard).
- Added wxAffineMatrix2D class (Catalin Raceanu).
- Allow showing preview frame non modally (John Roberts).
- Improve appearance of the generic wxHyperlinkCtrl (David Connet).
GTK:
@@ -549,6 +546,7 @@ GTK:
- wxTLW generates wxEVT_MAXIMIZE.
- Fix copying clipboard data to primary selection (David Hart).
- Implement wxGraphicsContext::GetSize() (Marcin Wojdyr).
- Implement wxCalendarCtrl::SetDateRange() for the native control.
MSW:

View File

@@ -13,4 +13,4 @@
#---------------------------------------------------------------------------
GENERATE_DOCSET = YES
GENERATE_HTML = YES

View File

@@ -12,7 +12,7 @@
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = wxWidgets
PROJECT_NUMBER = 2.9.2
PROJECT_NUMBER = 2.9.3
OUTPUT_DIRECTORY = out
CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English
@@ -324,8 +324,10 @@ HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
HTML_DYNAMIC_SECTIONS = YES
GENERATE_DOCSET = NO # Only change in format output configs
DOCSET_FEEDNAME = "wxWidgets"
DOCSET_BUNDLE_ID = org.wxwidgets.doxygen
DOCSET_FEEDNAME = "wxWidgets 2.9"
DOCSET_BUNDLE_ID = org.wxwidgets.doxygen.wx29
DOCSET_PUBLISHER_ID = org.wxwidgets.doxygen
DOCSET_PUBLISHER_NAME = wxWidgets Team
GENERATE_HTMLHELP = NO # Only change in format output configs
CHM_FILE = ..\wx.chm # NOTE: Windows style separator needed
HHC_LOCATION = hhc.exe # Don't modify, see Doxyfile_chm for info

Binary file not shown.

After

Width:  |  Height:  |  Size: 880 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 883 B

View File

@@ -49,7 +49,7 @@
\end{center}
\end{figure}
\vspace*{2cm}
{\large Version 2.9.2 }\\
{\large Version 2.9.3 }\\
\vspace*{1cm}
{Generated on \today}\\
\end{center}

View File

@@ -12,7 +12,7 @@
@mainpage Reference manual
@author Julian Smart, Robert Roebling, Vadim Zeitlin, Robin Dunn,
Stefan Csomor, Francesco Montorsi, Bryan Petty, et al
@date July, 2010
@date July, 2011
@image html main_wxlogo.png

View File

@@ -10,21 +10,44 @@
@page overview_container Container Classes
Classes: wxList<T>, wxArray<T>, wxVector<T>
Classes: wxList<T>, wxArray<T>, wxVector<T>, wxStack<T>, wxHashMap, wxHashSet
wxWidgets uses itself several container classes including doubly-linked lists
and dynamic arrays (i.e. arrays which expand automatically when they become
full). For both historical and portability reasons wxWidgets does not require
the use of STL (which provides the standard implementation of many container
classes in C++) but it can be compiled in STL mode. Additionally, wxWidgets
provides the new wxVector<T> class template which can be used like the std::vector
class and is actually just a typedef to std::vector if wxWidgets is compiled
in STL mode.
@section overview_container_intro Overview
wxWidgets non-template container classes don't pretend to be as powerful or full as STL
ones, but they are quite useful and may be compiled with absolutely any C++
compiler. They're used internally by wxWidgets, but may, of course, be used in
your programs as well if you wish.
For historical reasons, wxWidgets uses custom container classes internally.
This was unfortunately unavoidable during a long time when the standard library
wasn't widely available and can't be easily changed even now that it is for
compatibility reasons. If you are building your own version of the library and
don't care about compatibility nor slight (less than 5%) size penalty imposed
by the use of STL classes, you may choose to use the "STL" build of wxWidgets
in which these custom classes are replaced with their standard counterparts and
only read the section @ref overview_container_std explaining how to do it.
Otherwise you will need to know about the custom wxWidgets container classes
such as wxList<T> and wxArray<T> if only to use wxWidgets functions that work
with them, e.g. wxWindow::GetChildren(), and you should find the information
about using these classes below useful.
Notice that we recommend that you use standard classes directly in your own
code instead of the container classes provided by wxWidgets in any case as the
standard classes are easier to use and may also be safer because of extra
run-time checks they may perform as well as more efficient.
Finally notice that recent versions of wxWidgets also provide standard-like
classes such as wxVector<T>, wxStack<T> or wxDList which can be used exactly
like the std::vector<T>, std::stack<T> and std::list<T*>, respectively, and
actually are just typedefs for the corresponding types if wxWidgets is compiled
in STL mode. These classes could be useful if you wish to avoid the use of the
standard library in your code for some reason.
To summarize, you should use the standard container classes such as
std::vector<T> and std::list<T> if possible and wxVector<T> or wxDList<T> if
it isn't and only use legacy wxWidgets containers such as wxArray<T> and
wxList<T> when you must, i.e. when you use a wxWidgets function taking or
returning a container of such type.
@section overview_container_legacy Legacy Classes
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
@@ -40,10 +63,10 @@ two sorts: the "plain" arrays which store either built-in types such as "char",
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: 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.
wxWidgets don't use templates, but are rather based on C preprocessor i.e. are
implemented using 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,
@@ -67,5 +90,41 @@ wxArrayString. The first three store elements of corresponding types, but
wxArrayString is somewhat special: it is an optimized version of wxArray which
uses its knowledge about wxString reference counting schema.
@section overview_container_std STL Build
To build wxWidgets with the standard containers you need to set
wxUSE_STD_CONTAINERS option to 1 in @c wx/msw/setup.h for wxMSW builds or
specify @c --enable-std_containers option to configure (which is also
implicitly enabled by @c --enable-stl option) in Unix builds.
The standard container build is mostly, but not quite, compatible with the
default one. Here are the most important differences:
- wxList::compatibility_iterator must be used instead of wxList::Node* when
iterating over the list contents. The compatibility_iterator class has the
same semantics as a Node pointer but it is an object and not a pointer, so
you need to write
@code
for ( wxWindowList::compatibility_iterator it = list.GetFirst();
it;
it = it->GetNext() )
...
@endcode
instead of the old
@code
for ( wxWindowList::Node *n = list.GetFirst(); n; n = n->GetNext() )
...
@endcode
- wxSortedArrayString and wxArrayString are separate classes now and the
former doesn't derive from the latter. If you need to convert a sorted array
to a normal one, you must copy all the elements. Alternatively, you may
avoid the use of wxSortedArrayString by using a normal array and calling its
Sort() method when needed.
- WX_DEFINE_ARRAY_INT(bool) cannot be used because of the differences in
std::vector<bool> specialization compared with the generic std::vector<>
class. Please either use std::vector<bool> directly or use an integer array
instead.
*/

View File

@@ -17,6 +17,8 @@
@li @ref overview_richtextctrl_styles
@li @ref overview_richtextctrl_dialogs
@li @ref overview_richtextctrl_impl
@li @ref overview_richtextctrl_nested_object
@li @ref overview_richtextctrl_context_menus
@li @ref overview_richtextctrl_roadmap
@@ -58,7 +60,7 @@ editing, wxStyledTextCtrl is a better choice.
Despite its name, it cannot currently read or write RTF (rich text format)
files. Instead, it uses its own XML format, and can also read and write plain
text. In future we expect to provide RTF file capabilities. Custom file formats
text. In future we expect to provide RTF or OpenDocument file capabilities. Custom file formats
can be supported by creating additional file handlers and registering them with
the control.
@@ -250,7 +252,8 @@ between controls.
@section overview_richtextctrl_styles Text Styles
Styling attributes are represented by wxTextAttr.
Styling attributes are represented by wxTextAttr, or for more control over
attributes such as margins and size, the derived class wxRichTextAttr.
When setting a style, the flags of the attribute object determine which
attributes are applied. When querying a style, the passed flags are ignored
@@ -351,7 +354,8 @@ editing functionality.
wxRichTextFormattingDialog can be used for character or paragraph formatting,
or a combination of both. It's a wxPropertySheetDialog with the following
available tabs: Font, Indents @& Spacing, Tabs, Bullets, Style, and List Style.
available tabs: Font, Indents @& Spacing, Tabs, Bullets, Style, Borders,
Margins, Background, Size, and List Style.
You can select which pages will be shown by supplying flags to the dialog
constructor. In a character formatting dialog, typically only the Font page
will be shown. In a paragraph formatting dialog, you'll show the Indents @&
@@ -380,7 +384,7 @@ has one such buffer.
The content is represented by a hierarchy of objects, all derived from
wxRichTextObject. An object might be an image, a fragment of text, a paragraph,
or a whole buffer. Objects store a wxTextAttr containing style information; a
or a further composite object. Objects store a wxRichTextAttr containing style information; a
paragraph object can contain both paragraph and character information, but
content objects such as text can only store character information. The final
style displayed in the control or in a printout is a combination of base style,
@@ -412,6 +416,54 @@ objects with the same style where just one would do. So a Defragment function
is called when updating the control's display, to ensure that the minimum
number of objects is used.
@section overview_richtextctrl_nested_object Nested Objects
wxRichTextCtrl supports nested objects such as text boxes and tables. To achieve
compatibility with the existing API, there is the concept of @e object @e focus.
When the user clicks on a nested text box, the object focus is set to that
container object so all keyboard input and API functions apply to that
container. The application can change the focus using wxRichTextCtrl::SetObjectFocus.
Call this function with a @null parameter to set the focus back to the top-level
object.
An event will be sent to the control when the focus changes.
When the user clicks on the control, wxRichTextCtrl determines which container to set
as the current object focus by calling the found container's overrided wxRichTextObject::AcceptsFocus
function. For example, although a table is a container, it must not itself be
the object focus because there is no text editing at the table level. Instead, a cell
within the table must accept the focus.
Since with nested objects it is not possible to represent a section with merely
a start position and an end position, the class wxRichTextSelection is provided
which stores multiple ranges (for non-contiguous selections such as table cells) and
a pointer to the container object in question. You can pass wxRichTextSelection
to wxRichTextCtrl::SetSelection or get an instance of it from wxRichTextCtrl::GetSelection.
When selecting multiple objects, such as cell tables, the wxRichTextCtrl dragging handler code calls the
function wxRichTextObject::HandlesChildSelections to determine whether the children
can be individual selections. Currently only table cells can be multiply-selected
in this way.
@section overview_richtextctrl_context_menus Context menus and property dialogs
There are three ways you can make use of context menus: you can let wxRichTextCtrl handle everything and provide a basic menu;
you can set your own context menu using wxRichTextCtrl::SetContextMenu but let wxRichTextCtrl handle showing it and adding property items;
or you can override the default context menu behaviour by adding a context menu event handler
to your class in the normal way.
If you right-click over a text box in cell in a table, you may want to edit the properties of
one of these objects - but which properties will you be editing?
Well, the default behaviour allows up to three property-editing menu items simultaneously - for the object clicked on,
the container of that object, and the container's parent (depending on whether any of these
objects return @true from their wxRichTextObject::CanEditProperties functions).
If you supply a context menu, add a property command item using the wxID_RICHTEXT_PROPERTIES1 identifier,
so that wxRichTextCtrl can find the position to add command items. The object should
tell the control what label to use by returning a string from wxRichTextObject::GetPropertiesMenuLabel.
Since there may be several property-editing commands showing, it is recommended that you don't
include the word Properties - just the name of the object, such as Text Box or Table.
@section overview_richtextctrl_roadmap Development Roadmap
@@ -433,17 +485,17 @@ This is an incomplete list of bugs.
This is a list of some of the features that have yet to be implemented. Help
with them will be appreciated.
@li RTF input and output
@li Conversion from HTML
@li support for composite objects in some functions where it's not yet implemented, for example ApplyStyleSheet
@li Table API enhancements and dialogs; improved table layout especially row spans and fitting
@li Conversion from HTML, and a rewrite of the HTML output handler that includes CSS,
tables, text boxes, and floating images, in addition to a simplified-HTML mode for wxHTML compatibility
@li Open Office input and output
@li Floating images, with content wrapping around them
@li RTF input and output
@li A ruler control
@li Standard editing toolbars
@li Tables
@li Bitmap bullets
@li Borders
@li Text frames
@li Justified text, in print/preview at least
@li scaling: either everything scaled, or rendering using a custom reference point size and an optional dimension scale
There are also things that could be done to take advantage of the underlying
text capabilities of the platform; higher-level text formatting APIs are

View File

@@ -586,6 +586,17 @@ Example:
@endcode
@subsubsection xrc_wxtogglebuttton wxBitmapToggleButton
@beginTable
@hdr3col{property, type, description}
@row3col{bitmap, @ref overview_xrcformat_type_bitmap,
Label to display on the button (required).}
@row3col{checked, @ref overview_xrcformat_type_bool,
Should the button be checked/pressed initially (default: 0)?}
@endTable
@subsubsection xrc_wxbutton wxButton
@beginTable
@@ -1028,6 +1039,8 @@ following properties:
The title of the column. }
@row3col{width, integer,
The column width. }
@row3col{image, integer,
The zero-based index of the image associated with the item in the 'small' image list. }
@endTable
The columns are appended to the control in order of their appearance and may be
@@ -1717,6 +1730,9 @@ pseudo-class (similarly to @ref xrc_wxnotebook "wxNotebook" and its
into the image list.}
@row3col{selected, @ref overview_xrcformat_type_bool,
Is the page selected initially (only one page can be selected; default: 0)?}
@row3col{expanded, @ref overview_xrcformat_type_bool,
If set to 1, the page is initially expanded. By default all pages are
initially collapsed.}
@endTable
Each @c treebookpage has exactly one non-toplevel window as its child.

View File

@@ -106,6 +106,40 @@ if [[ "$1" = "qch" ]]; then
qhelpgenerator out/html/index.qhp -o out/wx.qch
fi
if [[ "$1" = "docset" ]]; then
DOCSETNAME="org.wxwidgets.doxygen.wx29.docset"
ATOM="org.wxwidgets.doxygen.docset.wx29.atom"
ATOMDIR="http://docs.wxwidgets.org/docsets"
XAR="org.wxwidgets.doxygen.docset.wx29.xar"
XARDIR="http://docs.wxwidgets.org/docsets"
XCODE_INSTALL=`sh xcode-select -print-path`
cp wxdocsettabs.css out/html/wxtabs.css
cp wxdocsetwidgets.css out/html/wxwidgets.css
cp img_downArrow.png out/html
cp background_navigation.png out/html
cd out/html
DESTINATIONDIR=`pwd`
rm -rf $DESTINATIONDIR/$DOCSETNAME
rm -f $DESTINATIONDIR/$XAR
make
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info CFBundleVersion 1.3
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info CFBundleShortVersionString 1.3
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info CFBundleName "wxWidgets 2.9 Library"
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetFeedURL $ATOMDIR/$ATOM
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetFallbackURL http://docs.wxwidgets.org
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info DocSetDescription "API reference and conceptual documentation for wxWidgets 2.9"
defaults write $DESTINATIONDIR/$DOCSETNAME/Contents/Info NSHumanReadableCopyright "Copyright 1992-2011 wxWidgets team, Portions 1996 Artificial Intelligence Applications Institute"
$XCODE_INSTALL/usr/bin/docsetutil package -atom $DESTINATIONDIR/$ATOM -download-url $XARDIR/$XAR -output $DESTINATIONDIR/$XAR $DESTINATIONDIR/$DOCSETNAME
cd ../..
fi
# Doxygen has the annoying habit to put the full path of the
# affected files in the log file; remove it to make the log
# more readable

View File

@@ -0,0 +1,131 @@
/*
tabs styles, based on http://www.alistapart.com/articles/slidingdoors
https://bitbucket.org/rc1/doxygen-style/wiki/Home
*/
div.navigation {
display:block;
float:left;
clear:both;
width:100%;
padding-top:10px;
padding-bottom:30px;
border-bottom:1px dotted #E0E0E0;
height: 60px;
background:url(background_navigation.png);
}
div.contents {
float:left;
clear:both;
}
address {
display:none;
}
DIV.tabs
{
float : left;
width : 100%;
margin-bottom : 4px;
}
DIV.tabs UL
{
margin : 0px;
padding-left : 0px;
list-style : none;
}
DIV.tabs LI, DIV.tabs FORM
{
display : inline;
margin : 0px;
padding : 0px;
background-color:#FFFFFF;
}
DIV.tabs FORM
{
float : right;
}
DIV.tabs A
{
float : left;
font-size : 80%;
font-weight : bold;
text-decoration : none;
}
DIV.tabs A:hover
{
background-position: 100% -150px;
}
DIV.tabs A:link, DIV.tabs A:visited,
DIV.tabs A:active, DIV.tabs A:hover
{
color: #1A419D;
}
DIV.tabs SPAN
{
float : left;
display : block;
padding : 5px 9px;
white-space : nowrap;
border-top:1px dotted #E0E0E0;
border-bottom:1px dotted #E0E0E0;
}
DIV.tabs #MSearchBox
{
float : right;
display : inline;
font-size : 1em;
}
DIV.tabs TD
{
font-size : 80%;
font-weight : bold;
text-decoration : none;
}
/* Commented Backslash Hack hides rule from IE5-Mac \*/
DIV.tabs SPAN {float : none;}
/* End IE5-Mac hack */
DIV.tabs A:hover SPAN
{
background-position: 0% -150px;
}
DIV.tabs LI.current A
{
background-position: 100% -150px;
border-width : 0px;
background-color: #F0F0F0;
background: #F0F0F0 url(img_downArrow.png) center bottom no-repeat;
}
DIV.tabs LI.current SPAN
{
background-position: 0% -150px;
padding-bottom : 6px;
}
DIV.navpath
{
background : none;
border : none;
border-bottom : 1px solid #84B0C7;
text-align : center;
margin : 2px;
padding : 2px;
}

View File

@@ -0,0 +1,564 @@
/* The standard CSS for doxygen
modified by RossCairns.com
https://bitbucket.org/rc1/doxygen-style/wiki/Home
*/
body, table, div, p, dl {
font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
font-size: 12px;
}
p, div, dl {
color:#3E3E3E;
}
div.contents p {
font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
}
/* @group Heading Levels */
h1 {
margin-bottom: 10px;
font-size: 30px;
padding: 0px 0px 20px 0px ;
border-bottom:1px dotted #E0E0E0;
}
h2 {
padding-top: 30px;
font-size: 17px;
color:#42657B;
font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
}
h3 {
font-size: 17px;
font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif;
}
dt {
font-weight: bold;
}
div.multicol {
-moz-column-gap: 1em;
-webkit-column-gap: 1em;
-moz-column-count: 3;
-webkit-column-count: 3;
}
p.startli, p.startdd, p.starttd {
margin-top: 2px;
}
p.endli {
margin-bottom: 0px;
}
p.enddd {
margin-bottom: 4px;
}
p.endtd {
margin-bottom: 2px;
}
/* @end */
caption {
font-weight: bold;
}
span.legend {
font-size: 70%;
text-align: center;
}
h3.version {
font-size: 90%;
padding-bottom:10px;
border-bottom:1px dotted #E0E0E0;
}
div.qindex, div.navtab{
background-color: #e8eef2;
border: 1px solid #84b0c7;
text-align: center;
margin: 2px;
padding: 2px;
}
div.qindex, div.navpath {
width: 100%;
line-height: 140%;
}
div.navtab {
margin-right: 15px;
}
/* @group Link Styling */
a {
color: #153788;
font-weight: normal;
text-decoration: none;
}
.contents a:visited {
color: #1b77c5;
}
a:hover {
text-decoration: underline;
}
a.qindex {
font-weight: bold;
}
a.qindexHL {
font-weight: bold;
background-color: #6666cc;
color: #ffffff;
border: 1px double #9295C2;
}
.contents a.qindexHL:visited {
color: #ffffff;
}
a.el {
font-weight: bold;
}
a.elRef {
}
a.code {
color: #3030f0;
}
a.codeRef {
color: #3030f0;
}
/* @end */
dl.el {
margin-left: -1cm;
}
.fragment {
font-family: monospace, fixed;
font-size: 105%;
}
pre.fragment {
border: 1px solid #CCCCCC;
background-color: #f5f5f5;
padding: 4px 6px;
margin: 4px 8px 4px 2px;
overflow: auto;
word-wrap: break-word;
font-size: 9pt;
line-height: 125%;
}
div.ah {
background-color: black;
font-weight: bold;
color: #ffffff;
margin-bottom: 3px;
margin-top: 3px
}
div.groupHeader {
margin-left: 16px;
margin-top: 12px;
margin-bottom: 6px;
font-weight: bold;
}
div.groupText {
margin-left: 16px;
font-style: italic;
}
body {
background: white;
color: black;
margin-right: 20px;
margin-left: 20px;
}
td.indexkey {
background-color: #F1F5F9;
font-weight: bold;
border: 1px solid #CCCCCC;
margin: 2px 0px 2px 0;
padding: 2px 10px;
}
td.indexvalue {
background-color: #F1F5F9;
border: 1px solid #CCCCCC;
padding: 2px 10px;
margin: 2px 0px;
}
tr.memlist {
background-color: #f0f0f0;
}
p.formulaDsp {
text-align: center;
}
img.formulaDsp {
}
img.formulaInl {
vertical-align: middle;
}
div.center {
text-align: center;
margin-top: 0px;
margin-bottom: 0px;
padding: 0px;
}
div.center img {
border: 0px;
}
img.footer {
border: 0px;
vertical-align: middle;
}
/* @group Code Colorization */
span.keyword {
color: #008000
}
span.keywordtype {
color: #604020
}
span.keywordflow {
color: #e08000
}
span.comment {
color: #800000
}
span.preprocessor {
color: #806020
}
span.stringliteral {
color: #002080
}
span.charliteral {
color: #008080
}
span.vhdldigit {
color: #ff00ff
}
span.vhdlchar {
color: #000000
}
span.vhdlkeyword {
color: #700070
}
span.vhdllogic {
color: #ff0000
}
/* @end */
.search {
color: #003399;
font-weight: bold;
}
form.search {
margin-bottom: 0px;
margin-top: 0px;
}
input.search {
font-size: 75%;
color: #000080;
font-weight: normal;
background-color: #F1F5F9;
}
td.tiny {
font-size: 75%;
}
.dirtab {
padding: 4px;
border-collapse: collapse;
border: 1px solid #84b0c7;
}
th.dirtab {
background: #F1F5F9;
font-weight: bold;
}
hr {
height: 0;
border: none;
border-top: 1px solid #666;
}
/* @group Member Descriptions */
.mdescLeft, .mdescRight,
.memItemLeft, .memItemRight,
.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
background-color: #FAFAFA;
border: none;
margin: 4px;
padding: 1px 0 0 8px;
}
.mdescLeft, .mdescRight {
padding: 0px 8px 4px 8px;
color: #555;
}
.memItemLeft, .memItemRight, .memTemplParams {
border-top: 1px solid #ccc;
background-color: #F9F9F9;
}
.memItemLeft, .memTemplItemLeft {
white-space: nowrap;
}
.memTemplParams {
color: #606060;
white-space: nowrap;
}
/* @end */
/* @group Member Details */
/* Styles for detailed member documentation */
.memtemplate {
font-size: 80%;
color: #606060;
font-weight: normal;
margin-left: 3px;
}
.memnav {
background-color: #F1F5F9;
border: 1px solid #84b0c7;
text-align: center;
margin: 2px;
margin-right: 15px;
padding: 2px;
}
.memitem {
padding: 0;
margin-bottom: 30px;
}
.memname {
white-space: nowrap;
font-weight: bold;
color:#42657B;
padding:3px 5px;
}
.memproto, .memdoc {
border: 1px dotted #E0E0E0;
}
.memproto {
padding: 0;
background-color: #F9F9F9;
font-weight: bold;
-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
}
.memdoc {
padding: 2px 20px 20px;
background-color: #FFFFFF;
border-top-width: 0;
-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
-moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
}
.paramkey {
text-align: right;
}
.paramtype {
white-space: nowrap;
}
.paramname {
color: #885656;
white-space: nowrap;
}
.paramname em {
font-style: normal;
}
/* @end */
/* @group Directory (tree) */
/* for the tree view */
.ftvtree {
font-family: sans-serif;
margin: 0.5em;
}
/* these are for tree view when used as main index */
.directory {
font-size: 9pt;
font-weight: bold;
}
.directory h3 {
margin: 0px;
margin-top: 1em;
font-size: 11pt;
}
/*
The following two styles can be used to replace the root node title
with an image of your choice. Simply uncomment the next two styles,
specify the name of your image and be sure to set 'height' to the
proper pixel height of your image.
*/
/*
.directory h3.swap {
height: 61px;
background-repeat: no-repeat;
background-image: url("yourimage.gif");
}
.directory h3.swap span {
display: none;
}
*/
.directory > h3 {
margin-top: 0;
}
.directory p {
margin: 0px;
white-space: nowrap;
}
.directory div {
display: none;
margin: 0px;
}
.directory img {
vertical-align: -30%;
}
/* these are for tree view when not used as main index */
.directory-alt {
font-size: 100%;
font-weight: bold;
}
.directory-alt h3 {
margin: 0px;
margin-top: 1em;
font-size: 11pt;
}
.directory-alt > h3 {
margin-top: 0;
}
.directory-alt p {
margin: 0px;
white-space: nowrap;
}
.directory-alt div {
display: none;
margin: 0px;
}
.directory-alt img {
vertical-align: -30%;
}
/* @end */
address {
font-style: normal;
color: #333;
}
table.doxtable {
border-collapse:collapse;
}
table.doxtable td, table.doxtable th {
border: 1px solid #153788;
padding: 3px 7px 2px;
}
table.doxtable th {
background-color: #254798;
color: #FFFFFF;
font-size: 110%;
padding-bottom: 4px;
padding-top: 5px;
text-align:left;
}
hr {
border-top:1px dotted #E0E0E0;
border-bottom:1px dotted #E0E0E0;
margin-top:30px;
padding-top:10px;
}
.contents {
padding-top: 30px;
}
h1 {
margin-top:0;
}
.contents .dynsection {
margin-top:10px;
}

View File

@@ -1,26 +1,42 @@
wxWidgets 2.9.1 Release Notes
wxWidgets 2.9.2 Release Notes
=============================
Welcome to the latest release of wxWidgets, a cross-platform C++
framework for writing advanced GUI applications using native
controls where possible.
Welcome to the latest release of wxWidgets, a free cross-platform C++
framework for writing advanced GUI applications using native controls.
In addition to common and advanced GUI facilities such as frames,
scrolling windows, toolbars, tree controls, icons, device contexts,
printing, splitter windows and so on, there are wrappers for common
file operations, and facilities for writing TCP/IP applications,
thread handling, and more.
file operations, facilities for writing network applications,
thread handling, and so on. You can learn more about wxWidgets at
http://www.wxwidgets.org/
wxWidgets sources are available for download from
https://sourceforge.net/projects/wxwindows/files/2.9.2/
or
ftp://ftp.wxwidgets.org/pub/2.9.2/
Please see the "Files" section below for the description of various
files available at these locations.
A detailed reference manual including in-depth overviews for various
topics is supplied in various formats and can be accessed online at
http://docs.wxwidgets.org/
http://docs.wxwidgets.org/2.9.2/
Note about naming: while 2.9.1 is called a "development" release,
this only means that API is not guaranteed to remain unchanged in
the subsequent 2.9.x releases, unlike in the stable 2.8.x branch. We
believe the current version is stable and suitable for use in
production environment.
Note about naming: while 2.9.2 is called a "development" release,
this only means that API is not guaranteed to remain unchanged in the
subsequent 2.9.x releases (although it is still likely that it will),
unlike in the stable 2.8.x branch. We believe the current version is
stable and suitable for use in production environment.
@@ -71,8 +87,19 @@ date status.
Files
-----
The distribution is available in archive formats appropriate to the
target system. See the download pages for details.
wxWidgets is distributed in source form in several archive formats.
ZIP and 7z archives are for Microsoft Windows users and contain the
files with DOS/Windows line endings while the compressed tar archives
for Unix systems users (including OS X) and contain the files with
Unix line endings. Please notice that some Windows tools still don't
accept files with Unix line endings and that compiling sources with
DOS line endings under Unix will fail, so please choose the correct
file for your system.
In addition to the sources, documentation in HTML, CHM and HTB
(wxWidgets help viewer) formats is provided as well as an installer
for Microsoft Windows. Notice that you will still need to compile
wxWidgets even when using the installer.
Installation
@@ -133,7 +160,7 @@ Documentation
-------------
wxWidgets documentation is available online at
http://docs.wxwidgets.org/2.9.1/ and can also be downloaded in HTML
http://docs.wxwidgets.org/2.9.2/ and can also be downloaded in HTML
format. To generate documentation in other formats (PDF, CHM, ...)
please use the scripts in docs/doxygen directory.
@@ -160,11 +187,11 @@ Further information
The wxWidgets Web site is located at:
http://www.wxwidgets.org
http://www.wxwidgets.org/
The main wxWidgets ftp site is at:
ftp://biolpc22.york.ac.uk/pub
ftp://ftp.wxwidgets.org/pub/
A wxWidgets CD-ROM with the latest distribution plus an HTML
front-end and hundreds of MB of compilers, utilities and other
@@ -173,5 +200,4 @@ web site.
Have fun!
The wxWidgets Team, July 2010
The wxWidgets Team, July 2011

View File

@@ -1,6 +1,13 @@
Making a new wxWidgets release
==============================
Before making the release
-------------------------
Update docs/readme.txt. Please review its contents in addition to just
changing the version number.
Creating release files
----------------------
@@ -25,9 +32,31 @@ IMPORTANT NOTE: You *must* run this script from a clean source tree, that is,
release. If you have legitimate modifications in the tree that need
to be in the release, commit them first.
To generate the windows installer (.exe) and the documentation files (chm and htb formats)
run:
Also run doxygen to create HTML documentation and pack it in .tar.bz2 and .zip
formats.
build\tools\bld_chm_exe.bat
which depends on the wxwidgets.iss file, and generates output in the %DAILY% directory. It
assumes a clean copy of the wxWidgets source tree in %INNO%. Temporary files will be generated
in the tree from which the batch file is run. It depends on doxygen, a number of gnu
win32 tools and Microsofts htmlhelp compiler. The wxwidgets.iss file should not need
editing, but you will want to check that the bld_chm_exe.bat has the correct version number.
Alternative non official release scripts
----------------------------------------
If you use git-svn, then you can use alternative script that avoids the
problems such as using non-clean tree and also has better handling of the ends
of lines conversions. To use it you need to run
- build/tools/svn-find-native-eols.pl
- build/tools/git-make-release
- build/tools/make-html-docs
(the last one can also be used without git).
Uploading
@@ -37,7 +66,7 @@ Upload the files to SourceForge (the simplest is to scp them to
sfusername,wxwindows@frs.sf.net:/home/frs/project/w/wx/wxwindows/x.y.z) and to
ftp.wxwidgets.org (ask Chris to do it).
Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it).
Create http://docs.wxwidgets.org/x.y.z/ (ask Bryan to do it if not done yet).
Announcement