More doxygen overview cleanup.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Bryan Petty
2008-02-26 18:37:50 +00:00
parent 6c0ea5130f
commit 721a49c715
2 changed files with 77 additions and 113 deletions

View File

@@ -323,7 +323,7 @@ specific conditions are met, written as an escape:
@endTable
A word is defined as in the specification of <tt>[[:@<:]]</tt> and
<tt>[[:>:]]</tt> above. Constraint escapes are illegal within bracket
<tt>[[:@>:]]</tt> above. Constraint escapes are illegal within bracket
expressions.
A back reference (AREs only) matches the same string matched by the
@@ -343,103 +343,67 @@ back reference), and otherwise is taken as octal.
@section overview_resyntax_metasyntax Metasyntax
In addition to the main syntax described above,
there are some special forms and miscellaneous syntactic facilities available.
In addition to the main syntax described above, there are some special forms
and miscellaneous syntactic facilities available.
Normally the flavor of RE being used is specified by application-dependent
means. However, this can be overridden by a @e director. If an RE of any flavor
begins with '@b ***:', the rest of the RE is an ARE. If an RE of any flavor begins
with '@b ***=', the rest of the RE is taken to be a literal string, with all
characters considered ordinary characters.
An ARE may begin with @e embedded options: a sequence @b (?xyz)
(where @e xyz is one or more alphabetic characters)
specifies options affecting the rest of the RE. These supplement, and can
override, any options specified by the application. The available option
letters are:
begins with <tt>***:</tt>, the rest of the RE is an ARE. If an RE of any
flavor begins with <tt>***=</tt>, the rest of the RE is taken to be a literal
string, with all characters considered ordinary characters.
An ARE may begin with <em>embedded options</em>: a sequence <tt>(?xyz)</tt>
(where @e xyz is one or more alphabetic characters) specifies options affecting
the rest of the RE. These supplement, and can override, any options specified
by the application. The available option letters are:
@beginTable
@row2col{ <tt>b</tt> , Rest of RE is a BRE. }
@row2col{ <tt>c</tt> , Case-sensitive matching (usual default). }
@row2col{ <tt>e</tt> , Rest of RE is an ERE. }
@row2col{ <tt>i</tt> , Case-insensitive matching (see
@ref overview_resyntax_matching, below). }
@row2col{ <tt>m</tt> , Historical synonym for @e n. }
@row2col{ <tt>n</tt> , Newline-sensitive matching (see
@ref overview_resyntax_matching, below). }
@row2col{ <tt>p</tt> , Partial newline-sensitive matching (see
@ref overview_resyntax_matching, below). }
@row2col{ <tt>q</tt> , Rest of RE is a literal ("quoted") string, all ordinary
characters. }
@row2col{ <tt>s</tt> , Non-newline-sensitive matching (usual default). }
@row2col{ <tt>t</tt> , Tight syntax (usual default; see below). }
@row2col{ <tt>w</tt> , Inverse partial newline-sensitive ("weird") matching
(see @ref overview_resyntax_matching, below). }
@row2col{ <tt>x</tt> , Expanded syntax (see below). }
@endTable
@b b
Embedded options take effect at the <tt>)</tt> terminating the sequence. They
are available only at the start of an ARE, and may not be used later within it.
rest of RE is a BRE
In addition to the usual (@e tight) RE syntax, in which all characters are
significant, there is an @e expanded syntax, available in AREs with the
embedded x option. In the expanded syntax, white-space characters are ignored
and all characters between a <tt>@#</tt> and the following newline (or the end
of the RE) are ignored, permitting paragraphing and commenting a complex RE.
There are three exceptions to that basic rule:
@b c
@li A white-space character or <tt>@#</tt> preceded by <tt>@\</tt> is retained.
@li White space or <tt>@#</tt> within a bracket expression is retained.
@li White space and comments are illegal within multi-character symbols like
the ARE <tt>(?:</tt> or the BRE <tt>\(</tt>.
case-sensitive matching (usual default)
Expanded-syntax white-space characters are blank, tab, newline, and any
character that belongs to the @e space character class.
@b e
Finally, in an ARE, outside bracket expressions, the sequence <tt>(?@#ttt)</tt>
(where @e ttt is any text not containing a <tt>)</tt>) is a comment, completely
ignored. Again, this is not allowed between the characters of multi-character
symbols like <tt>(?:</tt>. Such comments are more a historical artifact than a
useful facility, and their use is deprecated; use the expanded syntax instead.
rest of RE is an ERE
@b i
case-insensitive matching (see #Matching, below)
@b m
historical synonym for @b n
@b n
newline-sensitive matching (see #Matching, below)
@b p
partial newline-sensitive matching (see #Matching, below)
@b q
rest of RE
is a literal ("quoted'') string, all ordinary characters
@b s
non-newline-sensitive matching (usual default)
@b t
tight syntax (usual default; see below)
@b w
inverse
partial newline-sensitive ("weird'') matching (see #Matching, below)
@b x
expanded syntax (see below)
Embedded options take effect at the @b ) terminating the
sequence. They are available only at the start of an ARE, and may not be
used later within it.
In addition to the usual (@e tight) RE syntax, in which
all characters are significant, there is an @e expanded syntax, available
in AREs with the embedded
x option. In the expanded syntax, white-space characters are ignored and
all characters between a @b # and the following newline (or the end of the
RE) are ignored, permitting paragraphing and commenting a complex RE. There
are three exceptions to that basic rule:
a white-space character or '@b #' preceded
by '@b \' is retained
white space or '@b #' within a bracket expression is retained
white space and comments are illegal within multi-character symbols like
the ARE '@b (?:' or the BRE '@b \('
Expanded-syntax white-space characters are blank,
tab, newline, and any character that belongs to the @e space character class.
Finally, in an ARE, outside bracket expressions, the sequence '@b (?#ttt)' (where
@e ttt is any text not containing a '@b )') is a comment, completely ignored. Again,
this is not allowed between the characters of multi-character symbols like
'@b (?:'. Such comments are more a historical artifact than a useful facility,
and their use is deprecated; use the expanded syntax instead.
@e None of these
metasyntax extensions is available if the application (or an initial @b ***=
director) has specified that the user's input be treated as a literal string
rather than as an RE.
@e None of these metasyntax extensions is available if the application (or an
initial <tt>***=</tt> director) has specified that the user's input be treated
as a literal string rather than as an RE.
@section overview_resyntax_matching Matching

View File

@@ -10,53 +10,53 @@
@page overview_roughguide Writing a wxWidgets Application: A Rough Guide
To set a wxWidgets application going, you will need to derive a #wxApp class
and override wxApp::OnInit.
To set a wxWidgets application going, you will need to derive a wxApp class and
override wxApp::OnInit.
An application must have a top-level #wxFrame or #wxDialog window. Each frame
may contain one or more instances of classes such as #wxPanel,
#wxSplitterWindow or other windows and controls.
An application must have a top-level wxFrame or wxDialog window. Each frame may
contain one or more instances of classes such as wxPanel, wxSplitterWindow or
other windows and controls.
A frame can have a #wxMenuBar, a #wxToolBar, a status line, and a #wxIcon for
when the frame is iconized.
A frame can have a wxMenuBar, a wxToolBar, a wxStatusBar, and a wxIcon for when
the frame is iconized.
A #wxPanel is used to place controls (classes derived from #wxControl) which
are used for user interaction. Examples of controls are #wxButton, #wxCheckBox,
#wxChoice, #wxListBox, #wxRadioBox, #wxSlider.
A wxPanel is used to place controls (classes derived from wxControl) which are
used for user interaction. Examples of controls are wxButton, wxCheckBox,
wxChoice, wxListBox, wxRadioBox, and wxSlider.
Instances of #wxDialog can also be used for controls and they have the
advantage of not requiring a separate frame.
Instances of wxDialog can also be used for controls and they have the advantage
of not requiring a separate frame.
Instead of creating a dialog box and populating it with items, it is possible
to choose one of the convenient common dialog classes, such as #wxMessageDialog
and #wxFileDialog.
to choose one of the convenient common dialog classes, such as wxMessageDialog
and wxFileDialog.
You never draw directly onto a window - you use a <em>device context</em> (DC).
#wxDC is the base for #wxClientDC, #wxPaintDC, #wxMemoryDC, #wxPostScriptDC,
#wxMemoryDC, #wxMetafileDC and #wxPrinterDC. If your drawing functions have
wxDC as a parameter, you can pass any of these DCs to the function, and thus
use the same code to draw to several different devices. You can draw using the
member functions of wxDC, such as wxDC::DrawLine and wxDC::DrawText. Control
colour on a window (#wxColour) with brushes (#wxBrush) and pens (#wxPen).
wxDC is the base for wxClientDC, wxPaintDC, wxMemoryDC, wxPostScriptDC,
wxMemoryDC, wxMetafileDC and wxPrinterDC. If your drawing functions have wxDC
as a parameter, you can pass any of these DCs to the function, and thus use the
same code to draw to several different devices. You can draw using the member
functions of wxDC, such as wxDC::DrawLine and wxDC::DrawText. Control colour on
a window (wxColour) with brushes (wxBrush) and pens (wxPen).
To intercept events, you add a DECLARE_EVENT_TABLE macro to the window class
declaration, and put a BEGIN_EVENT_TABLE ... END_EVENT_TABLE block in the
implementation file. Between these macros, you add event macros which map the
event (such as a mouse click) to a member function. These might override
predefined event handlers such as for #wxKeyEvent and #wxMouseEvent.
predefined event handlers such as for wxKeyEvent and wxMouseEvent.
Most modern applications will have an on-line, hypertext help system; for this,
you need wxHelp and the #wxHelpController class to control wxHelp.
you need wxHelp and the wxHelpController class to control wxHelp.
GUI applications aren't all graphical wizardry. List and hash table needs are
catered for by #wxList and #wxHashMap. You will undoubtedly need some
catered for by wxList and wxHashMap. You will undoubtedly need some
platform-independent @ref functions_file, and you may find it handy to
maintain and search a list of paths using #wxPathList. There's many
maintain and search a list of paths using wxPathList. There's many
@ref functions_miscellany of operating system methods and other functions.
@seealso
@li @ref overview_classesbycat
@li @ref page_categories
*/