3D graphics, wxGLCanvas, 168-169
accelerators, 180-181
accessibility, 591
accessing screens with wxScreenDC, 139
accessors, wxDateTime, 388
Acme, 534
adapting dialogs for small devices, 254-255
ADC (Apple Developer Connection), 544
add-on libraries, 596-599
AddFile, 411
adding
help, creating custom dialogs, 251-253
icons
to GNOME desktop, 534
to KDE desktop, 534
source and includes, Bakefile, 568-569
addition, 390
AddRoot, 321
aesthetics, designing dialogs, 257
alignment, sizers, 191
alternatives
to dialogs, 257
to wxNotebook, 76
to wxSocket, 479
to wxSplitterWindow, 85
Anthemion Software, DialogBlocks. See DialogBlocks
AOL Communicator, 601
Apple Developer Connection (ADC), 544
application class, 16-17
application objects
creating with DialogBlocks, 584
initializing, 415
application paths, finding, 524-525
application resources, storing
finding application paths, 524-525
reducing data files, 523
standard locations, 524
editing, 531-532
storing, 529-530
application termination behavior, UI design guidelines, 539
applications
associating with icons, 274-275
cleaning up, 416
creating
with Bakefile. See Bakefile
with KDevelop, 562-563
with Makefiles, 564
with Microsoft Visual Studio. See Microsoft Visual Studio
with Xcode, 563
debugging with DialogBlocks, 584
Doodle. See Doodle
installing. See installing
running wxExecute, 525
arbitrary areas, filling, 159
architecture of wxWidgets, 8
internal organization, 12-13
wxCocoa, 10
wxGTK, 8
wxMac, 10
wxMGL, 12
wxMotif, 10
wxMSW, 8
wxOS2, 12
wxPalmOS, 12
wxWinCE, 10
wxX11, 9
arcs
circular arcs, 154
drawing, 153
areas, filling arbitrary areas, 159
arithmetic, 389-391
arrays, 381
array types, 379-380
macros, 379
sample code, 381-383
art, customizing, 288-290
assertion alert, 419
associating icons with applications, 274-275
AttachUnknownControl, 264
Audacity, 601
audio files, playing, 526
authoring help, 518-519
autoconf, Bakefile project types, 568
AVG Antivirus, 601
AWX, 598
backgrounds, erasing window backgrounds, 134-135
Bakefile, 595
adding source and includes, 568-569
bakefile_gen, 570
build options, 569-570
creating wxWidgets applications, 565-566
includes, 569-570
presets, 569-570
project types, 567
autoconf, 568
sample wxWidgets project, 566-567
targets, 568
templates, 569-570
bakefile_gen, 570
base window classes, 45-46
wxControl, 54
wxControlWithItems, 54
member functions, 54-55
wxWindow, 47
wxWindow member functions, 50-53
wxWindow styles, 47-49
BASIC, 593
compiling sample programs, 550
behavior of sockets with socket flags, 475-476
binary resource files, 259-260
bindings, 593-594
bitmap buttons, wxButton, 89-90
bitmap resources, packaging, 272
bitmaps, drawing, 157-159, 271
drawing on with wxMemoryDC, 138
BitWise, 601
blocking, 473
sockets, 474
Bodde, Jorgen, 531
borders, sizers, 191
compiling sample programs, 550
Broadcast, 453
bugs, defensive programming, 418-419
build directory, wx-config, 571
build options
Bakefile, 569-570
wxWidgets, 546-547
button labels, wxButton, 87-88
buttons
bitmap buttons, 89-90
mouse input, 173-174
UI design guidelines, 538
Bzip, 599
C pointer conversions, wxString, 375-376
C string functions, 376-377
CalcScrolledPosition, 79
CalcUnscrolledPosition, 79
CanHandle, 262
CaptureMouse, 50
carets, 41
CFBundleDevelopmentRegion, 436
CFBundleIconFile, 536
CFBundleLocalizations, 436
CFBundleTypeIconFile, 536
changing. See modifying
character encodings, 433, 438-439
converting data, 439
help files, 442
outside of a temporary buffer, 441-442
wxCSConv, 440-441
wxEncodingConverter, 440
character sets, font encoding, 438
characters, wxString, 375
Chess Commander, 603
Chinook Developer Studio, 595
choice and selection dialogs, 218
wxColourDialog, 218-221
wxFontDialog, 221-224
wxMultiChoiceDialog, 225-226
wxSingleChoiceDialog, 224-225
choice control, 90-91
choosing
configurations, 572
development tools, 543
interface styles, document/view systems, 483
circular arcs, 154
classes
application class, 16-17
comparing MFC versus wxWidgets, 651-652, 654
deriving new classes, 243
document classes, document/view systems, 486-495
file classes
wxDir, 400-401
wxFFile, 397-398
wxFile, 397-398
wxFileName, 401-402
wxTempFile, 400
wxTextFile, 399
frame classes, 17-18
creating and using for document/view systems, 483-485
document/view systems, 483-485
GUI
writing your own controls, 317
wxGrid. See wxGrid
wxHtmlWindow. See wxHtmlWindow
wxListCtrl. See wxListCtrl
wxTaskBarIcon. See wxTaskBarIcon
wxTreeCtrl. See wxTreeCtrl
wxWizard. See wxWizard
image classes, 265
multimedia classes, 590
network-related classes, 590
ODBC classes, 589
renderer classes, 592
socket classes, 464
stream classes
file streams, 403-405
filter streams, 407
memory streams, 405
reading and writing data types, 405-406
socket streams. See socket streams
string streams, 405
zip streams, 407-408
view classes, document/view systems, 486-495
window classes
base classes. See base window classes
container windows, 45
control bars, 46
document/view systems, 495-497
FL (Frame Layout), 589
menus, 46
non-static controls, 45
OGL, 588
static controls, 46
top-level windows, 45
wxCalendarCtrl, 585
wxDatePickerCtrl, 586
wxEditableListBox, 587
wxFoldPanelBar, 587
wxGenericDirCtrl, 585
wxGIFAnimationCtrl, 587
wxLEDNumberCtrl, 586
wxSplashScreen, 588
wxStaticPicture, 586
wxStyledTextCtrl, 586
wxTipWindow, 586
wxGrid, 347-348
wxMimeTypesManager, 590
cleaning up applications, 416. See also memory management
Clear, 148
client areas, windows, 40
clients
connecting servers to, socket clients, 468-469
sockets, 465-466
clipboard, 293-294
data objects, 291-292
data source duties, 292
data target, data source duties, 292
paste, 303
close, 50
closing dialogs and frames, 414
Cn3D, 603
Cobalt, Palm OOS 6, 12
code listings
Code to Create an HTML About Box, 339-340
Deriving from wxTaskBarIcon, 354-355
Header File for PersonalRecordDialog, 627-629
HTML for the About Box Sample, 340-341
Implementation File for PersonalRecordDialog, 629-634
showing taskbar icons, 356-357
Simple Use of wxGrid, 346-347
Wizard Sample Code, 635-641
CodeBlocks, 595
coding controls and layouts, 244-246
color, windows, 42
color reduction, programming with wxImage, 284-285
colors, UI design guidelines, 539
combinations of sockets, 475
command lines, parsing, 521-523
communication, instances, 507
communities, wxWidgets, 6-7
comparing
dates, 389
MFC and wxWidgets, 643
configurable control bars, 650
database access, 650
documents and views, 649
initializing applications, 644
macros, 651
message maps, 644-646
printing, 649
string handling and translation, 650
compilers, 543. See also development tools
compiling
cross-compilation, 543
DialogBlocks sample project, 579-581
sample programs
Borland C++, 550
GCC, 555
Microsoft Visual Studio, 548
Microsoft Visual C++, 549
MinGW, 553
MinGW with MSYS, 552
configurations
choosing, 572
Microsoft Visual Studio, 562
MinGW with MSYS, 551
wxWidgets, 546-547
Connect, wxSocketClient, 468
connecting sockets to servers, 467
socket addresses, 468
socket clients, 468-469
connection events, wxSocketServer, 472
constructors, wxDateTime, 388
wxNotebook, 72-74
alternatives to, 76
events, 75
member functions, 75-76
notebook theme management, 74
styles, 74
wxPanel, 72
wxScrolledWindow, 76-78
events, 78
member functions, 79-80
styles, 78
wxSplitterWindow, 81-82
alternatives to, 85
events, 83
member functions, 84
sizing issues, 84-85
styles, 83
context-sensitive help, 251, 520-521
contributed libraries, 557
control appearance, writing your own controls, 367-369, 371
control bars, 122
MFC versus wxWidgets, 650
windows, 46
wxMenuBar, 122-123
events, 123
member functions, 123-124
wxStatusBar, 128-129
member functions, 129-130
styles, 129
wxToolBar, 124-125
bitmap colors under Windows, 125
events, 126
member functions, 127-128
styles, 126
controls
coding, 244-246
non-static controls. See non-static controls
static controls. See static controls
writing your own controls, 359-360
addingDoGetBestSize, 362
control appearance, 367-369, 371
custom control declaration, 360-362
defining default event handlers, 364-365
defining event classes, 363
displaying information on the control, 363
handling input, 363-364
implementing resource handlers, 367
implementing validators, 365-367
converting
dialogs, resource files, 647
numbers, wxString, 377
coordinate systems, windows, 41
copying drawing objects, 415
Create method, 449
CreateButtonSizer, 203
CreateControls, 244
CreateMyRecord, 425
CreatePopupMenu, 358
CreateStatusBar, 60
cross-compilation, 543
Csomor, Stefan, 6
cursors
windows, 41
wxGrid member functions, 352
custom control declaration, writing your own controls, 360-362
custom drop targets, creating, 299-300
custom events, defining, 34-37
customizing art, 288-290
CVS, 7
Cygwin, 544
DAO (Data Access Objects), 650
data, designing dialogs, 256
Data Access Objects (DAO), 650
data files, reducing number of, 523-524
data formats, standard data formats, 292
data objects, 291-292
data source, responsibilities of, 292
data storage, designing, 243-244
data structures, helper data structures
wxLongLong, 392
wxObject, 391
wxPoint, 392
wxRealPoint, 392
wxRect, 392-393
wxRegion, 393-394
wxSize, 394
wxVariant, 394-395
data target, responsibilities of, 292
data transfer, creating custom dialogs, 247-249
data types, reading and writing, 405-406
database access, MFC versus wxWidgets, 650
date arithmetic, 389-391
dates, 387
formatting for internationalization, 443
wxDateTime, 388
accessors, 388
constructors and modifiers, 388
date arithmetic, 389-391
date comparisons, 389
formatting dates, 389
getting current time, 389
deadlocks, synchronizing objects, 452
debug builds versus release builds, 546
Debug Project command, 584
debuggers, sending commands to, 527
applications, DialogBlocks, 584
error reporting, 419-423
wxMessageOutput versus wxLog, 423-424
release builds, 430-431
tips for, 429
release builds, 430-431
simplifying problems, 430
X11 errors, 429-430
declarations, custom control declarations, 360-362
DECLARE_EVENT_TABLE, 31
defensive programming, 418-419
deleting
dialogs, 414
frames, 414
window objects, 413-414
windows, 43-44
deriving
from wxDataObject, 301
new classes, 243
designing
data storage, 243-244
dialogs
aesthetics, 257
data and UI separation, 256
keyboard navigation, 255
layouts, 256-257
detecting
errors, 416-418
memory leaks, 416-418
choosing, 543
on Linux and Mac OS X, 544-545
on Windows, 543-544
device contexts, 131-133
drawing functions, 148-150
drawing on windows
with wxClientDC, 133-134
with wxPaintDC, 135-138
erasing window backgrounds, 134-135
wxBufferedPaintDC, 136-138
wxMemoryDC, drawing on bitmaps, 138
wxMetafileDC, 138
wxPaintDC, drawing on windows, 135-138
wxPostScriptDC, 139-140
wxPrinterDC, 139-140
wxScreenDC, accessing screens, 139
device units, 132
devices, adapting dialogs for small devices, 254-255
DeviceToLogicalX, 150
DeviceToLogicalXRel, 150
DeviceToLogicalY, 150
DeviceToLogicalYRel, 150
dialog data exchange, MFC, 648-649
dialog units, 201-202
DialogBlocks, 545, 575-576, 595
creating
application objects, 584
dialogs, 582-583
frames, 584
creating new projects, 582
debugging applications, 584
installing
on Linux, 576-577
on Mac OS X, 577
on Windows, 576
interfaces, 577-578
sample project, 578-579
compiling, 579-581
upgrading, 577
DialogBlocks Personal Edition, 576
dialogs
adapting for small devices, 254-255
alternatives to, 257
choice and selection dialogs
wxColourDialog, 218-221
wxFontDialog, 221-224
wxMultiChoiceDialog, 225-226
wxSingleChoiceDialog, 224-225
closing and deleting, 414
converting with resource files, 647
creating with DialogBlocks, 582-583
creating custom dialogs, 241
adding help, 251-253
coding controls and layouts, 244-246
data transfer and validation, 247-249
deriving new classes, 243
designing data storage, 243-244
handling events, 249
handling UI updates, 250-251
invoking the dialog, 253
designing
aesthetics, 257
data and UI separation, 256
keyboard navigation, 255
layouts, 256-257
entry dialogs
wxFindReplaceDialog, 228-232
wxNumberEntryDialog, 227
wxPasswordEntryDialog, 227
wxTextEntryDialog, 227-228
file and directory dialogs
wxDirDialog, 216-218
wxFileDialog, 212-216
informative dialogs
wxBusyInfo, 210
wxMessageDialog, 205-207
wxProgressDialog, 208-209
wxShowTip, 210-212
invoking, 253
modeless dialogs, 414
printing dialogs
wxPageSetupDialog, 232-235
wxPrintDialog, 235-239
recreating with MFC, 647-648
Digital Mars C++, 544
directories, 548
build directory, wx-config, 571
disabling windows, 460
DisplayContents, 516
displaying information on controls, writing your own controls, 363
DisplaySection, 516
distributing message catalogs, 438
DLL, Microsoft Visual Studio, 548
DnDWindow, 296
DoCreateResource, 262
Documancer, 604
document classes, defining for document/view systems, 486-495
document creation, document/view systems, 501
document manager, 649
document/view systems, 481
creating applications, 481-482
choosing interface styles, 483
creating and using frame classes, 483-485
defining document and view classes, 486-495
defining window classes, 495-497
explicit document creation, 501
file history, 500
printing and previewing, 500
standard identifiers, 500
wxDocManager, 497-499
wxDocTemplate, 497-499
documents
launching, 525-526
MFC versus wxWidgets, 649
DoDataExchange, 648
DoDragDrop, flags, 295
DoDragDrop function, 292
DoGetBestSize, 362
DoLog, 422
DoLogString, 422
Doodle, 482
choosing interface styles, 483
creating and using frame classes, 483-485
defining document and view classes, 486-495
DoodleApp, 498
implementing, 496
DoodleCommand, 490
DoodleFrame, 484
DoodleSegment, 487
DoodleView, implementing, 493
DOODLE_CUT, 492
DoPrepareDC, 78
downloading wxWidgets, 545-546
Doxygen, 596
Dr. MinGW, 431
drag and drop, 311
data objects, 291-292
wxDragImage, 313-316
wxListCtrl, 312
wxTreeCtrl, 311-312
wxWidgets sample, 302-311
drag sources, implementing, 294-297
dragging, 298
drag sources, 295
DrawArc, 153
DrawBitmap, 157-158
DrawCircle, 148
DrawEllipse, 148
DrawEllipticArc, 148
DrawIcon, 158
drawing
lines, 152-155
on bitmaps with wxMemoryDC, 138
on windows
with wxClientDC, 133-134
with wxPaintDC, 135-138
shapes, 152-155
splines, 156
text, 150-152
with bitmaps, 271
drawing functions, device contexts, 148-150
drawing objects, creating and copying, 415
drawing tools, 140
wxBrush, 143-144
styles, 144
wxColour, 141
wxFont, 145-146
wxPalette, 147-148
wxPen, 142-143
DrawPoint, 148
DrawPolyPolygon, 155
DrawText, 150-152
drop targets
creating custom drop targets, 299-300
implementing, 297-298
standard drop targets, 298-299
dynamic event handlers, 30-31
dynamic layouts, 204
dynamic libraries, loading, 427
EarthVision, 604
editing application settings, 531-532
Eiffel, 594
Emacs, 544
embedded resource files, 259-260
embedded web browsers, 591
embedding windows in HTML pages, 342-344
Enable, 50
encoding fonts, 145
encodings, 438-439
converting data, 439
help files, 442
outside of a temporary buffer, 441-442
wxCSConv, 440-441
wxEncodingConverter, 440
EndDoc, 150
Endmodal, 414
EndPage, 150
Entry, wxThread, 449
entry dialogs, 227
wxFindReplaceDialog, 228-232
wxNumberEntryDialog, 227
wxPasswordEntryDialog, 227
wxTextEntryDialog, 227-228
erasing window backgrounds, 134-135
error notifications, socket status, 470-471
error reporting, 419-423
wxMessageOutput versus wxLog, 423-424
errors
detecting, 416-418
X11 errors, 429-430
Euphoria, 594
event classes
defining custom events, 34-37
writing your own controls, 363
defining default event handler, writing your own controls, 364-365
dynamic event handlers, 30-31
example character event handler, 178
pluggable event handlers, 29-30
event handling
creating custom dialogs, 249
modifying, 510-511
event loops, 592
creating, 26
event.Skip(), 178
event-based sockets, 463
event-driven programming, 25
events
connection events, wxSocketServer, 472
skipping, 29
socket events. See socket events
wxCheckBox, 95
wxCheckListBox, 97
wxChoice, 91
wxComboBox, 93
wxDialog, 70
wxFrame, 59
wxGrid, 349
wxListBox, 97
wxListCtrl, 324
wxMenu, 118-120
wxMenuBar, 123
wxNotebook, 75
wxRadioBox, 100
wxRadioButton, 101
wxScrollBar, 102
wxScrolledWindow, 78
wxSlider, 107
wxSpinButton, 104
wxSpinCtrl, 105
wxSplitterWindow, 83
wxTaskBarIcon, 358
wxTextCtrl, 110
wxToggleButton, 112
wxToolBar, 126
wxTreeCtrl, 320
wxWindow, 49
wxWizard, 331
EVT_SIZE, 27
EVT_COMMAND_SCROLL, 102
EVT_SOCKET, 469
exceptions, 428
Execute, 508
extended HTML Help, 517-518
Extended wxHTML Help, 598
external conditions, waiting for threads, 450
extra styles
wxDialog, 70
wxWindow, 48
face names, fonts, 145
file and directory dialogs
wxDirDialog, 216-218
wxFileDialog, 212-216
file classes
wxDir, 400-401
wxFFile, 397-398
wxFile, 397-398
wxFileName, 401-402
wxTempFile, 400
wxTextFile, 399
file functions, 402-403
file history, document/view systems, 500
file receiving threads, socket streams, 478-479
file sending threads, socket streams, 477-478
file streams, 403-405
file systems, virtual file systems, 408-411
files
include files, 559
Info.plist file, 436
library files, 559
resource files
binary resource files, 259-260
converting dialogs, 647
embedded resource files, 259-260
foreign controls, 263-264
loading resources, 258-259
translating resources, 261
writing resource handlers, 262-263
XRC format, 261-262
system files, 559
updating wxWidgets files, 556
writing, 398
filling arbitrary areas, 159
filter streams, 407
FindFocus, 50
finding application paths, 524-525
FindWindow, 50
FinishedIdleTask, 459
Fit, 51
FL (Frame Layout), 589
flag.png, 443
flags
DoDragDrop, 295
mask flags, wxListItem, 325
socket flags. See socket flags
flicker, reducing, 512-513
font encoding, 438
font families, 145
fonts
encoding, 145
face names, 145
font families, identifiers, 145
point size, 145
styles, 145
UI design guidelines, 539
underlines, 145
weight, 145
windows, 42
foreign controls, resource files, 263-264
formatting dates, 389
Forte Agent, 604
forums, 6
frame classes, 17-18
document/view systems, 483-485
frame constructors, 19-20
Frame Layout (FL), 589
frames
closing and deleting, 414
creating with DialogBlocks, 584
modeless frames, 414
Freeze, 513
functions
AddFile, 411
AddRoot, 321
Broadcast, 453
C string functions, 376-377
Clear, 148
CreatePopupMenu, 358
Destroy, 413
device context drawing functions, 148-150
DeviceToLogicalX, 150
DeviceToLogicalXRel, 150
DeviceToLogicalY, 150
DeviceToLogicalYRel, 150
DisplayContents, 516
DisplaySection, 516
DoDataExchange, 648
DoDragDrop, 292
DoGetBestSize, 362
DrawArc, 153
DrawBitmap, 157-158
DrawCircle, 148
DrawEllipse, 148
DrawEllipticArc, 148
DrawPoint, 148
DrawPolyPolygon, 155
DrawText, 150-152
EndDoc, 150
EndPage, 150
Entry, wxThread, 449
Execute, 508
FinishedIdleTask, 459
FloodFill, 149
GetAdjustedBestSize, 362
GetAllFiles, 400
GetBrush, 149
GetClassDefaultAttributes, 368
GetCurrentPage, 332
GetDC, 164
GetDeviceOrigin, 150
GetFirst, 400
GetLogicalFunction, 149
GetMapMode, 150
GetNext, 400
GetNextToken, 378
GetPageAreaSizer, 332
GetPageInfo, 163
GetPageSize, 332
GetPageSizeMM, 164
GetPageSizePixels, 164
GetPartialTextExtents, 149
GetPixel, 149
GetPPIPrinter, 164
GetPPIScreen, 164
GetSize, 149
GetSizeMM, 149
GetTextBackground, 149
GetTextForeground, 149
GetUserScale, 150
HasInput, 528
HasPage, 164
Initialize, 162
IsPreview, 164
LoadTextResource, 410
Lock, 452
logging functions, 420-422
logical functions, 159-160
LogicalToDeviceX, 150
LogicalToDeviceXRel, 150
LogicalToDeviceY, 150
LogicalToDeviceYRel, 150
MacOpenFile, 506
member functions
wxButton, 87
wxCheckBox, 95
wxCheckListBox, 98
wxChoice, 91
wxComboBox, 93
wxControlWithItems, 54-55
wxDialog, 71
wxFrame, 60-61
wxGauge, 113
wxGrid, 350-353
wxHtmlWindow, 341-342
wxListBox, 98
wxListCtrl, 327-328
wxMDIChildFrame, 65
wxMDIParentFrame, 65
wxMenu, 120-122
wxMenuBar, 123-124
wxNotebook, 75-76
wxPanel, 72
wxRadioButton, 101
wxScrollBar, 103
wxScrolledWindow, 79-80
wxSlider, 107
wxSocketEvent, 469
wxSocketServer, 472
wxSpinButton, 104
wxSpinCtrl, 106
wxSplitterWindow, 84
wxStaticBitmap, 115
wxStaticBox, 116
wxStaticLine, 116
wxStaticText, 114
wxStatusBar, 129-130
wxTextCtrl, 110-111
wxToggleButton, 112
wxToolBar, 127-128
wxTreeCtrl, 321-322
wxWindow, 50-53
wxWizard, 332
menu functions, wxTaskBarIcon, 358
MyFrame, 338
new, 413
Notify, 457
Ok, 149
OnBeginDocument, 164
OnBeginPrinting, 164
OnChangeLanguage, 445-446
OnEndPrinting, 164
OnExecute, 508
OnGetItemAttr, 330
OnGetItemImage, 330
OnGetItemLabel, 330
OnInit, 409
OnInternalIdle, 460
OnPreparePrinting, 163
OnPrintPage, 164
OnRun, 428
OnSysRead, 403
OnSysWrite, 403
OnTerminate, 527
Pause, 450
Print, 161
printf, 376
ProcessEvent, event handling, 511
Resume, 450
RunWizard, 332
SelectLanguage, 444
Serialize, 649
SetAxisOrientation, 150
SetData, 292
SetDeviceOrigin, 150
SetItemData, 327
SetLogicalFunction, 149
SetMapMode, 150
SetPageSize, 332
SetTextBackground, 149
SetTextForeground, 149
SetupStrings, 445
SetUserScale, 150
ShellExecute, 526
Signal, 453-454
SortItems, 328
StartDoc, 150
StartPage, 150
TestDestroy, 450
TransferDataFromWindow, 648
TransferDataToWindow, 648
Traverse, 400
TryLock, 452
Unlock, 452
Validate, 366
Wait, 449
wxAND, 160
wxAND_INVERT, 160
wxAND_REVERSE, 160
of wxBitmap, 267
wxCLEAR, 160
wxCOPY, 160
wxCursor, 275
wxEQUIV, 160
wxFontSelectorCtrl, 363
wxIcons, 273
wxImage, 279-280
wxINVERT, 160
wxNAND, 160
wxNOR, 160
wxNO_OP, 160
wxOR, 160
wxOR_INVERT, 160
wxOR_REVERSE, 160
wxSET, 160
wxSRC_INVERT, 160
wxXOR, 160
compiling sample programs, 555
GDB, Emacs, 544
GetAdjustedBestSize, 362
GetAllFiles, 400
GetAlpha, 282
GetBrush, 149
GetClassDefaultAttributes, 368
GetCurrentPage, 332
GetDataHere, 308
GetDC, 164
GetDeviceOrigin, 150
GetFirst, 400
GetInternalRepresentation, 341
GetKeyCode, 176
GetLinesPerAction, 174
GetLogicalFunction, 149
GetMapMode, 150
GetNext, 400
GetNextToken, 378
GetPageAreaSizer, 332
GetPageInfo, 163
GetPageSize, 332
GetPageSizeMM, 164
GetPageSizePixels, 164
GetPartialTextExtents, 149
GetPPIPrinter, 164
GetPPIScreen, 164
GetPreferredFormat, 307
GetRGB, 147
GetScreenType, 254
GetTextBackground, 149
GetTextForeground, 149
GetUserScale, 150
GetWheelDelta, 174
GetWheelRotation, 174
Gloger, Wolfram, 5
GNOME, adding icons to desktop, 534
graphics, scrolling graphics, 512
classes, 347-348
code listings, 346-347
events, 349
member functions, 350-353
functions for creation, deletion, and data retrieval, 350
functions for presentation, 351
functions for selection and cursors, 352
functions for setting and getting wxGrid metrics, 351-352
miscellaneous functions, 353
GTK+
printing under Unix, 167-168
wxButton labels, 87
GTK-Qt, 596
GUI
writing your own controls, 317
wxGrid. See wxGrid
wxHtmlWindow. See wxHtmlWindow
wxListCtrl. See wxListCtrl
wxTaskBarIcon. See wxTaskBarIcon
wxTreeCtrl. See wxTreeCtrl
wxWizard. See wxWizard
GUI applications, event-driven programming, 25
GUI functions, threads, 448
guidelines, UI design guidelines, 537-539
handling
events, creating custom dialogs, 249
UI updates, creating custom dialogs, 250-251
Hardy, 5
HasAlpha, 282
HASH_T, 385
HasInput, 528
Haskell, 594
HasMoreTokens, 378
HasPage, 164
header files, modifying, 556
headers, 572-574
Help, buttons, 538
help, 515
adding, creating custom dialogs, 251-253
authoring, 518-519
context-sensitive help, 251, 520-521
menu help, 521
MS HTML Help, 519
context-sensitive help, 520-521
menu help, 521
tooltips, 520-521
wxModalHelp, 517
help controllers, 513-516
help files, 442
Help Viewer, 510
HelpBlocks, 595
helper data structures
wxLongLong, 392
wxObject, 391
wxPoint, 392
wxRealPoint, 392
wxRect, 392-393
wxRegion, 393-394
wxSize, 394
wxVariant, 394-395
hierarchies, sizers, 189
Holzem, Markus, 5
HTML
authoring help, 518-519
embedding windows in HTML pages, 342-344
printing, 344-345
HTML about boxes
creating, 339-340
sample, 340-341
HTML Help, 514-515
extended HTML Help, 517-518
limitations of, 517
i18n. See internationalization, 433
icon bundles, 285-288
icons. See also wxTaskBarIcon
adding, 534
associating with applications, 274-275
Mac OS X, 536
UI design guidelines, 538
identifiers
document/view systems, 500
font families, 145
window identifiers, 31
IDEs, Microsoft Visual Studio. See Microsoft Visual Studio
idle time, windows, 42
idle time processing, 459-460
IFM (Interface Management System), 597
image classes, 265
image handlers, 280
image lists, 285-288
images
3D graphics, wxGLCanvas, 168-169
loading and saving, wxImage, 280-282
implementing
DoodleApp, 498
DoodleCanvas, 496
DoodleView, 493
drag sources, 294-297
drop targets, 297-298
resource handlers, writing your own controls, 367
undo/redo, 501-503
validators, writing your own controls, 365-367
include files, 559
includes
adding to Bakefile, 568-569
Bakefile, 569-570
Info.plist file, 436
informative dialogs
wxBusyInfo, 210
wxMessageDialog, 205-207
wxProgressDialog, 208-209
wxShowTip, 210-212
Initialize, 162
initializing
application objects, 415
applications, MFC versus wxWidgets, 644
Inno Setup script, 533
input
handling, writing your own controls, 363-364
joysticks, 181-183
wxJoystick, 184
wxJoystick events, 183
wxJoystickEvent, 184
accelerators, 180-181
example character event handler, 178
key code translation, 179
modifier key variations, 179-180
mouse input, 171-172
handling buttons and motion events, 173-174
handling mouse wheel events, 174-175
redirecting, 527-529
windows, 42
InstallAnywhere, 596
applications
on Linux, 533-534
on Mac OS X, 535-537
on Windows, 532-533
DialogBlocks
Linux, 576-577
Mac OS X, 577
Windows, 576
wxWidgets, 543
InstallShield, 596
instances
communication, 507
Mac OS, 506
single or multiple instances, 506-510
wxSingleInstanceChecker, 506, 509
Interface Management System (IFM), 597
interface styles, choosing for document/view systems, 483
interfaces, DialogBlocks, 577-578
internal organization, wxWidgets, 12-13
internationalization, 433-434
converting data, 439
help files, 442
outside of a temporary buffer, 441-442
wxCSConv, 440-441
wxEncodingConverter, 440
media, 443
numbers and dates, 443
samples, 444-446
translations, 434
message catalogs, 435-436
poEdit, 434
wxLocale, 437-438
Internet Explorer, 598
invariants, 451
invoking dialogs, 253
IPV4, 468
IPV6, 468
IsPreview, 164
JavaScript, 593
joysticks, 181-183
wxJoystick, 184
wxJoystick events, 183
wxJoystickEvent, 184
Kay, Alan, 7
KDE, adding icons to desktop, 534
creating wxWidgets applications, 562-563
key code translation, 179
keybinder, 599
keyboard navigation, designing dialogs, 255
accelerators, 180-181
example character event handler, 178
key code translation, 179
modifier key variations, 179-180
KEY_EQ_T, 385
KICAD, 604
Kirix Strata, 605
Koan Software, wxDao, 650
labels, button labels (wxButton), 87-88
language bindings, 593-594
launching documents, 525-526
layout
basics of layout, 187-188
dialog units, 201-202
dynamic layouts, 204
platform-adaptive layouts, 202-203
LayoutFrame, 85
LayoutMDIFrame, 85
layouts
coding, 244-246
designing dialogs, 256-257
leaks, detecting memory leaks, 416
LED, 586
libgnomeprint, 167
libgnomeprintui, 167
libraries
add-on libraries, 596-599
contributed libraries, 557
dynamic libraries, loading, 427
libgnomeprint, 167
libgnomeprintui, 167
LitWindow Library, 599
multi-libraries versus monolithic libraries, 546
shared libraries
Linux, 535
versus static libraries, 546
library files, 559
licenses, 7
lightweight processes. See threads
limitations of HTML Help, 517
lines, drawing, 152-155
Linux
development tools, 544-545
GCC, 553-554
compiling sample programs, 555
installing
applications, 533-534
DialogBlocks, 576-577
KDevelop. See KDevelop
shared libraries, 535
list controls
virtual list controls, 330
wxListCtrl. See wxListCtrl
LitWindow Library, 599
LoadFile, 273
loading
dynamic libraries, 427
images, wxImage, 280-282
resources, resource files, 258-259
LoadTextResource, 410
locations, storing application resources, 524
Lock, 452
logging, 422-423
wxLogChain, 423
wxMessageOutput versus wxLog, 423-424
logging functions, 420-422
logical functions, 158-160
logical units, 132
LogicalToDeviceX, 150
LogicalToDeviceXRel, 150
LogicalToDeviceY, 150
LogicalToDeviceYRel, 150
logs, creating, 422
Loki Setup, 596
Lua, 593
Mac OS, instances, 506
Mac OS X
Bakefile, 566
development tools, 544-545
GCC, 553-554
compiling sample programs, 555
icons, 536
installing
applications, 535-537
DialogBlocks, 577
StoryLines, 3
Xcode, 563
Macintosh, event-driven programming, 25
MacOpenFile, 506
macros
arrays, 379
comparing MFC versus wxWidgets, 651
defining custom events, 34-37
joystick event table macros, 183
keyboard event table macros, 176
mouse event table macros, 172
wxDYNLIB_FUNCTION, 427
Mahogany Mail, 605
Makefiles, creating wxWidgets applications, 564-565
makeinno.sh, 532
maketarball.sh, 537
manipulating wxImage data directly, 285
mapping modes, 132
mask flags, wxListItem, 325
MDI (Multiple Document Interface), 413
media, internationalization, 443
member functions
wxButton, 87
wxCheckBox, 95
wxCheckListBox, 98
wxChoice, 91
wxComboBox, 93
wxControlWithItems, 54-55
wxDialog, 71
wxFrame, 60-61
wxGauge, 113
wxGrid, 350-353
wxHtmlWindow, 341-342
wxListBox, 98
wxListCtrl, 327-328
wxMDIChildFrame, 65
wxMDIParentFrame, 65
wxMenu, 120-122
wxMenuBar, 123-124
wxNotebook, 75-76
wxPanel, 72
wxRadioButton, 101
wxScrollBar, 103
wxScrolledWindow, 79-80
wxSlider, 107
wxSocketEvent, 469
wxSocketServer, 472
wxSpinButton, 104
wxSpinCtrl, 106
wxSplitterWindow, 84
wxStaticBitmap, 115
wxStaticBox, 116
wxStaticLine, 116
wxStaticText, 114
wxStatusBar, 129-130
wxTextCtrl, 110-111
wxToggleButton, 112
wxToolBar, 127-128
wxTreeCtrl, 321-322
wxWindow, 50-53
wxWizard, 332
memory leaks, detecting, 416-418
memory management, 413
arrays, 381
cleaning up applications, 416
creating and copying drawing objects, 415
creating and deleting window objects, 413-414
debugging. See debugging
defensive programming, 418-419
detecting leaks and errors, 416-418
initializing application objects, 415
memory streams, 405
menu help, 521
menus
popup menus, 358
UI design guidelines, 538
windows, 46
wxMenu, 117-118
events, 118-120
member functions, 120-122
message catalogs, 433
distributing, 438
step-by-step guide, 435-436
message maps, MFC versus wxWidgets, 644-646
META tag, wxHtmlHelpController, 442
metafiles, creating with wxMetafileDC, 138
Metrowerks CodeWarrior, 10
MFC
dialog data exchange, 648-649
recreating dialogs, 647-648
versus wxWidgets, 643
configurable control bars, 650
database access, 650
documents and views, 649
initializing applications, 644
macros, 651
message maps, 644-646
printing, 649
string handling and translation, 650
validation, 648-649
Microsoft Visual C++, compiling wxWidgets sample programs, 549
Microsoft Visual Studio, 544, 547-548, 595
compiling wxWidgets sample programs, 548
creating wxWidgets applications, 559-561
DLL, 548
multiple configurations, 562
troubleshooting, 561-562
Unicode, 548
Microsoft Word, 483
compiling sample programs, 553
debugging release builds, 431
with MSYS, 551-552
compiling sample programs, 552
MinGW Developer Studio, 595
mini-frames, wxFrame, 63
mmwx, 598
Model-View-Controller (MVC), 481
modeless dialogs and frames, 414
modifier key variations, 179-180
modifiers, wxDateTime, 388
header files, 556
setup.h, 555
source files, 556
module systems, wxModule, 426
Mojoworld, 605
monolithic libraries versus multi-libraries, 546
motion events, mouse input, 173-174
mouse input, 171-172
handling buttons and motion events, 173-174
handling mouse wheel events, 174-175
mouse wheel events, mouse input, 174-175
Mozilla, 596
MS HTML Help, 519
MSYS with MinGW, 551-552
compiling sample programs, 552
multi-libraries versus monolithic libraries, 546
multi-line text controls, 108
multimedia classes, 590
Multiple Document Interface (MDI), 413
multiple instances, 506-510
multiplication, 390
multithreaded applications, 448
synchronizing objects, 451
deadlocks, 452
wxCondition, 453-456
wxCriticalSection, 453
wxMutex, 451-452
wxSemaphore, 456
wxThread, 448-449
multithreading, 447
mutexes, 452
deadlocks, 452
wxCriticalSection, 453
wxSemaphore, 456
mutual exclusion, 451
MVC (Model-View-Controller), 481
MyApp, 17
MyCanvas, 182
event handlers, 18-19
Navigate, 178
NDEBUG, 431
.NET, 594
network-related classes, 590
new, 413
New Project Wizard, DialogBlocks, 582
non-blocking sockets, 475
non-rectangular frames, wxFrame, 61-63
wxBitmapButton, 89-90
wxButton, 86
events, 87
labels, 87-88
member functions, 87
styles, 86
wxCheckBox, 93-94
events, 95
member functions, 95
styles, 94
wxCheckListBox, 95-96
events, 97
member functions, 98
styles, 97
wxChoice, 90-91
wxComboBox, 91-92
events, 93
member functions, 93
styles, 92
wxGauge, 112-113
wxListBox, 95-96
events, 97
member functions, 98
styles, 97
wxRadioBox, 98-99
events, 100
member functions, 100
styles, 99
wxRadioButton, 100-101
wxScrollBar, 101-102
events, 102
member functions, 103
styles, 102
wxSlider, 106
events, 107
member functions, 107
styles, 106
wxSpinButton, 103
events, 104
member functions, 104
styles, 104
wxSpinCtrl, 104-105
events, 105
member functions, 106
styles, 105
wxTextCtrl, 107-109
events, 110
member functions, 110-111
styles, 109
wxToggleButton, 111
events, 112
member functions, 112
styles, 112
notebook theme management, wxNotebook, 74
Notify, 457
NSIS (Nullsoft Scriptable Install System), 596
numbers
converting, wxString, 377
formatting for internationalization, 443
Object Graphics Library (OGL), 588
object-oriented programming and wxWidgets, 7
objects
application objects, initializing, 415
drawing objects. See drawing objects
synchronizing, 451
deadlocks, 452
wxCondition, 453-456
wxCriticalSection, 453
wxMutex, 451-452
wxSemaphore, 456
windows objects, 413-414
ODBC classes, 589
OGL (Object Graphics Library), 588
Ok, 149
OLE automation, wxAutomationObject, 591
OnAcceptConnection, 508
OnBeginDocument, 164
OnBeginPrinting, 164
OnChangeLanguage, 445-446
OnDraw, 78
OnEndPrinting, 164
OnExecute, 508
OnExit, 19
OnGetItemAttr, 330
OnGetItemImage, 330
OnGetItemLabel, 330
OnInternalIdle, 460
menu help, 521
OnPaint, 134
OnPaint handler, 174
OnPreparePrinting, 163
OnPrintPage, 164
OnRun, 428
OnSize event handler, 187
OnSysRead, 403
OnSysWrite, 403
OnTerminate, 527
output, redirecting, 527-529
packaging bitmap resources, 272
painting
smooth painting and scrolling, 136
windows, 41
palettes, wxPalette, 147
ParseFormat, 389
parsing
command lines, 521-523
dates, 389
paste, clipboard, 303
Pause, 450
pausing threads, 450
Perl, 593
PersonalRecordDialog, 242
adding help, 251-253
coding controls and layouts, 244-246
data transfer and validation, 247-249
deriving new classes, 243
designing data storage, 243-244
handling events, 249
handling UI updates, 250-251
invoking the dialog, 253
PersonalRecordDialog
header file for, 627-629
implementation file for, 629-634
pgAdmin III, 605
platform symbols, 573
platform-adaptive layouts, 202-203
playing audio files, 526
pluggable event handlers, 29-30
poEdit, 595
point size, 145
popup menus, 358
POSIX regular expressions, 379
presets, Bakefile, 569-570
previewing
document/view systems, 500
printing, 165-167
Print, 161
PrintClasses, 417
printf, 376
wxString, numbers and dates for internationalization, 443
printing
document/view systems, 500
HTML, 344-345
MFC versus wxWidgets, 649
previewing, 165-167
scaling, 165-167
under Unix with GTK+, 167-168
wxPostScriptDC, 139-140
wxPrinterDC, 139-140
printing dialogs, 232
wxPageSetupDialog, 232-235
wxPrintDialog, 235-239
printing framework, 161-162
wxPrintout, 163-164
priority, specifying threads, 450
process input, redirecting, 527-529
processApp, 529
event handling, 511
program flow, 23
programming
with sizers, 192-193
wxBoxSizer, 193-196
wxFlexGridSizer, 198-200
wxGridBagSizer, 200-201
wxGridSizer, 197-198
wxStaticBoxSizer, 196-197
with wxBitmap, 267
creating a wxBitmap, 268-269
drawing with bitmaps, 271
packaging bitmap resources, 272
setting wxMask, 269-270
XPM format, 270-271
with wxCursor, 275
creating wxCursor, 276-278
wxCursor, 278
wxSetCursorEvent, 278-279
with wxIcon, 272-274
associating icons with applications, 274-275
creating wxIcon, 273
with wxImage, 279-280
color reduction, 284-285
loading and saving images, 280-282
manipulating data directly, 285
transformations, 284
transparency, 282-283
project types, Bakefile, 567
autoconf, 568
projects, creating new projects with DialogBlocks, 582
PushEventHandler, 30
RAD (Rapid Application Development) tool, 575
wxHatch, 595
radio buttons, 100
RC files, 647
reading
data types, 405-406
socket data, 471
recreating dialogs, MFC, 647-648
redirecting process input and output, 527-529
reducing
data files, 523-524
flicker, 512-513
Reference tab, DialogBlocks, 578
refresh speed, 512
Register buttons, 344
RegisterProcess, 529
release builds
versus debug builds, 546
debugging, 430-431
ReleaseCapture, 181
ReleaseMouse, 50
renderer classes, 592
resource files, 257
binary resource files, 259-260
converting dialogs, 647
embedded resource files, 259-260
foreign controls, 263-264
loading resources, 258-259
translating resources, 261
writing resource handlers, 262-263
XRC format, 261-262
resource handlers
implementing, writing your own controls, 367
writing, 262-263
resources
loading in resource files, 258-259
translating, 261
Resume, 450
Roebling, Robert, 6
RPM, 534
RTTI (run-time type information), 424-426
Ruby, 594
running applications, wxExecute, 525
RunWizard, 332
SashHitTest, 279
saving images, wxImage, 280-282
scaling for printing, 165-167
Scintilla, 586
SciTech, Inc., 5
screens, accessing with wxScreenDC, 139
scrollbars, windows, 41
scrolling without wxScrolledWindow, 80-81
scrolling graphics, 512
selectLanguage, 444
SelectObject, 138
sending commands to debuggers, 527
serialization, 649
Serialize function, 649
servers
connecting sockets to, 467
socket addresses, 468
socket servers, creating, 472
sockets, 466-467
SetCap, 143
SetCapture, 181
SetCheckpoint, 417
SetDefaultStyle, 108
SetItemData, 327
SetLogicalFunction, 149
SetMapMode, 150
SetMask, 325
SetPageSize, 332
SetScrollbar, 80
SetScrollRate, 77
SetSizeHints, 192
SetState, 326
SetTextBackground, 149
SetTextForeground, 149
settings. See application settings
SetToolTip, 251
setup.h
changes on Windows, 556
modifying, 555
SetupStrings, 445
ShapeDump, 309
shapes, drawing, 152-155
shared libraries
Linux, 535
versus static libraries, 546
ShellExecute, 526
ShowHelp, 518
showing
taskbar icons, 356-357
wizards, 331
ShowModal, 414
Shrink, 381
Signal, 453-454
SILO, 607
single instances, 506-510
sizers, 188-189
alignment, 191
borders, 191
dialog units, 201-202
dynamic layouts, 204
features of, 190-192
flags, 194
hierarchies, 189
platform-adaptive layouts, 202-203
programming with, 192-193
wxBoxSizer, 193-196
wxFlexGridSizer, 198-200
wxGridBagSizer, 200-201
wxGridSizer, 197-198
wxStaticBoxSizer, 196-197
stretch factor, 192
sizing
issues with wxSplitterWindow, 84-85
windows, 42
skipping events, 29
Smalltalk, 7
Smartphone, 10
socket addresses, connecting to servers, 468
socket API, 463
socket classes, 464
socket clients, connecting to servers, 468-469
socket data, 471
reading, 471
writing, 472
socket flags, 473-475
behavior of sockets, 475-476
socket status, 470-471
file receiving threads, 478-479
file sending threads, 477-478
sockets, 463-464
blocking, 474
clients, 465-466
combinations of, 475
connecting to servers, 467
socket addresses, 468
socket clients, 468-469
error codes, 471
event-based sockets, 463
non-blocking, 475
servers, 466-467
creating, 472
SortItems, 328
source files, modifying, 556
sources, adding to Bakefile, 568-569
spell-check, 598
Spencer, Henry, 379
splines, drawing, 156
SQLite, 598
stack size, specifying, 450
standard data formats, 292
standard drop targets, 298-299
standard identifiers, document/view systems, 500
Standard Template Library (STL), 373
StartDoc, 150
starting threads, 450
StartPage, 150
state styles, wxListItem, 326
states, setting for wxListItem, 326
static controls, 112
windows, 46
wxStaticBitmap, 114-115
member functions, 115
wxStaticBox, 116
wxStaticLine, 115
member functions, 116
styles, 115
wxStaticText, 113-114
static libraries versus shared libraries, 546
STL (Standard Template Library), 373
stock button identifiers, 88
stock cursor identifiers, 276
storing
application resources
finding application paths, 524-525
reducing data files, 523
standard locations, 524
application settings, 529-530
Mac OS X, 3
Windows, 2
streams, 403
file streams, 403-405
filter streams, 407
memory streams, 405
reading and writing data types, 405-406
socket streams. See socket streams
string streams, 405
zip streams, 407-408
stretch factor, sizers, 192
string litereals, wxString, 375
string streams, 405
strings, 374
MFC versus wxWidgets, 650
array types, 379-380
wxArrayString, 380
wxRegEx, 379
wxString, 374
C pointer conversions, 375-376
characters, 375
converting to and from numbers, 377
standard C string functions, 376-377
string literals, 375
wxStringTokenizer, 378
styles
fonts, 145
state styles, wxListItem, 326
windows, 44
wxBrush, 144
wxCheckBox, 94
wxCheckListBox, 97
wxComboBox, 92
wxDialog, 69-70
wxFrame, 58-59
wxGauge, 113
wxHtmlWindow, 341
wxListBox, 97
wxListCtrl, 323
wxMDIChildFrame, 65
wxMDIParentFrame, 64
wxNotebook, 74
wxPanel, 72
wxPen, 142
wxRadioBox, 99
wxRadioButton, 101
wxScrollBar, 102
wxScrolledWindow, 78
wxSlider, 106
wxSpinButton, 104
wxSpinCtrl, 105
wxSplitterWindow, 83
wxStaticLine, 115
wxStaticText, 114
wxStatusBar, 129
wxTextCtrl, 109
wxToolBar, 126
wxTreeCtrl, 319-320
wxWindow, 47-49
wxWizard, 331
subtraction, 390
Support page, DialogBlocks, 578
symbols, 572-574
synchronizing objects, 451
deadlocks, 452
wxCondition, 453-456
wxCriticalSection, 453
wxMutex, 451-452
wxSemaphore, 456
system files, 559
tables
Flags for CreateButtonSizer, 203
Joystick Event Table Macros, 183
Keyboard Event Table Macros, 176
Modifier Keys under Windows, Unix, and Mac OS X, 180
Mouse Event Table Macros, 172
Sizer flags, 194
wxGrid. See wxGrid
targets, Bakefile, 568
taskbar icons, showing. See wxTaskBarIcon
templates, Bakefile, 569-570
terminating
applications, UI design guidelines, 539
threads, 451
TestDestroy, 450
text, drawing, 150-152
text controls, multi-line text controls, 108
Thaw, 513
third-party tools, 594-596
threads. See also multithreaded applications
creating, 449-450
deciding when to use, 447-448
file receiving threads, socket streams, 478-479
file sending threads, socket streams, 477-478
GUI functions, 448
pausing, 450
sample wxWidgets thread, 457
starting, 450
terminating, 451
waiting for external conditions, 450
time, 387
wxDateTime, 388-389
timers, wxTimer, 457-459
ToasterBox, 597
toolkit symbols, 573
tools
development tools. See development tools
drawing tools. See drawing tools
RAD tool, 575
third-party tools, 594-596
wxDialog, 66-69
member functions, 71
styles, 69-70
wxFrame, 55-57
member functions, 60-61
mini-frames, 63
non-rectangular frames, 61-63
styles, 58-59
wxMDIChildFrame, 65
member functions, 65
styles, 65
wxMDIParentFrame, 63-64
member functions, 65
styles, 64
wxPopupWindow, 71
Tortoise CVS, 607
Transcribe!, 607
TransferDataFromWindow, 247, 648
TransferDataToWindow, 247, 648
transferring, wxString, 440
transformations, programming with wxImage, 284
translating resources, 261
translations, 433-434
message catalogs, 435-436
MFC versus wxWidgets, 650
poEdit, 434
wxLocale, 437-438
transparency, programming with wxImage, 282-283
Traverse, 400
tree controls. See wxTreeCtrl
troubleshooting Microsoft Visual Studio, 561-562
TryLock, 452
UDP, 463
UI design guidelines, 537
application termination behavior, 539
colors, 539
fonts, 539
icons, 538
menus, 538
standard buttons, 538
UI separation, designing dialogs, 256
UI updates
handling, creating custom dialogs, 250-251
windows, 42
unary minus, 390
underlines, fonts, 145
undo/redo, implementing, 501-503
Unicode
convTo, 440
Microsoft Visual Studio, 548
string literals, 375
wxCSConv, 440
Unicode debug build, 548
Unicode-versus non-Unicode, 546
Unix
Bakefile, 566
GCC, 553-554
compiling sample programs, 555
printing with GTK+, 167-168
Unlock, 452
unpacking wxWidgets, 545-546
UnregisterProcess, 529
update region, 41
UpdateBackingFromWindow, 316
updates, UI updates, 43
updating wxWidgets files, 556
upgrading DialogBlocks, 577
useMask, 158
Validate, 366
validation
creating custom dialogs, 247-249
MFC, 648-649
validators, 532
implementing, writing your own controls, 365-367
wxFontSelectorValidator, 365
VideoLAN client (VLC), 607
view classes, defining for document/view systems, 486-495
views, MFC versus wxWidgets, 649
virtual file systems, 408-411
virtual list controls, 330
Visual Studio. See Microsoft Visual Studio
VLC (VideoLAN client), 607
VMware, 596
VTK, 597
Wait, 449
WaitOnConnect, wxSocketClient, 468
web browsers, embedded web browsers, 591
weight, fonts, 145
window classes
base classes. See base window classes
container windows, 45
control bars, 46
document/view systems, 495-497
FL (Frame Layout), 589
menus, 46
non-static controls, 45
OGL, 588
static controls, 46
top-level windows, 45
wxCalendarCtrl, 585
wxDatePickerCtrl, 586
wxEditableListBox, 587
wxFoldPanelBar, 587
wxGenericDirCtrl, 585
wxGIFAnimationCtrl, 587
wxLEDNumberCtrl, 586
wxSplashScreen, 588
wxStaticPicture, 586
wxStyledTextCtrl, 586
wxTipWindow, 586
window identifiers, 31-32
window objects, creating and deleting, 413-414
window variant, 42
windows, 39
Bakefile, 566
bitmap colors, 125
Borland C++, compiling sample programs, 550
carets, 41
changes to setup.h, 556
client areas, 40
color, 42
concept of, 40
container windows. See container windows
control bars
MFC versus wxWidgets, 650
windows, 46
wxMenuBar, 122-124
wxStatusBar, 128-130
wxToolBar, 124-128
coordinate systems, 41
creating, 43-44
cursors, 41
deleting, 43-44
development tools, 543-544
disabling, 460
drawing on, with wxPaintDC, 135-138
embedding in HTML pages, 342-344
erasing backgrounds, 134-135
fonts, 42
idle time processing, 42
input, 42
installing DialogBlocks, 576
installing applications, 532-533
Microsoft Visual C++, compiling wxWidgets sample programs, 549
Microsoft Visual Studio. See Microsoft Visual Studio
MinGW, 552-553
compiling sample programs, 553
with MSYS, 551-552
non-client areas, 40
non-static controls. See non-static controls
painting, 41
scrollbars, 41
sizing, 42
static controls. See static controls
StoryLines, 2
styles, 44
top-level windows, 41
top-level windows. See top-level windows
UI updates, 42
wizards
New Project Wizard, DialogBlocks, 582
showing, 331
wxWizard, 331
events, 331
examples, 332-338
member functions, 332
Writer’s Cafe, 607
writing
data types, 405-406
files, 398
resource handlers, 262-263
socket data, 472
writing your own controls, 359-360
adding DoGetBestSize, 362
control appearance, 367-369, 371
custom control declaration, 360-362
defining default event handlers, 364-365
defining event classes, 363
displaying information on the control, 363
handling input, 363-364
implementing resource handlers, 367
implementing validators, 365-367
wx-config, 571-572
build directory, 571
wx-dev, 6-7
wx-users, 6-7
wx.NET, 594
wx4j, 594
wxAccessible, 591
wxActivateEvent, 617
wxAND, 160
wxAND_INVERT, 160
wxAND_REVERSE, 160
wxANIHandler, 281
wxApp, 16-17
wxArchiveClassFactory, 407
wxArchiveEntry, 407
array types, 379-380
sample code, 381-383
wxArrayString, 380
wxArt2D, 598
wxArtProvider, 288-290
wxASSERT, 418
wxAutomationObject, 591
wxBaseArray, 381
wxBasic, 593
wxBetterDialog, 599
creating, 268-269
palettes, 147
programming, 267
creating a wxBitmap, 268-269
drawing with bitmaps, 271
packaging bitmap resources, 272
setting wxMask, 269-270
XPM format, 270-271
wxBitmapButton, non-static controls, 89-90
wxBitmapType, 266
wxBITMAP_TYPE_ANI, 267
wxBITMAP_TYPE_ANY, 267
wxBITMAP_TYPE_BMP, 266
wxBITMAP_TYPE_BMP_RESOURCE, 266
wxBITMAP_TYPE_CUR, 266
wxBITMAP_TYPE_CUR_RESOURCE, 266
wxBITMAP_TYPE_GIF, 266
wxBITMAP_TYPE_ICO, 266
wxBITMAP_TYPE_ICON_RESOURCE, 267
wxBITMAP_TYPE_ICO_RESOURCE, 266
wxBITMAP_TYPE_IFF, 267
wxBITMAP_TYPE_JPEG, 266
wxBITMAP_TYPE_MACCURSOR, 267
wxBITMAP_TYPE_MACCURSOR_RESOURCE, 267
wxBITMAP_TYPE_PCX, 266
wxBITMAP_TYPE_PICT, 266
wxBITMAP_TYPE_PICT_RESOURCE, 267
wxBITMAP_TYPE_PNG, 266
wxBITMAP_TYPE_TIF, 266
wxBITMAP_TYPE_XBM, 266
wxBITMAP_TYPE_XPM, 266
wxBITMAP_TYPE_XPM_DATA, 266
wxBLACK, 141
wxBLUE, 141
wxBMPHandler, 280
wxBoxSizer, 193-196
styles, 144
wxBufferedPaintDC, 133, 136-138
wxBUFFER_CLIENT_AREA, 138
wxBUFFER_VIRTUAL_AREA, 138
wxBusyInfo, 210
non-static controls, 86
events, 87
labels, 87-88
member functions, 87
styles, 86
wxBZipStream, 599
wxCalendarCtrl, 585
wxCaret, 41
wxCharBuffer, 441
wxCHECK, 418
wxCheckBox, non-static controls, 93-94
events, 95
member functions, 95
styles, 94
wxCheckboxPage, 334
wxCheckListBox, non-static controls, 95-96
events, 97
member functions, 98
styles, 97
wxChoice, non-static controls, 90-91
wxCLEAR, 160
wxClientDC, 132
drawing on windows, 133-134
wxClipboardLocker, 293
wxCLIP_CHILDREN, 512
wxCloseEvent, 619
wxCmdLineParser, 521
wxCocoa, 10
wxColor, 141
wxColour, 141
wxColourDialog, 218-221
wxComboBox, non-static controls, 91-92
events, 93
member functions, 93
styles, 92
wxCommandEventHandler, 31
wxConcatFiles, 402
wxCondition, synchronizing objects, 453
example, 453-456
wxConfig, 530
wxContextMenuEvent, 620
wxControl, base window classes, 54
wxControlWithItems, base window classes, 54
member functions, 54-55
wxConvCurrent, 441
wxCONVERT_SUBSTITUTE, 440
wxCopy, 158-160
wxCopyFile, 402
wxCrashReport, 599
wxCreateDynamicObject, 425
wxCriticalSection, synchronizing objects, 453
wxCRP, 595
wxCSConv, 440-441
wxCTB, 598
wxCURHandler, 281
wxCURL, 597
wxCurlDAV, 597
creating, 276-278
programming with, 275
creating wxCursor, 276-278
wxCursor, 278
wxSetCursorEvent, 278-279
wxCURSOR_ARROW, 276
wxCURSOR_ARROWWAIT, 277
wxCURSOR_BLANK, 276
wxCURSOR_BULLSEYE, 276
wxCURSOR_CROSS, 276
wxCURSOR_IBEAM, 276
wxCURSOR_LEFT_BUTTON, 276
wxCURSOR_MAGNIFIER, 276
wxCURSOR_MIDDLE_BUTTON, 276
wxCURSOR_NO_ENTRY, 276
wxCURSOR_PAINT_BRUSH, 276
wxCURSOR_PENCIL, 276
wxCURSOR_RIGHT_ARROW, 276
wxCURSOR_RIGHT_BUTTON, 277
wxCURSOR_SIZENS, 277
wxCURSOR_SIZENWSE, 277
wxCURSOR_SIZEWE, 277
wxCURSOR_SIZING, 277
wxCURSOR_WAIT, 277
wxCURSOR_WATCH, 277
wxCYAN, 141
wxDao, 650
wxDataFormat, 301
wxDataInputStream, 405-406
wxDataObject, 291-292, 300-301
deriving from, 301
drag and drop sample, 302-311
wxDataObjectComposite, 301
wxDataObjectSimple, 301
wxDataOutputStream, 405-406
wxDatePickerCtrl, 586
wxDateSpan, 389
wxDateTime, 387-388
accessors, 388
constructors and modifiers, 388
date arithmetic, 389-391
date comparisons, 389
formatting dates, 389
getting current time, 389
wxDC, 131
wxDebugContext, 417
wxDebugReport, 431
wxDesigner, 594
wxDev-CPP, 595
wxDF_BITMAP, 292
wxDF_FILENAME, 292
wxDF_INVALID, 292
wxDF_METAFILE, 292
wxDF_TEXT, 292
wxDialog, top-level windows, 66-69
member functions, 71
styles, 69-70
wxDialUpManager, 590
wxDir, 400-401
wxDirDialog, 216-218
wxDirExists, 402
wxDIR_DIRS, 400
wxDIR_DOTDOT, 400
wxDIR_FILES, 400
wxDIR_HIDDEN, 400
wxDocChildFrame, 483
wxDockIt, 650
document/view systems, 497-499
wxDocParentFrame, 483
wxDocTemplate, document/view systems, 497-499
wxDragCancel, 296
wxDragCopy, 296
wxDragError, 296
wxDragImage, 313-316
wxDragLink, 296
wxDragMove, 296
wxDragNone, 296
wxDragResult, 297
wxDrag_AllowMove, 295
wxDrag_CopyOnly, 295
wxDrag_DefaultMove, 295
wxDropTarget, 297-298
wxDynamicLibrary, 427
wxDYNLIB_FUNCTION, 427
wxEditableListBox, 587
wxEiffel, 594
wxEmail, 590
wxEncodingConverter, 440
wxEncodingCoverter, 439
wxEQUIV, 160
wxEuphoria, 594
wxEvent, 620
wxEventLoop, 592
wxEvtHandler, 29
wxEVT_CLOSE_WINDOW, 414
wxEVT_DELETE, 44
wxEVT_IDLE, 42
wxEVT_KILL_FOCUS, 42
wxEVT_SET_FOCUS, 42
wxFAIL, 418
wxFFile, 397-398
wxFile, 397-398
wxFileConfig, 529
wxFileDialog, 212-216
wxFileDropTarget, 298
wxFileExists, 402
wxFileInputStream, 403-405
wxFileModificationTime, 402
wxFileNameFromPath, 402
wxFileOutputStream, 403-405
wxFileSystem, 409
wxFileSystemHandler, 409
wxFILE_SEP_PATH, 403
wxFilterInputStream, 407
wxFilterOutputStream, 407
wxFindAppPath, 524
wxFindReplaceDialog, 228-232
wxFIXED_MINSIZE, 84
wxFlexGridSizer, 198-200
wxFocusEvent, 620
wxFoldPanelBar, 587
wxFont, 145-146
wxFontDialog, 221-224
wxFontSelectorCtrl, 35, 359, 363
wxFontSelectorValidator, 365
wxFopen, 402
wxFputc, 402
wxFrame, top-level windows, 55-57
member functions, 60-61
mini-frames, 63
non-rectangular frames, 61-63
styles, 58-59
wxFSFile, 409
wxFULL_REPAINT_ON_RESIZE, 136, 512
wxGauge, non-static controls, 112-113
wxGenericDirCtrl, 585
wxGenericDragImage, 315
wxGenericValidator, 248
wxGetCwd, 402
wxGetDiskSpace, 402
wxGIFAnimationCtrl, 587
wxGIFHandler, 280
wxGlade, 595
wxGLCanvas, 168-169
wxGREEN, 141
classes, 347-348
code listings, 346-347
events, 349
member functions, 350-353
functions for creation, deletion, and data retrieval, 350
functions for presentation, 351
functions for selection and cursors, 352
functions for setting and getting wxGrid metrics, 351-352
miscellaneous functions, 353
wxGridBagSizer, 200-201
wxGridCellAttr, 348
wxGridCellCoords, 349
wxGridCellCoordsArray, 349
wxGridCellEditor, 348
wxGridCellRenderer, 348
wxGridEditorCreatedEvent, 348
wxGridEvent, 348
wxGridRangeSelectEvent, 348
wxGridSizeEvent, 348
wxGridSizer, 197-198
wxGTK, 8
wxHashMap, 385-387
wxHaskell, 594
wxHatch, 595
wxHelpController, 516
wxHelpControllerHelpProvider, 521
wxHSCROLL, 41
wxHTML Help, 598
wxHtmlContainerCell, 341
wxHtmlHelpController, 442, 513, 516
wxHtmlHelpControllerEx, 517
wxHtmlHelpWindowEx, 517
wxHtmlPrintout, 649
wxHtmlWindow, 317, 338, 408-409
embedding windows in HTML pages, 342-344
member functions, 341-342
printing, 344-345
styles, 341
wxHtmlWindows, HTML for about boxes, 340-341
wxHTTPServer, 599
wxHyperLink, 599
wxHyperlinkCtrl, 598
wxICOHandler, 281
wxIcon, 265
creating, 273
programming with, 272-274
associating icons with applications, 274-275
creating wxIcon, 273
wxIconBundle, 288
wxID_ABORT, 34
wxID_ABOUT, 32
wxID_ANY, 31-32
wxID_APPLY, 33
wxID_BACKWARD, 33
wxID_BOLD, 34
wxID_CANCEL, 33
wxID_CLEAR, 33
wxID_CLOSE, 32
wxID_CONTEXT_HELP, 34
wxID_COPY, 33
wxID_CUT, 33
wxID_DEFAULT, 33
wxID_DELETE, 33
wxID_DOWN, 34
wxID_DUPLICATE, 33
wxID_EXIT, 32
wxID_FIND, 33
wxID_FORWARD, 33
WXID_HELP, 32
wxID_HELP_COMMANDS, 32
wxID_HELP_CONTENTS, 32
wxID_HELP_CONTEXT, 33
wxID_HELP_PROCEDURES, 32
wxID_HIGHEST, 32
wxID_HOME, 34
wxID_IGNORE, 34
wxID_INDENT, 34
wxID_INDEX, 34
wxID_ITALIC, 34
wxID_JUSTIFY_CENTER, 34
wxID_JUSTIFY_FILL, 34
wxID_JUSTIFY_LEFT, 34
wxID_JUSTIFY_RIGHT, 34
wxID_LOWEST, 32
wxID_MORE, 33
wxID_NEW, 32
wxID_NO, 33
wxID_NOTOALL, 34
wxID_OPEN, 32
wxID_PASTE, 33
wxID_PREVIEW, 32
wxID_PRINT, 32
wxID_PRINT_SETUP, 32
wxID_PROPERTIES, 33
wxID_REDO, 32
wxID_REFRESH, 34
wxID_REPLACE, 33
wxID_REPLACE_ALL, 33
wxID_RESET, 33
wxID_RETRY, 34
wxID_REVERT, 32
wxID_REVERT_TO_SAVED, 34
wxID_SAVE, 32
wxID_SAVEAS, 32
wxID_SELECTALL, 33
wxID_SETUP, 33
wxID_STATIC, 33
wxID_STOP, 34
wxID_UNDELETE, 34
wxID_UNDERLINE, 34
wxID_UNDO, 32
wxID_UNINDENT, 34
wxID_VIEW_DETAILS, 33
wxID_VIEW_LARGEICONS, 33
wxID_VIEW_LIST, 33
wxID_VIEW_SORTDATE, 33
wxID_VIEW_SORTNAME, 33
wxID_VIEW_SORTSIZE, 33
wxID_VIEW_SORTTYPE, 33
wxID_YES, 33
wxID_YESTOALL, 34
wxID_ZOOM_100, 34
wxID_ZOOM_FIT, 34
wxID_ZOOM_IN, 34
wxID_ZOOM_OUT, 34
wxIdleEvent, 620
wxID_ANY, 43
wxID_CANCEL, 414
wxID_COPY, 511
wxID_PREVIEW, 500
wxID_PRINT, 500
wxIFFHandler, 281
wxIFM, 597
wxImage, 265
programming with, 279-280
color reduction, 284-285
loading and saving images, 280-282
manipulating data directly, 285
transformations, 284
transparency, 282-283
wxImageList, 285-288
wxImprola, 598
wxIndustrialControls, 596
wxIniConfig, 530
wxInitDialogEvent, 620
wxInternetFSHandler, 411
wxINVERT, 159-160
wxIPV6address, 468
wxIsAbsolutePath, 403
wxJavaScript, 593
wxJoystickEvent, 183-184
wxJPEGHandler, 280
wxLaunchFile, 526
wxLayoutAlgorithm, 85
wxLCDWindow, 598
wxLEDNumberCtrl, 586
wxLIGHT_GREY, 141
wxList, 383-385
wxListBox, non-static controls, 95-96
events, 97
member functions, 98
styles, 97
wxListCtrl, 76, 285, 287, 312, 317, 322-323, 328-329
events, 324
member functions, 327-328
styles, 323
wxListCtrlCompare, 328
wxListCtrlEx, 599
wxListItem, 325-326
wxLocal, 434
wxLocale, 437-438
wxLog, 421-422
versus wxMessageOutput, 423-424
wxLogError, 419-420
wxLogFatalError, 420
wxLogGui, 422
wxLogStatus, 420
wxLogStderr, 422
wxLogStream, 422
wxLogSysError, 421
wxLogTrace, 421
wxLogVerbose, 420
wxLogWarning, 420
wxLogWindow, 422
wxLongLong, 392
wxLua, 593
wxMac, 10
wxMask, 265
setting, 269-270
wxMathPlot, 597
wxMBConv, 440-441
wxMDIChildFrame, 63
top-level windows, 65
wxMDIParentFrame, top-level windows, 63-64
member functions, 65
styles, 64
wxMediaCtrl, 590
drawing on bitmaps, 138
wxMemoryFSHandler, 411
wxMemoryInputStream, 405
wxMemoryOutputStream, 405
wxMenu, 117-118
events, 118-120
member functions, 120-122
wxMenuBar, control bars, 122-123
events, 123
member functions, 123-124
wxMenuEvent, 621
wxMessageBox, 207
wxMessageOutput versus wxLog, 423-424
wxMessageOutputDebug, 423
wxMetafileDC, 133
creating metafiles, 138
wxMGL, 12
wxMkdir, 403
wxMM_LOMETRIC, 132
wxMM_METRIC, 132
wxMM_POINTS, 132
wxMM_TEXT, 132
wxMM_TWIPS, 132
wxModalHelp, 517
wxModule, 426
wxMotif, 10
wxMoveEvent, 622
wxMSW, 8
wxMultiChoiceDialog, 225-226
wxMutex, 451-452
wxMutexLocker, 451
wxMUTEX_DEAD_LOCK, 452
wxNAND, 160
wxNode, 383-385
wxNodeBase, 383
wxNOR, 160
container windows, 72-74
alternatives to, 76
events, 75
member functions, 75-76
notebook theme management, 74
styles, 74
wxNotebookEvent, 622
wxNO_BORDER, 47
wxNO_OP, 160
wxNullBitmap, 138
wxNullColor, 141
wxNullPalette, 148
wxNumberEntryDialog, 227
wxObjArray, 380-381
sample code, 381-383
wxObject, 391
wxODBC, 589
wxOR, 160
wxOR_INVERT, 160
wxOR_REVERSE, 160
wxOS2, 12
wxOTL, 598
wxPageSetupDialog, 232-235
wxPaintDC, 133
drawing on windows, 135-138
wxPalmOS, 12
wxPanel, container windows, 72
wxPassThrough, 423
wxPasswordEntryDialog, 227
wxPathOnly, 403
wxPCXHandler, 280
wxPen, 142-143
styles, 142
wxPerl, 593
wxPlaySound, 526
wxPlaySoundFile, 526
wxPNGHandler, 280
wxPNMHandler, 280
wxPoint, 392
wxPopupWindow, top-level windows, 71
wxPrintData, 140
wxPrintDialog, 235-239
wxPrintDialogData, 161
wxPrinter, 161
wxPrintPreview, 162
wxProcess, 527
wxProgressDialog, 208-209
wxPropertyGrid, 597
wxPropertySheetDialog, 531
wxPython, 593
wxQueryLayoutInfoEvent, 85
wxRadioBox, non-static controls, 98-99
events, 100
member functions, 100
styles, 99
wxRadioboxPage, 335
wxRadioButton, non-static controls, 100-101
wxRarInputStream, 599
wxRB_GROUP, 100
wxrc commands, 260
wxRealPoint, 392
wxRect, 392-393
wxRED, 141
wxRegConfig, 530
wxRegEx, 379
wxRegion, 393-394
wxRegionIterator, 393
wxRemoveFile, 403
wxRenameFile, 403
wxRendererNative, 592
wxReportWriter, 598
wxResizeableControl, 597
wxRmdir, 403
wxRuby, 594
wxSafeYield, 460
wxSashLayoutWindow, 85
wxSashWindow, 85
wxScreenDC, 133
accessing screens, 139
wxScrollBar, non-static controls, 101-102
events, 102
member functions, 103
styles, 102
wxScrolledWindow, 136
container windows, 76-78
events, 78
member functions, 79-80
styles, 78
wxSemaphore, synchronizing objects, 456
wxSEMA_OVERFLOW, 456
wxSET, 160
wxSetCursorEvent, 278-279
wxSetWorkingDirectory, 403
wxSheet, 599
wxSingleChoiceDialog, 224-225
wxSingleInstanceChecker, 506, 509
wxSize, 394
wxSizeEvent, 624
wxSizer, 188
wxSlider, non-static controls, 106
events, 107
member functions, 107
styles, 106
wxSMTP, 597
wxSockAddress, 468
wxSocket, 476
alternatives to, 479
as a standard socket, 476
member functions, 469
wxSocketOutputStream, 406, 464
connection events, 472
wxSOCKET_BLOCK, 473-474
wxSOCKET_NONE, 473
wxSOCKET_NOWAIT, 473
wxSOCKET_WAITALL, 473-475
wxSortedArray, 380
wxSortedArrayString, 380
wxSound, 590
wxSpellChecker, 598
wxSpinButton, non-static controls, 103-104
wxSpinCtrl, non-static controls, 104-105
events, 105
member functions, 106
styles, 105
wxSpinEvent, 624
wxSplashScreen, 588
wxSplitterEvent, 624
wxSplitterWindow, container windows, 81-82
alternatives to, 85
events, 83
member functions, 84
sizing issues, 84-85
styles, 83
wxSPL_LIVE_UPDATE, 81
wxSQLite, 598
wxSRC_INVERT, 160
wxSscanf, 402
wxStatic Text, static controls, 113-114
wxStaticBitmap, static controls, 114-115
wxStaticBox, static controls, 116
wxStaticBoxSizer, 196-197
wxStaticLine, static controls, 115
member functions, 116
styles, 115
wxStaticPicture, 586
wxStatusBar, control bars, 128-129
member functions, 129-130
styles, 129
wxStEdit, 598
wxStopWatch, 458
wxStreamBase, 403
wxStreamMerger, 599
wxStreamToTextRedirector, 422
C pointer conversions, 375-376
characters, 375
converting to and from numbers, 377
standard C string functions, 376-377
string literals, 375
transferring, 440
wxArrayString, 380
wxStringInputStream, 405
wxStringOutputStream, 405
wxStringTokenizer, 378
wxStyledTextCtrl, 586
wxSUNKEN_BORDER, 47
wxSysColourChangeEvent, 624
wxSystemSettings, 141
deriving from, 354-355
events, 358
member functions, 358
showing taskbar icons, 356-357
wxTempFile, 400
non-static controls, 107-109
events, 110
member functions, 110-111
styles, 109
wxTextEntryDialog, 227-228
wxTextFile, 399
wxTextInputStream, 405
wxTextOutputStream, 405-406
wxTextValidator, 248
wxTheColourDatabase, 141
wxThePenList, 143
creating threads, 449-450
pausing threads, 450
starting threads, 450
terminating, 451
wxTIFFHandler, 281
wxTimer, 457-459
wxTimerEvent, 457
wxTimeSpan, 389
wxTipProvider, 519
wxTipWindow, 586
wxToggleButton, non-static controls, 111-112
wxToolBar, control bars, 124-125
bitmap colors under Windows, 125
events, 126
member functions, 127-128
styles, 126
wxTRANSPARENT, 150
wxTreeCtrl, 285, 287, 311-312, 317-319, 531
events, 320
member functions, 321-322
styles, 319-320
wxTreeEvent, 320
wxTreeItemData, 317
wxTreeItemId, 317
wxULongLong, 392
wxUpdateUIEvent, 624
wxURI, 590
wxURL, 590
wxUSE_DEBUG_NEW_ALWAYS, 416
wxValidationPage, 336
wxValidator, 648
wxVariant, 394-395
wxViewHTMLFile, 526
wxVirtualDirTreeCtrl, 597
wxVisualAttributes, 368
wxVisualSetup, 595
wxVSCROLL, 41
wxVTK, 597
wxWebKitCtrl, 591
wxWHITE, 141
wxWidgets, 1
architecture of, 8
internal organization, 12-13
wxCocoa, 10
wxGTK, 8
wxMac, 10
wxMGL, 12
wxMotif, 10
wxMSW, 8
wxOS2, 12
wxPalmOS, 12
wxWinCE, 10
wxX11, 9
communities, 6-7
history of, 5-6
versus MFC, 643
configurable control bars, 650
database access, 650
documents and views, 649
initializing applications, 644
macros, 651
message maps, 644-646
printing, 649
string handling and translation, 650
and object-oriented programming, 7
reasons for using, 2-5
wxWinCE, 10
wxWinceHelpController, 513
base window classes, 47
wxWindow member functions, 50-53
wxWindow styles, 47-49
events, 49
wxWindowCreateEvent, 625
wxWindowDC, 133
wxWindowDestroyEvent, 625
wxWindows License, 7
wxWinHelpController, 513
wxWinWiz, 595
events, 331
examples, 332-338
member functions, 332
sample code, 635-641
styles, 331
wxWizardPage, 331
wxX11, 9
wxXOR, 160
wxXPMHandler, 281
wxZipInputStream, 407
wxZipOutputSTream, 408
wxZlibInputStream, 407
wxZlibOutputStream, 407
X11 errors, 429-430
xCHM, 608
Xcode, creating wxWidgets applications, 563-564
XPM, programming with wxBitmap, 270-271
XRC files, 647
implementing resource handlers, writing your own controls, 367
XRC format, resource files, 261-262
XRCed, 595
yielding, 460
Zeitlin, Vadim, 5
zip streams, 407-408
18.188.211.106