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

@@ -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;
}