]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/category.tex
typo
[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)}
a6acecec
RR
376\twocolitem{\helpref{wxVector<T>}{wxvector}}{Template base vector implementation identical to std::vector}
377\end{twocollist}
378
379{\large {\bf Smart pointers}}
380
381wxWidgets provides a few smart pointer class templates.
382
383\twocolwidtha{6cm}
384\begin{twocollist}\itemsep=0pt
a6acecec 385\twocolitem{\helpref{wxObjectDataPtr<T>}{wxobjectdataptr}}{A shared pointer using intrusive reference counting}
89969a91
RR
386\twocolitem{\helpref{wxScopedPtr<T>}{wxscopedptrtemplate}}{A scoped pointer}
387\twocolitem{\helpref{wxWeakRef<T>}{wxweakref}}{A weak reference}
44f2a3d1
RR
388\end{twocollist}
389
a660d684
KB
390{\large {\bf Run-time class information system}}
391
392\overview{Overview}{runtimeclassoverview}
393
fc2171bd 394wxWidgets supports run-time manipulation of class information, and dynamic
a660d684
KB
395creation of objects given class names.
396
1c0c339c 397\twocolwidtha{6cm}
a660d684
KB
398\begin{twocollist}\itemsep=0pt
399\twocolitem{\helpref{wxClassInfo}{wxclassinfo}}{Holds run-time class information}
400\twocolitem{\helpref{wxObject}{wxobject}}{Root class for classes with run-time information}
f4fcc291 401\twocolitem{\helpref{RTTI macros}{rttimacros}}{Macros for manipulating run-time information}
a660d684
KB
402\end{twocollist}
403
2fda2145 404{\large {\bf Logging features}}
a660d684 405
30fc2c8e 406\overview{Overview}{wxlogoverview}
f1fa9adc 407
fc2171bd 408wxWidgets provides several classes and functions for message logging.
f1fa9adc
VZ
409Please see the \helpref{wxLog overview}{wxlogoverview} for more details.
410
1c0c339c 411\twocolwidtha{6cm}
f1fa9adc
VZ
412\begin{twocollist}\itemsep=0pt
413\twocolitem{\helpref{wxLog}{wxlog}}{The base log class}
414\twocolitem{\helpref{wxLogStderr}{wxlogstderr}}{Log messages to a C STDIO stream}
415\twocolitem{\helpref{wxLogStream}{wxlogstream}}{Log messages to a C++ iostream}
416\twocolitem{\helpref{wxLogTextCtrl}{wxlogtextctrl}}{Log messages to a \helpref{wxTextCtrl}{wxtextctrl}}
417\twocolitem{\helpref{wxLogWindow}{wxlogwindow}}{Log messages to a log frame}
418\twocolitem{\helpref{wxLogGui}{wxloggui}}{Default log target for GUI programs}
419\twocolitem{\helpref{wxLogNull}{wxlognull}}{Temporarily suppress message logging}
420\twocolitem{\helpref{wxLogChain}{wxlogchain}}{Allows to chain two log targets}
7ffc857f
VZ
421\twocolitem{\helpref{wxLogInterposer}{wxloginterposer}}{Allows to filter the log messages}
422\twocolitem{\helpref{wxLogInterposerTemp}{wxloginterposertemp}}{Allows to filter the log messages}
f1fa9adc
VZ
423\twocolitem{\helpref{wxStreamToTextRedirector}{wxstreamtotextredirector}}{Allows
424to redirect output sent to {\tt cout} to a \helpref{wxTextCtrl}{wxtextctrl}}
425\twocolitem{\helpref{Log functions}{logfunctions}}{Error and warning logging functions}
426\end{twocollist}
427
428{\large {\bf Debugging features}}
429
a660d684
KB
430\overview{Overview}{debuggingoverview}
431
fc2171bd 432wxWidgets supports some aspects of debugging an application through
a660d684
KB
433classes, functions and macros.
434
1c0c339c 435\twocolwidtha{6cm}
a660d684 436\begin{twocollist}\itemsep=0pt
6b037754 437\twocolitem{\helpref{wxDebugContext}{wxdebugcontext}}{Provides memory-checking facilities}
6b037754 438\twocolitem{\helpref{Debugging macros}{debugmacros}}{Debug macros for assertion and checking}
a660d684 439\twocolitem{\helpref{WXDEBUG\_NEW}{debugnew}}{Use this macro to give further debugging information}
af127680
VZ
440\twocolitem{\helpref{wxDebugReport}{wxdebugreport}}{Base class for creating debug reports in case of a program crash.}
441\twocolitem{\helpref{wxDebugReportCompress}{wxdebugreportcompress}}{Class for creating compressed debug reports.}
442\twocolitem{\helpref{wxDebugReportUpload}{wxdebugreportupload}}{Class for uploading compressed debug reports via HTTP.}
443\twocolitem{\helpref{wxDebugReportPreview}{wxdebugreportpreview}}{Abstract base class for previewing the contents of a debug report.}
444\twocolitem{\helpref{wxDebugReportPreviewStd}{wxdebugreportpreviewstd}}{Standard implementation of wxDebugReportPreview.}
a660d684
KB
445\end{twocollist}
446
238ddd26
RR
447{\large {\bf Networking classes}}
448
fc2171bd 449wxWidgets provides its own classes for socket based networking.
238ddd26 450
1c0c339c 451\twocolwidtha{6cm}
238ddd26 452\begin{twocollist}\itemsep=0pt
f6bcfd97
BP
453\twocolitem{\helpref{wxDialUpManager}{wxdialupmanager}}{Provides functions to check the status of network connection and to establish one}
454\twocolitem{\helpref{wxIPV4address}{wxipv4address}}{Represents an Internet address}
be4bd463 455\twocolitem{\helpref{wxIPaddress}{wxipaddress}}{Represents an Internet address}
672186ef 456\twocolitem{\helpref{wxSocketBase}{wxsocketbase}}{Represents a socket base object}
238ddd26
RR
457\twocolitem{\helpref{wxSocketClient}{wxsocketclient}}{Represents a socket client}
458\twocolitem{\helpref{wxSocketServer}{wxsocketserver}}{Represents a socket server}
238ddd26 459\twocolitem{\helpref{wxSocketEvent}{wxsocketevent}}{A socket event}
672186ef
GRG
460\twocolitem{\helpref{wxFTP}{wxftp}}{FTP protocol class}
461\twocolitem{\helpref{wxHTTP}{wxhttp}}{HTTP protocol class}
462\twocolitem{\helpref{wxURL}{wxurl}}{Represents a Universal Resource Locator}
238ddd26
RR
463\end{twocollist}
464
465
a660d684
KB
466{\large {\bf Interprocess communication}}
467
468\overview{Overview}{ipcoverview}
469
fc2171bd 470wxWidgets provides simple interprocess communications facilities
f010ad48 471based on Windows DDE, but available on most platforms using TCP.
a660d684 472
1c0c339c 473\twocolwidtha{6cm}
a660d684 474\begin{twocollist}\itemsep=0pt
f510b7b2
WS
475\twocolitem{\helpref{wxClient}{wxclient}, \helpref{wxDDEClient}{wxddeclient}}{Represents a client}
476\twocolitem{\helpref{wxConnection}{wxconnection}, \helpref{wxDDEConnection}{wxddeconnection}}{Represents the connection between a client and a server}
477\twocolitem{\helpref{wxServer}{wxserver}, \helpref{wxDDEServer}{wxddeserver}}{Represents a server}
d7cb14ce 478%\twocolitem{\helpref{wxSocketHandler}{wxsockethandler}}{Represents a socket handler}
a660d684
KB
479\end{twocollist}
480
481{\large {\bf Document/view framework}}
482
483\overview{Overview}{docviewoverview}
484
fc2171bd 485wxWidgets supports a document/view framework which provides
a660d684
KB
486housekeeping for a document-centric application.
487
1c0c339c 488\twocolwidtha{6cm}
a660d684
KB
489\begin{twocollist}\itemsep=0pt
490\twocolitem{\helpref{wxDocument}{wxdocument}}{Represents a document}
491\twocolitem{\helpref{wxView}{wxview}}{Represents a view}
f6bcfd97 492\twocolitem{\helpref{wxDocTemplate}{wxdoctemplate}}{Manages the relationship between a document class and a view class}
a660d684
KB
493\twocolitem{\helpref{wxDocManager}{wxdocmanager}}{Manages the documents and views in an application}
494\twocolitem{\helpref{wxDocChildFrame}{wxdocchildframe}}{A child frame for showing a document view}
495\twocolitem{\helpref{wxDocParentFrame}{wxdocparentframe}}{A parent frame to contain views}
6fb26ea3
JS
496%\twocolitem{\helpref{wxMDIDocChildFrame}{wxmdidocchildframe}}{An MDI child frame for showing a document view}
497%\twocolitem{\helpref{wxMDIDocParentFrame}{wxmdidocparentframe}}{An MDI parent frame to contain views}
a660d684
KB
498\end{twocollist}
499
500{\large {\bf Printing framework}}
501
502\overview{Overview}{printingoverview}
503
504A printing and previewing framework is implemented to
f6bcfd97 505make it relatively straightforward to provide document printing
a660d684
KB
506facilities.
507
1c0c339c 508\twocolwidtha{6cm}
a660d684
KB
509\begin{twocollist}\itemsep=0pt
510\twocolitem{\helpref{wxPreviewFrame}{wxpreviewframe}}{Frame for displaying a print preview}
511\twocolitem{\helpref{wxPreviewCanvas}{wxpreviewcanvas}}{Canvas for displaying a print preview}
512\twocolitem{\helpref{wxPreviewControlBar}{wxpreviewcontrolbar}}{Standard control bar for a print preview}
a660d684 513\twocolitem{\helpref{wxPrintDialog}{wxprintdialog}}{Standard print dialog}
7bcb11d3 514\twocolitem{\helpref{wxPageSetupDialog}{wxpagesetupdialog}}{Standard page setup dialog}
a660d684
KB
515\twocolitem{\helpref{wxPrinter}{wxprinter}}{Class representing the printer}
516\twocolitem{\helpref{wxPrinterDC}{wxprinterdc}}{Printer device context}
517\twocolitem{\helpref{wxPrintout}{wxprintout}}{Class representing a particular printout}
518\twocolitem{\helpref{wxPrintPreview}{wxprintpreview}}{Class representing a print preview}
7bcb11d3
JS
519\twocolitem{\helpref{wxPrintData}{wxprintdata}}{Represents information about the document being printed}
520\twocolitem{\helpref{wxPrintDialogData}{wxprintdialogdata}}{Represents information about the print dialog}
521\twocolitem{\helpref{wxPageSetupDialogData}{wxpagesetupdialogdata}}{Represents information about the page setup dialog}
a660d684
KB
522\end{twocollist}
523
dface61c
JS
524{\large {\bf Drag and drop and clipboard classes}}
525
526\overview{Drag and drop and clipboard overview}{wxdndoverview}
527
1c0c339c 528\twocolwidtha{6cm}
dface61c 529\begin{twocollist}\itemsep=0pt
dface61c 530\twocolitem{\helpref{wxDataObject}{wxdataobject}}{Data object class}
c03648c2 531\twocolitem{\helpref{wxDataFormat}{wxdataformat}}{Represents a data format}
dface61c 532\twocolitem{\helpref{wxTextDataObject}{wxtextdataobject}}{Text data object class}
5ab2950d 533\twocolitem{\helpref{wxFileDataObject}{wxfiledataobject}}{File data object class}
dface61c 534\twocolitem{\helpref{wxBitmapDataObject}{wxbitmapdataobject}}{Bitmap data object class}
c959d912 535\twocolitem{\helpref{wxURLDataObject}{wxurldataobject}}{URL data object class}
0a2017e0 536\twocolitem{\helpref{wxCustomDataObject}{wxcustomdataobject}}{Custom data object class}
dface61c 537\twocolitem{\helpref{wxClipboard}{wxclipboard}}{Clipboard class}
5aa5e35a
RR
538\twocolitem{\helpref{wxDropTarget}{wxdroptarget}}{Drop target class}
539\twocolitem{\helpref{wxFileDropTarget}{wxfiledroptarget}}{File drop target class}
540\twocolitem{\helpref{wxTextDropTarget}{wxtextdroptarget}}{Text drop target class}
541\twocolitem{\helpref{wxDropSource}{wxdropsource}}{Drop source class}
dface61c
JS
542\end{twocollist}
543
247aba10
VZ
544{\large {\bf File related classes}}
545
fc2171bd 546wxWidgets has several small classes to work with disk files, see \helpref{file classes
247aba10
VZ
547overview}{wxfileoverview} for more details.
548
1c0c339c 549\twocolwidtha{6cm}
247aba10 550\begin{twocollist}\itemsep=0pt
2569938d 551\twocolitem{\helpref{wxFileName}{wxfilename}}{Operations with the file name and attributes}
4afd7529 552\twocolitem{\helpref{wxDir}{wxdir}}{Class for enumerating files/subdirectories.}
509cd921 553\twocolitem{\helpref{wxDirTraverser}{wxdirtraverser}}{Class used together with wxDir for recursively enumerating the files/subdirectories}
842d6c94
RR
554\twocolitem{\helpref{wxFile}{wxfile}}{Low-level file input/output class.}
555\twocolitem{\helpref{wxFFile}{wxffile}}{Another low-level file input/output class.}
247aba10
VZ
556\twocolitem{\helpref{wxTempFile}{wxtempfile}}{Class to safely replace an existing file}
557\twocolitem{\helpref{wxTextFile}{wxtextfile}}{Class for working with text files as with arrays of lines}
a8d08dbd 558\twocolitem{\helpref{wxStandardPaths}{wxstandardpaths}}{Paths for standard directories}
c34b5c57 559\twocolitem{\helpref{wxPathList}{wxpathlist}}{A class to help search multiple paths}
247aba10
VZ
560\end{twocollist}
561
631f1bfe
JS
562{\large {\bf Stream classes}}
563
fc2171bd 564wxWidgets has its own set of stream classes, as an alternative to often buggy standard stream
631f1bfe
JS
565libraries, and to provide enhanced functionality.
566
1c0c339c 567\twocolwidtha{6cm}
631f1bfe
JS
568\begin{twocollist}\itemsep=0pt
569\twocolitem{\helpref{wxStreamBase}{wxstreambase}}{Stream base class}
570\twocolitem{\helpref{wxStreamBuffer}{wxstreambuffer}}{Stream buffer class}
571\twocolitem{\helpref{wxInputStream}{wxinputstream}}{Input stream class}
572\twocolitem{\helpref{wxOutputStream}{wxoutputstream}}{Output stream class}
d984207c 573\twocolitem{\helpref{wxCountingOutputStream}{wxcountingoutputstream}}{Stream class for querying what size a stream would have.}
631f1bfe
JS
574\twocolitem{\helpref{wxFilterInputStream}{wxfilterinputstream}}{Filtered input stream class}
575\twocolitem{\helpref{wxFilterOutputStream}{wxfilteroutputstream}}{Filtered output stream class}
d984207c
RR
576\twocolitem{\helpref{wxBufferedInputStream}{wxbufferedinputstream}}{Buffered input stream class}
577\twocolitem{\helpref{wxBufferedOutputStream}{wxbufferedoutputstream}}{Buffered output stream class}
2bf8e4eb
RR
578\twocolitem{\helpref{wxMemoryInputStream}{wxmeminputstream}}{Memory input stream class}
579\twocolitem{\helpref{wxMemoryOutputStream}{wxmemoutputstream}}{Memory output stream class}
7ff14117
RR
580\twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent binary data input stream class}
581\twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent binary data output stream class}
582\twocolitem{\helpref{wxTextInputStream}{wxtextinputstream}}{Platform-independent text data input stream class}
583\twocolitem{\helpref{wxTextOutputStream}{wxtextoutputstream}}{Platform-independent text data output stream class}
631f1bfe
JS
584\twocolitem{\helpref{wxFileInputStream}{wxfileinputstream}}{File input stream class}
585\twocolitem{\helpref{wxFileOutputStream}{wxfileoutputstream}}{File output stream class}
842d6c94
RR
586\twocolitem{\helpref{wxFFileInputStream}{wxffileinputstream}}{Another file input stream class}
587\twocolitem{\helpref{wxFFileOutputStream}{wxffileoutputstream}}{Another file output stream class}
e1265174 588\twocolitem{\helpref{wxTempFileOutputStream}{wxtempfileoutputstream}}{Stream to safely replace an existing file}
121fa06a
VZ
589\twocolitem{\helpref{wxStringInputStream}{wxstringinputstream}}{String input stream class}
590\twocolitem{\helpref{wxStringOutputStream}{wxstringoutputstream}}{String output stream class}
b34c7f3c
MW
591\twocolitem{\helpref{wxZlibInputStream}{wxzlibinputstream}}{Zlib and gzip (compression) input stream class}
592\twocolitem{\helpref{wxZlibOutputStream}{wxzliboutputstream}}{Zlib and gzip (compression) output stream class}
738bfca9 593\twocolitem{\helpref{wxZipInputStream}{wxzipinputstream}}{Input stream for reading from ZIP archives}
df467a9d 594\twocolitem{\helpref{wxZipOutputStream}{wxzipoutputstream}}{Output stream for writing from ZIP archives}
b34c7f3c
MW
595\twocolitem{\helpref{wxTarInputStream}{wxtarinputstream}}{Input stream for reading from tar archives}
596\twocolitem{\helpref{wxTarOutputStream}{wxtaroutputstream}}{Output stream for writing from tar archives}
631f1bfe
JS
597\twocolitem{\helpref{wxSocketInputStream}{wxsocketinputstream}}{Socket input stream class}
598\twocolitem{\helpref{wxSocketOutputStream}{wxsocketoutputstream}}{Socket output stream class}
599\end{twocollist}
600
238ddd26
RR
601{\large {\bf Threading classes}}
602
603\overview{Multithreading overview}{wxthreadoverview}
738bfca9 604
fc2171bd 605wxWidgets provides a set of classes to make use of the native thread
238ddd26
RR
606capabilities of the various platforms.
607
1c0c339c 608\twocolwidtha{6cm}
238ddd26
RR
609\begin{twocollist}\itemsep=0pt
610\twocolitem{\helpref{wxThread}{wxthread}}{Thread class}
78ee6a47 611\twocolitem{\helpref{wxThreadHelper}{wxthreadhelper}}{Manages background threads easily}
238ddd26
RR
612\twocolitem{\helpref{wxMutex}{wxmutex}}{Mutex class}
613\twocolitem{\helpref{wxMutexLocker}{wxmutexlocker}}{Mutex locker utility class}
614\twocolitem{\helpref{wxCriticalSection}{wxcriticalsection}}{Critical section class}
f6bcfd97 615\twocolitem{\helpref{wxCriticalSectionLocker}{wxcriticalsectionlocker}}{Critical section locker utility class}
88413fec 616\twocolitem{\helpref{wxCondition}{wxcondition}}{Condition class}
be809868 617\twocolitem{\helpref{wxSemaphore}{wxsemaphore}}{Semaphore class}
238ddd26
RR
618\end{twocollist}
619
620{\large {\bf HTML classes}}
621
fc2171bd 622wxWidgets provides a set of classes to display text in HTML format. These
238ddd26 623class include a help system based on the HTML widget.
738bfca9 624
1c0c339c 625\twocolwidtha{6cm}
738bfca9
VS
626\begin{twocollist}\itemsep=0pt
627\twocolitem{\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}}{HTML help controller class}
628\twocolitem{\helpref{wxHtmlWindow}{wxhtmlwindow}}{HTML window class}
e5436d59
VS
629\twocolitem{\helpref{wxHtmlEasyPrinting}{wxhtmleasyprinting}}{Simple class for printing HTML}
630\twocolitem{\helpref{wxHtmlPrintout}{wxhtmlprintout}}{Generic HTML wxPrintout class}
738bfca9
VS
631\twocolitem{\helpref{wxHtmlParser}{wxhtmlparser}}{Generic HTML parser class}
632\twocolitem{\helpref{wxHtmlTagHandler}{wxhtmltaghandler}}{HTML tag handler, pluginable into wxHtmlParser}
633\twocolitem{\helpref{wxHtmlWinParser}{wxhtmlwinparser}}{HTML parser class for wxHtmlWindow}
634\twocolitem{\helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}}{HTML tag handler, pluginable into wxHtmlWinParser}
635\end{twocollist}
636
4aeaf419
JS
637{\large {\bf Rich text classes}}
638
639wxWidgets provides a set of generic classes to edit and print simple rich text with character
640and paragraph formatting.
641
642\twocolwidtha{6cm}
643\begin{twocollist}\itemsep=0pt
78cb09ec 644\twocolitem{\helpref{wxTextAttr}{wxtextattr}}{Attributes specifying text styling.}
4aeaf419
JS
645\twocolitem{\helpref{wxRichTextCtrl}{wxrichtextctrl}}{A rich text control.}
646\twocolitem{\helpref{wxRichTextBuffer}{wxrichtextbuffer}}{The content of a rich text control.}
4aeaf419
JS
647\twocolitem{\helpref{wxRichTextCharacterStyleDefinition}{wxrichtextcharacterstyledefinition}}{Definition of character styling.}
648\twocolitem{\helpref{wxRichTextParagraphStyleDefinition}{wxrichtextparagraphstyledefinition}}{Definition of paragraph styling.}
649\twocolitem{\helpref{wxRichTextListStyleDefinition}{wxrichtextliststyledefinition}}{Definition of list styling.}
650\twocolitem{\helpref{wxRichTextStyleSheet}{wxrichtextstylesheet}}{A set of style definitions.}
651\twocolitem{\helpref{wxRichTextStyleComboCtrl}{wxrichtextstylecomboctrl}}{A drop-down control for applying styles.}
652\twocolitem{\helpref{wxRichTextStyleListBox}{wxrichtextstylelistbox}}{A listbox for applying styles.}
21fae46d 653\twocolitem{\helpref{wxRichTextStyleOrganiserDialog}{wxrichtextstyleorganiserdialog}}{A dialog that can be used for managing or browsing styles.}
4aeaf419
JS
654\twocolitem{\helpref{wxRichTextEvent}{wxrichtextevent}}{A rich text event.}
655\twocolitem{\helpref{wxRichTextRange}{wxrichtextrange}}{Specification for ranges in a rich text control or buffer.}
656\twocolitem{\helpref{wxRichTextFileHandler}{wxrichtextfilehandler}}{File handler base class.}
657\twocolitem{\helpref{wxRichTextHTMLHandler}{wxrichtexthtmlhandler}}{A handler for converting rich text to HTML.}
658\twocolitem{\helpref{wxRichTextXMLHandler}{wxrichtextxmlhandler}}{A handler for loading and saving rich text XML.}
659\twocolitem{\helpref{wxRichTextFormattingDialog}{wxrichtextformattingdialog}}{A dialog for rich text formatting.}
660\twocolitem{\helpref{wxRichTextPrinting}{wxrichtextprinting}}{A class for easy printing of rich text buffers.}
661\twocolitem{\helpref{wxRichTextPrintout}{wxrichtextprintout}}{A class used by wxRichTextPrinting.}
662\twocolitem{\helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata}}{Header and footer data specification.}
663\end{twocollist}
664
c34b5c57
FM
665{\large {\bf Scintilla text editor classes}}
666
667wxWidgets also provides a wrapper around the Scintilla text editor control, which is
668a control for plain-text editing with support for highlighting, smart indentation, etc.
669
670\twocolwidtha{6cm}
671\begin{twocollist}\itemsep=0pt
672\twocolitem{\helpref{wxStyledTextCtrl}{wxstyledtextctrl}}{A wxWidgets implementation of the Scintilla source code editing component.}
673\end{twocollist}
674
88413fec
RR
675{\large {\bf Virtual file system classes}}
676
fc2171bd 677wxWidgets provides a set of classes that implement an extensible virtual file system,
88413fec
RR
678used internally by the HTML classes.
679
1c0c339c 680\twocolwidtha{6cm}
88413fec
RR
681\begin{twocollist}\itemsep=0pt
682\twocolitem{\helpref{wxFSFile}{wxfsfile}}{Represents a file in the virtual file system}
683\twocolitem{\helpref{wxFileSystem}{wxfilesystem}}{Main interface for the virtual file system}
684\twocolitem{\helpref{wxFileSystemHandler}{wxfilesystemhandler}}{Class used to announce file system type}
685\end{twocollist}
686
3193b86f
VZ
687{\large {\bf XML classes}}
688
689\twocolwidtha{6cm}
690\begin{twocollist}\itemsep=0pt
44f2a3d1
RR
691\twocolitem{\helpref{wxXmlDocument}{wxxmldocument}}{A class to parse XML files}
692\twocolitem{\helpref{wxXmlNode}{wxxmlnode}}{A class which represents XML nodes}
693\twocolitem{\helpref{wxXmlAttribute}{wxxmlattribute}}{A class which represent an XML attribute}
3193b86f
VZ
694\end{twocollist}
695
d958c9bd
JS
696{\large {\bf XML-based resource system classes}}
697
3980000c 698\overview{XML-based resource system (XRC) overview}{xrcoverview}
d958c9bd
JS
699
700Resources allow your application to create controls and other user interface elements
701from specifications stored in an XML format.
702
1c0c339c 703\twocolwidtha{6cm}
d958c9bd 704\begin{twocollist}\itemsep=0pt
44f2a3d1
RR
705\twocolitem{\helpref{wxXmlResource}{wxxmlresource}}{The main class for working with resources}
706\twocolitem{\helpref{wxXmlResourceHandler}{wxxmlresourcehandler}}{The base class for XML resource handlers}
d958c9bd
JS
707\end{twocollist}
708
7cb74906
JS
709{\large {\bf Online help}}
710
1c0c339c 711\twocolwidtha{6cm}
7cb74906
JS
712\begin{twocollist}\itemsep=0pt
713\twocolitem{\helpref{wxHelpController}{wxhelpcontroller}}{Family of classes for controlling help windows}
714\twocolitem{\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}}{HTML help controller class}
715\twocolitem{\helpref{wxContextHelp}{wxcontexthelp}}{Class to put application into context-sensitive help mode}
716\twocolitem{\helpref{wxContextHelpButton}{wxcontexthelpbutton}}{Button class for putting application into context-sensitive help mode}
717\twocolitem{\helpref{wxHelpProvider}{wxhelpprovider}}{Abstract class for context-sensitive help provision}
718\twocolitem{\helpref{wxSimpleHelpProvider}{wxsimplehelpprovider}}{Class for simple context-sensitive help provision}
719\twocolitem{\helpref{wxHelpControllerHelpProvider}{wxhelpcontrollerhelpprovider}}{Class for context-sensitive help provision via a help controller}
720\twocolitem{\helpref{wxToolTip}{wxtooltip}}{Class implementing tooltips}
721\end{twocollist}
722
c34b5c57
FM
723{\large {\bf Multimedia classes}}
724
725\twocolwidtha{6cm}
726\begin{twocollist}\itemsep=0pt
727\twocolitem{\helpref{wxMediaCtrl}{wxmediactrl}}{Display multimedia contents.}
728\end{twocollist}
729
730{\large {\bf OpenGL classes}}
731
732\twocolwidtha{6cm}
733\begin{twocollist}\itemsep=0pt
734\twocolitem{\helpref{wxGLCanvas}{wxglcanvas}}{Canvas that you can render OpenGL calls to.}
735\twocolitem{\helpref{wxGLContext}{wxglcontext}}{Class to ease sharing of OpenGL data resources.}
736\end{twocollist}
737
738{\large {\bf Application and process-management classes}}
a660d684 739
1c0c339c 740\twocolwidtha{6cm}
a660d684
KB
741\begin{twocollist}\itemsep=0pt
742\twocolitem{\helpref{wxApp}{wxapp}}{Application class}
f6bcfd97 743\twocolitem{\helpref{wxCmdLineParser}{wxcmdlineparser}}{Command line parser class}
f6bcfd97 744\twocolitem{\helpref{wxDllLoader}{wxdllloader}}{Class to work with shared libraries.}
3972fb49 745\twocolitem{\helpref{wxProcess}{wxprocess}}{Process class}
c34b5c57
FM
746\end{twocollist}
747
748{\large {\bf Miscellaneous}}
749
750\twocolwidtha{6cm}
751\begin{twocollist}\itemsep=0pt
752\twocolitem{\helpref{wxCaret}{wxcaret}}{A caret (cursor) object}
753\twocolitem{\helpref{wxConfig}{wxconfigbase}}{Classes for configuration reading/writing (using either INI files or registry)}
a660d684 754\twocolitem{\helpref{wxTimer}{wxtimer}}{Timer class}
5f445b31 755\twocolitem{\helpref{wxStopWatch}{wxstopwatch}}{Stop watch class}
88413fec 756\twocolitem{\helpref{wxMimeTypesManager}{wxmimetypesmanager}}{MIME-types manager class}
0cbff120
JS
757\twocolitem{\helpref{wxSystemSettings}{wxsystemsettings}}{System settings class for obtaining various global parameters}
758\twocolitem{\helpref{wxSystemOptions}{wxsystemoptions}}{System options class for run-time configuration}
238ddd26
RR
759\twocolitem{\helpref{wxAcceleratorTable}{wxacceleratortable}}{Accelerator table}
760\twocolitem{\helpref{wxAutomationObject}{wxautomationobject}}{OLE automation class}
5d9dba5b
VS
761\twocolitem{\helpref{wxFontMapper}{wxfontmapper}}{Font mapping, finding suitable font for given encoding}
762\twocolitem{\helpref{wxEncodingConverter}{wxencodingconverter}}{Encoding conversions}
f6bcfd97 763\twocolitem{\helpref{wxCalendarDateAttr}{wxcalendardateattr}}{Used with \helpref{wxCalendarCtrl}{wxcalendarctrl}}
e3c10211 764\twocolitem{\helpref{wxQuantize}{wxquantize}}{Class to perform quantization, or colour reduction}
68a602fc 765\twocolitem{\helpref{wxSingleInstanceChecker}{wxsingleinstancechecker}}{Check that only single program instance is running}
238ddd26 766\end{twocollist}