]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/category.tex
allow to optionally use vendor name component in standard paths (slightly modified...
[wxWidgets.git] / docs / latex / wx / category.tex
CommitLineData
a660d684
KB
1\chapter{Classes by category}\label{classesbycat}
2\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
3\setfooter{\thepage}{}{}{}{}{\thepage}%
4
fc2171bd 5A classification of wxWidgets classes by category.
a660d684
KB
6
7{\large {\bf Managed windows}}
8
9There are several types of window that are directly controlled by the
10window manager (such as MS Windows, or the Motif Window Manager).
834ed994 11Frames and dialogs are similar in wxWidgets, but only dialogs may be modal.
a660d684 12
1c0c339c 13\twocolwidtha{6cm}
a660d684 14\begin{twocollist}\itemsep=0pt
834ed994 15\twocolitem{\helpref{wxTopLevelWindow}{wxtoplevelwindow}}{Any top level window, dialog or frame}
a660d684
KB
16\twocolitem{\helpref{wxDialog}{wxdialog}}{Dialog box}
17\twocolitem{\helpref{wxFrame}{wxframe}}{Normal frame}
a660d684 18\twocolitem{\helpref{wxMDIChildFrame}{wxmdichildframe}}{MDI child frame}
e3c10211 19\twocolitem{\helpref{wxMDIParentFrame}{wxmdiparentframe}}{MDI parent frame}
a660d684 20\twocolitem{\helpref{wxMiniFrame}{wxminiframe}}{A frame with a small title bar}
3c9287bb 21\twocolitem{\helpref{wxPropertySheetDialog}{wxpropertysheetdialog}}{Property sheet dialog}
62a268cc 22\twocolitem{\helpref{wxSplashScreen}{wxsplashscreen}}{Splash screen class}
bd330a69
JS
23%\twocolitem{\helpref{wxTabbedDialog}{wxtabbeddialog}}{Tabbed dialog
24%(deprecated, use wxNotebook instead)}
e3c10211
JS
25\twocolitem{\helpref{wxTipWindow}{wxtipwindow}}{Shows text in a small window}
26\twocolitem{\helpref{wxWizard}{wxwizard}}{A wizard dialog}
a660d684
KB
27\end{twocollist}
28
c34b5c57 29See also the \helpref{Common dialogs overview}{commondialogsoverview}.
a660d684
KB
30
31{\large {\bf Miscellaneous windows}}
32
d7da9756 33The following are a variety of classes that are derived from wxWindow.
a660d684 34
1c0c339c 35\twocolwidtha{6cm}
a660d684 36\begin{twocollist}\itemsep=0pt
a660d684
KB
37\twocolitem{\helpref{wxPanel}{wxpanel}}{A window whose colour changes according to current user settings}
38\twocolitem{\helpref{wxScrolledWindow}{wxscrolledwindow}}{Window with automatically managed scrollbars}
a5a0dd06 39\twocolitem{\helpref{wxGrid}{wxgrid}}{A grid (table) window}
a660d684
KB
40\twocolitem{\helpref{wxSplitterWindow}{wxsplitterwindow}}{Window which can be split vertically or horizontally}
41\twocolitem{\helpref{wxStatusBar}{wxstatusbar}}{Implements the status bar on a frame}
81d66cf3 42\twocolitem{\helpref{wxToolBar}{wxtoolbar}}{Toolbar class}
3972fb49
JS
43%\twocolitem{\helpref{wxTabbedPanel}{wxtabbedpanel}}{Tabbed panel (to be replaced with wxNotebook)}
44\twocolitem{\helpref{wxNotebook}{wxnotebook}}{Notebook class}
c16b8e18 45\twocolitem{\helpref{wxListbook}{wxlistbook}}{Similar to notebook but using list control}
f5e0b4bc 46\twocolitem{\helpref{wxChoicebook}{wxchoicebook}}{Similar to notebook but using choice control}
eca15c0d 47\twocolitem{\helpref{wxTreebook}{wxtreebook}}{Similar to notebook but using tree control}
a5a0dd06
RR
48\twocolitem{\helpref{wxSashWindow}{wxsashwindow}}{Window with four optional sashes that can be dragged}
49\twocolitem{\helpref{wxSashLayoutWindow}{wxsashlayoutwindow}}{Window that can be involved in an IDE-like layout arrangement}
cf7d6329 50\twocolitem{\helpref{wxVScrolledWindow}{wxvscrolledwindow}}{As wxScrolledWindow but supports lines of variable height}
f6bcfd97
BP
51\twocolitem{\helpref{wxWizardPage}{wxwizardpage}}{A base class for the page in wizard dialog.}
52\twocolitem{\helpref{wxWizardPageSimple}{wxwizardpagesimple}}{A page in wizard dialog.}
a660d684
KB
53\end{twocollist}
54
55{\large {\bf Common dialogs}}
56
57\overview{Overview}{commondialogsoverview}
58
59Common dialogs are ready-made dialog classes which are frequently used
60in an application.
61
1c0c339c 62\twocolwidtha{6cm}
a660d684
KB
63\begin{twocollist}\itemsep=0pt
64\twocolitem{\helpref{wxDialog}{wxdialog}}{Base class for common dialogs}
65\twocolitem{\helpref{wxColourDialog}{wxcolourdialog}}{Colour chooser dialog}
66\twocolitem{\helpref{wxDirDialog}{wxdirdialog}}{Directory selector dialog}
67\twocolitem{\helpref{wxFileDialog}{wxfiledialog}}{File selector dialog}
8db37e06 68\twocolitem{\helpref{wxFindReplaceDialog}{wxfindreplacedialog}}{Text search/replace dialog}
04bf08b7 69\twocolitem{\helpref{wxMultiChoiceDialog}{wxmultichoicedialog}}{Dialog to get one or more selections from a list}
a660d684
KB
70\twocolitem{\helpref{wxSingleChoiceDialog}{wxsinglechoicedialog}}{Dialog to get a single selection from a list and return the string}
71\twocolitem{\helpref{wxTextEntryDialog}{wxtextentrydialog}}{Dialog to get a single line of text from the user}
55b46fd1 72\twocolitem{\helpref{wxPasswordEntryDialog}{wxpasswordentrydialog}}{Dialog to get a password from the user}
a660d684
KB
73\twocolitem{\helpref{wxFontDialog}{wxfontdialog}}{Font chooser dialog}
74\twocolitem{\helpref{wxPageSetupDialog}{wxpagesetupdialog}}{Standard page setup dialog}
75\twocolitem{\helpref{wxPrintDialog}{wxprintdialog}}{Standard print dialog}
74d88854 76\twocolitem{\helpref{wxProgressDialog}{wxprogressdialog}}{Progress indication dialog}
a660d684 77\twocolitem{\helpref{wxMessageDialog}{wxmessagedialog}}{Simple message box dialog}
62a268cc
JS
78\twocolitem{\helpref{wxSymbolPickerDialog}{wxsymbolpickerdialog}}{Symbol selector dialog}
79\twocolitem{\helpref{wxRichTextFormattingDialog}{wxrichtextformattingdialog}}{A dialog for formatting the content of a wxRichTextCtrl}
f6bcfd97 80\twocolitem{\helpref{wxWizard}{wxwizard}}{A wizard dialog.}
a660d684
KB
81\end{twocollist}
82
83{\large {\bf Controls}}
84
85Typically, these are small windows which provide interaction with the user. Controls
86that are not static can have \helpref{validators}{wxvalidator} associated with them.
87
1c0c339c 88\twocolwidtha{6cm}
a660d684 89\begin{twocollist}\itemsep=0pt
72045d57 90\twocolitem{\helpref{wxAnimationCtrl}{wxanimationctrl}}{A control to display an animation}
a660d684
KB
91\twocolitem{\helpref{wxControl}{wxcontrol}}{The base class for controls}
92\twocolitem{\helpref{wxButton}{wxbutton}}{Push button control, displaying text}
93\twocolitem{\helpref{wxBitmapButton}{wxbitmapbutton}}{Push button control, displaying a bitmap}
95a46303 94\twocolitem{\helpref{wxBitmapComboBox}{wxbitmapcombobox}}{A combobox with bitmaps next to text items}
ecdba0d1 95\twocolitem{\helpref{wxToggleButton}{wxtogglebutton}}{A button which stays pressed when clicked by user.}
feb72429 96\twocolitem{\helpref{wxCalendarCtrl}{wxcalendarctrl}}{Control showing an entire calendar month}
a660d684
KB
97\twocolitem{\helpref{wxCheckBox}{wxcheckbox}}{Checkbox control}
98\twocolitem{\helpref{wxCheckListBox}{wxchecklistbox}}{A listbox with a checkbox to the left of each item}
99\twocolitem{\helpref{wxChoice}{wxchoice}}{Choice control (a combobox without the editable area)}
c34b5c57 100\twocolitem{\helpref{wxCollapsiblePane}{wxcollapsiblepane}}{A panel which can be shown/hidden by the user}
a660d684 101\twocolitem{\helpref{wxComboBox}{wxcombobox}}{A choice with an editable area}
0dfff674 102\twocolitem{\helpref{wxComboCtrl}{wxcomboctrl}}{A combobox with application defined popup}
91506eb0 103\twocolitem{\helpref{wxDataViewCtrl}{wxdataviewctrl}}{A control to tabular or tree like data}
a660d684 104\twocolitem{\helpref{wxGauge}{wxgauge}}{A control to represent a varying quantity, such as time remaining}
2f3ebe4c 105\twocolitem{\helpref{wxGenericDirCtrl}{wxgenericdirctrl}}{A control for displaying a directory tree}
9ebb7cad
VZ
106\twocolitem{\helpref{wxHtmlListBox}{wxhtmllistbox}}{An abstract class for creating listboxes showing HTML content}
107\twocolitem{\helpref{wxSimpleHtmlListBox}{wxsimplehtmllistbox}}{A listbox showing HTML content}
a660d684
KB
108\twocolitem{\helpref{wxStaticBox}{wxstaticbox}}{A static, or group box for visually grouping related controls}
109\twocolitem{\helpref{wxListBox}{wxlistbox}}{A list of strings for single or multiple selection}
110\twocolitem{\helpref{wxListCtrl}{wxlistctrl}}{A control for displaying lists of strings and/or icons, plus a multicolumn report view}
913c8465 111\twocolitem{\helpref{wxListView}{wxlistview}}{A simpler interface ({\it fa\c{c}ade}) for wxListCtrl in report mode}
0dfff674 112\twocolitem{\helpref{wxOwnerDrawnComboBox}{wxownerdrawncombobox}}{A combobox with owner-drawn list items}
5f35b46a 113\twocolitem{\helpref{wxRichTextCtrl}{wxrichtextctrl}}{Generic rich text editing control}
f6bcfd97
BP
114\twocolitem{\helpref{wxTextCtrl}{wxtextctrl}}{Single or multiline text editing control}
115\twocolitem{\helpref{wxTreeCtrl}{wxtreectrl}}{Tree (hierarchy) control}
a660d684
KB
116\twocolitem{\helpref{wxScrollBar}{wxscrollbar}}{Scrollbar control}
117\twocolitem{\helpref{wxSpinButton}{wxspinbutton}}{A spin or `up-down' control}
5d9dba5b 118\twocolitem{\helpref{wxSpinCtrl}{wxspinctrl}}{A spin control - i.e. spin button and text control}
a660d684 119\twocolitem{\helpref{wxStaticText}{wxstatictext}}{One or more lines of non-editable text}
17e91437 120\twocolitem{\helpref{wxHyperlinkCtrl}{wxhyperlinkctrl}}{A static text which opens an URL when clicked}
a660d684
KB
121\twocolitem{\helpref{wxStaticBitmap}{wxstaticbitmap}}{A control to display a bitmap}
122\twocolitem{\helpref{wxRadioBox}{wxradiobox}}{A group of radio buttons}
123\twocolitem{\helpref{wxRadioButton}{wxradiobutton}}{A round button to be used with others in a mutually exclusive way}
124\twocolitem{\helpref{wxSlider}{wxslider}}{A slider that can be dragged by the user}
e0c6027b 125\twocolitem{\helpref{wxVListBox}{wxvlistbox}}{A listbox supporting variable height rows}
a660d684
KB
126\end{twocollist}
127
ec376c8f
VZ
128
129{\large {\bf Miscellaneous pickers}}
130
131A picker control is a control whose appearance and behaviour is highly platform-dependent.
132
133\twocolwidtha{6cm}
134\begin{twocollist}\itemsep=0pt
135\twocolitem{\helpref{wxColourPickerCtrl}{wxcolourpickerctrl}}{A control which allows the user to choose a colour}
136\twocolitem{\helpref{wxDirPickerCtrl}{wxdirpickerctrl}}{A control which allows the user to choose a directory}
137\twocolitem{\helpref{wxFilePickerCtrl}{wxfilepickerctrl}}{A control which allows the user to choose a file}
138\twocolitem{\helpref{wxFontPickerCtrl}{wxfontpickerctrl}}{A control which allows the user to choose a font}
139\twocolitem{\helpref{wxDatePickerCtrl}{wxdatepickerctrl}}{Small date picker control}
140\end{twocollist}
141
142
a660d684
KB
143{\large {\bf Menus}}
144
1c0c339c 145\twocolwidtha{6cm}
a660d684
KB
146\begin{twocollist}\itemsep=0pt
147\twocolitem{\helpref{wxMenu}{wxmenu}}{Displays a series of menu items for selection}
148\twocolitem{\helpref{wxMenuBar}{wxmenubar}}{Contains a series of menus for use with a frame}
149\twocolitem{\helpref{wxMenuItem}{wxmenuitem}}{Represents a single menu item}
150\end{twocollist}
151
1fdd3f34
RR
152{\large {\bf wxAUI - advanced user interface}}
153
154This is a new set of classes for writing a customizable application
155interface with built-in docking, floatable panes and a flexible
156MDI-like interface. Further classes for custom notebooks with
157draggable tabs etc. are in progress. See also \helpref{wxAUI overview}{wxauioverview}.
158
159\twocolwidtha{6cm}
160\begin{twocollist}\itemsep=0pt
161\twocolitem{\helpref{wxAuiManager}{wxauimanager}}{The central class for managing the interface}
fa2aeeb5 162\twocolitem{\helpref{wxAuiNotebook}{wxauinotebook}}{A replacement notebook class with extra features}
1fdd3f34 163\twocolitem{\helpref{wxAuiPaneInfo}{wxauipaneinfo}}{Describes a single pane}
fa2aeeb5
BW
164\twocolitem{\helpref{wxAuiDockArt}{wxauidockart}}{Art and metrics provider for customizing the docking user interface}
165\twocolitem{\helpref{wxAuiTabArt}{wxauitabart}}{Art and metrics provider for customizing the notebook user interface}
1fdd3f34
RR
166\end{twocollist}
167
168
a660d684
KB
169{\large {\bf Window layout}}
170
1c0c339c 171There are two different systems for laying out windows (and dialogs in particular).
515da557
RR
172One is based upon so-called sizers and it requires less typing, thinking and calculating
173and will in almost all cases produce dialogs looking equally well on all platforms, the
1c0c339c 174other is based on so-called constraints and is deprecated, though still available.
a660d684 175
1c0c339c 176\overview{Sizer overview}{sizeroverview} describes sizer-based layout.
515da557 177
1c0c339c
JS
178These are the classes relevant to sizer-based layout.
179
180\twocolwidtha{6cm}
515da557
RR
181\begin{twocollist}\itemsep=0pt
182\twocolitem{\helpref{wxSizer}{wxsizer}}{Abstract base class}
f6bcfd97
BP
183\twocolitem{\helpref{wxGridSizer}{wxgridsizer}}{A sizer for laying out windows in a grid with all fields having the same size}
184\twocolitem{\helpref{wxFlexGridSizer}{wxflexgridsizer}}{A sizer for laying out windows in a flexible grid}
20b35a69 185\twocolitem{\helpref{wxGridBagSizer}{wxgridbagsizer}}{Another grid sizer that lets you specify the cell an item is in, and items can span rows and/or columns.}
515da557 186\twocolitem{\helpref{wxBoxSizer}{wxboxsizer}}{A sizer for laying out windows in a row or column}
1c0c339c 187\twocolitem{\helpref{wxStaticBoxSizer}{wxstaticboxsizer}}{Same as wxBoxSizer, but with a surrounding static box}
515da557
RR
188\end{twocollist}
189
1c0c339c 190\overview{Constraints overview}{constraintsoverview} describes constraints-based layout.
515da557
RR
191
192These are the classes relevant to constraints-based window layout.
a660d684 193
1c0c339c 194\twocolwidtha{6cm}
a660d684
KB
195\begin{twocollist}\itemsep=0pt
196\twocolitem{\helpref{wxIndividualLayoutConstraint}{wxindividuallayoutconstraint}}{Represents a single constraint dimension}
197\twocolitem{\helpref{wxLayoutConstraints}{wxlayoutconstraints}}{Represents the constraints for a window class}
198\end{twocollist}
199
c34b5c57
FM
200Other layouting classes:
201
202\twocolwidtha{6cm}
203\begin{twocollist}\itemsep=0pt
204\twocolitem{\helpref{wxLayoutAlgorithm}{wxlayoutalgorithm}}{An alternative window layout facility}
205\end{twocollist}
206
a660d684
KB
207{\large {\bf Device contexts}}
208
209\overview{Overview}{dcoverview}
210
211Device contexts are surfaces that may be drawn on, and provide an
212abstraction that allows parameterisation of your drawing code
213by passing different device contexts.
214
1c0c339c 215\twocolwidtha{6cm}
a660d684 216\begin{twocollist}\itemsep=0pt
3dfd8daf 217\twocolitem{\helpref{wxAutoBufferedPaintDC}{wxautobufferedpaintdc}}{A helper device context for double buffered drawing inside \textbf{OnPaint}.}
d6af57d4
VZ
218\twocolitem{\helpref{wxBufferedDC}{wxbuffereddc}}{A helper device context for double buffered drawing.}
219\twocolitem{\helpref{wxBufferedPaintDC}{wxbufferedpaintdc}}{A helper device context for double buffered drawing inside \textbf{OnPaint}.}
a660d684
KB
220\twocolitem{\helpref{wxClientDC}{wxclientdc}}{A device context to access the client area outside {\bf OnPaint} events}
221\twocolitem{\helpref{wxPaintDC}{wxpaintdc}}{A device context to access the client area inside {\bf OnPaint} events}
222\twocolitem{\helpref{wxWindowDC}{wxwindowdc}}{A device context to access the non-client area}
223\twocolitem{\helpref{wxScreenDC}{wxscreendc}}{A device context to access the entire screen}
224\twocolitem{\helpref{wxDC}{wxdc}}{The device context base class}
225\twocolitem{\helpref{wxMemoryDC}{wxmemorydc}}{A device context for drawing into bitmaps}
e2a6f233 226\twocolitem{\helpref{wxMetafileDC}{wxmetafiledc}}{A device context for drawing into metafiles}
8f20ea03 227\twocolitem{\helpref{wxMirrorDC}{wxmirrordc}}{A proxy device context allowing for simple mirroring.}
a660d684
KB
228\twocolitem{\helpref{wxPostScriptDC}{wxpostscriptdc}}{A device context for drawing into PostScript files}
229\twocolitem{\helpref{wxPrinterDC}{wxprinterdc}}{A device context for drawing to printers}
230\end{twocollist}
231
232{\large {\bf Graphics device interface}}
233
234\overview{Bitmaps overview}{wxbitmapoverview}
235
236These classes are related to drawing on device contexts and windows.
237
1c0c339c 238\twocolwidtha{6cm}
a660d684
KB
239\begin{twocollist}\itemsep=0pt
240\twocolitem{\helpref{wxColour}{wxcolour}}{Represents the red, blue and green elements of a colour}
6c975af1 241\twocolitem{\helpref{wxDCClipper}{wxdcclipper}}{Wraps the operations of setting and destroying the clipping region}
a660d684
KB
242\twocolitem{\helpref{wxBitmap}{wxbitmap}}{Represents a bitmap}
243\twocolitem{\helpref{wxBrush}{wxbrush}}{Used for filling areas on a device context}
244\twocolitem{\helpref{wxBrushList}{wxbrushlist}}{The list of previously-created brushes}
245\twocolitem{\helpref{wxCursor}{wxcursor}}{A small, transparent bitmap representing the cursor}
246\twocolitem{\helpref{wxFont}{wxfont}}{Represents fonts}
247\twocolitem{\helpref{wxFontList}{wxfontlist}}{The list of previously-created fonts}
248\twocolitem{\helpref{wxIcon}{wxicon}}{A small, transparent bitmap for assigning to frames and drawing on device contexts}
89c684ef 249\twocolitem{\helpref{wxImage}{wximage}}{A platform-independent image class}
a660d684
KB
250\twocolitem{\helpref{wxImageList}{wximagelist}}{A list of images, used with some controls}
251\twocolitem{\helpref{wxMask}{wxmask}}{Represents a mask to be used with a bitmap for transparent drawing}
252\twocolitem{\helpref{wxPen}{wxpen}}{Used for drawing lines on a device context}
253\twocolitem{\helpref{wxPenList}{wxpenlist}}{The list of previously-created pens}
254\twocolitem{\helpref{wxPalette}{wxpalette}}{Represents a table of indices into RGB values}
255\twocolitem{\helpref{wxRegion}{wxregion}}{Represents a simple or complex region on a window or device context}
684761db 256\twocolitem{\helpref{wxRendererNative}{wxrenderernative}}{Abstracts high-level drawing primitives}
a660d684
KB
257\end{twocollist}
258
259{\large {\bf Events}}
260
261\overview{Overview}{eventhandlingoverview}
262
263An event object contains information about a specific event. Event handlers
264(usually member functions) have a single, event argument.
265
1c0c339c 266\twocolwidtha{6cm}
a660d684
KB
267\begin{twocollist}\itemsep=0pt
268\twocolitem{\helpref{wxActivateEvent}{wxactivateevent}}{A window or application activation event}
f6bcfd97 269\twocolitem{\helpref{wxCalendarEvent}{wxcalendarevent}}{Used with \helpref{wxCalendarCtrl}{wxcalendarctrl}}
6fb26ea3 270\twocolitem{\helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent}}{Used to calculate window layout}
66ad556c 271\twocolitem{\helpref{wxChildFocusEvent}{wxchildfocusevent}}{A child window focus event}
78c91815 272\twocolitem{\helpref{wxClipboardTextEvent}{wxclipboardtextevent}}{A clipboard copy/cut/paste treebook event event}
a660d684
KB
273\twocolitem{\helpref{wxCloseEvent}{wxcloseevent}}{A close window or end session event}
274\twocolitem{\helpref{wxCommandEvent}{wxcommandevent}}{An event from a variety of standard controls}
5cb1ae8b 275\twocolitem{\helpref{wxContextMenuEvent}{wxcontextmenuevent}}{An event generated when the user issues a context menu command}
e6e86d52 276\twocolitem{\helpref{wxDateEvent}{wxdateevent}}{Used with \helpref{wxDatePickerCtrl}{wxdatepickerctrl}}
f6bcfd97 277\twocolitem{\helpref{wxDialUpEvent}{wxdialupevent}}{Event send by \helpref{wxDialUpManager}{wxdialupmanager}}
a660d684
KB
278\twocolitem{\helpref{wxDropFilesEvent}{wxdropfilesevent}}{A drop files event}
279\twocolitem{\helpref{wxEraseEvent}{wxeraseevent}}{An erase background event}
280\twocolitem{\helpref{wxEvent}{wxevent}}{The event base class}
f010ad48 281\twocolitem{\helpref{wxFindDialogEvent}{wxfinddialogevent}}{Event sent by
8db37e06 282\helpref{wxFindReplaceDialog}{wxfindreplacedialog}}
a660d684
KB
283\twocolitem{\helpref{wxFocusEvent}{wxfocusevent}}{A window focus event}
284\twocolitem{\helpref{wxKeyEvent}{wxkeyevent}}{A keypress event}
3dd9b88a 285\twocolitem{\helpref{wxIconizeEvent}{wxiconizeevent}}{An iconize/restore event}
a660d684
KB
286\twocolitem{\helpref{wxIdleEvent}{wxidleevent}}{An idle event}
287\twocolitem{\helpref{wxInitDialogEvent}{wxinitdialogevent}}{A dialog initialisation event}
288\twocolitem{\helpref{wxJoystickEvent}{wxjoystickevent}}{A joystick event}
289\twocolitem{\helpref{wxListEvent}{wxlistevent}}{A list control event}
3dd9b88a 290\twocolitem{\helpref{wxMaximizeEvent}{wxmaximizeevent}}{A maximize event}
a660d684 291\twocolitem{\helpref{wxMenuEvent}{wxmenuevent}}{A menu event}
a5e84126 292\twocolitem{\helpref{wxMouseCaptureChangedEvent}{wxmousecapturechangedevent}}{A mouse capture changed event}
63e819f2 293\twocolitem{\helpref{wxMouseCaptureLostEvent}{wxmousecapturelostevent}}{A mouse capture lost event}
a660d684
KB
294\twocolitem{\helpref{wxMouseEvent}{wxmouseevent}}{A mouse event}
295\twocolitem{\helpref{wxMoveEvent}{wxmoveevent}}{A move event}
a701b455 296\twocolitem{\helpref{wxNavigationKeyEvent}{wxnavigationkeyevent}}{An event set by navigation keys such as tab}
3972fb49 297\twocolitem{\helpref{wxNotebookEvent}{wxnotebookevent}}{A notebook control event}
fd128b0c 298\twocolitem{\helpref{wxNotifyEvent}{wxnotifyevent}}{A notification event, which can be vetoed}
a660d684 299\twocolitem{\helpref{wxPaintEvent}{wxpaintevent}}{A paint event}
3972fb49 300\twocolitem{\helpref{wxProcessEvent}{wxprocessevent}}{A process ending event}
6fb26ea3 301\twocolitem{\helpref{wxQueryLayoutInfoEvent}{wxquerylayoutinfoevent}}{Used to query layout information}
5f35b46a 302\twocolitem{\helpref{wxRichTextEvent}{wxrichtextevent}}{A rich text editing event}
fd128b0c
RR
303\twocolitem{\helpref{wxScrollEvent}{wxscrollevent}}{A scroll event from sliders, stand-alone scrollbars and spin buttons}
304\twocolitem{\helpref{wxScrollWinEvent}{wxscrollwinevent}}{A scroll event from scrolled windows}
a660d684 305\twocolitem{\helpref{wxSizeEvent}{wxsizeevent}}{A size event}
42ff6409 306\twocolitem{\helpref{wxSocketEvent}{wxsocketevent}}{A socket event}
f6bcfd97 307\twocolitem{\helpref{wxSpinEvent}{wxspinevent}}{An event from \helpref{wxSpinButton}{wxspinbutton}}
e6e86d52 308\twocolitem{\helpref{wxSplitterEvent}{wxsplitterevent}}{An event from \helpref{wxSplitterWindow}{wxsplitterwindow}}
a660d684 309\twocolitem{\helpref{wxSysColourChangedEvent}{wxsyscolourchangedevent}}{A system colour change event}
e3f17fc8 310\twocolitem{\helpref{wxTimerEvent}{wxtimerevent}}{A timer expiration event}
eca15c0d 311\twocolitem{\helpref{wxTreebookEvent}{wxtreebookevent}}{A treebook control event}
a660d684
KB
312\twocolitem{\helpref{wxTreeEvent}{wxtreeevent}}{A tree control event}
313\twocolitem{\helpref{wxUpdateUIEvent}{wxupdateuievent}}{A user interface update event}
4acaa5e2
JS
314\twocolitem{\helpref{wxWindowCreateEvent}{wxwindowcreateevent}}{A window creation event}
315\twocolitem{\helpref{wxWindowDestroyEvent}{wxwindowdestroyevent}}{A window destruction event}
f6bcfd97 316\twocolitem{\helpref{wxWizardEvent}{wxwizardevent}}{A wizard event}
a660d684
KB
317\end{twocollist}
318
319{\large {\bf Validators}}
320
6b037754
JS
321\overview{Overview}{validatoroverview}
322
a660d684
KB
323These are the window validators, used for filtering and validating
324user input.
325
1c0c339c 326\twocolwidtha{6cm}
a660d684 327\begin{twocollist}\itemsep=0pt
89c684ef
JS
328\twocolitem{\helpref{wxValidator}{wxvalidator}}{Base validator class}
329\twocolitem{\helpref{wxTextValidator}{wxtextvalidator}}{Text control validator class}
330\twocolitem{\helpref{wxGenericValidator}{wxgenericvalidator}}{Generic control validator class}
a660d684
KB
331\end{twocollist}
332
333{\large {\bf Data structures}}
334
fc2171bd 335These are the data structure classes supported by wxWidgets.
a660d684 336
1c0c339c 337\twocolwidtha{6cm}
a660d684 338\begin{twocollist}\itemsep=0pt
f6bcfd97 339\twocolitem{\helpref{wxCmdLineParser}{wxcmdlineparser}}{Command line parser class}
f6bcfd97 340\twocolitem{\helpref{wxDateSpan}{wxdatespan}}{A logical time interval.}
d7da9756 341\twocolitem{\helpref{wxDateTime}{wxdatetime}}{A class for date/time manipulations}
d7da9756 342\twocolitem{\helpref{wxLongLong}{wxlonglong}}{A portable 64 bit integer type}
fc2171bd 343\twocolitem{\helpref{wxObject}{wxobject}}{The root class for most wxWidgets classes}
a660d684
KB
344\twocolitem{\helpref{wxPathList}{wxpathlist}}{A class to help search multiple paths}
345\twocolitem{\helpref{wxPoint}{wxpoint}}{Representation of a point}
346\twocolitem{\helpref{wxRect}{wxrect}}{A class representing a rectangle}
8fb2999a 347\twocolitem{\helpref{wxRegEx}{wxregex}}{Regular expression support}
a660d684
KB
348\twocolitem{\helpref{wxRegion}{wxregion}}{A class representing a region}
349\twocolitem{\helpref{wxString}{wxstring}}{A string class}
9c884972 350\twocolitem{\helpref{wxStringTokenizer}{wxstringtokenizer}}{A class for interpreting a string as a list of tokens or words}
a660d684
KB
351\twocolitem{\helpref{wxRealPoint}{wxrealpoint}}{Representation of a point using floating point numbers}
352\twocolitem{\helpref{wxSize}{wxsize}}{Representation of a size}
f6bcfd97 353\twocolitem{\helpref{wxTimeSpan}{wxtimespan}}{A time interval.}
86470d43 354\twocolitem{\helpref{wxURI}{wxuri}}{Represents a Uniform Resource Identifier}
d7da9756 355\twocolitem{\helpref{wxVariant}{wxvariant}}{A class for storing arbitrary types that may change at run-time}
a660d684
KB
356\end{twocollist}
357
44f2a3d1
RR
358{\large {\bf Container classes}}
359
360\overview{Overview}{wxcontaineroverview}
361
362These are classes, templates and class macros are used by wxWidgets. Most
363of these classes provide a subset or almost complete STL API.
364
365\twocolwidtha{6cm}
366\begin{twocollist}\itemsep=0pt
367\twocolitem{\helpref{wxArray<T>}{wxarray}}{A type-safe dynamic array implementation (macro based)}
368\twocolitem{\helpref{wxArrayString}{wxarraystring}}{An efficient container for storing \helpref{wxString}{wxstring} objects}
369\twocolitem{\helpref{wxHashMap<T>}{wxhashmap}}{A type-safe hash map implementation (macro based)}
370\twocolitem{\helpref{wxHashSet<T>}{wxhashset}}{A type-safe hash set implementation(macro based)}
371\twocolitem{\helpref{wxHashTable}{wxhashtable}}{A simple hash table implementation (deprecated, use wxHashMap)}
372\twocolitem{\helpref{wxList<T>}{wxlist}}{A type-safe linked list implementation (macro based)}
373\twocolitem{\helpref{wxVector<T>}{wxvector}}{Template base vector implementation}
374\end{twocollist}
375
a660d684
KB
376{\large {\bf Run-time class information system}}
377
378\overview{Overview}{runtimeclassoverview}
379
fc2171bd 380wxWidgets supports run-time manipulation of class information, and dynamic
a660d684
KB
381creation of objects given class names.
382
1c0c339c 383\twocolwidtha{6cm}
a660d684
KB
384\begin{twocollist}\itemsep=0pt
385\twocolitem{\helpref{wxClassInfo}{wxclassinfo}}{Holds run-time class information}
386\twocolitem{\helpref{wxObject}{wxobject}}{Root class for classes with run-time information}
f4fcc291 387\twocolitem{\helpref{RTTI macros}{rttimacros}}{Macros for manipulating run-time information}
a660d684
KB
388\end{twocollist}
389
2fda2145 390{\large {\bf Logging features}}
a660d684 391
30fc2c8e 392\overview{Overview}{wxlogoverview}
f1fa9adc 393
fc2171bd 394wxWidgets provides several classes and functions for message logging.
f1fa9adc
VZ
395Please see the \helpref{wxLog overview}{wxlogoverview} for more details.
396
1c0c339c 397\twocolwidtha{6cm}
f1fa9adc
VZ
398\begin{twocollist}\itemsep=0pt
399\twocolitem{\helpref{wxLog}{wxlog}}{The base log class}
400\twocolitem{\helpref{wxLogStderr}{wxlogstderr}}{Log messages to a C STDIO stream}
401\twocolitem{\helpref{wxLogStream}{wxlogstream}}{Log messages to a C++ iostream}
402\twocolitem{\helpref{wxLogTextCtrl}{wxlogtextctrl}}{Log messages to a \helpref{wxTextCtrl}{wxtextctrl}}
403\twocolitem{\helpref{wxLogWindow}{wxlogwindow}}{Log messages to a log frame}
404\twocolitem{\helpref{wxLogGui}{wxloggui}}{Default log target for GUI programs}
405\twocolitem{\helpref{wxLogNull}{wxlognull}}{Temporarily suppress message logging}
406\twocolitem{\helpref{wxLogChain}{wxlogchain}}{Allows to chain two log targets}
7ffc857f
VZ
407\twocolitem{\helpref{wxLogInterposer}{wxloginterposer}}{Allows to filter the log messages}
408\twocolitem{\helpref{wxLogInterposerTemp}{wxloginterposertemp}}{Allows to filter the log messages}
f1fa9adc
VZ
409\twocolitem{\helpref{wxStreamToTextRedirector}{wxstreamtotextredirector}}{Allows
410to redirect output sent to {\tt cout} to a \helpref{wxTextCtrl}{wxtextctrl}}
411\twocolitem{\helpref{Log functions}{logfunctions}}{Error and warning logging functions}
412\end{twocollist}
413
414{\large {\bf Debugging features}}
415
a660d684
KB
416\overview{Overview}{debuggingoverview}
417
fc2171bd 418wxWidgets supports some aspects of debugging an application through
a660d684
KB
419classes, functions and macros.
420
1c0c339c 421\twocolwidtha{6cm}
a660d684 422\begin{twocollist}\itemsep=0pt
6b037754 423\twocolitem{\helpref{wxDebugContext}{wxdebugcontext}}{Provides memory-checking facilities}
6b037754 424\twocolitem{\helpref{Debugging macros}{debugmacros}}{Debug macros for assertion and checking}
a660d684 425\twocolitem{\helpref{WXDEBUG\_NEW}{debugnew}}{Use this macro to give further debugging information}
af127680
VZ
426\twocolitem{\helpref{wxDebugReport}{wxdebugreport}}{Base class for creating debug reports in case of a program crash.}
427\twocolitem{\helpref{wxDebugReportCompress}{wxdebugreportcompress}}{Class for creating compressed debug reports.}
428\twocolitem{\helpref{wxDebugReportUpload}{wxdebugreportupload}}{Class for uploading compressed debug reports via HTTP.}
429\twocolitem{\helpref{wxDebugReportPreview}{wxdebugreportpreview}}{Abstract base class for previewing the contents of a debug report.}
430\twocolitem{\helpref{wxDebugReportPreviewStd}{wxdebugreportpreviewstd}}{Standard implementation of wxDebugReportPreview.}
a660d684
KB
431\end{twocollist}
432
238ddd26
RR
433{\large {\bf Networking classes}}
434
fc2171bd 435wxWidgets provides its own classes for socket based networking.
238ddd26 436
1c0c339c 437\twocolwidtha{6cm}
238ddd26 438\begin{twocollist}\itemsep=0pt
f6bcfd97
BP
439\twocolitem{\helpref{wxDialUpManager}{wxdialupmanager}}{Provides functions to check the status of network connection and to establish one}
440\twocolitem{\helpref{wxIPV4address}{wxipv4address}}{Represents an Internet address}
be4bd463 441\twocolitem{\helpref{wxIPaddress}{wxipaddress}}{Represents an Internet address}
672186ef 442\twocolitem{\helpref{wxSocketBase}{wxsocketbase}}{Represents a socket base object}
238ddd26
RR
443\twocolitem{\helpref{wxSocketClient}{wxsocketclient}}{Represents a socket client}
444\twocolitem{\helpref{wxSocketServer}{wxsocketserver}}{Represents a socket server}
238ddd26 445\twocolitem{\helpref{wxSocketEvent}{wxsocketevent}}{A socket event}
672186ef
GRG
446\twocolitem{\helpref{wxFTP}{wxftp}}{FTP protocol class}
447\twocolitem{\helpref{wxHTTP}{wxhttp}}{HTTP protocol class}
448\twocolitem{\helpref{wxURL}{wxurl}}{Represents a Universal Resource Locator}
238ddd26
RR
449\end{twocollist}
450
451
a660d684
KB
452{\large {\bf Interprocess communication}}
453
454\overview{Overview}{ipcoverview}
455
fc2171bd 456wxWidgets provides simple interprocess communications facilities
f010ad48 457based on Windows DDE, but available on most platforms using TCP.
a660d684 458
1c0c339c 459\twocolwidtha{6cm}
a660d684 460\begin{twocollist}\itemsep=0pt
f510b7b2
WS
461\twocolitem{\helpref{wxClient}{wxclient}, \helpref{wxDDEClient}{wxddeclient}}{Represents a client}
462\twocolitem{\helpref{wxConnection}{wxconnection}, \helpref{wxDDEConnection}{wxddeconnection}}{Represents the connection between a client and a server}
463\twocolitem{\helpref{wxServer}{wxserver}, \helpref{wxDDEServer}{wxddeserver}}{Represents a server}
d7cb14ce 464%\twocolitem{\helpref{wxSocketHandler}{wxsockethandler}}{Represents a socket handler}
a660d684
KB
465\end{twocollist}
466
467{\large {\bf Document/view framework}}
468
469\overview{Overview}{docviewoverview}
470
fc2171bd 471wxWidgets supports a document/view framework which provides
a660d684
KB
472housekeeping for a document-centric application.
473
1c0c339c 474\twocolwidtha{6cm}
a660d684
KB
475\begin{twocollist}\itemsep=0pt
476\twocolitem{\helpref{wxDocument}{wxdocument}}{Represents a document}
477\twocolitem{\helpref{wxView}{wxview}}{Represents a view}
f6bcfd97 478\twocolitem{\helpref{wxDocTemplate}{wxdoctemplate}}{Manages the relationship between a document class and a view class}
a660d684
KB
479\twocolitem{\helpref{wxDocManager}{wxdocmanager}}{Manages the documents and views in an application}
480\twocolitem{\helpref{wxDocChildFrame}{wxdocchildframe}}{A child frame for showing a document view}
481\twocolitem{\helpref{wxDocParentFrame}{wxdocparentframe}}{A parent frame to contain views}
6fb26ea3
JS
482%\twocolitem{\helpref{wxMDIDocChildFrame}{wxmdidocchildframe}}{An MDI child frame for showing a document view}
483%\twocolitem{\helpref{wxMDIDocParentFrame}{wxmdidocparentframe}}{An MDI parent frame to contain views}
a660d684
KB
484\end{twocollist}
485
486{\large {\bf Printing framework}}
487
488\overview{Overview}{printingoverview}
489
490A printing and previewing framework is implemented to
f6bcfd97 491make it relatively straightforward to provide document printing
a660d684
KB
492facilities.
493
1c0c339c 494\twocolwidtha{6cm}
a660d684
KB
495\begin{twocollist}\itemsep=0pt
496\twocolitem{\helpref{wxPreviewFrame}{wxpreviewframe}}{Frame for displaying a print preview}
497\twocolitem{\helpref{wxPreviewCanvas}{wxpreviewcanvas}}{Canvas for displaying a print preview}
498\twocolitem{\helpref{wxPreviewControlBar}{wxpreviewcontrolbar}}{Standard control bar for a print preview}
a660d684 499\twocolitem{\helpref{wxPrintDialog}{wxprintdialog}}{Standard print dialog}
7bcb11d3 500\twocolitem{\helpref{wxPageSetupDialog}{wxpagesetupdialog}}{Standard page setup dialog}
a660d684
KB
501\twocolitem{\helpref{wxPrinter}{wxprinter}}{Class representing the printer}
502\twocolitem{\helpref{wxPrinterDC}{wxprinterdc}}{Printer device context}
503\twocolitem{\helpref{wxPrintout}{wxprintout}}{Class representing a particular printout}
504\twocolitem{\helpref{wxPrintPreview}{wxprintpreview}}{Class representing a print preview}
7bcb11d3
JS
505\twocolitem{\helpref{wxPrintData}{wxprintdata}}{Represents information about the document being printed}
506\twocolitem{\helpref{wxPrintDialogData}{wxprintdialogdata}}{Represents information about the print dialog}
507\twocolitem{\helpref{wxPageSetupDialogData}{wxpagesetupdialogdata}}{Represents information about the page setup dialog}
a660d684
KB
508\end{twocollist}
509
dface61c
JS
510{\large {\bf Drag and drop and clipboard classes}}
511
512\overview{Drag and drop and clipboard overview}{wxdndoverview}
513
1c0c339c 514\twocolwidtha{6cm}
dface61c 515\begin{twocollist}\itemsep=0pt
dface61c 516\twocolitem{\helpref{wxDataObject}{wxdataobject}}{Data object class}
c03648c2 517\twocolitem{\helpref{wxDataFormat}{wxdataformat}}{Represents a data format}
dface61c 518\twocolitem{\helpref{wxTextDataObject}{wxtextdataobject}}{Text data object class}
5ab2950d 519\twocolitem{\helpref{wxFileDataObject}{wxfiledataobject}}{File data object class}
dface61c 520\twocolitem{\helpref{wxBitmapDataObject}{wxbitmapdataobject}}{Bitmap data object class}
c959d912 521\twocolitem{\helpref{wxURLDataObject}{wxurldataobject}}{URL data object class}
0a2017e0 522\twocolitem{\helpref{wxCustomDataObject}{wxcustomdataobject}}{Custom data object class}
dface61c 523\twocolitem{\helpref{wxClipboard}{wxclipboard}}{Clipboard class}
5aa5e35a
RR
524\twocolitem{\helpref{wxDropTarget}{wxdroptarget}}{Drop target class}
525\twocolitem{\helpref{wxFileDropTarget}{wxfiledroptarget}}{File drop target class}
526\twocolitem{\helpref{wxTextDropTarget}{wxtextdroptarget}}{Text drop target class}
527\twocolitem{\helpref{wxDropSource}{wxdropsource}}{Drop source class}
dface61c
JS
528\end{twocollist}
529
247aba10
VZ
530{\large {\bf File related classes}}
531
fc2171bd 532wxWidgets has several small classes to work with disk files, see \helpref{file classes
247aba10
VZ
533overview}{wxfileoverview} for more details.
534
1c0c339c 535\twocolwidtha{6cm}
247aba10 536\begin{twocollist}\itemsep=0pt
2569938d 537\twocolitem{\helpref{wxFileName}{wxfilename}}{Operations with the file name and attributes}
4afd7529 538\twocolitem{\helpref{wxDir}{wxdir}}{Class for enumerating files/subdirectories.}
509cd921 539\twocolitem{\helpref{wxDirTraverser}{wxdirtraverser}}{Class used together with wxDir for recursively enumerating the files/subdirectories}
842d6c94
RR
540\twocolitem{\helpref{wxFile}{wxfile}}{Low-level file input/output class.}
541\twocolitem{\helpref{wxFFile}{wxffile}}{Another low-level file input/output class.}
247aba10
VZ
542\twocolitem{\helpref{wxTempFile}{wxtempfile}}{Class to safely replace an existing file}
543\twocolitem{\helpref{wxTextFile}{wxtextfile}}{Class for working with text files as with arrays of lines}
a8d08dbd 544\twocolitem{\helpref{wxStandardPaths}{wxstandardpaths}}{Paths for standard directories}
c34b5c57 545\twocolitem{\helpref{wxPathList}{wxpathlist}}{A class to help search multiple paths}
247aba10
VZ
546\end{twocollist}
547
631f1bfe
JS
548{\large {\bf Stream classes}}
549
fc2171bd 550wxWidgets has its own set of stream classes, as an alternative to often buggy standard stream
631f1bfe
JS
551libraries, and to provide enhanced functionality.
552
1c0c339c 553\twocolwidtha{6cm}
631f1bfe
JS
554\begin{twocollist}\itemsep=0pt
555\twocolitem{\helpref{wxStreamBase}{wxstreambase}}{Stream base class}
556\twocolitem{\helpref{wxStreamBuffer}{wxstreambuffer}}{Stream buffer class}
557\twocolitem{\helpref{wxInputStream}{wxinputstream}}{Input stream class}
558\twocolitem{\helpref{wxOutputStream}{wxoutputstream}}{Output stream class}
d984207c 559\twocolitem{\helpref{wxCountingOutputStream}{wxcountingoutputstream}}{Stream class for querying what size a stream would have.}
631f1bfe
JS
560\twocolitem{\helpref{wxFilterInputStream}{wxfilterinputstream}}{Filtered input stream class}
561\twocolitem{\helpref{wxFilterOutputStream}{wxfilteroutputstream}}{Filtered output stream class}
d984207c
RR
562\twocolitem{\helpref{wxBufferedInputStream}{wxbufferedinputstream}}{Buffered input stream class}
563\twocolitem{\helpref{wxBufferedOutputStream}{wxbufferedoutputstream}}{Buffered output stream class}
2bf8e4eb
RR
564\twocolitem{\helpref{wxMemoryInputStream}{wxmeminputstream}}{Memory input stream class}
565\twocolitem{\helpref{wxMemoryOutputStream}{wxmemoutputstream}}{Memory output stream class}
7ff14117
RR
566\twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent binary data input stream class}
567\twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent binary data output stream class}
568\twocolitem{\helpref{wxTextInputStream}{wxtextinputstream}}{Platform-independent text data input stream class}
569\twocolitem{\helpref{wxTextOutputStream}{wxtextoutputstream}}{Platform-independent text data output stream class}
631f1bfe
JS
570\twocolitem{\helpref{wxFileInputStream}{wxfileinputstream}}{File input stream class}
571\twocolitem{\helpref{wxFileOutputStream}{wxfileoutputstream}}{File output stream class}
842d6c94
RR
572\twocolitem{\helpref{wxFFileInputStream}{wxffileinputstream}}{Another file input stream class}
573\twocolitem{\helpref{wxFFileOutputStream}{wxffileoutputstream}}{Another file output stream class}
e1265174 574\twocolitem{\helpref{wxTempFileOutputStream}{wxtempfileoutputstream}}{Stream to safely replace an existing file}
121fa06a
VZ
575\twocolitem{\helpref{wxStringInputStream}{wxstringinputstream}}{String input stream class}
576\twocolitem{\helpref{wxStringOutputStream}{wxstringoutputstream}}{String output stream class}
b34c7f3c
MW
577\twocolitem{\helpref{wxZlibInputStream}{wxzlibinputstream}}{Zlib and gzip (compression) input stream class}
578\twocolitem{\helpref{wxZlibOutputStream}{wxzliboutputstream}}{Zlib and gzip (compression) output stream class}
738bfca9 579\twocolitem{\helpref{wxZipInputStream}{wxzipinputstream}}{Input stream for reading from ZIP archives}
df467a9d 580\twocolitem{\helpref{wxZipOutputStream}{wxzipoutputstream}}{Output stream for writing from ZIP archives}
b34c7f3c
MW
581\twocolitem{\helpref{wxTarInputStream}{wxtarinputstream}}{Input stream for reading from tar archives}
582\twocolitem{\helpref{wxTarOutputStream}{wxtaroutputstream}}{Output stream for writing from tar archives}
631f1bfe
JS
583\twocolitem{\helpref{wxSocketInputStream}{wxsocketinputstream}}{Socket input stream class}
584\twocolitem{\helpref{wxSocketOutputStream}{wxsocketoutputstream}}{Socket output stream class}
585\end{twocollist}
586
238ddd26
RR
587{\large {\bf Threading classes}}
588
589\overview{Multithreading overview}{wxthreadoverview}
738bfca9 590
fc2171bd 591wxWidgets provides a set of classes to make use of the native thread
238ddd26
RR
592capabilities of the various platforms.
593
1c0c339c 594\twocolwidtha{6cm}
238ddd26
RR
595\begin{twocollist}\itemsep=0pt
596\twocolitem{\helpref{wxThread}{wxthread}}{Thread class}
78ee6a47 597\twocolitem{\helpref{wxThreadHelper}{wxthreadhelper}}{Manages background threads easily}
238ddd26
RR
598\twocolitem{\helpref{wxMutex}{wxmutex}}{Mutex class}
599\twocolitem{\helpref{wxMutexLocker}{wxmutexlocker}}{Mutex locker utility class}
600\twocolitem{\helpref{wxCriticalSection}{wxcriticalsection}}{Critical section class}
f6bcfd97 601\twocolitem{\helpref{wxCriticalSectionLocker}{wxcriticalsectionlocker}}{Critical section locker utility class}
88413fec 602\twocolitem{\helpref{wxCondition}{wxcondition}}{Condition class}
be809868 603\twocolitem{\helpref{wxSemaphore}{wxsemaphore}}{Semaphore class}
238ddd26
RR
604\end{twocollist}
605
606{\large {\bf HTML classes}}
607
fc2171bd 608wxWidgets provides a set of classes to display text in HTML format. These
238ddd26 609class include a help system based on the HTML widget.
738bfca9 610
1c0c339c 611\twocolwidtha{6cm}
738bfca9
VS
612\begin{twocollist}\itemsep=0pt
613\twocolitem{\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}}{HTML help controller class}
614\twocolitem{\helpref{wxHtmlWindow}{wxhtmlwindow}}{HTML window class}
e5436d59
VS
615\twocolitem{\helpref{wxHtmlEasyPrinting}{wxhtmleasyprinting}}{Simple class for printing HTML}
616\twocolitem{\helpref{wxHtmlPrintout}{wxhtmlprintout}}{Generic HTML wxPrintout class}
738bfca9
VS
617\twocolitem{\helpref{wxHtmlParser}{wxhtmlparser}}{Generic HTML parser class}
618\twocolitem{\helpref{wxHtmlTagHandler}{wxhtmltaghandler}}{HTML tag handler, pluginable into wxHtmlParser}
619\twocolitem{\helpref{wxHtmlWinParser}{wxhtmlwinparser}}{HTML parser class for wxHtmlWindow}
620\twocolitem{\helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}}{HTML tag handler, pluginable into wxHtmlWinParser}
621\end{twocollist}
622
4aeaf419
JS
623{\large {\bf Rich text classes}}
624
625wxWidgets provides a set of generic classes to edit and print simple rich text with character
626and paragraph formatting.
627
628\twocolwidtha{6cm}
629\begin{twocollist}\itemsep=0pt
c34b5c57 630\twocolitem{\helpref{wxRichTextAttr}{wxrichtextattr}}{Attributes specifying rich text styling.}
4aeaf419
JS
631\twocolitem{\helpref{wxRichTextCtrl}{wxrichtextctrl}}{A rich text control.}
632\twocolitem{\helpref{wxRichTextBuffer}{wxrichtextbuffer}}{The content of a rich text control.}
4aeaf419
JS
633\twocolitem{\helpref{wxRichTextCharacterStyleDefinition}{wxrichtextcharacterstyledefinition}}{Definition of character styling.}
634\twocolitem{\helpref{wxRichTextParagraphStyleDefinition}{wxrichtextparagraphstyledefinition}}{Definition of paragraph styling.}
635\twocolitem{\helpref{wxRichTextListStyleDefinition}{wxrichtextliststyledefinition}}{Definition of list styling.}
636\twocolitem{\helpref{wxRichTextStyleSheet}{wxrichtextstylesheet}}{A set of style definitions.}
637\twocolitem{\helpref{wxRichTextStyleComboCtrl}{wxrichtextstylecomboctrl}}{A drop-down control for applying styles.}
638\twocolitem{\helpref{wxRichTextStyleListBox}{wxrichtextstylelistbox}}{A listbox for applying styles.}
21fae46d 639\twocolitem{\helpref{wxRichTextStyleOrganiserDialog}{wxrichtextstyleorganiserdialog}}{A dialog that can be used for managing or browsing styles.}
4aeaf419
JS
640\twocolitem{\helpref{wxRichTextEvent}{wxrichtextevent}}{A rich text event.}
641\twocolitem{\helpref{wxRichTextRange}{wxrichtextrange}}{Specification for ranges in a rich text control or buffer.}
642\twocolitem{\helpref{wxRichTextFileHandler}{wxrichtextfilehandler}}{File handler base class.}
643\twocolitem{\helpref{wxRichTextHTMLHandler}{wxrichtexthtmlhandler}}{A handler for converting rich text to HTML.}
644\twocolitem{\helpref{wxRichTextXMLHandler}{wxrichtextxmlhandler}}{A handler for loading and saving rich text XML.}
645\twocolitem{\helpref{wxRichTextFormattingDialog}{wxrichtextformattingdialog}}{A dialog for rich text formatting.}
646\twocolitem{\helpref{wxRichTextPrinting}{wxrichtextprinting}}{A class for easy printing of rich text buffers.}
647\twocolitem{\helpref{wxRichTextPrintout}{wxrichtextprintout}}{A class used by wxRichTextPrinting.}
648\twocolitem{\helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata}}{Header and footer data specification.}
649\end{twocollist}
650
c34b5c57
FM
651{\large {\bf Scintilla text editor classes}}
652
653wxWidgets also provides a wrapper around the Scintilla text editor control, which is
654a control for plain-text editing with support for highlighting, smart indentation, etc.
655
656\twocolwidtha{6cm}
657\begin{twocollist}\itemsep=0pt
658\twocolitem{\helpref{wxStyledTextCtrl}{wxstyledtextctrl}}{A wxWidgets implementation of the Scintilla source code editing component.}
659\end{twocollist}
660
88413fec
RR
661{\large {\bf Virtual file system classes}}
662
fc2171bd 663wxWidgets provides a set of classes that implement an extensible virtual file system,
88413fec
RR
664used internally by the HTML classes.
665
1c0c339c 666\twocolwidtha{6cm}
88413fec
RR
667\begin{twocollist}\itemsep=0pt
668\twocolitem{\helpref{wxFSFile}{wxfsfile}}{Represents a file in the virtual file system}
669\twocolitem{\helpref{wxFileSystem}{wxfilesystem}}{Main interface for the virtual file system}
670\twocolitem{\helpref{wxFileSystemHandler}{wxfilesystemhandler}}{Class used to announce file system type}
671\end{twocollist}
672
3193b86f
VZ
673{\large {\bf XML classes}}
674
675\twocolwidtha{6cm}
676\begin{twocollist}\itemsep=0pt
44f2a3d1
RR
677\twocolitem{\helpref{wxXmlDocument}{wxxmldocument}}{A class to parse XML files}
678\twocolitem{\helpref{wxXmlNode}{wxxmlnode}}{A class which represents XML nodes}
679\twocolitem{\helpref{wxXmlAttribute}{wxxmlattribute}}{A class which represent an XML attribute}
3193b86f
VZ
680\end{twocollist}
681
d958c9bd
JS
682{\large {\bf XML-based resource system classes}}
683
3980000c 684\overview{XML-based resource system (XRC) overview}{xrcoverview}
d958c9bd
JS
685
686Resources allow your application to create controls and other user interface elements
687from specifications stored in an XML format.
688
1c0c339c 689\twocolwidtha{6cm}
d958c9bd 690\begin{twocollist}\itemsep=0pt
44f2a3d1
RR
691\twocolitem{\helpref{wxXmlResource}{wxxmlresource}}{The main class for working with resources}
692\twocolitem{\helpref{wxXmlResourceHandler}{wxxmlresourcehandler}}{The base class for XML resource handlers}
d958c9bd
JS
693\end{twocollist}
694
7cb74906
JS
695{\large {\bf Online help}}
696
1c0c339c 697\twocolwidtha{6cm}
7cb74906
JS
698\begin{twocollist}\itemsep=0pt
699\twocolitem{\helpref{wxHelpController}{wxhelpcontroller}}{Family of classes for controlling help windows}
700\twocolitem{\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}}{HTML help controller class}
701\twocolitem{\helpref{wxContextHelp}{wxcontexthelp}}{Class to put application into context-sensitive help mode}
702\twocolitem{\helpref{wxContextHelpButton}{wxcontexthelpbutton}}{Button class for putting application into context-sensitive help mode}
703\twocolitem{\helpref{wxHelpProvider}{wxhelpprovider}}{Abstract class for context-sensitive help provision}
704\twocolitem{\helpref{wxSimpleHelpProvider}{wxsimplehelpprovider}}{Class for simple context-sensitive help provision}
705\twocolitem{\helpref{wxHelpControllerHelpProvider}{wxhelpcontrollerhelpprovider}}{Class for context-sensitive help provision via a help controller}
706\twocolitem{\helpref{wxToolTip}{wxtooltip}}{Class implementing tooltips}
707\end{twocollist}
708
c34b5c57
FM
709{\large {\bf Multimedia classes}}
710
711\twocolwidtha{6cm}
712\begin{twocollist}\itemsep=0pt
713\twocolitem{\helpref{wxMediaCtrl}{wxmediactrl}}{Display multimedia contents.}
714\end{twocollist}
715
716{\large {\bf OpenGL classes}}
717
718\twocolwidtha{6cm}
719\begin{twocollist}\itemsep=0pt
720\twocolitem{\helpref{wxGLCanvas}{wxglcanvas}}{Canvas that you can render OpenGL calls to.}
721\twocolitem{\helpref{wxGLContext}{wxglcontext}}{Class to ease sharing of OpenGL data resources.}
722\end{twocollist}
723
724{\large {\bf Application and process-management classes}}
a660d684 725
1c0c339c 726\twocolwidtha{6cm}
a660d684
KB
727\begin{twocollist}\itemsep=0pt
728\twocolitem{\helpref{wxApp}{wxapp}}{Application class}
f6bcfd97 729\twocolitem{\helpref{wxCmdLineParser}{wxcmdlineparser}}{Command line parser class}
f6bcfd97 730\twocolitem{\helpref{wxDllLoader}{wxdllloader}}{Class to work with shared libraries.}
3972fb49 731\twocolitem{\helpref{wxProcess}{wxprocess}}{Process class}
c34b5c57
FM
732\end{twocollist}
733
734{\large {\bf Miscellaneous}}
735
736\twocolwidtha{6cm}
737\begin{twocollist}\itemsep=0pt
738\twocolitem{\helpref{wxCaret}{wxcaret}}{A caret (cursor) object}
739\twocolitem{\helpref{wxConfig}{wxconfigbase}}{Classes for configuration reading/writing (using either INI files or registry)}
a660d684 740\twocolitem{\helpref{wxTimer}{wxtimer}}{Timer class}
5f445b31 741\twocolitem{\helpref{wxStopWatch}{wxstopwatch}}{Stop watch class}
88413fec 742\twocolitem{\helpref{wxMimeTypesManager}{wxmimetypesmanager}}{MIME-types manager class}
0cbff120
JS
743\twocolitem{\helpref{wxSystemSettings}{wxsystemsettings}}{System settings class for obtaining various global parameters}
744\twocolitem{\helpref{wxSystemOptions}{wxsystemoptions}}{System options class for run-time configuration}
238ddd26
RR
745\twocolitem{\helpref{wxAcceleratorTable}{wxacceleratortable}}{Accelerator table}
746\twocolitem{\helpref{wxAutomationObject}{wxautomationobject}}{OLE automation class}
5d9dba5b
VS
747\twocolitem{\helpref{wxFontMapper}{wxfontmapper}}{Font mapping, finding suitable font for given encoding}
748\twocolitem{\helpref{wxEncodingConverter}{wxencodingconverter}}{Encoding conversions}
f6bcfd97 749\twocolitem{\helpref{wxCalendarDateAttr}{wxcalendardateattr}}{Used with \helpref{wxCalendarCtrl}{wxcalendarctrl}}
e3c10211 750\twocolitem{\helpref{wxQuantize}{wxquantize}}{Class to perform quantization, or colour reduction}
68a602fc 751\twocolitem{\helpref{wxSingleInstanceChecker}{wxsingleinstancechecker}}{Check that only single program instance is running}
238ddd26 752\end{twocollist}