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