]> git.saurik.com Git - wxWidgets.git/blob - docs/changes.txt
reSWIGged
[wxWidgets.git] / docs / changes.txt
1 ----------------------------
2 wxWindows 2.5/2.6 Change Log
3 ----------------------------
4
5 INCOMPATIBLE CHANGES SINCE 2.4.x
6 ================================
7
8 Please take a few minutes to read the following list, especially
9 paying attention to the most important changes which are marked
10 with '!' in the first column.
11
12 Also please note that you should ensure that WXWIN_COMPATIBILITY_2_4
13 is defined to 1 if you wish to retain maximal compatibility with 2.4
14 series.
15
16 ! windows are no longer fully repainted when resized, use new style
17 wxFULL_REPAINT_ON_RESIZE to force this (wxNO_FULL_REPAINT_ON_RESIZE stll
18 exists but doesn't do anything any more, this behaviour is default now)
19
20
21 - no initialization/cleanup can be done in wxApp/~wxApp because they are
22 now called much earlier/later than before; please move any exiting code
23 from there to wxApp::OnInit()/OnExit()
24 - also, OnExit() is not called if OnInit() fails
25 - wxTheApp can't be assigned to any longer, use wxApp::SetInstance() instead
26 - wxFileType::GetIcon() returns wxIconLocation, not wxIcon
27 - wxColourDatabase is not a wxList any more, use AddColour to add new colours
28 - wxWindow::Clear() is now called ClearBackground()
29 - pointer returned by wxFont::GetNativeFontInfo() must not be deleted now
30 - wxMouseEvent::Moving() doesn't return true if mouse is being dragged any more
31 - pointer returned by wxColourDatabase::FindColour() must now always (and
32 not just sometimes) be deleted, to avoid problems, don't use it at all,
33 use wxColourDatabase::Find() instead.
34 - (most) controls now inherit parents colours by default, override
35 ShouldInheritColours() to return false if you don't want this to happen
36
37
38
39 DEPRECATED METHODS SINCE 2.4.x
40 ==============================
41
42 Deprecated methods may still be used but will disappear in future wxWindows
43 versions, please update your code to not use them.
44
45 - wxDocManager::GetNoHistoryFiles() renamed to GetHistoryFilesCount()
46 - wxSizer::Remove(wxWindow *), use Detach() instead [it is more clear]
47 - wxSizer::Set/GetOption(): use Set/GetProportion() instead
48 - wxKeyEvent::KeyCode(): use GetKeyCode instead
49 - wxList::Number, First, Last, Nth: use GetCount, GetFirst/Last, Item instead
50 - wxNode::Next, Previous, Data: use GetNext, GetPrevious, GetData instead
51 - wxListBase::operator wxList&(): use typesafe lists instead
52 - wxTheFontMapper: use wxFontMapper::Get() instead
53 - wxStringHashTable: use wxHashMap instead
54 - wxHashTableLong: use wxHashMap instead
55 - wxArrayString::GetStringArray: no replacement
56 - wxArrayString::Remove(index, count): use RemoveAt instead
57 - wxTreeItemId conversion to long is deprecated and shouldn't be used
58 - [MSW only] wxWindow::GetUseCtl3D(), GetTransparentBackground() and
59 SetTransparent() as well as wxNO_3D and wxUSER_COLOURS styles
60 - wxList keyed interface: use wxHashMap instead
61
62 OTHER CHANGES
63 =============
64
65 2.5.1
66 -----
67
68 All:
69
70 - added wxGzipInput/OutputStream, bug fixes in wxZlibStreams (M.J.Wetherell)
71 - wxDateTime::ParseDateTime() implemented (Linus McCabe)
72 - wxHTTP::GetResponse() added (David Nock)
73 - added conversions to/from UTF 16/32 LE/BE (Andreas Pflug)
74 - added wxTextInputStream::ReadChar() (M.J.Wetherell)
75 - added translation to Afrikaans (Petri Jooste)
76 - Spanish translations updated (Javier San Jose)
77 - added gettext plural forms support to wxLocale (Michael N. Filippov)
78 - wxFileName::Normalize(wxPATH_NORM_ALL) doesn't lower filename case any more
79 - wxFileName::Normalize(wxPATH_NORM_ENV_VARS) now works
80 - check if file exists in wxFileConfig::DeleteFile() (Christian Sturmlechner)
81
82 All (GUI):
83
84 - added wxListBook control
85 - added 3-state checkboxes for MSW/Mac (Dimitri Schoolwerth)
86 - added some support for C++ exceptions in the library (do read the manual!)
87 - added wxListCtrl::GetViewRect()
88 - added wxTextCtrl::MarkDirty()
89 - wxToolBar::ToggleTool() now works for radio buttons (Dag Ågren)
90 - wxListCtrl now sends an END_LABEL event if editing was cancelled, too
91 - bug in wxRect ctor from two [out of order] wxPoints fixed (Steve Cornett)
92 - status text is now restored after wxMenu help is shown in it
93 - bug in wxWindow::RemoveEventHandler() fixed (Yingjun Zhang)
94 - make it possible to use wxRTTI macros with namespaces (Benjamin I. Williams)
95 - wxColourDatabase API now uses objects instead of pointers
96
97 wxMSW:
98
99 - fixed wxTE_*WRAP styles handling
100 - wxTextCtrl::GetValue() works with text in non default encoding
101 - changed wxCrashReport to generate minidumps instead of text files
102 - wxRadioButtons are now checked when they get focus (standard behaviour)
103 - several fixes to owner drawn menu items (Christian Sturmlechner)
104 - wxGauge now supports full 32 bit range (Miroslav Rajcic)
105 - make it possible to give focus to the notebook tabs (Hajo Kirchhoff)
106 - MDI child frames are not always resizeable any more (Andrei Fortuna)
107 - fixed enumerating of entries/groups under '/' in wxRegConfig
108 - added wxSYS_ICONTITLE_FONT (Andreas Pflug)
109
110 wxGTK:
111
112 - fixes to wxTextCtrl scrolling under GTK2 (Nerijus Baliunas)
113 - fix for crash when using user-dashed lines (Chris Borgolte)
114 - fixed wxChoice::Delete() in presence of client data
115
116 wxHTML:
117
118 - wxHtmlHelpController now supports compressed MS HTML Help files (*.chm)
119 on Unix (Markus Sinner)
120
121
122 2.5.0
123 -----
124
125 All:
126
127 - It is now possible to build several smaller libraries instead of single
128 huge wxWindows library; wxBase is now dependency of GUI ports rather then
129 separately compiled library
130 - added wxDateSpan::operator==() and !=() (Lukasz Michalski)
131 - added wxFileName::GetForbiddenChars() (Dimitri Schoolwerth)
132 - use true/false throughout the library instead of TRUE/FALSE
133 - wxStopWatch::Start() resumes the stop watch if paused, as per the docs
134 - added wxDirTraverser::OnOpenError() to customize the error handling
135 - added wxArray::SetCount()
136 - wxFile, wxFFile, wxTextFile and wxTempFile now all use UTF-8 encoding
137 by default in Unicode mode
138 - bug in wxDateTime with timezones on systems with tm_gmtoff in struct tm fixed
139 - added wx/math.h (John Labenski)
140 - added Catalan translations (Pau Bosch i Crespo)
141 - added Ukrainian translations (Eugene Manko)
142 - fixed bug with deleting entries at root level in wxFileConfig
143 - chkconf.h now includes platform-specific versions (for MSW
144 and Mac) which contain some tests that were in setup.h
145 - added event sink argument to wxEvtHandler::Connect()
146 - added support for POST method and alt ports to wxHTTP (Roger Chickering)
147 - added wxSocket::IPAddress() (Chris Mellon)
148 - wxDataStreams can read/write many elements at once (Mickael Gilabert)
149 - added wxRecursionGuard class
150 - added wxThreadHelper class (Daniel Howard)
151 - Added STL support (--enable-stl for configure, wxUSE_STL in setup.h).
152 When enabled, wxString will derive from std::string, wxArray from,
153 std::vector, wxList from std::list. In addition wxHashTable will be
154 implemented in terms of wxHashMap.
155 - Added wxList::compatibility_iterator. Can be used like wxNode* (except
156 it can't be delete()d). It permits writing code which will work
157 both with wxUSE_STL==1 and wxUSE_STL==0.
158
159 wxBase:
160
161 - added Watcom makefiles
162 - fixed bug with searching in sorted arrays (Jürgen Palm)
163
164 All GUI ports:
165
166 - added wxVScrolledWindow, wxVListBox and wxHtmlLbox classes
167 - added wxListbook
168 - added alpha channel support to wxImage
169 - added wxRenderer class allowing to customize the drawing of generic controls
170 - added wxCLOSE_BOX style for dialogs and frames
171 - added wxSplitterWindow and wxWizard handlers to XRC
172 - wxWizard is now sizer-friendly and may be made resizeable (Robert Vazan)
173 - added proportion to wxFlexGridSizer::AddGrowableRow/Col (Maxim Babitski)
174 - added wxFlexGridSizer::SetFlexibleDirection() (Szczepan Holyszewski)
175 - implemented GetEditControl for wxGenericTreeCtrl (Peter Stieber)
176 - improved contrib/utils/convertrc parsing (David J. Cooke)
177 - fixed handling of URLs and filenames in wxFileSystem
178 - implemented alignment for wxGrid bool editor and renderer
179 - support wxListCtrl columns alignment for all platforms and not just MSW
180 - added wxToolBar Add/InsertTool(tool) (Janusz Piwowarski)
181 - added wxTB_HORZ_TEXT style for MSW and GTK (Axel Schlueter)
182 - fixed user dash handling for MSW and GTK (Ken Edwards)
183 - WXR resources can now be used in Unicode builds
184 - it is now possible to use several wxFileHistory objects in the same menu
185 by giving them different base IDs (Dimitri Schoolwerth)
186 - Added wxTLW::SetShape with implementations for wxMSW and wxGTK (so far)
187 - FL: rmoved const from EnableTool parameters
188 - FL: signal child window when toolbar is closed
189 - In various places, changed tests for pathsep on last char of string to call
190 wxEndsWithPathSeparator(s)
191 - Added to defs.h a couple of macros (wxPtrToULong & wxULongToPtr)
192 - Minor improvements to document/view framework, including
193 delayed deletion of a document (until after the user has chosen
194 a new document), and more intelligent addition of filenames to
195 the file history, including not adding filenames if not using the
196 default extension for the template
197 - sped up wxImage::Scale using fixed point arithmetic (Wade Brainerd)
198 - Added BLOB support to wxDB (John Skiff)
199 - wxWizard now validates when pressing Back or Next
200 - Implemented wxNotebook::DoGetBestSize so Fit now works
201 - Added FindItemByPosition to wxMenu
202 - wxTimer now derives from wxEvtHandler and is its own owner object by default
203 - Extended wxTextAttr and added wxTextCtrl::GetStyle stub
204 to allow better rich text support.
205 - implemented wxFlexGridSizer::Show() (Wade Brainerd)
206 - Added m_ prefix to wxColourData and wxFontData members
207 - Added wxHtmlPrintout::AddFilter so HTML printing can be subject to
208 custom filters as well as HTML viewing.
209 - Moved wxApp::SendIdleEvents and wxApp::ProcessIdle into common code.
210 - wxWindow::OnInternalIdle is now used in all ports, and ensures that
211 user OnIdle events do not interfere with crucial internal processing.
212 - wxWindow::UpdateWindowUI is now a documented function that
213 sends wxUpdateUIEvents, and can be overridden. It has a helper function
214 DoUpdateWindowUI for taking appropriate wxUpdateUIEvent action.
215 - Added functions to wxUpdateUIEvent: Set/GetMode, Set/GetUpdateInterval,
216 CanUpdate, to assist with optimising update event frequency.
217 - Added functions to wxIdleEvent: Set/GetMode, CanSend, to
218 determine whether a window should receive idle events.
219 - Added wxWS_EX_PROCESS_IDLE, wxWS_EX_PROCESS_UI_UPDATES window
220 styles for use with conservative idle and update event modes.
221 - send menu update events only when a menu is about to be used (MSW/GTK)
222 - improved event processing performance (Hans Van Leemputten)
223 - added wxMirrorDC class
224 - printing improvements: GetPageInfo() gets called after the DC has
225 been set and after OnPreparePrinting() has been called so it can
226 report the number of pages accurately; doesn't try to set
227 number of pages in print dialog, in common with other Windows apps;
228 wxHTML easy printing's preview shows number of pages
229 correctly; preview scrollbars are set correctly; keyboard navigation
230 improved
231
232 Unix:
233
234 - fixed compilation on systems with zlib installed but < 1.1.3 version
235 - fixed compilation on Solaris 7 with large files support enabled
236 - added wxTaskBarIcon implementation for X11
237 - added support for GNU/Hurd in configure
238 - wxLocale::Init now tries to set .utf8 locale in Unicode mode (Andreas Pflug)
239
240 Generic controls:
241
242 - implemented wxListCtrl::Refresh() (Norbert Berzen)
243 - support adding/removing columns dynamically (Donald C. Taylor)
244 - wxToolBarSimple, property list classes, wxTreeLayout moved
245 to contrib/src/deprecated
246
247 wxGTK:
248
249 - added support for label mnemonics to GTK+2 build (Michael Moss)
250 - added native wxMessageDialog implementation for GTK+2 build
251 - fixed wxMenu::Remove (John Skiff and Benjamin Williams)
252 - made wxTextCtrl::EmulateKeyPress() work for Delete and Backspace
253 - fixed wxTopLevelWindow::ShowFullScreen to work with kwin, IceWM and
254 window managers that support _NET_WM_STATE_FULLSCREEN
255 - added wxEVT_MENU_OPEN event generation
256 - fixed bug in generic file selector causing incomplete file extensions to
257 be appended to filenames with no extension
258 - added wxTextCtrl::SetSelection implementation for GTK+ 2
259 - fixed wxTextCtrl::IsEditable() for GTK+ 2
260 - fixed wxStaticText alignment for GTK+ 2 (Kevin Hock)
261 - don't consume 100% CPU when showing a poup menu
262
263 wxMac:
264
265 - generate wxEVT_SCROLL_THUMBRELEASE and wxEVT_SCROLLWIN_THUMBRELEASE events
266 - generate wxEVT_MENU_OPEN and wxEVT_MENU_CLOSE events
267
268 wxMSW:
269
270 - possibility to use DIBs for wxBitmap implementation (Derry Bryson)
271 - added wxCrashReport
272 - wxStaticBitmap doesn't stretch its bitmap any longer (like other ports)
273 - support for accelerator keys in the owner drawn menus (Derry Bryson)
274 - wxCaret::SetSize() doesn't hide the caret any longer as it used to
275 - wxCheckListBox::Check() doesn't send CHECKLISTBOX_TOGGLE event any more
276 - fixed bugs in wxThread::Wait() and IsAlive()
277 - fixed bug with wxTR_EDIT_LABELS not working with wxTR_MULTIPLE
278 - fixes for compilation with OpenWatcom and DigitalMars compilers
279 - fixed wxStaticText best size calculation (was wrong by '&' width)
280 - fixed calling wxFrame::Maximize(FALSE) before the window is shown
281 - added wxNotebook::HitTest() (Otto Wyss)
282 - libraries built with makefile.g95 have a _min or _cyg suffix (MinGW/Cygwin)
283 - when using DLL, wxLocalFSHandler was not being exported
284 - fixed problem with wxEvtHandler object not removed from wxPendingEvents
285 - Windows XP manifest is now included in wx.rc; it is no longer neccessary
286 to ship .exe.manifest file with applications to support XP themes
287 - wxLocale::Init no longer reports error if trying to set Unicode-only locale
288 or if user's default locale is Unicode-only
289 - improved border handling under Windows XP
290 - partial fix for wxNotebook pages looking bad under XP: wxUSE_UXTHEME
291 enables XP theme engine code, and wxUSE_UXTHEME_AUTO tells
292 wxWindows to use the theme tab colour for control backgrounds.
293 - disable wxNB_RIGHT, wxNB_LEFT, wxNB_BOTTOM notebook styles under Windows XP
294 - fixed release mode build with VC 7.x (Martin Ecker)
295 - added support for wxALWAYS_SHOW_SB style
296 - you don't need to add opengl32.lib when using VC++ now (David Falkinder)
297
298 wxMotif:
299
300 - made wxFileDialog behaviour with complex wildcards more sensible (it still
301 does not support all the features other ports do); refer to wxFileDialog
302 documentation for a detailed explanation
303 - implemented wxWakeUpIdle
304 - for Motif 2.0, used the native combobox widget instead of the GPL'd
305 xmcombo; xmcombo is still used for Motif 1.x and Lesstif when compiled
306 with Motif 1.x compatibility
307 - implemented wxToggleButton
308 - wxRadioBox and wxStaticBox now use the default shadow (border) style
309 instead of a sunken border
310 - implemented wxBitmapDataObject
311 - finished wxClipboard implementation
312
313 wxUniv:
314
315 - controls in toolbars now supported
316
317 wxHTML:
318
319 - added text selection to wxHtmlWindow
320 - added SetFonts to HTML printing classes (Adrian Philip Look)
321 - it is now possible to force page break when printing by inserting
322 <div style="page-break-before:always"> into the markup (Greg Chicares)
323 - wxHtmlWindow now uses double buffering to prevent flicker
324
325
326 OLD CHANGES
327 ===========
328
329 INCOMPATIBLE CHANGES SINCE 2.2.x
330 ================================
331
332 Please take a few minutes to read the following list, especially
333 paying attention to the most important changes which are marked
334 with '!' in the first column.
335
336 Also please note that you should ensure that WXWIN_COMPATIBILITY_2_2
337 is defined to 1 if you wish to retain maximal compatibility with 2.2
338 series -- however you are also strongly encouraged to try to compile
339 your code without this define as it won't be default any longer in
340 2.6 release.
341
342 NB: if you want to build your program with different major versions
343 of wxWindows you will probably find the wxCHECK_VERSION() macro
344 (see the documentation) useful.
345
346
347 wxBase:
348
349 ! wxArray<T>::Remove(size_t) has been removed to fix compilation problems
350 under 64 bit architectures, please replace it with RemoveAt() in your
351 code.
352
353 ! wxArray<T> macros have been changed to fix runtime problems under 64 bit
354 architectures and as a side effect of this WX_DEFINE_ARRAY() can only be
355 used now for the pointer types, WX_DEFINE_ARRAY_INT should be used for the
356 arrays containing non-pointers.
357
358 - wxObject::CopyObject() and Clone() methods were removed because they
359 simply don't make sense for all objects
360
361 - wxEvent now has a pure virtual Clone() method which must be implemented
362 by all derived classes, if you have user-defined event classes please
363 add "wxEvent *Clone() const { return new MyEvent(*this); }" line to them
364
365 - small change to wxStopWatch::Pause() semantics, please see the documentation
366
367 - unlikely but possible incompatibility: the definition of TRUE has changed
368 from "1" to "(bool)1" (and the same thing for FALSE), so the code which
369 could be erroneously compiled previously such as doing "return FALSE" from
370 a function returning a pointer would stop compiling now (but this change
371 is not supposed to have any effects on valid code)
372
373 - another minor change: wxApp::OnAssert() has a new "cond" argument, you
374 must modify YourApp::OnAssert() signature if you were using it to override
375 the default assert handling.
376
377 All (GUI):
378
379 ! the event type constants are not constants any more but are dynamically
380 allocated during run-time which means that they can't be used as case labels
381 in the switch()es, you must rewrite them to use if()s instead
382
383 You may also define WXWIN_COMPATIBILITY_EVENT_TYPES to get the old behaviour
384 but this is strongly discouraged, please consider changing your code
385 instead!
386
387 ! wxDialog does not derive from wxPanel any longer - if you were using it in
388 your code, please update it. The quick fix for the most cases is to replace
389 the occurrences of wxPanel with wxWindow.
390
391 ! if you handle (and don't skip) EVT_KEY_DOWN, the EVT_CHAR event is not
392 generated at all, so you must call event.Skip() in your OnKeyDown() if
393 you want to get OnChar() as well
394
395 - in general, the key events sent for the various non ASCII key combinations
396 have been changed to make them consistent over all supported platforms,
397 please see the wxKeyEvent documentation for details
398
399 - wxYES_NO is now wxYES | wxNO and the manifest values of both wxYES and wxNO
400 have changed (to fix some unfortunate clashes), please check your code to
401 ensure that no tests for wxYES or wxNO are broken: for example, the following
402 will *NOT* work any longer:
403
404 if ( flags & wxYES_NO )
405 ... do something ...
406 if ( flags & wxYES )
407 ... do something else ...
408
409 - static wxWizard::Create() doesn't exist any more, the wizards are created
410 in the same way as all the other wxWindow objects, i.e. by directly using
411 the ctor
412
413 - wxGLCanvas now derives directly from wxWindow, not wxScrolledWindow
414
415 - wxGridCellAttrProvider class API changed, you will need to update your code
416 if you derived any classes from it
417
418 - wxImage::ComputeHistogram()'s signature changed to
419 unsigned long ComputeHistogram(wxImageHistogram&) const
420
421 - wxEvtHandler cannot be copied/assigned any longer - this never worked but
422 now it results in compile-time error instead of run-time crashes
423
424 - WXK_NUMLOCK and WXK_SCROLL keys no longer result in EVT_CHAR() events,
425 they only generate EVT_KEY_DOWN/UP() ones
426
427 - the dialogs use wxApp::GetTopWindow() as the parent implicitly if the
428 parent specified is NULL, use wxDIALOG_NO_PARENT style to prevent this
429 from happening
430
431 - several obsolete synonyms are only retained in WXWIN_COMPATIBILITY_2_2 mode:
432 for example, use wxScrolledWindow::GetViewStart() now instead of ViewStart()
433 and GetCount() instead of Number() in many classes
434
435 - wxCmdLineParser does not use wxLog to output messages anymore.
436 to obtain the previous behaviour, add
437 wxMessageOutput::Set(new wxMessageOutputLog); to your program
438 (you will need to #include <wx/msgout.h>)
439
440 wxMSW:
441
442 ! build system changed: setup.h is not a static file in include/wx any more
443 but is created as part of the build process under lib/<toolkit>/wx
444 where <toolkit> is of the form (msw|univ)[dll][u][d]. You'll need to update
445 the include path in your make/project files appropriately. Furthermore,
446 xpm.lib is no longer used by wxMSW, it was superseded by the wxXPMDecoder
447 class. You'll need to remove all references to xpm.lib from your
448 make/project files. Finally, the library names have changed as well and now
449 use the following consistent naming convention: wxmsw[ver][u][d].(lib|dll)
450 where 'u' appears for Unicode version, 'd' -- for the debug one and version
451 is only present for the DLLs builds.
452
453 - child frames appear in the taskbar by default now, use wxFRAME_NO_TASKBAR
454 style to avoid it
455
456 - all overloads of wxDC::SetClippingRegion() combine the given region with the
457 previously selected one instead of replacing it
458
459 - wxGetHomeDir() uses HOME environment variable and if it is set will not
460 return the programs directory any longer but its value (this function has
461 never been meant to return the programs directory anyhow)
462
463 - wxHTML apps don't need to include wx/html/msw/wxhtml.rc in resources file
464 anymore. The file was removed from wxMSW
465
466
467 Unix ports:
468
469 ! You should use `wx-config --cxxflags` in your makefiles instead of
470 `wx-config --cflags` for compiling C++ files. CXXFLAGS contains CFLAGS
471 and the compiler flags for C++ files only, CFLAGS should still be used
472 to compile pure C files.
473
474
475 wxThread and related classes:
476
477 - The thread-related classes have been heavily changed since 2.2.x versions
478 as the old code had many serious problems. This could have resulted in
479 semantical changes other than those mentioned here, please review use of
480 wxThread, wxMutex and wxCondition classes in your code.
481
482 ! wxCondition now *must* be used with a mutex, please read the (updated) class
483 documentation for details and revise your code accordingly: this change was
484 unfortunately needed as it was impossible to ensure the correct behaviour
485 (i.e. absense of race conditions) using the old API.
486
487 - wxMutex is not recursive any more in POSIX implementation (it hasn't been
488 recursive in 2.2.x but was in 2.3.1 and 2.3.2), please refer to the class
489 documentation for the discussion of the recursive mutexes.
490
491 - wxMutex::IsLocked() doesn't exist any more and should have never existed:
492 this is was unique example of a thread-unsafe-by-design method.
493
494
495 OTHER CHANGES
496 =============
497
498 2.4.0
499 -----
500
501 wxMSW:
502
503 - fixed loss of client data in wxChoice::SetString()
504
505 2.3.4
506 -----
507
508 All:
509
510 - added (partial) Indonesian translations (Bambang Purnomosidi D. P.)
511 - added wxSizer::Show()/Hide() (Carl Godkin)
512 - fixed bugs in wxDateTime::SetToWeekDay()/GetWeek()
513
514 Unix (Base/GUI):
515
516 - minor OpenBSD compilation/linking fixes, now builds OOB under OpenBSD 3.1
517 - don't include -I/usr/include nor -I/usr/local/include in wx-config output
518 - shared library symbols are now versioned on platforms that support it (Linux)
519
520 wxGTK:
521 - Further work for GTK 2.0 and Unicode support.
522 - Addition of native frame site grip.
523
524 wxX11:
525 - Unicode support through Pango library.
526
527 wxMSW:
528
529 - fixed crashes in wxListCtrl under XP
530 - added context menu for rich edit wxTextCtrl
531
532 wxHTML:
533
534 - fixed wxHTML to work in Unicode build
535
536 2.3.3
537 -----
538
539 wxBase:
540
541 - building wxBase with Borland C++ is now supported (Michael Fieldings)
542 - wxSemaphore class added, many fixed to wxCondition and wxThread (K.S. Sreeram)
543 - fixes to the command line parsing error and usage messages
544 - modified wxFileName::CreateTempFileName() to open the file atomically
545 (if possible) and, especially, not to leak the file descriptors under Unix
546 - memory leak in wxHTTP fixed (Dimitri Schoolwerth)
547 - fixes to AM_PATH_WXCONFIG autoconf macro
548 - added wxHashMap class that replaces type-unsafe wxHashTable and is modelled
549 after (non standard) STL hash_map
550 - wxLocale now works in Unicode mode
551 - wxLocale can now load message catalogs in arbitrary encoding
552 - added wxShutdown() function (Marco Cavallini)
553 - added wxEXPLICIT macro
554 - IPC classes improved and memory leaks fixed (Michael Fielding).
555 Global buffer removed, duplication in docs removed
556 - debug new/free implementations made thread-safe
557
558 Unix (Base/GUI):
559
560 - wxWindows may be built using BSD and Solaris (and possibly other) make
561 programs and not only GNU make
562 - wxTCP-based IPC classes now support communicating over Unix domain sockets
563 - wxWindows may be built as a dynamic shared library under Darwin / Mac OS X
564 lazy linking issues have been solved by linking a single module (.o) into
565 the shared library (two step link using distrib/mac/shared-ld-sh)
566 - fixed thread priority setting under Linux
567
568 All (GUI):
569
570 - it is now possible to set the icons of different sizes for frames (e.g. a
571 small and big ones) using the new wxIconBundle class
572 - implemented radio menu items and radio toolbar buttons
573 - added possibility to show text in the toolbar buttons
574 - added wxArtProvider class that can be used to customize the look of standard
575 wxWindows dialogs
576 - significantly improved native font support
577 - wxImage::ComputeHistogram() now uses wxImageHistogram instead of type-unsafe
578 wxHashTable
579 - added IFF image handler
580 - fixed using custom renderers in wxGrid which was broken in 2.3.2
581 - support for multiple images in one file added to wxImage
582 (TIFF, GIF and ICO formats)
583 - support for CUR and ANI files in wxImage added (Chris Elliott)
584 - wxTextCtrl::GetRange() added
585 - added wxGetFontFromUser() convenience function
586 - added EVT_MENU_OPEN and EVT_MENU_CLOSE events
587 - added Hungarian translations (Janos Vegh)
588 - added wxImage::SaveFile(filename) method (Chris Elliott)
589 - added wxImage::FloodFill and implemented wxWindowDC::DoFloodFill method
590 for GTK+, Mac, MGL, X11, Motif ports (Chris Elliott)
591 - added (platform-dependent) scan code to wxKeyEvent (Bryce Denney)
592 - added wxTextCtrl::EmulateKeyPress()
593 - Added wxMouseCaptureChangedEvent
594 - Added custom character filtering to wxTextValidator
595 - wxTreeCtrl now supports incremental keyboard search
596 - wxMessageOutput class added
597 - wxHelpProvider::RemoveHelp added and called from ~wxWindowBase
598 so that erroneous help strings are no longer found as the hash
599 table fills up
600 - updated libpng from 1.0.3 to 1.2.4
601 - Added wxView::OnClosingDocument so the application can do cleanup.
602 - generic wxListCtrl renamed to wxGenericListCtrl, wxImageList
603 renamed to wxGenericImageList, so they can be used on wxMSW
604 (Rene Rivera).
605 - Added wxTreeEvent::IsEditCancelled so the application can tell
606 whether a label edit was cancelled.
607 - added static wxFontMapper::Get() accessor
608
609 wxMSW:
610
611 - small appearance fixes for native look under Windows XP
612 - fixed the bug related to the redrawing on resize introduced in 2.3.2
613 - fixed multiple bugs in wxExecute() with IO redirection
614 - refresh the buttons properly when the window is resized (Hans Van Leemputten)
615 - huge (40*) speed up in wxMask::Create()
616 - changing wxWindows styles also changes the underlying Windows window style
617 - wxTreeCtrl supports wxTR_HIDE_ROOT style (George Policello)
618 - fixed flicker in wxTreeCtrl::SetItemXXX()
619 - fixed redraw problems in dynamically resized wxStaticText
620 - improvements to wxWindows applications behaviour when the system colours
621 are changed
622 - choose implicit parent for the dialog boxes better
623 - fixed wxProgressDialog for ranges > 65535
624 - wxSpinButton and wxSpinCtrl now support full 32 bit range (if the version
625 of comctl32.dll installed on the system supports it)
626 - wxFontEnumerator now returns all fonts, not only TrueType ones
627 - bugs in handling wxFrame styles (border/caption related) fixed
628 - showing a dialog from EVT_RADIOBUTTON handler doesn't lead to an infinite
629 recursion any more
630 - wxTextCtrl with wxTE_RICH flag scrolls to the end when text is appended to it
631 - the separators are not seen behind the controls added to the toolbar any more
632 - wxLB_SORT style can be used with wxCheckListBox
633 - wxWindowDC and wxClientDC::GetSize() works correctly now
634 - Added wxTB_NODIVIDER and wxTB_NOALIGN so native toolbar can be used in FL
635 - Multiline labels in buttons are now supoprted (simply use "\n" in the label)
636 - Implemented wxMouseCaptureChangedEvent and made wxGenericDragImage check it
637 has the capture before release it.
638 - fixed bugs in multiple selection wxCheckListBox
639 - default button handling is now closer to expected
640 - setting tooltips for wxSlider now works
641 - disabling a parent window also disables all of its children (as in wxGTK)
642 - multiple events avoided in wxComboBox
643 - tooltip asserts avoided for read-only wxComboBox
644 - fixed a race condition during a thread exit and a join
645 - fixed a condition where a thread can hang during message/event processing
646 - increased space between wxRadioBox label and first radio button
647 - don't fail to register remaining window classes if one fails to register
648 - wxFontDialog effects only turned on if a valid colour was
649 provided in wxFontData
650 - Added wxTE_LEFT, wxTE_CENTRE and wxTE_RIGHT flags for text control alignment.
651 - Bitmap printing uses 24 bits now, not 8.
652
653 wxGTK:
654
655 - wxDirDialog now presents the file system in standard Unix way
656 - wxButton now honours wxBU_EXACTFIT
657 - wxStaticBox now honours wxALIGN_XXX styles
658 - added support for non alphanumeric simple character accelerators ('-', '=')
659 - new behaviour for wxWindow::Refresh() as it now produces a delayed refresh.
660 Call the new wxWindow::Update() to force an immediate update
661 - support for more SGI hardware (12-bit mode among others)
662 - fixed wxDC::Blit() to honour source DC's logical coordinates
663 - implemented wxIdleEvent::RequestMore() for simple background tasks
664 - implemented wxChoice::Delete()
665 - fixed bad memory leak in wxFileDialog (Chris Elliott)
666 - made internal GC pool dynamically growable
667 - added GTK+ 2 and Unicode support
668
669 wxMotif:
670
671 - improved colour settings return values (Ian Brown)
672 - improved border style handling for wxStaticText (Ian Brown)
673 - improved toolbar control alignment
674 - implemented wxSpinButton
675 - implemented wxCheckListBox
676 - fixed wxSpinCtrl and wxStaticLine when used with sizers
677 - wxStaticBitmap now shows transparent icons correctly
678
679 wxX11:
680
681 - added generic MDI implementation (Hans Van Leemputten)
682 - first cut at wxSocket support (not yet working)
683
684 wxMac:
685
686 - Many improvements
687
688 wxOS2:
689
690 - First alpha-quality release
691
692 wxHTML:
693
694 - fixed wxHtmlHelpController's cache files handling on big endian machines
695 - added blocking and redirecting capabilities to wxHtmlWindow via
696 wxHtmlWindow::OnOpeningURL()
697 - fixed alignment handling in tables
698 - fixed <font face="..."> handling to be case insensitive
699
700 2.3.2
701 -----
702
703 New port: wxUniv for Win32/GTK+ is now included in the distribution.
704
705 wxBase:
706
707 - wxRegEx class added
708 - wxGetDiskSpace() function added (Jonothan Farr, Markus Fieber)
709 - wxTextBuffer and wxTextFile(wxStream) added (Morten Hanssen)
710 - more fixes to wxMBConv classes. Conversion to and from wchar_t now works with
711 glibc 2.2 as well as with glibc 2.1. Unix version now checks for iconv()'s
712 capabilities at runtime instead of in the configure script.
713
714 All (GUI):
715
716 - support for virtual list control added
717 - column images in report mode of the list control
718 - wxFindReplaceDialog added (based on work of Markus Greither)
719 - wxTextCtrl::SetMaxLength() added (wxMSW/wxGTK)
720 - polygon support in wxRegion (Klaas Holwerda)
721 - wxStreamToTextRedirector to allow easily redirect cout to wxTextCtrl added
722 - fixed bug with using wxExecute() to capture huge amounts of output
723 - new wxCalendarCtrl styles added (Søren Erland Vestø)
724 - wxWizard changes: loading from WXR support, help button (Robert Cavanaugh)
725 - wxDirSelector() added (Paul A. Thiessen)
726 - wxGrid cell editing veto support (Roger Gammans)
727 - wxListCtrl ITEM_FOCUSED event added
728 - support for ICO files in wxImage added (Chris Elliott)
729 - improvements to wxDragImage (Chuck Messenger)
730
731 wxMSW:
732
733 - support for the DBCS fonts (CP 932, 936, 949, 950) (Nathan Cook)
734 - new library naming convention under VC++ -- please change your application
735 project files
736
737 wxGTK:
738
739 - fixed popup menu positioning bug
740 - fixed the edit function for wxListCtrl (Chuck Messenger)
741 - fixed the key-hitting events for wxListCtrl and wxTreeCtrl, so they
742 correctly return the key which was pressed (Chuck Messenger)
743
744 wxMac:
745
746 - support for configuration and build under Mac OS X using the Apple Developer
747 Tools
748
749 wxHTML:
750
751 - new HTML parser with correct parsing of character entities and fixes
752 to tags parsing
753 - added support for animated GIFs
754
755 2.3.1
756 -----
757
758 wxBase:
759
760 - Fixes for gcc 3.0
761 - Fixed new charset detection code
762 - ODBC Informix fixes (submitted by Roger Gammans)
763 - Added ODBC date support to wxVariant
764 - Added wxDir::Traverse
765 - Added wxSingleInstanceChecker class
766 - Removed redundant wxDebugContext functions using C++ streams,
767 so now standard stream usage should be unnecessary
768
769 All (GUI):
770
771 - Added wxDbGrid class for displaying ODBC tables
772 - Added EVT_GRID_EDITOR_CREATED and wxGridEditorCreatedEvent so the
773 user code can get access to the edit control when it is created, (to
774 push on a custom event handler for example)
775 - Added wxTextAttr class and SetStyle, SetDefaultStyle and
776 GetDefaultStyle methods to wxTextCtrl
777 - Added wxSingleInstanceChecker
778 - Improvements to Tex2RTF
779 - Added Paul and Roger Gammans' grid controls
780 - Bug in wxDocument::Save logic corrected, whereby Save didn't save when not
781 first-time saved
782 - Fixed memory leak in textcmn.cpp
783 - Various wxXML enhancements
784 - Removed wxCLIP_CHILDREN style from wxSplitterWindow
785 - Fixed memory leak in DoPrint, htmprint.cpp
786 - Fixed calendar sample bug with using wxCommandEvent::GetInt()
787 instead of GetId()
788 - Added wxDbGrid combining wxODBC classes with wxGrid
789 - Added more makefiles and project files for contrib hierarchy
790
791 wxMSW:
792
793 - Fixed wxApp::ProcessMessage so controls don't lose their
794 accelerators when the accelerators are redefined elsewhere
795 - Accelerators consisting of simple keystrokes (without control,
796 alt or shift) now work
797 - Compile fixes for Watcom C++ added
798 - Compile fixes for Cygwin 1.0 added
799 - Use SetForegroundWindow() in wxWindow::Raise() instead of BringWindowToTop()
800 - Replaced wxYield() call in PopupMenu() by a much safer
801 wxYieldForCommandsOnly() - fixes tree ctrl popup menu bug and other ones
802 - Enter processing in wxSpinCtrl fixed
803 - Fixed bug in determining the best listbox size
804 - Fix for wxFrame's last focus bug
805 - We now send iconize events
806 - Fixed wxFrame::SetClientSize() with toolbar bug
807 - Added mousewheel processing
808 - Added wxSystemSettings::Get/SetOption so we can configure
809 wxWindows at run time; used this to implement no-maskblt option
810 in wxDC
811 - Fixed bug when using MDIS_ALLCHILDSTYLES style: so now MDI
812 child frame styles are honoured
813
814 wxGTK:
815
816 - Fixed slider rounding bug
817 - Added code to set wxFont's default encoding to wxLocale::GetSystemEncoding()
818 - We now send iconize events
819 - Fix for discrepancies between wxNotebookEvent and wxNotebook
820 GetSelection() results
821
822 2.3.0
823 -----
824
825 wxBase:
826
827 - fixed problem with wxURL when using static version of the library
828 - wxZipFSHandler::FindFirst() and FindNext() now correctly list directories
829 - wxMimeTypesManager now can create file associations too (Chris Elliott)
830 - wxCopyFile() respects the file permissions (Roland Scholz)
831 - wxFTP::GetFileSize() added (Søren Erland Vestø)
832 - wxDateTime::IsSameDate() bug fixed
833 - wxTimeSpan::Format() now behaves more as expected, see docs
834 - wxLocale now provides much more convenient API for setting language and
835 detecting current system language. New API is more abstracted and truly
836 cross-platform, independent of underlying C runtime library.
837
838 All (GUI):
839
840 - new wxToggleButton class (John Norris, Axel Schlueter)
841 - wxCalendarCtrl not highlighting the date with time part bug fixed
842 - wxADJUST_MINSIZE sizer flag added
843 - FindOrCreateBrush/Pen() bug fix for invalid colour values
844 - new wxXPMHandler for reading and writing XPM images
845 - added new (now recommended) API for conversion between wxImage and wxBitmap
846 (wxBitmap::ConvertToImage() and wxBitmap::wxBitmap(wxImage&) instead of
847 wxImage methods and ctor)
848 - ODBC classes now support DB2, Interbase, and Pervasive SQL
849 - ODBC documentation complete!!
850 - ODBC classes have much Unicode support added, but not complete
851 - ODBC experimental BLOB support added, but not completely tested
852 - ODBC NULL column support completed (Roger/Paul Gammans)
853 - ODBC All "char *" and char arrays removed and replaced with wxString use
854
855 wxMSW:
856
857 - threads: bug in wxCondition::Broadcast fixed (Pieter van der Meulen)
858 - fixed bug in MDI children flags (mis)handling
859 - it is possible to compile wxCHMHelpController with compilers
860 other than Visual C++ now and hhctrl.ocx is loaded at runtime
861
862 wxGTK:
863
864 - added support for wchar_t (wxUSE_WCHAR_T) under Unix
865
866 wxHTML:
867
868 - mew feature, wxHtmlProcessor for on-the-fly modification of HTML markup
869 - visual enhancements to contents panel of wxHtmlHelpController
870
871 2.2.0
872 -----
873
874 wxBase:
875
876 - Fixed bug with directories with trailing (back)slashes in wxPathExists
877 - wxString: added wxArrayString::operator==() and !=()
878 - Fixes for wxCmdLineParser
879 - Added wxGetLocalTimeMillis
880 - Completed Czech translations
881 - Some stream corrections
882 - added missing consts to wxPoint operators
883 - wxDateTime ParseFormat fixes
884 - wxFile::Open(write_append) will create file if it doesn't exist
885 - small fixes to MIME mailcap test command handling, more MIME tests in the sample
886
887 All (GUI):
888
889 - wxGenericDragImage now allows virtual image drawing, and
890 flicker-free dragging is now possible
891 - Added wxPrinter::GetLastError
892 - Fixed wxLogGui reentrancy problem
893 - Paper names now translated
894 - wxGrid fixes
895 - Generic validator now caters for more cases (integers in
896 wxTextCtrl, strings in wxChoice, wxComboBox)
897 - Fixed crash when docview On... functions return FALSE. Show
898 error message when an non-existent filename is typed into the Open
899 File dialog.
900 - Corrected Baltic font encoding handling
901 - wxImage: enhanced TIFF code, added new platform-independent BMP
902 writing code
903 - wxKeyEvent::GetKeyCode() and HasModifiers() added and documented
904 - Fixed wxPropertyForm crashes in sample
905 - wxWizard now calls TransferDataFromWindow() before calling
906 wxWizardPage::GetNext() fixing an obvious bug
907
908 wxMSW:
909
910 - wxWindow::GetCharWidth/Height now calculated accurately.
911 This will affect all .wxr dialog resources, so for
912 backward compatibility, please set
913 wxDIALOG_UNIT_COMPATIBILITY to 1 in setup.h
914 - wxListCtrl: set item text in LIST_ITEM_ACTIVATED events
915 - wxTextCtrl: implemented setting colours for rich edit controls
916 - wxColour now accepts both grey and gray
917 - BC++ DLL compilation fixed
918 - Watcom C++ makefiles improved for JPEG and TIFF compilation
919 - Fixed submenu accelerator bug
920 - Fixed dialog focus bug (crash if the previous window to have
921 the focus was destroyed before the dialog closed)
922 - Too-small default wxTextCtrl height fixed
923 - fixed "missing" initial resize of wxMDIChildFrame
924 - wxFrame restores focus better
925 - Now ignore wxTHICK_FRAME in wxWindow constructor: only relevant to
926 frames and dialogs, interferes with other window styles otherwise
927 (sometimes you'd get a thick frame in a subwindow)
928 - wxTextCtrl insertion point set to the beginning of the control by SetValue
929 - Fix so wxMDIParentFrame is actually shown when Show(TRUE) is called.
930 - wxFileDialog: adjusts struct size if there's an error (struct
931 sizes can be different on different versions of Windows)
932 - wxImageList::GetSize() documented and added to wxMSW
933 - fixed default dialog style to make them non resizeable again
934 - fixed wxFrame::IsShown() which always returned TRUE before
935
936 wxGTK:
937
938 - Please see docs/gtk/changes.txt.
939
940 wxMotif:
941
942 - Small compilation fixes
943
944 Documentation:
945
946 - wxCaret documented
947
948 2.1.16
949 ------
950
951 wxBase:
952
953 All (GUI):
954
955 wxMSW:
956
957 - Various bug fixes
958 - Added wxCHMHelpController, for invoking MS HTML Help
959 files. This works under VC++ only
960 - Modal dialog handling improved
961 - Printer dialog now modal
962
963 wxGTK:
964
965 - Various bug fixes
966
967 wxMotif:
968
969 - Various bug fixes
970
971 2.1.15
972 ------
973
974 Documentation:
975
976 - Added docs/tech for technical notes
977
978 File hierarchy:
979
980 - Started new contrib hierarchy that mirrors
981 the main lib structure; moved OGL and MMedia into it
982
983 wxBase:
984
985 - wxSocket support
986 - wxDateTime replaces and extends old wxDate and wxTime classes (still
987 available but strongly deprecated) with many new features
988 - wxLongLong class provides support for (signed) 64 bit integers
989 - wxCmdLineParser class for parsing the command line (supporting short and
990 long options, switches and parameters of different types)
991 - it is now possible to build wxBase under Win32 (using VC++ only so far)
992 and BeOS (without thread support yet)
993 - wxThread class modified to support both detached and joinable threads, also
994 added new GetCPUCount() and SetConcurrency() functions (useful under Solaris
995 only so far)
996 - wxDir class for enumerating files in a directory
997 - wxLog functions are now (more) MT-safe
998 - wxStopWatch class, timer functions have more chances to return correct
999 results for your platform (use ANSI functions where available)
1000 - wxString::ToLong, ToULong, ToDouble methods and Format() static one added
1001 - buffer overflows in wxString and wxLog classes fixed (if snprintf() function
1002 is available)
1003 - wxArray::RemoveAt() replaces deprecated wxArray::Remove(index)
1004
1005 all (GUI):
1006
1007 - Added wxImage::Rotate.
1008 - new wxCalendarCtrl class for picking a date interactively
1009 - wxMenu(Bar)::Insert() and Remove() functions for dynamic menu management
1010 - wxToolBar supports arbitrary controls (not only buttons) and can be
1011 dynamically changed (Delete/Insert functions)
1012 - vertical toolbars supported by MSW and GTK native wxToolBar classes
1013 - wxTreeCtrl and wxListCtrl allow setting colour/fonts for individual items
1014 - "file open" dialog allows selecting multiple files at once (contributed by
1015 John Norris)
1016 - wxMimeTypesManager uses GNOME/KDE MIME database to get the icons for the
1017 MIME types if available (Unix only)
1018 - wxDC::DrawRotatedText() (based on contribution by Hans-Joachim Baader)
1019 - TIFF support added (libtiff required and included in the distribution)
1020 - PCX files can now be written (256 and 24 bits)
1021 - validators may work recursively if wxWS_EX_VALIDATE_RECURSIVELY is set
1022 - wxScrolledWindow now has keyboard interface
1023 - wxTextEntryDialog may be used for entering passwords (supports wxTE_PASSWORD)
1024 - added wxEncodingConverter and improved wxFontMapper
1025 for dealing with conversions between different encodings,
1026 charsets support in wxLocale and wxHTML
1027 - wxDragImage class added
1028 - samples/help improved to show standard and advanced HTML help
1029 controllers, as well as native help
1030 - moved wxTreeLayout class to main lib
1031
1032 wxMSW:
1033
1034 - wxFrame::MakeFullScreen added.
1035 - support for enhanced metafiles added, support for copying/pasting metafiles
1036 (WMF and enhanced ones) fixed/added.
1037 - implemented setting colours for push buttons
1038 - wxStatusBar95 may be now used in dialogs, panels (not only frames) and can be
1039 positioned along the top of the screen and not only at the bottom
1040 - wxTreeCtrl::IsVisible() bug fixed (thanks to Gary Chessun)
1041 - loading/saving big (> 32K) files in wxTextCtrl works
1042 - tooltips work with wxRadioBox
1043 - wxBitmap/wxIcon may be constructed from XPM included into a program, as in
1044 Unix ports
1045 - returning FALSE from OnPrintPage() aborts printing
1046 - VC++ makefiles and project files made (mostly) consistent
1047 - wxSetCursorEvent added
1048
1049 wxGTK:
1050
1051 - wxFontMapper endless recursion bug (on some systems) fixed
1052 - wxGTK synthesizes wxActivateEvents
1053 - UpdateUI handlers may be used with wxTextCtrl
1054
1055 wxMotif:
1056
1057 - wxMenu::Enable works
1058 - wxToolBar bugs fixed
1059 - OGL samples made to work again
1060
1061 wxHTML:
1062
1063 - almost complete rewrite of wxHtmlHelpController,
1064 including faster search, bookmarks, printing, setup dialog
1065 and cross-platform binary compatible .cached files for faster
1066 loading of large helpbooks, case insensitive search
1067 split into 3 parts: wxHtmlHelpData, Frame and Controller
1068 - added support for charsets and <meta> tag
1069 - added support for font faces and justified paragraphs,
1070 taken some steps to prepare wxHTML for frames
1071 - added dynamic pushing/popping of wxHtmlParser tag handlers
1072 - improved HTML printing
1073 - added extensive table of HTML characters substitutions (&nbsp; etc.)
1074 - fixed wxHtmlWindow flickering, several minor bugfixes
1075 - added some tags: <address>, <code>, <kbd>, <samp>, <small>, <big>,
1076 fixed handling of relative and absolute font sizes in <font size>
1077
1078
1079 NOTE: for changes after wxWindows 2.1.0 b4, please see the CVS
1080 change log.
1081
1082 2.1.0, b4, May 9th 1999
1083 -----------------------
1084
1085 wxGTK:
1086
1087 - JPEG support added.
1088 - Many fixes and changes not thought worth mentioning in this file :-)
1089
1090 wxMSW:
1091
1092 - wxNotebook changes: can add image only; wxNB_FIXEDWIDTH added;
1093 SetTabSize added.
1094 - JPEG support added.
1095 - Fixes for Cygwin compilation.
1096 - Added wxGA_SMOOTH and wxFRAME_FLOAT_ON_PARENT styles.
1097 - Many fixes people didn't tell this file about.
1098
1099 wxMotif:
1100
1101
1102 General:
1103
1104 - Some changes for Unicode support, including wxchar.h/cpp.
1105
1106
1107 2.0.1 (release), March 1st 1999
1108 -------------------------------
1109
1110 wxGTK:
1111
1112 - wxGLCanvas fixes.
1113 - Slider/spinbutton fixes.
1114
1115 wxMSW:
1116
1117 - Fixed problems with <return> in dialogs/panels.
1118 - Fixed window cursor setting.
1119 - Fixed toolbar sizing and edge-clipping problems.
1120 - Some makefile fixes.
1121
1122 wxMotif:
1123
1124 - None.
1125
1126 General:
1127
1128 - Added wxUSE_SOCKETS.
1129 - More topic overviews.
1130 - Put wxPrintPaperType, wxPrintPaperDatabase into
1131 prntbase.h/cpp for use in non-PostScript situations
1132 (e.g. Win16 wxPageSetupDialog).
1133
1134
1135 Beta 5, February 18th 1999
1136 --------------------------
1137
1138 wxGTK:
1139
1140 - wxExecute improved.
1141
1142 wxMSW:
1143
1144 - Fixed wxWindow::IsShown (::IsWindowVisible doesn't behave as
1145 expected).
1146 - Changed VC++ makefiles (.vc) so that it's possible to have
1147 debug/release/DLL versions of the library available simultaneously,
1148 with names wx.lib, wx_d.lib, wx200.lib(dll), wx200_d.lib(dll).
1149 - Added BC++ 5 IDE files and instructions.
1150 - Fixed wxChoice, wxComboBox constructor bugs (m_noStrings initialisation).
1151 - Fixed focus-related crash.
1152
1153 wxMotif:
1154
1155 - Cured asynchronous wxExecute crash.
1156 - Added repaint event handlers to wxFrame, wxMDIChildFrame.
1157
1158 General:
1159
1160 - wxLocale documented.
1161 - Added include filenames to class reference.
1162 - wxHelpController API changed: SetBrowser becomes SetViewer,
1163 DisplaySection works for WinHelp, help sample compiles under Windows
1164 (though doesn't display help yet).
1165
1166 Beta 4, February 12th 1999
1167 --------------------------
1168
1169 wxGTK:
1170
1171 - Miscellaneous fixes.
1172
1173 wxMSW:
1174
1175 - Makefiles for more compilers and samples; Cygwin makefiles
1176 rationalised.
1177 - Added VC++ project file for compiling wxWindows as DLL.
1178
1179 wxMotif:
1180
1181 - Added OnEraseBackground invocation.
1182 - Added wxRETAINED implementation for wxScrolledWindow.
1183 - Cured scrolling display problem by adding XmUpdateDisplay.
1184 - Tried to make lex-ing in the makefile more generic (command line
1185 syntax should apply to both lex and flex).
1186 - Changed file selector colours for consistency (except for buttons:
1187 crashes for some reason).
1188 - Fixed wxMotif version of wxImage::ConvertToBitmap (used new instead
1189 of malloc, which causes memory problems).
1190
1191 General:
1192
1193 - Further doc improvements.
1194 - wxGenericValidator added.
1195 - Added wxImageModule to image.cpp, so adds/cleans up standard handlers
1196 automatically.
1197
1198 Beta 3, January 31st 1999
1199 -------------------------
1200
1201 wxGTK:
1202
1203 - wxClipboard/DnD API changes (still in progress).
1204 - wxToolTip class added.
1205 - Miscellaneous fixes.
1206
1207 wxMSW:
1208
1209 - wxRegConfig DeleteAll bug fixed.
1210 - Makefiles for more compilers.
1211 - TWIN32 support added.
1212 - Renamed VC++ makefiles from .nt to .vc, and
1213 factored out program/library settings.
1214 - Fixed wxIniConfig bug.
1215
1216 wxMotif:
1217
1218 - A few more colour fixes.
1219 - wxGLCanvas and OpenGL samples working.
1220 - Some compiler warnings fixed.
1221 - wxChoice crash fix.
1222 - Dialog Editor starting to work on Motif.
1223
1224 General:
1225
1226 - wxBusyCursor class added.
1227 - Added samples/dde.
1228 - More doc improvements, incl. expanding docs/html/index.htm.
1229
1230 Beta 2, January 1999
1231 --------------------
1232
1233 wxGTK:
1234
1235 wxMSW:
1236
1237 - 16-bit BC++ compilation/linking works albeit without the resource system.
1238
1239 wxMotif:
1240
1241 - Cured wxScreenDC origin problem so e.g. sash window sash is drawn at
1242 the right place.
1243 - Cured some widget table clashes.
1244 - Added thread support (Robert).
1245 - wxPoem sample now works.
1246
1247 General:
1248
1249 - Rearranged documentation a bit.
1250 - Sash window uses area of first frame/dialog to paint over when drawing
1251 the dragged sash, not just the sash window itself (it clipped to the right
1252 or below).
1253 - Made resource sample use the correct Cancel button id.
1254 - Moved wxProp to main library (generic directory), created proplist
1255 sample.
1256 - Added bombs and fractal samples.
1257
1258 Beta 1, December 24th 1998
1259 --------------------------
1260
1261 wxGTK:
1262
1263 - Various
1264
1265 wxMSW, wxMotif: not in sync with this release.
1266
1267
1268 Alpha 18, December 29th 1998
1269 ----------------------------
1270
1271 wxMSW:
1272
1273 - Win16 support working again (VC++ 1.5)
1274 - Win16 now uses generic wxNotebook, wxListCtrl,
1275 wxTreeCtrl -- more or less working now, although
1276 a little work on wxNotebook is still needed.
1277 Under 16-bit Windows, get assertion when you click
1278 on a tab.
1279 - Wrote 16-bit BC++ makefiles: samples don't yet link.
1280 - Added CodeWarrior support to distribution courtesy
1281 of Stefan Csomor.
1282
1283 wxMotif:
1284
1285 - Cured scrolling problem: scrollbars now show/hide themselves
1286 without (permanently) resizing the window.
1287 - Removed some commented-out lines in wxScrolledWindow::AdjustScrollbars
1288 that disabled scrollbar paging.
1289 - Set background colour of drawing area in wxWindow, so e.g. wxListCtrl
1290 colours correctly.
1291 - Removed major bug whereby dialogs were unmanaged automatically
1292 when any button was pressed.
1293 - Fixed colours of wxWindow scrollbars, made list and text controls
1294 have a white background.
1295 - Fixed dialog colour setting.
1296 - Added settable fonts and colours for wxMenu/wxMenuBar. Now
1297 they have sensible colours by default.
1298 - Fixed a bug in wxStaticBox.
1299 - Cured wxTreeCtrl bug: now works pretty well!
1300 - Debugged DrawEllipticArc (a ! in the wrong place).
1301 - Added SetClippingRegion( const wxRegion& region ).
1302 - Added wxPoint, wxSize, wxRect versions of SetSize etc.
1303
1304 Alpha 17, November 22nd 1998
1305 ----------------------------
1306
1307 wxMSW:
1308
1309 - More documentation updates, especially for
1310 wxLayoutWindow classes and debugging facilities.
1311 - Changed wxDebugContext to use wxDebugLog instead
1312 of wxTrace.
1313 - Now supports VC++ 6.0, and hopefully BC++ 5.0.
1314 However, DLL support may be broken for BC++ since
1315 VC++ 6 required changing of WXDLLEXPORT keyword
1316 position.
1317 - Numerous miscellaneous changes.
1318
1319 wxMotif:
1320
1321 - Reimplemented MDI using wxNotebook instead of the MDI widgets, which
1322 were too buggy (probably not design for dynamic addition/removal of
1323 child frames).
1324 - Some improvements to the wxNotebook implementation.
1325 - wxToolBar now uses a bulletin board instead of a form, in an attempt
1326 to make it possible to add ordinary wxControls to a toolbar.
1327 - Cured problem with not being able to use global memory operators,
1328 by defining two more global operators, so that the delete will match
1329 the debugging implementation.
1330 - Added wxUSE_DEBUG_NEW_ALWAYS so we can distinguish between using
1331 global memory operators (usually OK) and #defining new to be
1332 WXDEBUG_NEW (sometimes it might not be OK).
1333 - Added time.cpp to makefile; set wxUSE_DATETIME to 1.
1334 - Added a parent-existence check to popup menu code to make it not crash.
1335 - Added some optimization in wxWindow::SetSize to produce less flicker.
1336 It remains to be seen whether this produces any resize bugs.
1337
1338 It's a long time since I updated this file. Previously done:
1339
1340 - wxFrame, wxDialog done.
1341 - wxScrolledWindow done (but backing pixmap not used at present).
1342 - wxBitmap done though could be tidied it up at some point.
1343 - Most basic controls are there, if not rigorously tested.
1344 - Some MDI support (menus appear on child frames at present).
1345 - wxNotebook almost done.
1346 - wxToolBar done (horizontal only, which would be easy to extend
1347 to vertical toolbars).
1348
1349 More recently:
1350
1351 - Colour and font changing done (question mark over what happens
1352 to scrollbars).
1353 - Accelerators done (for menu items and buttons). Also event loop
1354 tidied up in wxApp so that events are filtered through ProcessXEvent.
1355 - wxWindow::GetUpdateRegion should now work.
1356
1357 Alpha 16, September 8th 1998
1358 ----------------------------
1359
1360 wxMSW:
1361
1362 - Added wxSashWindow, wxSashLayoutWindow classes, and sashtest
1363 sample.
1364 - Guilhem's socket classes added, plus wxsocket sample.
1365 - A few more makefiles added.
1366 - GnuWin32/BC++ compatibility mods.
1367 - Further doc updates.
1368 - wxProp updates for correct working with wxGTK.
1369
1370 wxMotif:
1371
1372 - First start at Motif port.
1373 - Made makefiles for wxMotif source directory and minimal sample.
1374 - First go at wxApp, wxWindow, wxDialog, wxPen, wxBrush, wxFont,
1375 wxColour, wxButton, wxCheckBox, wxTextCtrl, wxStaticText,
1376 wxMenu, wxMenuItem, wxMenuBar
1377
1378 Alpha 15, August 31st 1998
1379 --------------------------
1380
1381 wxMSW:
1382
1383 - wxBitmap debugged.
1384 - wxDC::GetDepth added.
1385 - Contribution added whereby wxBitmap will be
1386 converted to DC depth if they don't match.
1387 - wxConfig API improved, documentation updated.
1388 - Printing classes name conventions cleaned up.
1389 - wxUpdateUIEvent now derives from wxCommandEvent
1390 so event can travel up the window hierarchy.
1391
1392 Alpha 14, July 31st 1998
1393 ------------------------
1394
1395 wxMSW:
1396
1397 - Toolbar API has been simplified, and now
1398 wxFrame::GetClientArea returns the available client
1399 area when toolbar, status bar etc. have been accounted for.
1400 wxFrame::CreateToolBar added in line with CreateStatusBar.
1401 - Documentation updates, incl. for wxToolBar.
1402 - New wxAcceleratorTable class plus wxFrame::SetAcceleratorTable.
1403 - Various additions from other folk, e.g. streams, wxConfig
1404 changes, wxNotebook.
1405 - Added wxDocMDIParentFrame, wxDocMDIChildFrame for doc/view.
1406
1407 Alpha 13, July 8th 1998
1408 -----------------------
1409
1410 wxMSW:
1411
1412 - Implemented wxPoint as identical to POINT on Windows, and
1413 altered wxDC wxPoint functions to use wxPoint directly in
1414 Windows functions, for efficiency.
1415 - Cured wxASSERT bug in wxStatusBar95.
1416 - #ifdefed out some bits in oleutils.cpp for compilers that
1417 don't support it.
1418 - Added some operators to wxPoint, wxSize.
1419 - Added inline wxDC functions using wxPoint, wxSize, wxRect.
1420
1421 Alpha 12, July 7th 1998
1422 -----------------------
1423
1424 wxMSW:
1425
1426 - Added wxApp::GetComCtl32Version, and wxTB_FLAT style, so can
1427 have flat toolbars on Win98 or Win95 with IE >= 3 installed.
1428
1429 Alpha 11, July 3rd 1998
1430 -----------------------
1431
1432 wxMSW:
1433
1434 - Added thread.h, thread.cpp.
1435 - Changed Enabled, Checked to IsEnabled, IsChecked in wxMenu,
1436 wxMenuBar.
1437 - Changed wxMenuItem::SetBackColor to SetBackgroundColour,
1438 SetTextColor to SetTextColour, and added or made public several
1439 wxMenuItem accessors.
1440 - Added two overloads to wxRegion::Contains. Added
1441 wxRegion::IsEmpty for a more consistent naming convention.
1442 - Added Vadim's wxDataObject and wxDropSource.
1443 - ENTER/LEAVE events now work.
1444 - Cured wxMemoryDC bug where the DC wasn't being deleted.
1445 - Cured wxGauge SetSize major bugginess.
1446 - Cured problem where if a GDI object was created on the stack,
1447 then went out of scope, then another object was selected into
1448 the DC, GDI objects would leak. This is because the assignment
1449 to e.g. wxDC::m_pen would delete the GDI object without it first
1450 being selected out of the DC. Cured by selecting the old DC object
1451 first, then doing the assignment.
1452 - Split up wxGaugeMSW, wxGauge95, wxSliderMSW, wxSlider95
1453 - Various other bug fixes and additions.
1454
1455 Generic:
1456
1457 - Major work on Dialog Editor (still plenty to go).
1458 - Expanded documentation a bit more.
1459
1460 Alpha 10, May 7th 1998
1461 ----------------------
1462
1463 wxMSW:
1464
1465 - Added desiredWidth, desiredHeight parameters to wxBitmapHandler
1466 and wxIcon functions so that you can specify what size of
1467 icon should be loaded. Probably will remain a Windows-specific thing.
1468 - wxStatusBar95 now works for MDI frames.
1469 - Toolbars in MDI frames now behave normally. They still
1470 require application-supplied positioning code though.
1471 - Changed installation instructions, makefiles and batch files
1472 for compiling with Gnu-Win32/Mingw32/EGCS. Also timercmn.cpp
1473 change to support Mingw32/EGCS. Bison now used by default.
1474
1475 Alpha 9, April 27th 1998
1476 ------------------------
1477
1478 wxMSW:
1479
1480 - Cured bug in wxStatusBar95 that caused a crash if multiple
1481 fields were used.
1482 - Added Gnu-Win32 b19/Mingw32 support by changing resource
1483 compilation and pragmas.
1484 - Cured wxMenu bug introduced in alpha 8 - didn't respond to
1485 commands because VZ changed the id setting in wxMenu::MSWCommand.
1486
1487 Generic:
1488
1489 - Corrected some bugs, such as the wxModule compilation problem.
1490 - Added Gnu-Win32 b19/Mingw32 support by changing resource
1491 compilation and pragmas.
1492 - Changed SIZEOF to WXSIZEOF.
1493
1494 Alpha 8, April 17th 1998
1495 ------------------------
1496
1497 wxMSW:
1498
1499 - Added IsNull to wxGDIObject to check if the ref data is present or not.
1500 - Added PNG handler and sample - doesn't work for 16-bit PNGs for
1501 some reason :-(
1502 - Added wxJoystick class and event handling, and simple demo.
1503 - Added simple wxWave class. Needs Stop() function.
1504 - Added wxModule (module.h/module.cpp) to allow definition
1505 of modules to be initialized and cleaned up on wxWindows
1506 startup/exit.
1507 - Start of Mingw32 compatibility (see minimal and dialogs samples
1508 makefile.m95 files, and install.txt).
1509 - Note: Windows printing has stopped working... will investigate.
1510 VADIM'S CHANGES:
1511 - Updated wxString: bug fixes, added wxArrayString, some
1512 compatibility functions.
1513 - Updated log.h/cpp, added wxApp::CreateLogTarget.
1514 - file.h: new wxTempFile class.
1515 - defs.h: added wxSB_SIZE_GRIP for wxStatusBar95
1516 - statbr95: wxStatusBar95 control.
1517 - registry.h/cpp: wxRegKey class for Win95 registry.
1518 - listbox.cpp: corrected some bugs with owner-drawn listboxes.
1519 - wxConfig and wxFileConfig classes.
1520
1521 Generic:
1522
1523 - Added src/other/png, src/other/zlib directories.
1524 - Added samples/png.
1525 - IMPORTANT: Changed 'no id' number from 0 to -1, in wxEVT_ macros.
1526 Porters, please check particularly your wxTreeCtrl and wxListCtrl
1527 header files.
1528 - Added modules.h/cpp, config.cpp, fileconf.cpp, textfile.cpp/h.
1529
1530 Alpha 7, March 30th 1998
1531 ------------------------
1532
1533 wxMSW:
1534
1535 - Added tab classes, tab sample.
1536 - Now can return FALSE from OnInit and windows will be
1537 cleaned up properly before exit.
1538 - Improved border handling so panels don't get borders
1539 automatically.
1540 - Debugged MDI activation from Window menu.
1541 - Changes to memory debug handling, including checking for
1542 memory leaks on application exit - but see issues.txt for
1543 unresolved issues.
1544 - Added wxTaskBarIcon (taskbar.cpp/h, plus samples/taskbar)
1545 to allow maintenance of an icon in the Windows 95 taskbar
1546 tray area.
1547 - Got MFC sample working (MFC and wxWindows in the same
1548 application), partly by tweaking ntwxwin.mak settings.
1549 - Got DLL compilation working again (VC++).
1550 - Changed wxProp/Dialog Editor filenames.
1551
1552 Generic:
1553
1554 - Added tab classes, tab sample.
1555 - Revised memory.cpp, memory.h slightly; memory.h now #defines
1556 new to WXDEBUG_NEW in DEBUG mode. Windows implementation app.cpp
1557 now checks for leaks on exit. Added memcheck sample.
1558 See src/msw/issues.txt for more details.
1559 - resource.h, resource.cpp changed to make wxDefaultResourceTable
1560 a pointer. Now initialize resource system with
1561 wxInitializeResourceSystem and wxCleanUpResourceSystem, to
1562 allow better control of memory.
1563 - wxString now derives from wxObject, to enable memory leak
1564 checking.
1565 - Added some #include fixes in various files, plus changed
1566 float to long in wxToolBar files.
1567
1568 Alpha 6, March 10th 1998
1569 ------------------------
1570
1571 wxMSW:
1572
1573 - Found stack error bug - stopped unwanted OnIdle recursion.
1574 - Removed bug in wxTreeCtrl::InsertItem I added in alpha 5.
1575 - Changed exit behaviour in wxApp/wxFrame/wxDialog. Now will
1576 check if the number of top-level windows is zero before
1577 exiting. Also, wxApp::GetTopWindow will return either
1578 m_topWindow or the first member of wxTopLevelWindows, so you
1579 don't have to call wxApp::SetTopWindow.
1580 - Added dynarray.h/dynarray.cpp (from Vadim).
1581 - Added first cut at OLE drag and drop (from Vadim). dnd sample
1582 added. Drop target only at this stage. See src/msw/ole/*.cpp,
1583 wx/include/msw/ole/*.h. WIN32 only because of UUID usage.
1584 Doesn't work with GnuWin32 - no appropriate headers e.g. for
1585 IUnknown.
1586 Doesn't work with BC++ either - crashes on program startup.
1587 - Added Vadim's owner-draw modifications - will probably remain
1588 Windows-only. This enhances wxMenu, wxListBox. See ownerdrw sample.
1589 - Added wxLB_OWNERDRAW for owner-draw listboxes.
1590 - Vadim's wxCheckListBox derives from wxListBox. See checklst sample.
1591 Doesn't entirely work for WIN16.
1592 - Vadim has added wxMenuItem as a separate file menuitem.cpp. It
1593 can also be used as an argument to wxMenu::Append, not just for
1594 internal implementation.
1595 - Some #ifdefs done for MINGW32 compilation (just alter OPTIONS
1596 in makeg95.env, together with mingw32.bat). However, resource
1597 binding is not working yet so most apps with dialogs crash.
1598
1599 Generic:
1600
1601 - Added Vadim's dynarray.h, dynarray.cpp.
1602 - Added Vadim's menuitem.cpp.
1603 - Added Windows-specific wxCheckListBox,
1604 owner-draw wxListBox, and drag-and-drop
1605 (see docs/msw/changes.txt).
1606
1607 Alpha 5, 14th February 1998
1608 --------------------------
1609
1610 wxMSW:
1611
1612 - GENERIC AND MSW-SPECIFIC CODE NOW TREATED AS TWO SEPARATE
1613 DISTRIBUTIONS. This change log will therefore now refer to
1614 the Windows-specific code only. See docs/changes.txt for generic
1615 changes.
1616 - Removed Windows-specific reference counting system (GDI
1617 resources were cleaned up in idle time) - minimal
1618 advantages now we have a wxWin reference counting system.
1619 - Added missing WXDLLEXPORT keywords so DLL compilation works
1620 again.
1621 - Removed most warnings for GnuWin32 compilation.
1622 - Added wxRegion/wxRegionIterator, but haven't yet used it in
1623 e.g. wxDC.
1624
1625 Generic:
1626
1627 - GENERIC AND MSW-SPECIFIC CODE NOW TREATED AS TWO SEPARATE
1628 DISTRIBUTIONS. This change log will therefore now refer to
1629 the generic code only. See docs/msw/changes.txt for Windows-specific
1630 changes.
1631 - Readmes, change logs and installation files now go in
1632 platform-specific directories under docs, e.g. docs/msw,
1633 docs/gtk.
1634 - Added DECLARE_APP and IMPLEMENT_APP macros so wxApp object gets
1635 created dynamically, not as a global object.
1636 - Put wxColour into wx/msw/colour.h, src/msw/colour.cpp.
1637 - Changed names of some include/wx/generic headers to be
1638 consistent and to conform to gcc pragma conventions. Also
1639 changed choicesg.cpp to choicdgg.cpp.
1640 - Added gcc pragmas.
1641 - Added gtk inclusion in include/wx headers.
1642 - Added consistent file headings to source and headers.
1643 - Removed lang.cpp, lang.h and references to wxSTR_... variables;
1644 added a few references to wxTransString.
1645 - Added operator to wxTransString that converts automatically
1646 to wxString, so we can say e.g. wxMessageBox(wxTransString("Hello"), ...).
1647 - samples/internat now works (minimally).
1648 - Added wxMouseEvent::GetPosition and
1649 wxMouseEvent::GetLogicalPosition, both returning wxPoints.
1650 - Made wxSize and wxRect contain longs not ints.
1651 - Cured some memory leaks (thanks Vadim).
1652 - Tidied up OnIdle and introduced RequestMore/MoreRequested so
1653 will only keep processing OnIdle if it returns TRUE from
1654 MoreRequested.
1655
1656 Alpha 4, 31st January 1998
1657 --------------------------
1658
1659 All:
1660
1661 - Changed wxDC functions to take longs instead of floats. GetSize now takes
1662 integer pointers, plus a version that returns a wxSize.
1663 - const keyword added to various wxDC functions.
1664 - Under Windows, wxDC no longer has any knowledge of whether
1665 an associated window is scrolled or not. Instead, the device
1666 origin is set by wxScrolledWindow in wxScrolledWindow::PrepareDC.
1667 - wxScrolledWindow applications can optionally override the virtual OnDraw
1668 function instead of using the OnPaint event handler. The wxDC passed to
1669 OnDraw will be translated by PrepareDC to reflect scrolling.
1670 When drawing outside of OnDraw, must call PrepareDC explicitly.
1671 - wxToolBarBase/wxToolBarSimple similarly changed to allow for
1672 scrolling toolbars.
1673 - Integrated wxPostScriptDC patches for 1.xx by Chris Breeze,
1674 to help printing with multiple pages.
1675 - IPC classes given base classes (wxConnectionBase etc.) which
1676 define the API used by different implementations. DDE
1677 implementation updated to use these base classes.
1678 - wxHelpInstance now separated into wxHelpControllerBase (base
1679 for all implementations), wxWinHelpController (uses standard
1680 WinHelp), wxXLPHelpController (talks to wxHelp by DDE or
1681 TCP/IP). There will be others eventually, such as
1682 wxHTMLHelpController for Microsoft (and Netscape?) HTML Help.
1683 - Added Vadim Zeitlin's wxString class plus
1684 internationalization code (gettext simulation, wxLocale, etc.).
1685 New files from Vadim:
1686 include\wx\string.h
1687 include\wx\debug.h
1688 include\wx\file.h
1689 include\wx\log.h
1690 include\wx\intl.h
1691 src\common\string.cpp
1692 src\common\log.cpp
1693 src\common\intl.cpp
1694 src\common\file.cpp
1695 No longer use GNU wxString files.
1696 - Split off file-related functions into include\wx\filefn.h and
1697 src\common\filefn.cpp.
1698 - Borland C++ support (WIN32) for main library and
1699 samples, using makefile.b32 files.
1700 - Preparation done for allowing BC++ to compile wxWin as a DLL,
1701 including changes to defs.h.
1702 - wxIntPoint removed, wxPoint is now int, and wxRealPoint
1703 introduced.
1704 - Added wxShowEvent (generated when window is being shown or
1705 hidden).
1706 - Got minimal, docview, mdi samples working for 16-bit VC++ and
1707 cured 16-bit problem with wxTextCtrl (removed global memory
1708 trick).
1709 - Updated GnuWin32 makefiles, checked minimal, mdi, docview samples.
1710
1711 Alpha 3, September 1997
1712 -----------------------
1713
1714 All:
1715
1716 - wxListCtrl, wxTreeCtrl, wxImageList classes done.
1717 - Instigated new file hierarchy, split files and classes up more logically.
1718 - PrologIO and some other utils now put into core library.
1719 - Revamped print/preview classes, added wxPageSetupDialog.
1720 - Started documentation.
1721
1722 Alpha 2, 30th April 1997
1723 ------------------------
1724
1725 All:
1726
1727 - EVT_... macros now have at least one argument, for conformance
1728 with MetroWerks compiler.
1729 - Added ids to .wxr file format.
1730 - Got Dialog Editor compiled and running again but need
1731 to extend functionality to be in line with new controls.
1732 Added dialoged\test app to allow dynamic loading of .wxr files
1733 for testing purposes.
1734 - Rewrote wxBitmap to allow installable file type
1735 handlers.
1736 - Rewrote wxBitmapButton, wxStaticBitmap to not use Fafa.
1737 - Wrote most of wxTreeCtrl and sample (need wxImageList to implement it
1738 fully).
1739 - Added back wxRadioBox.
1740 - Tidied up wx_main.cpp, wxApp class, putting PenWin code in
1741 a separate file.
1742
1743 Alpha 1, 5th April 1997
1744 -----------------------
1745
1746 Generic:
1747
1748 At this point, the following has been achieved:
1749
1750 - A lot, but not all, of the code has been revamped for better
1751 naming conventions, protection of data members, and use of
1752 wxString instead of char *.
1753 - Obsolete functionality deleted (e.g. default wxPanel layout,
1754 old system event system) and code size reduced.
1755 - Class hierarchy changed (see design doc) - base classes such
1756 as wxbWindow now removed.
1757 - No longer includes windows.h in wxWin headers, by using stand-in
1758 Windows types where needed e.g. WXHWND.
1759 - PrologIO revised.
1760 - wxScrolledWindow, wxStatusBar and new MDI classes added.
1761 MDI is now achieved using separate classes, not window styles.
1762 - wxSystemSettings added, and made use of to reflect standard
1763 Windows settings.
1764 - SetButtonFont/SetLabelFont replaced by SetFont; font and colour
1765 settings mucho rationalised.
1766 - All windows are now subclassed with the same window proc to make
1767 event handling far more consistent. Old internal wxWnd and derived
1768 classes removed.
1769 - API for controls revised, in particular addition of
1770 wxValidator parameters and removal of labels for some controls.
1771 - 1 validator written: see examples/validate.
1772 - Event table system introduced (see most samples and
1773 wx_event.cpp/ProcessEvent, wx_event.h). wxEvtHandler
1774 made more flexible, with Push/PopEventHandler allowing a chain
1775 of event handlers.
1776 - wxRadioBox removed - will be added back soon.
1777 - Toolbar class hierarchy revised:
1778 wxToolBarBase
1779 wxToolBarSimple (= old wxToolBar)
1780 wxToolBar95 (= old wxButtonBar under Win95
1781 wxToolBarMSW (= old wxButtonBar under WIN16/WIN32)
1782 - Constraint system debugged somewhat (sizers now work properly).
1783 - wxFileDialog, wxDirDialog added; other common dialogs now
1784 have class equivalents. Generic colour and font dialogs
1785 rewritten to not need obsolete panel layout.
1786 - .wxr resource system partially reinstated, though needs
1787 an integer ID for controls. Hopefully the resource system
1788 will be replaced by something better and more efficient
1789 in the future.
1790 - Device contexts no longer stored with window and accessed
1791 with GetDC - use wxClientDC, wxPaintDC, wxWindowDC stack
1792 variables instead.
1793 - wxSlider uses trackbar class under Win95, and wxSL_LABELS flag
1794 determines whether labels are shown. Other Win95-specific flags
1795 introduced, e.g. for showing ticks.
1796 - Styles introduced for dealing with 3D effects per window, for
1797 any window: all Win95 3D effects supported, plus transparent windows.
1798 - Major change to allow 3D effect support without CTL3D, under
1799 Win95.
1800 - Bitmap versions of button and checkbox separated out into new
1801 classes, but unimplemented as yet because I intend to remove
1802 the need for Fafa - it apparently causes GPFs in Win95 OSR 2.
1803 - utils/wxprop classes working (except maybe wxPropertyFormView)
1804 in preparation for use in Dialog Editor.
1805 - GNU-WIN32 compilation verified (a month or so ago).
1806
1807