]>
Commit | Line | Data |
---|---|---|
a660d684 KB |
1 | \chapter{Classes by category}\label{classesbycat} |
2 | \setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}% | |
3 | \setfooter{\thepage}{}{}{}{}{\thepage}% | |
4 | ||
5 | A classification of wxWindows classes by category. | |
6 | \twocolwidtha{5cm} | |
7 | ||
8 | {\large {\bf Managed windows}} | |
9 | ||
10 | There are several types of window that are directly controlled by the | |
11 | window manager (such as MS Windows, or the Motif Window Manager). | |
12 | Frames may contain windows, and dialog boxes may directly contain controls. | |
13 | ||
14 | \begin{twocollist}\itemsep=0pt | |
15 | \twocolitem{\helpref{wxDialog}{wxdialog}}{Dialog box} | |
16 | \twocolitem{\helpref{wxFrame}{wxframe}}{Normal frame} | |
a660d684 | 17 | \twocolitem{\helpref{wxMDIChildFrame}{wxmdichildframe}}{MDI child frame} |
e3c10211 | 18 | \twocolitem{\helpref{wxMDIParentFrame}{wxmdiparentframe}}{MDI parent frame} |
a660d684 | 19 | \twocolitem{\helpref{wxMiniFrame}{wxminiframe}}{A frame with a small title bar} |
e3c10211 | 20 | \twocolitem{\helpref{wxSplashScreen}{wxsplashscreen}}{Splash screen class} |
d7da9756 VZ |
21 | \twocolitem{\helpref{wxTabbedDialog}{wxtabbeddialog}}{Tabbed dialog |
22 | (deprecated, use wxNotebook instead)} | |
e3c10211 JS |
23 | \twocolitem{\helpref{wxTipWindow}{wxtipwindow}}{Shows text in a small window} |
24 | \twocolitem{\helpref{wxWizard}{wxwizard}}{A wizard dialog} | |
a660d684 KB |
25 | \end{twocollist} |
26 | ||
27 | See also {\bf Common dialogs}. | |
28 | ||
29 | {\large {\bf Miscellaneous windows}} | |
30 | ||
d7da9756 | 31 | The following are a variety of classes that are derived from wxWindow. |
a660d684 KB |
32 | |
33 | \begin{twocollist}\itemsep=0pt | |
a660d684 KB |
34 | \twocolitem{\helpref{wxPanel}{wxpanel}}{A window whose colour changes according to current user settings} |
35 | \twocolitem{\helpref{wxScrolledWindow}{wxscrolledwindow}}{Window with automatically managed scrollbars} | |
a5a0dd06 | 36 | \twocolitem{\helpref{wxGrid}{wxgrid}}{A grid (table) window} |
a660d684 KB |
37 | \twocolitem{\helpref{wxSplitterWindow}{wxsplitterwindow}}{Window which can be split vertically or horizontally} |
38 | \twocolitem{\helpref{wxStatusBar}{wxstatusbar}}{Implements the status bar on a frame} | |
81d66cf3 | 39 | \twocolitem{\helpref{wxToolBar}{wxtoolbar}}{Toolbar class} |
3972fb49 JS |
40 | %\twocolitem{\helpref{wxTabbedPanel}{wxtabbedpanel}}{Tabbed panel (to be replaced with wxNotebook)} |
41 | \twocolitem{\helpref{wxNotebook}{wxnotebook}}{Notebook class} | |
a5a0dd06 RR |
42 | \twocolitem{\helpref{wxPlotWindow}{wxplotwindow}}{A class to display data.} |
43 | \twocolitem{\helpref{wxSashWindow}{wxsashwindow}}{Window with four optional sashes that can be dragged} | |
44 | \twocolitem{\helpref{wxSashLayoutWindow}{wxsashlayoutwindow}}{Window that can be involved in an IDE-like layout arrangement} | |
f6bcfd97 BP |
45 | \twocolitem{\helpref{wxWizardPage}{wxwizardpage}}{A base class for the page in wizard dialog.} |
46 | \twocolitem{\helpref{wxWizardPageSimple}{wxwizardpagesimple}}{A page in wizard dialog.} | |
a660d684 KB |
47 | \end{twocollist} |
48 | ||
49 | {\large {\bf Common dialogs}} | |
50 | ||
51 | \overview{Overview}{commondialogsoverview} | |
52 | ||
53 | Common dialogs are ready-made dialog classes which are frequently used | |
54 | in an application. | |
55 | ||
56 | \begin{twocollist}\itemsep=0pt | |
57 | \twocolitem{\helpref{wxDialog}{wxdialog}}{Base class for common dialogs} | |
58 | \twocolitem{\helpref{wxColourDialog}{wxcolourdialog}}{Colour chooser dialog} | |
59 | \twocolitem{\helpref{wxDirDialog}{wxdirdialog}}{Directory selector dialog} | |
60 | \twocolitem{\helpref{wxFileDialog}{wxfiledialog}}{File selector dialog} | |
61 | \twocolitem{\helpref{wxMultipleChoiceDialog}{wxmultiplechoicedialog}}{Dialog to get one or more selections from a list} | |
62 | \twocolitem{\helpref{wxSingleChoiceDialog}{wxsinglechoicedialog}}{Dialog to get a single selection from a list and return the string} | |
63 | \twocolitem{\helpref{wxTextEntryDialog}{wxtextentrydialog}}{Dialog to get a single line of text from the user} | |
64 | \twocolitem{\helpref{wxFontDialog}{wxfontdialog}}{Font chooser dialog} | |
65 | \twocolitem{\helpref{wxPageSetupDialog}{wxpagesetupdialog}}{Standard page setup dialog} | |
66 | \twocolitem{\helpref{wxPrintDialog}{wxprintdialog}}{Standard print dialog} | |
7bcb11d3 | 67 | \twocolitem{\helpref{wxPageSetupDialog}{wxpagesetupdialog}}{Standard page setup dialog} |
a660d684 | 68 | \twocolitem{\helpref{wxMessageDialog}{wxmessagedialog}}{Simple message box dialog} |
f6bcfd97 | 69 | \twocolitem{\helpref{wxWizard}{wxwizard}}{A wizard dialog.} |
a660d684 KB |
70 | \end{twocollist} |
71 | ||
72 | {\large {\bf Controls}} | |
73 | ||
74 | Typically, these are small windows which provide interaction with the user. Controls | |
75 | that are not static can have \helpref{validators}{wxvalidator} associated with them. | |
76 | ||
77 | \begin{twocollist}\itemsep=0pt | |
78 | \twocolitem{\helpref{wxControl}{wxcontrol}}{The base class for controls} | |
79 | \twocolitem{\helpref{wxButton}{wxbutton}}{Push button control, displaying text} | |
80 | \twocolitem{\helpref{wxBitmapButton}{wxbitmapbutton}}{Push button control, displaying a bitmap} | |
f6bcfd97 | 81 | \twocolitem{\helpref{wxCalendarCtrl}{wxcalendarctrl}}{Date picker control} |
a660d684 KB |
82 | \twocolitem{\helpref{wxCheckBox}{wxcheckbox}}{Checkbox control} |
83 | \twocolitem{\helpref{wxCheckListBox}{wxchecklistbox}}{A listbox with a checkbox to the left of each item} | |
84 | \twocolitem{\helpref{wxChoice}{wxchoice}}{Choice control (a combobox without the editable area)} | |
85 | \twocolitem{\helpref{wxComboBox}{wxcombobox}}{A choice with an editable area} | |
86 | \twocolitem{\helpref{wxGauge}{wxgauge}}{A control to represent a varying quantity, such as time remaining} | |
2f3ebe4c | 87 | \twocolitem{\helpref{wxGenericDirCtrl}{wxgenericdirctrl}}{A control for displaying a directory tree} |
a660d684 KB |
88 | \twocolitem{\helpref{wxStaticBox}{wxstaticbox}}{A static, or group box for visually grouping related controls} |
89 | \twocolitem{\helpref{wxListBox}{wxlistbox}}{A list of strings for single or multiple selection} | |
90 | \twocolitem{\helpref{wxListCtrl}{wxlistctrl}}{A control for displaying lists of strings and/or icons, plus a multicolumn report view} | |
91 | \twocolitem{\helpref{wxTabCtrl}{wxtabctrl}}{Manages several tabs} | |
f6bcfd97 BP |
92 | \twocolitem{\helpref{wxTextCtrl}{wxtextctrl}}{Single or multiline text editing control} |
93 | \twocolitem{\helpref{wxTreeCtrl}{wxtreectrl}}{Tree (hierarchy) control} | |
a660d684 KB |
94 | \twocolitem{\helpref{wxScrollBar}{wxscrollbar}}{Scrollbar control} |
95 | \twocolitem{\helpref{wxSpinButton}{wxspinbutton}}{A spin or `up-down' control} | |
5d9dba5b | 96 | \twocolitem{\helpref{wxSpinCtrl}{wxspinctrl}}{A spin control - i.e. spin button and text control} |
a660d684 KB |
97 | \twocolitem{\helpref{wxStaticText}{wxstatictext}}{One or more lines of non-editable text} |
98 | \twocolitem{\helpref{wxStaticBitmap}{wxstaticbitmap}}{A control to display a bitmap} | |
99 | \twocolitem{\helpref{wxRadioBox}{wxradiobox}}{A group of radio buttons} | |
100 | \twocolitem{\helpref{wxRadioButton}{wxradiobutton}}{A round button to be used with others in a mutually exclusive way} | |
101 | \twocolitem{\helpref{wxSlider}{wxslider}}{A slider that can be dragged by the user} | |
102 | \end{twocollist} | |
103 | ||
104 | {\large {\bf Menus}} | |
105 | ||
106 | \begin{twocollist}\itemsep=0pt | |
107 | \twocolitem{\helpref{wxMenu}{wxmenu}}{Displays a series of menu items for selection} | |
108 | \twocolitem{\helpref{wxMenuBar}{wxmenubar}}{Contains a series of menus for use with a frame} | |
109 | \twocolitem{\helpref{wxMenuItem}{wxmenuitem}}{Represents a single menu item} | |
110 | \end{twocollist} | |
111 | ||
112 | {\large {\bf Window layout}} | |
113 | ||
f6bcfd97 | 114 | There are two different systems for layouting windows (and dialogs in particular). |
515da557 RR |
115 | One is based upon so-called sizers and it requires less typing, thinking and calculating |
116 | and will in almost all cases produce dialogs looking equally well on all platforms, the | |
117 | other is based on so-called constraints and allows for more detailed layouts. | |
a660d684 | 118 | |
515da557 RR |
119 | These are the classes relevant to the sizer-based layout. |
120 | ||
121 | \begin{twocollist}\itemsep=0pt | |
122 | \twocolitem{\helpref{wxSizer}{wxsizer}}{Abstract base class} | |
f6bcfd97 BP |
123 | \twocolitem{\helpref{wxGridSizer}{wxgridsizer}}{A sizer for laying out windows in a grid with all fields having the same size} |
124 | \twocolitem{\helpref{wxFlexGridSizer}{wxflexgridsizer}}{A sizer for laying out windows in a flexible grid} | |
515da557 RR |
125 | \twocolitem{\helpref{wxBoxSizer}{wxboxsizer}}{A sizer for laying out windows in a row or column} |
126 | \twocolitem{\helpref{wxStaticBoxSizer}{wxstaticboxsizer}}{Same as wxBoxSizer, but with surrounding static box} | |
85ec2f26 | 127 | \twocolitem{\helpref{wxNotebookSizer}{wxnotebooksizer}}{Sizer to use with the wxNotebook control.} |
515da557 RR |
128 | \end{twocollist} |
129 | ||
130 | \overview{Overview}{constraintsoverview} over the constraints-based layout. | |
131 | ||
132 | These are the classes relevant to constraints-based window layout. | |
a660d684 KB |
133 | |
134 | \begin{twocollist}\itemsep=0pt | |
135 | \twocolitem{\helpref{wxIndividualLayoutConstraint}{wxindividuallayoutconstraint}}{Represents a single constraint dimension} | |
136 | \twocolitem{\helpref{wxLayoutConstraints}{wxlayoutconstraints}}{Represents the constraints for a window class} | |
137 | \end{twocollist} | |
138 | ||
139 | {\large {\bf Device contexts}} | |
140 | ||
141 | \overview{Overview}{dcoverview} | |
142 | ||
143 | Device contexts are surfaces that may be drawn on, and provide an | |
144 | abstraction that allows parameterisation of your drawing code | |
145 | by passing different device contexts. | |
146 | ||
147 | \begin{twocollist}\itemsep=0pt | |
148 | \twocolitem{\helpref{wxClientDC}{wxclientdc}}{A device context to access the client area outside {\bf OnPaint} events} | |
149 | \twocolitem{\helpref{wxPaintDC}{wxpaintdc}}{A device context to access the client area inside {\bf OnPaint} events} | |
150 | \twocolitem{\helpref{wxWindowDC}{wxwindowdc}}{A device context to access the non-client area} | |
151 | \twocolitem{\helpref{wxScreenDC}{wxscreendc}}{A device context to access the entire screen} | |
152 | \twocolitem{\helpref{wxDC}{wxdc}}{The device context base class} | |
153 | \twocolitem{\helpref{wxMemoryDC}{wxmemorydc}}{A device context for drawing into bitmaps} | |
e2a6f233 | 154 | \twocolitem{\helpref{wxMetafileDC}{wxmetafiledc}}{A device context for drawing into metafiles} |
a660d684 KB |
155 | \twocolitem{\helpref{wxPostScriptDC}{wxpostscriptdc}}{A device context for drawing into PostScript files} |
156 | \twocolitem{\helpref{wxPrinterDC}{wxprinterdc}}{A device context for drawing to printers} | |
157 | \end{twocollist} | |
158 | ||
159 | {\large {\bf Graphics device interface}} | |
160 | ||
161 | \overview{Bitmaps overview}{wxbitmapoverview} | |
162 | ||
163 | These classes are related to drawing on device contexts and windows. | |
164 | ||
165 | \begin{twocollist}\itemsep=0pt | |
166 | \twocolitem{\helpref{wxColour}{wxcolour}}{Represents the red, blue and green elements of a colour} | |
167 | \twocolitem{\helpref{wxBitmap}{wxbitmap}}{Represents a bitmap} | |
168 | \twocolitem{\helpref{wxBrush}{wxbrush}}{Used for filling areas on a device context} | |
169 | \twocolitem{\helpref{wxBrushList}{wxbrushlist}}{The list of previously-created brushes} | |
170 | \twocolitem{\helpref{wxCursor}{wxcursor}}{A small, transparent bitmap representing the cursor} | |
171 | \twocolitem{\helpref{wxFont}{wxfont}}{Represents fonts} | |
172 | \twocolitem{\helpref{wxFontList}{wxfontlist}}{The list of previously-created fonts} | |
173 | \twocolitem{\helpref{wxIcon}{wxicon}}{A small, transparent bitmap for assigning to frames and drawing on device contexts} | |
89c684ef | 174 | \twocolitem{\helpref{wxImage}{wximage}}{A platform-independent image class} |
a660d684 KB |
175 | \twocolitem{\helpref{wxImageList}{wximagelist}}{A list of images, used with some controls} |
176 | \twocolitem{\helpref{wxMask}{wxmask}}{Represents a mask to be used with a bitmap for transparent drawing} | |
177 | \twocolitem{\helpref{wxPen}{wxpen}}{Used for drawing lines on a device context} | |
178 | \twocolitem{\helpref{wxPenList}{wxpenlist}}{The list of previously-created pens} | |
179 | \twocolitem{\helpref{wxPalette}{wxpalette}}{Represents a table of indices into RGB values} | |
180 | \twocolitem{\helpref{wxRegion}{wxregion}}{Represents a simple or complex region on a window or device context} | |
181 | \end{twocollist} | |
182 | ||
183 | {\large {\bf Events}} | |
184 | ||
185 | \overview{Overview}{eventhandlingoverview} | |
186 | ||
187 | An event object contains information about a specific event. Event handlers | |
188 | (usually member functions) have a single, event argument. | |
189 | ||
190 | \begin{twocollist}\itemsep=0pt | |
191 | \twocolitem{\helpref{wxActivateEvent}{wxactivateevent}}{A window or application activation event} | |
f6bcfd97 | 192 | \twocolitem{\helpref{wxCalendarEvent}{wxcalendarevent}}{Used with \helpref{wxCalendarCtrl}{wxcalendarctrl}} |
6fb26ea3 | 193 | \twocolitem{\helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent}}{Used to calculate window layout} |
a660d684 KB |
194 | \twocolitem{\helpref{wxCloseEvent}{wxcloseevent}}{A close window or end session event} |
195 | \twocolitem{\helpref{wxCommandEvent}{wxcommandevent}}{An event from a variety of standard controls} | |
f6bcfd97 | 196 | \twocolitem{\helpref{wxDialUpEvent}{wxdialupevent}}{Event send by \helpref{wxDialUpManager}{wxdialupmanager}} |
a660d684 KB |
197 | \twocolitem{\helpref{wxDropFilesEvent}{wxdropfilesevent}}{A drop files event} |
198 | \twocolitem{\helpref{wxEraseEvent}{wxeraseevent}}{An erase background event} | |
199 | \twocolitem{\helpref{wxEvent}{wxevent}}{The event base class} | |
200 | \twocolitem{\helpref{wxFocusEvent}{wxfocusevent}}{A window focus event} | |
201 | \twocolitem{\helpref{wxKeyEvent}{wxkeyevent}}{A keypress event} | |
202 | \twocolitem{\helpref{wxIdleEvent}{wxidleevent}}{An idle event} | |
203 | \twocolitem{\helpref{wxInitDialogEvent}{wxinitdialogevent}}{A dialog initialisation event} | |
204 | \twocolitem{\helpref{wxJoystickEvent}{wxjoystickevent}}{A joystick event} | |
205 | \twocolitem{\helpref{wxListEvent}{wxlistevent}}{A list control event} | |
206 | \twocolitem{\helpref{wxMenuEvent}{wxmenuevent}}{A menu event} | |
207 | \twocolitem{\helpref{wxMouseEvent}{wxmouseevent}}{A mouse event} | |
208 | \twocolitem{\helpref{wxMoveEvent}{wxmoveevent}}{A move event} | |
3972fb49 | 209 | \twocolitem{\helpref{wxNotebookEvent}{wxnotebookevent}}{A notebook control event} |
fd128b0c | 210 | \twocolitem{\helpref{wxNotifyEvent}{wxnotifyevent}}{A notification event, which can be vetoed} |
a660d684 | 211 | \twocolitem{\helpref{wxPaintEvent}{wxpaintevent}}{A paint event} |
3972fb49 | 212 | \twocolitem{\helpref{wxProcessEvent}{wxprocessevent}}{A process ending event} |
6fb26ea3 | 213 | \twocolitem{\helpref{wxQueryLayoutInfoEvent}{wxquerylayoutinfoevent}}{Used to query layout information} |
fd128b0c RR |
214 | \twocolitem{\helpref{wxScrollEvent}{wxscrollevent}}{A scroll event from sliders, stand-alone scrollbars and spin buttons} |
215 | \twocolitem{\helpref{wxScrollWinEvent}{wxscrollwinevent}}{A scroll event from scrolled windows} | |
a660d684 | 216 | \twocolitem{\helpref{wxSizeEvent}{wxsizeevent}}{A size event} |
42ff6409 | 217 | \twocolitem{\helpref{wxSocketEvent}{wxsocketevent}}{A socket event} |
f6bcfd97 | 218 | \twocolitem{\helpref{wxSpinEvent}{wxspinevent}}{An event from \helpref{wxSpinButton}{wxspinbutton}} |
a660d684 | 219 | \twocolitem{\helpref{wxSysColourChangedEvent}{wxsyscolourchangedevent}}{A system colour change event} |
fe604ccd | 220 | \twocolitem{\helpref{wxTabEvent}{wxtabevent}}{A tab control event} |
a660d684 KB |
221 | \twocolitem{\helpref{wxTreeEvent}{wxtreeevent}}{A tree control event} |
222 | \twocolitem{\helpref{wxUpdateUIEvent}{wxupdateuievent}}{A user interface update event} | |
f6bcfd97 | 223 | \twocolitem{\helpref{wxWizardEvent}{wxwizardevent}}{A wizard event} |
a660d684 KB |
224 | \end{twocollist} |
225 | ||
226 | {\large {\bf Validators}} | |
227 | ||
6b037754 JS |
228 | \overview{Overview}{validatoroverview} |
229 | ||
a660d684 KB |
230 | These are the window validators, used for filtering and validating |
231 | user input. | |
232 | ||
233 | \begin{twocollist}\itemsep=0pt | |
89c684ef JS |
234 | \twocolitem{\helpref{wxValidator}{wxvalidator}}{Base validator class} |
235 | \twocolitem{\helpref{wxTextValidator}{wxtextvalidator}}{Text control validator class} | |
236 | \twocolitem{\helpref{wxGenericValidator}{wxgenericvalidator}}{Generic control validator class} | |
a660d684 KB |
237 | \end{twocollist} |
238 | ||
239 | {\large {\bf Data structures}} | |
240 | ||
241 | These are the data structure classes supported by wxWindows. | |
242 | ||
243 | \begin{twocollist}\itemsep=0pt | |
f6bcfd97 | 244 | \twocolitem{\helpref{wxCmdLineParser}{wxcmdlineparser}}{Command line parser class} |
d7da9756 | 245 | \twocolitem{\helpref{wxDate}{wxdate}}{A class for date manipulation (deprecated in favour of wxDateTime)} |
f6bcfd97 | 246 | \twocolitem{\helpref{wxDateSpan}{wxdatespan}}{A logical time interval.} |
d7da9756 | 247 | \twocolitem{\helpref{wxDateTime}{wxdatetime}}{A class for date/time manipulations} |
f6bcfd97 BP |
248 | \twocolitem{\helpref{wxExpr}{wxexpr}}{A class for flexible I/O} |
249 | \twocolitem{\helpref{wxExprDatabase}{wxexprdatabase}}{A class for flexible I/O} | |
a660d684 | 250 | \twocolitem{\helpref{wxHashTable}{wxhashtable}}{A simple hash table implementation} |
d7da9756 | 251 | % \twocolitem{\helpref{wxHashTableLong}{wxhashtablelong}}{A wxHashTable version for storing long data} |
a660d684 | 252 | \twocolitem{\helpref{wxList}{wxlist}}{A simple linked list implementation} |
d7da9756 | 253 | \twocolitem{\helpref{wxLongLong}{wxlonglong}}{A portable 64 bit integer type} |
a660d684 KB |
254 | \twocolitem{\helpref{wxNode}{wxnode}}{Represents a node in the wxList implementation} |
255 | \twocolitem{\helpref{wxObject}{wxobject}}{The root class for most wxWindows classes} | |
256 | \twocolitem{\helpref{wxPathList}{wxpathlist}}{A class to help search multiple paths} | |
257 | \twocolitem{\helpref{wxPoint}{wxpoint}}{Representation of a point} | |
258 | \twocolitem{\helpref{wxRect}{wxrect}}{A class representing a rectangle} | |
259 | \twocolitem{\helpref{wxRegion}{wxregion}}{A class representing a region} | |
260 | \twocolitem{\helpref{wxString}{wxstring}}{A string class} | |
261 | \twocolitem{\helpref{wxStringList}{wxstringlist}}{A class representing a list of strings} | |
9c884972 | 262 | \twocolitem{\helpref{wxStringTokenizer}{wxstringtokenizer}}{A class for interpreting a string as a list of tokens or words} |
a660d684 KB |
263 | \twocolitem{\helpref{wxRealPoint}{wxrealpoint}}{Representation of a point using floating point numbers} |
264 | \twocolitem{\helpref{wxSize}{wxsize}}{Representation of a size} | |
d7da9756 | 265 | \twocolitem{\helpref{wxTime}{wxtime}}{A class for time manipulation (deprecated in favour of wxDateTime)} |
f6bcfd97 | 266 | \twocolitem{\helpref{wxTimeSpan}{wxtimespan}}{A time interval.} |
d7da9756 | 267 | \twocolitem{\helpref{wxVariant}{wxvariant}}{A class for storing arbitrary types that may change at run-time} |
a660d684 KB |
268 | \end{twocollist} |
269 | ||
270 | {\large {\bf Run-time class information system}} | |
271 | ||
272 | \overview{Overview}{runtimeclassoverview} | |
273 | ||
274 | wxWindows supports run-time manipulation of class information, and dynamic | |
275 | creation of objects given class names. | |
276 | ||
277 | \begin{twocollist}\itemsep=0pt | |
278 | \twocolitem{\helpref{wxClassInfo}{wxclassinfo}}{Holds run-time class information} | |
279 | \twocolitem{\helpref{wxObject}{wxobject}}{Root class for classes with run-time information} | |
280 | \twocolitem{\helpref{Macros}{macros}}{Macros for manipulating run-time information} | |
281 | \end{twocollist} | |
282 | ||
283 | {\large {\bf Debugging features}} | |
284 | ||
285 | \overview{Overview}{debuggingoverview} | |
286 | ||
287 | wxWindows supports some aspects of debugging an application through | |
288 | classes, functions and macros. | |
289 | ||
290 | \begin{twocollist}\itemsep=0pt | |
6b037754 | 291 | \twocolitem{\helpref{wxDebugContext}{wxdebugcontext}}{Provides memory-checking facilities} |
6fb26ea3 | 292 | %\twocolitem{\helpref{wxDebugStreamBuf}{wxdebugstreambuf}}{A stream buffer writing to the debug stream} |
42ff6409 | 293 | \twocolitem{\helpref{wxLog}{wxlog}}{Logging facility} |
6fb26ea3 | 294 | \twocolitem{\helpref{Log functions}{logfunctions}}{Error and warning logging functions} |
6b037754 | 295 | \twocolitem{\helpref{Debugging macros}{debugmacros}}{Debug macros for assertion and checking} |
6fb26ea3 JS |
296 | %\twocolitem{\helpref{wxTrace}{wxtrace}}{Tracing facility} |
297 | %\twocolitem{\helpref{wxTraceLevel}{wxtracelevel}}{Tracing facility with levels} | |
a660d684 | 298 | \twocolitem{\helpref{WXDEBUG\_NEW}{debugnew}}{Use this macro to give further debugging information} |
6fb26ea3 JS |
299 | %\twocolitem{\helpref{WXTRACE}{trace}}{Trace macro} |
300 | %\twocolitem{\helpref{WXTRACELEVEL}{tracelevel}}{Trace macro with levels} | |
a660d684 KB |
301 | \end{twocollist} |
302 | ||
238ddd26 RR |
303 | {\large {\bf Networking classes}} |
304 | ||
305 | wxWindows provides its own classes for socket based networking. | |
306 | ||
307 | \begin{twocollist}\itemsep=0pt | |
f6bcfd97 BP |
308 | \twocolitem{\helpref{wxDialUpManager}{wxdialupmanager}}{Provides functions to check the status of network connection and to establish one} |
309 | \twocolitem{\helpref{wxIPV4address}{wxipv4address}}{Represents an Internet address} | |
672186ef | 310 | \twocolitem{\helpref{wxSocketBase}{wxsocketbase}}{Represents a socket base object} |
238ddd26 RR |
311 | \twocolitem{\helpref{wxSocketClient}{wxsocketclient}}{Represents a socket client} |
312 | \twocolitem{\helpref{wxSocketServer}{wxsocketserver}}{Represents a socket server} | |
238ddd26 | 313 | \twocolitem{\helpref{wxSocketEvent}{wxsocketevent}}{A socket event} |
672186ef GRG |
314 | \twocolitem{\helpref{wxFTP}{wxftp}}{FTP protocol class} |
315 | \twocolitem{\helpref{wxHTTP}{wxhttp}}{HTTP protocol class} | |
316 | \twocolitem{\helpref{wxURL}{wxurl}}{Represents a Universal Resource Locator} | |
238ddd26 RR |
317 | \end{twocollist} |
318 | ||
319 | ||
a660d684 KB |
320 | {\large {\bf Interprocess communication}} |
321 | ||
322 | \overview{Overview}{ipcoverview} | |
323 | ||
324 | wxWindows provides a simple interprocess communications facilities | |
672186ef | 325 | based on DDE. |
a660d684 KB |
326 | |
327 | \begin{twocollist}\itemsep=0pt | |
328 | \twocolitem{\helpref{wxDDEClient}{wxddeclient}}{Represents a client} | |
329 | \twocolitem{\helpref{wxDDEConnection}{wxddeconnection}}{Represents the connection between a client and a server} | |
330 | \twocolitem{\helpref{wxDDEServer}{wxddeserver}}{Represents a server} | |
e2a6f233 JS |
331 | \twocolitem{\helpref{wxTCPClient}{wxtcpclient}}{Represents a client} |
332 | \twocolitem{\helpref{wxTCPConnection}{wxtcpconnection}}{Represents the connection between a client and a server} | |
333 | \twocolitem{\helpref{wxTCPServer}{wxtcpserver}}{Represents a server} | |
d7cb14ce | 334 | %\twocolitem{\helpref{wxSocketHandler}{wxsockethandler}}{Represents a socket handler} |
a660d684 KB |
335 | \end{twocollist} |
336 | ||
337 | {\large {\bf Document/view framework}} | |
338 | ||
339 | \overview{Overview}{docviewoverview} | |
340 | ||
341 | wxWindows supports a document/view framework which provides | |
342 | housekeeping for a document-centric application. | |
343 | ||
a660d684 KB |
344 | \begin{twocollist}\itemsep=0pt |
345 | \twocolitem{\helpref{wxDocument}{wxdocument}}{Represents a document} | |
346 | \twocolitem{\helpref{wxView}{wxview}}{Represents a view} | |
f6bcfd97 | 347 | \twocolitem{\helpref{wxDocTemplate}{wxdoctemplate}}{Manages the relationship between a document class and a view class} |
a660d684 KB |
348 | \twocolitem{\helpref{wxDocManager}{wxdocmanager}}{Manages the documents and views in an application} |
349 | \twocolitem{\helpref{wxDocChildFrame}{wxdocchildframe}}{A child frame for showing a document view} | |
350 | \twocolitem{\helpref{wxDocParentFrame}{wxdocparentframe}}{A parent frame to contain views} | |
6fb26ea3 JS |
351 | %\twocolitem{\helpref{wxMDIDocChildFrame}{wxmdidocchildframe}}{An MDI child frame for showing a document view} |
352 | %\twocolitem{\helpref{wxMDIDocParentFrame}{wxmdidocparentframe}}{An MDI parent frame to contain views} | |
a660d684 KB |
353 | \end{twocollist} |
354 | ||
355 | {\large {\bf Printing framework}} | |
356 | ||
357 | \overview{Overview}{printingoverview} | |
358 | ||
359 | A printing and previewing framework is implemented to | |
f6bcfd97 | 360 | make it relatively straightforward to provide document printing |
a660d684 KB |
361 | facilities. |
362 | ||
363 | \begin{twocollist}\itemsep=0pt | |
364 | \twocolitem{\helpref{wxPreviewFrame}{wxpreviewframe}}{Frame for displaying a print preview} | |
365 | \twocolitem{\helpref{wxPreviewCanvas}{wxpreviewcanvas}}{Canvas for displaying a print preview} | |
366 | \twocolitem{\helpref{wxPreviewControlBar}{wxpreviewcontrolbar}}{Standard control bar for a print preview} | |
a660d684 | 367 | \twocolitem{\helpref{wxPrintDialog}{wxprintdialog}}{Standard print dialog} |
7bcb11d3 | 368 | \twocolitem{\helpref{wxPageSetupDialog}{wxpagesetupdialog}}{Standard page setup dialog} |
a660d684 KB |
369 | \twocolitem{\helpref{wxPrinter}{wxprinter}}{Class representing the printer} |
370 | \twocolitem{\helpref{wxPrinterDC}{wxprinterdc}}{Printer device context} | |
371 | \twocolitem{\helpref{wxPrintout}{wxprintout}}{Class representing a particular printout} | |
372 | \twocolitem{\helpref{wxPrintPreview}{wxprintpreview}}{Class representing a print preview} | |
7bcb11d3 JS |
373 | \twocolitem{\helpref{wxPrintData}{wxprintdata}}{Represents information about the document being printed} |
374 | \twocolitem{\helpref{wxPrintDialogData}{wxprintdialogdata}}{Represents information about the print dialog} | |
375 | \twocolitem{\helpref{wxPageSetupDialogData}{wxpagesetupdialogdata}}{Represents information about the page setup dialog} | |
a660d684 KB |
376 | \end{twocollist} |
377 | ||
dface61c JS |
378 | {\large {\bf Drag and drop and clipboard classes}} |
379 | ||
380 | \overview{Drag and drop and clipboard overview}{wxdndoverview} | |
381 | ||
382 | \begin{twocollist}\itemsep=0pt | |
dface61c | 383 | \twocolitem{\helpref{wxDataObject}{wxdataobject}}{Data object class} |
c03648c2 | 384 | \twocolitem{\helpref{wxDataFormat}{wxdataformat}}{Represents a data format} |
dface61c JS |
385 | \twocolitem{\helpref{wxTextDataObject}{wxtextdataobject}}{Text data object class} |
386 | \twocolitem{\helpref{wxFileDataObject}{wxtextdataobject}}{File data object class} | |
387 | \twocolitem{\helpref{wxBitmapDataObject}{wxbitmapdataobject}}{Bitmap data object class} | |
0a2017e0 | 388 | \twocolitem{\helpref{wxCustomDataObject}{wxcustomdataobject}}{Custom data object class} |
dface61c | 389 | \twocolitem{\helpref{wxClipboard}{wxclipboard}}{Clipboard class} |
5aa5e35a RR |
390 | \twocolitem{\helpref{wxDropTarget}{wxdroptarget}}{Drop target class} |
391 | \twocolitem{\helpref{wxFileDropTarget}{wxfiledroptarget}}{File drop target class} | |
392 | \twocolitem{\helpref{wxTextDropTarget}{wxtextdroptarget}}{Text drop target class} | |
393 | \twocolitem{\helpref{wxDropSource}{wxdropsource}}{Drop source class} | |
dface61c JS |
394 | \end{twocollist} |
395 | ||
247aba10 VZ |
396 | {\large {\bf File related classes}} |
397 | ||
398 | wxWindows has several small classes to work with disk files, see \helpref{file classes | |
399 | overview}{wxfileoverview} for more details. | |
400 | ||
401 | \begin{twocollist}\itemsep=0pt | |
4afd7529 | 402 | \twocolitem{\helpref{wxDir}{wxdir}}{Class for enumerating files/subdirectories.} |
842d6c94 RR |
403 | \twocolitem{\helpref{wxFile}{wxfile}}{Low-level file input/output class.} |
404 | \twocolitem{\helpref{wxFFile}{wxffile}}{Another low-level file input/output class.} | |
247aba10 VZ |
405 | \twocolitem{\helpref{wxTempFile}{wxtempfile}}{Class to safely replace an existing file} |
406 | \twocolitem{\helpref{wxTextFile}{wxtextfile}}{Class for working with text files as with arrays of lines} | |
407 | \end{twocollist} | |
408 | ||
631f1bfe JS |
409 | {\large {\bf Stream classes}} |
410 | ||
411 | wxWindows has its own set of stream classes, as an alternative to often buggy standard stream | |
412 | libraries, and to provide enhanced functionality. | |
413 | ||
414 | \begin{twocollist}\itemsep=0pt | |
415 | \twocolitem{\helpref{wxStreamBase}{wxstreambase}}{Stream base class} | |
416 | \twocolitem{\helpref{wxStreamBuffer}{wxstreambuffer}}{Stream buffer class} | |
417 | \twocolitem{\helpref{wxInputStream}{wxinputstream}}{Input stream class} | |
418 | \twocolitem{\helpref{wxOutputStream}{wxoutputstream}}{Output stream class} | |
d984207c | 419 | \twocolitem{\helpref{wxCountingOutputStream}{wxcountingoutputstream}}{Stream class for querying what size a stream would have.} |
631f1bfe JS |
420 | \twocolitem{\helpref{wxFilterInputStream}{wxfilterinputstream}}{Filtered input stream class} |
421 | \twocolitem{\helpref{wxFilterOutputStream}{wxfilteroutputstream}}{Filtered output stream class} | |
d984207c RR |
422 | \twocolitem{\helpref{wxBufferedInputStream}{wxbufferedinputstream}}{Buffered input stream class} |
423 | \twocolitem{\helpref{wxBufferedOutputStream}{wxbufferedoutputstream}}{Buffered output stream class} | |
2bf8e4eb RR |
424 | \twocolitem{\helpref{wxMemoryInputStream}{wxmeminputstream}}{Memory input stream class} |
425 | \twocolitem{\helpref{wxMemoryOutputStream}{wxmemoutputstream}}{Memory output stream class} | |
7ff14117 RR |
426 | \twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent binary data input stream class} |
427 | \twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent binary data output stream class} | |
428 | \twocolitem{\helpref{wxTextInputStream}{wxtextinputstream}}{Platform-independent text data input stream class} | |
429 | \twocolitem{\helpref{wxTextOutputStream}{wxtextoutputstream}}{Platform-independent text data output stream class} | |
631f1bfe JS |
430 | \twocolitem{\helpref{wxFileInputStream}{wxfileinputstream}}{File input stream class} |
431 | \twocolitem{\helpref{wxFileOutputStream}{wxfileoutputstream}}{File output stream class} | |
842d6c94 RR |
432 | \twocolitem{\helpref{wxFFileInputStream}{wxffileinputstream}}{Another file input stream class} |
433 | \twocolitem{\helpref{wxFFileOutputStream}{wxffileoutputstream}}{Another file output stream class} | |
631f1bfe JS |
434 | \twocolitem{\helpref{wxZlibInputStream}{wxzlibinputstream}}{Zlib (compression) input stream class} |
435 | \twocolitem{\helpref{wxZlibOutputStream}{wxzliboutputstream}}{Zlib (compression) output stream class} | |
738bfca9 | 436 | \twocolitem{\helpref{wxZipInputStream}{wxzipinputstream}}{Input stream for reading from ZIP archives} |
631f1bfe JS |
437 | \twocolitem{\helpref{wxSocketInputStream}{wxsocketinputstream}}{Socket input stream class} |
438 | \twocolitem{\helpref{wxSocketOutputStream}{wxsocketoutputstream}}{Socket output stream class} | |
439 | \end{twocollist} | |
440 | ||
238ddd26 RR |
441 | {\large {\bf Threading classes}} |
442 | ||
443 | \overview{Multithreading overview}{wxthreadoverview} | |
738bfca9 | 444 | |
238ddd26 RR |
445 | wxWindows provides a set of classes to make use of the native thread |
446 | capabilities of the various platforms. | |
447 | ||
448 | \begin{twocollist}\itemsep=0pt | |
449 | \twocolitem{\helpref{wxThread}{wxthread}}{Thread class} | |
450 | \twocolitem{\helpref{wxMutex}{wxmutex}}{Mutex class} | |
451 | \twocolitem{\helpref{wxMutexLocker}{wxmutexlocker}}{Mutex locker utility class} | |
452 | \twocolitem{\helpref{wxCriticalSection}{wxcriticalsection}}{Critical section class} | |
f6bcfd97 | 453 | \twocolitem{\helpref{wxCriticalSectionLocker}{wxcriticalsectionlocker}}{Critical section locker utility class} |
88413fec | 454 | \twocolitem{\helpref{wxCondition}{wxcondition}}{Condition class} |
238ddd26 RR |
455 | \end{twocollist} |
456 | ||
457 | {\large {\bf HTML classes}} | |
458 | ||
459 | wxWindows provides a set of classes to display text in HTML format. These | |
460 | class include a help system based on the HTML widget. | |
738bfca9 VS |
461 | |
462 | \begin{twocollist}\itemsep=0pt | |
463 | \twocolitem{\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}}{HTML help controller class} | |
464 | \twocolitem{\helpref{wxHtmlWindow}{wxhtmlwindow}}{HTML window class} | |
e5436d59 VS |
465 | \twocolitem{\helpref{wxHtmlEasyPrinting}{wxhtmleasyprinting}}{Simple class for printing HTML} |
466 | \twocolitem{\helpref{wxHtmlPrintout}{wxhtmlprintout}}{Generic HTML wxPrintout class} | |
738bfca9 VS |
467 | \twocolitem{\helpref{wxHtmlParser}{wxhtmlparser}}{Generic HTML parser class} |
468 | \twocolitem{\helpref{wxHtmlTagHandler}{wxhtmltaghandler}}{HTML tag handler, pluginable into wxHtmlParser} | |
469 | \twocolitem{\helpref{wxHtmlWinParser}{wxhtmlwinparser}}{HTML parser class for wxHtmlWindow} | |
470 | \twocolitem{\helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}}{HTML tag handler, pluginable into wxHtmlWinParser} | |
471 | \end{twocollist} | |
472 | ||
88413fec RR |
473 | {\large {\bf Virtual file system classes}} |
474 | ||
475 | wxWindows provides a set of classes that implement an extensible virtual file system, | |
476 | used internally by the HTML classes. | |
477 | ||
478 | \begin{twocollist}\itemsep=0pt | |
479 | \twocolitem{\helpref{wxFSFile}{wxfsfile}}{Represents a file in the virtual file system} | |
480 | \twocolitem{\helpref{wxFileSystem}{wxfilesystem}}{Main interface for the virtual file system} | |
481 | \twocolitem{\helpref{wxFileSystemHandler}{wxfilesystemhandler}}{Class used to announce file system type} | |
482 | \end{twocollist} | |
483 | ||
7cb74906 JS |
484 | {\large {\bf Online help}} |
485 | ||
486 | \begin{twocollist}\itemsep=0pt | |
487 | \twocolitem{\helpref{wxHelpController}{wxhelpcontroller}}{Family of classes for controlling help windows} | |
488 | \twocolitem{\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}}{HTML help controller class} | |
489 | \twocolitem{\helpref{wxContextHelp}{wxcontexthelp}}{Class to put application into context-sensitive help mode} | |
490 | \twocolitem{\helpref{wxContextHelpButton}{wxcontexthelpbutton}}{Button class for putting application into context-sensitive help mode} | |
491 | \twocolitem{\helpref{wxHelpProvider}{wxhelpprovider}}{Abstract class for context-sensitive help provision} | |
492 | \twocolitem{\helpref{wxSimpleHelpProvider}{wxsimplehelpprovider}}{Class for simple context-sensitive help provision} | |
493 | \twocolitem{\helpref{wxHelpControllerHelpProvider}{wxhelpcontrollerhelpprovider}}{Class for context-sensitive help provision via a help controller} | |
494 | \twocolitem{\helpref{wxToolTip}{wxtooltip}}{Class implementing tooltips} | |
495 | \end{twocollist} | |
496 | ||
a660d684 KB |
497 | {\large {\bf Miscellaneous}} |
498 | ||
499 | \begin{twocollist}\itemsep=0pt | |
500 | \twocolitem{\helpref{wxApp}{wxapp}}{Application class} | |
f6bcfd97 BP |
501 | \twocolitem{\helpref{wxCaret}{wxcaret}}{A caret (cursor) object} |
502 | \twocolitem{\helpref{wxCmdLineParser}{wxcmdlineparser}}{Command line parser class} | |
503 | \twocolitem{\helpref{wxConfig}{wxconfigbase}}{Classes for configuration reading/writing (using either INI files or registry)} | |
504 | \twocolitem{\helpref{wxDllLoader}{wxdllloader}}{Class to work with shared libraries.} | |
6fb26ea3 | 505 | \twocolitem{\helpref{wxLayoutAlgorithm}{wxlayoutalgorithm}}{An alternative window layout facility} |
3972fb49 | 506 | \twocolitem{\helpref{wxProcess}{wxprocess}}{Process class} |
a660d684 | 507 | \twocolitem{\helpref{wxTimer}{wxtimer}}{Timer class} |
5f445b31 | 508 | \twocolitem{\helpref{wxStopWatch}{wxstopwatch}}{Stop watch class} |
88413fec | 509 | \twocolitem{\helpref{wxMimeTypesManager}{wxmimetypesmanager}}{MIME-types manager class} |
a660d684 | 510 | \twocolitem{\helpref{wxSystemSettings}{wxsystemsettings}}{System settings class} |
238ddd26 RR |
511 | \twocolitem{\helpref{wxAcceleratorTable}{wxacceleratortable}}{Accelerator table} |
512 | \twocolitem{\helpref{wxAutomationObject}{wxautomationobject}}{OLE automation class} | |
5d9dba5b VS |
513 | \twocolitem{\helpref{wxFontMapper}{wxfontmapper}}{Font mapping, finding suitable font for given encoding} |
514 | \twocolitem{\helpref{wxEncodingConverter}{wxencodingconverter}}{Encoding conversions} | |
f6bcfd97 | 515 | \twocolitem{\helpref{wxCalendarDateAttr}{wxcalendardateattr}}{Used with \helpref{wxCalendarCtrl}{wxcalendarctrl}} |
e3c10211 | 516 | \twocolitem{\helpref{wxQuantize}{wxquantize}}{Class to perform quantization, or colour reduction} |
238ddd26 RR |
517 | \end{twocollist} |
518 | ||
519 | {\large {\bf Database classes}} | |
520 | ||
521 | \overview{Database classes overview}{odbcoverview} | |
522 | ||
523 | wxWindows provides two alternative sets of classes for accessing Microsoft's ODBC (Open Database Connectivity) | |
524 | product. The new version by Remstar is documented in a separate manual. | |
525 | The older classes are as follows: | |
526 | ||
527 | \begin{twocollist}\itemsep=0pt | |
528 | \twocolitem{\helpref{wxDatabase}{wxdatabase}}{Database class} | |
529 | \twocolitem{\helpref{wxQueryCol}{wxquerycol}}{Class representing a column} | |
530 | \twocolitem{\helpref{wxQueryField}{wxqueryfield}}{Class representing a field} | |
531 | \twocolitem{\helpref{wxRecordSet}{wxrecordset}}{Class representing one or more record} | |
a660d684 | 532 | \end{twocollist} |
dface61c | 533 |