Added size hints to dialog,
[wxWidgets.git] / docs / gtk / changes.txt
1
2 25th October '99: My birthday, wxWindows 2.1.10 released
3
4 Enlightment has struck the majority of the developers and
5 they have chosen to use the Linux kernel numbering scheme
6 for wxWindows from now on. This means that the next stable
7 release will be called wxWindows 2.2.X, development snapshots
8 will be called 2.1.X.
9
10 A lot of discussion has been wasted on how to maintain a
11 once released stable version will be maintained. It was
12 almost universally agreed that only a commercial entity
13 will have the motivation ($$$) to do that - so far there
14 is no wxWindows Inc.
15
16 Support for GTK 1.0 has been dropped. This version has
17 been tested with GTK 1.2.3 and GTK 1.2.6 - it is known
18 not work with some other versions.
19
20 wxChoice can now handle only either void client data
21 (which it will not delete on destruction) or client
22 data of the wxClientData type (which it will delete),
23 instead of both at the same time. The same will happen
24 to wxListBox and wxComboBox some time.
25
26 Many build fixes for various platforms have been applied,
27 try again, poor HP-UX and *BSD users, but don't reckon
28 with immediate success. Actually, when using GNU compilers,
29 your chances are quite good.
30
31 My rewrite of the wxWindows underlying GTK widget
32 has turned scrolling including subwindows from barely
33 functional to pretty and fast. I also added scrolling
34 of foreign windows to wxScrolledWindow.
35
36 Setting size hints for the window manager might work now.
37
38 wxSocket and Co. have been improved up to the point of
39 calling it a rewrite. It works on wxMSW now too and
40 seems pretty stable, but testing is still welcome.
41
42 The ODBC classes contributed by Remstar Inc. have been
43 overhauled (incl the sample) and have been tested with
44 all relevant SQL databases (even DBase). For that reason
45 I have reawakened the iODBC code from wxGTK 2.0 so you
46 can now use wxODBC from wxMSW and wxGTK.
47
48 Several printing things fixed.
49
50 HTML widget and the wxWindows' help system based upon
51 it have been reorganized and improved for easier use
52 from Python and C++. Also HTML printing has been added.
53
54 wxSpinCtrl added. Like a wxSpinButton and a wxTextCtrl.
55
56 Changed the beaviour of the popular new wxFileDialog to
57 not forget the once typed file name when changing the
58 directory.
59
60 Implemented the wxSIMPLE_BORDER flag (simple black line
61 without shadow affect).
62
63 Michael is writing a complete rewrite of the antiquated
64 wxGrid. This is still work-in-progress and might not make
65 it into wxWindows 2.2, we'll see. Help would be welcome
66 to make that happen.
67
68 Made wxMenu code lose less memory, also added wxMenu::Delete().
69
70 Added code to send wxActivateEvent to MDI windows.
71
72 Vadim added configure things to compile wxWindows without any
73 GUI library. This is probably work in progress. He'll also add
74 a wxFontEnumerator class and has enhanced wxFont to make use
75 of char-encodings.
76
77 wxSlider, wxWindow, wxScrollBar now emit the correct events
78 for scrolling (like page up, line up etc) instead of just
79 "thumb-track" as before.
80
81 Corrected bug in Reparent() code.
82
83 A handler to read PCX file (in most variants) has been added.
84
85 A number of problems with compressed and socket streams have
86 been solved.
87
88 28th August '99: Ninth wxGTK 2.1 snapshot released
89
90 As the old makefile system didn't work, I trashed it and wrote
91 a new one - mo more GNU. This, of course, caused a lot of people
92 to start sing their song of complaints - any change is a good 
93 opportunity to complain, but the effect of the change is that
94 we now have shared library support on Linux and Solaris (and
95 probably others as well) and that the Linux shared library no
96 longer depends on libstdc++, so that we can finally create an
97 RPM that works on different Linux distributions. Also, the
98 Unix make system is now much simpler and directly mirrors its
99 Windows counterparts, making it easier to understand and maintain.
100 As it is independent of the various GNU tools, the requirements
101 for using CVS versions are also much less (any make, any compiler,
102 no other tools).
103
104 Split RPMs into two, one for run-time requirements and one
105 for developement (mostly headers).
106
107 Addition of new layout classes that work like Java's, GTK's
108 or Qt`s - basically, you pack item in a box and let it tell
109 you how much space it needs. These class are called wxSizer
110 and I consider them a great addition as they make true cross-
111 platform dialogs a child's play and are very quick to write
112 and easy to read. Do consider using them.
113
114 Rewritten all dialogs to make use of the new sizers. Also
115 added a new wxFileDialog like Win95 and replaced the generic
116 wxFontDialog with GTK's native font selection dialog - this
117 probably isn't perfect though.
118
119 A few more fixes to wxListCtrl and wxTreeCtrl, implemented
120 more options and modes like the wxMSW version.
121
122 New handler for PNM files. Added CanRead() function to image
123 handlers, updates to GIF handler for preparing the new wxAnimation
124 class. We'll also get a PCX and hopefully a TIFF handler so
125 that we support all common general-purpose file formats I know
126 about. PhotoShop and PhotoPaint images are not general purpose.
127 I also tried to correct a wxImage bug in connection with big-endian
128 vs. little-endian problems, but I have no Sparc to actually test
129 this.
130
131 Inclusion of wxMultiMedia. Can play most sound formats on GTK
132 and MSW and (using xanim on Unix and Win95's MM functions)
133 display a video in a wxWindow. This will probably be moved to
134 the core library.
135
136 Small updates to socket code. The MSW version is still missing.
137
138 Implemented wxBitmapDataObject class.
139
140 Added wxFFileStream using FILE* instead if file desrcriptor.
141 Useful for creating a "cerr" like class as in normal C++.
142 Also added "endl" for use with wxTextStream and fixed a few
143 minor problems with buffered streams etc.
144
145 Corrected Tabbing code in wxPanel and made it work with wxNotebook.
146
147 Small cursor fixes in connection with text control.
148
149 Added experimental wxWizard class. Work in progress.
150
151 A few more minor fixes.
152
153 6th August '99: Eight wxGTK 2.1 snapshot released
154
155 The new makefile system is not able to produce shared libraries 
156 on Unix with the exception of Linux - libtool is really great.
157 Therefore, the build system defaults to static libraries on
158 anything but Linux for now.
159
160 Work in wxPen, wxBrush and wxDC to match wxMSW more exactly and
161 to implement missing feature etc.
162
163 Reimplemented radio buttons. The first of a group of such buttons
164 is now marked by having the wxRB_GROUP style.
165
166 Complete redesign of all stream classes, including tests for them
167 in the samples.
168
169 Controls now send the same messages (or more importantly none if
170 changed programmatically) as per wxMSW.
171
172 New implementation of wxSocket using an intermediate library called
173 GSocket. This willl hopefully change in the future.
174
175 Reworked in-place editing of wxListCtrl and wxTreeCtrl.
176
177 Fixed bug reporting two refreshes when scrolling.
178
179 Corrected bug in wxComboBox client data code.
180
181 Corrected reported but unverified bug in BMP loading code.
182
183 Added a few more methods to wxStaticBitmap.
184
185 Integration of wxHTML code in the main library, including wxZIPStream,
186 wxFilesystem, wxHTMLHelpController and others.
187
188 Added a wrapper for ffile() etc functions.
189
190 Updates to wxDynamicLibrary.
191
192 New documentation.
193
194 New version of wxPython, of course.
195
196 Fixed in unenclosed number of other bugs...
197
198 25th June '99: Seventh wxGTK 2.1 snapshot released
199
200 Many fixes to th new makefile system. The last version gave
201 immediate crashes on all Unices except Linux when linked
202 dynamically against an application. I reordered the object
203 files in the library as I guess that this was the cause.
204
205 Added icons to message box. This also slightly killed the
206 layout so this needs to be changed again.
207
208 wxGTK now chooses the best visual available on the display instead
209 of the default one.
210
211 Fixed wxProgressDialog again.
212
213 Some more corrections I forgot.
214
215 New wxPython (includes new layout system and printing).
216
217 15th June '99: Sixth wxGTK 2.1 snapshot released
218   
219  
220 The biggest change is the completely rewritten configure/makefile
221 system using automake. The main argument for switching to automake
222 is that the resulting makefiles should be more portable so that
223 people can use the native make utilities instead of GNU make. The
224 new makefile sytem also handles dependencies correctly, allows for
225 shared-only compilation, can be invoked from any directory for
226 concurrent builds wihtin one source tree, uses libtool for greater
227 shared-library platform support, has a functinonal "make uninstall",
228 works with GTK, Motif and WINE, conforms better to GNU standards
229 as far as configure option names are concerned and is easier to 
230 maintain.
231  
232 Applied patches to compile wxGTK on OS/2.
233  
234 Configure checks for byte-order and new defines for byte swapping
235 with respect to the byte-order. Added test for this to typetest sample.
236 Also made BMP handler bigendian safe so that it should work on 
237 Solaris and such. 
238  
239 Small changes to basic drawing stuff: made wxColour actually compare 
240 RGB values in the == operator, added new constructor to wxMask,
241 corrected initial background colour for DCs, it is now possible
242 to use a wxWindowDC etc before there is any window (this doesn't
243 make any sense, but it is what wxMSW does.)
244  
245 Added support for the PRIMARY SELECTION to the wxClipboard
246 class.
247  
248 Fixed redraw bug when scrolling window-less widgets out
249 of the visible area (actually a work-around for a GTK bug).
250  
251 Regrouped some samples, created new one for various versions
252 of the wxTextCtrl.
253  
254 Added wxWindow::Reparent() and wxFrame::MakeModal().
255  
256 Improved handling of column width in wxListCtrl and made
257 this more compatible with the wxMSW version. Also removed
258 a bug from the wxImageList returning an off-by-one id for
259 added images.
260  
261 Fixed keyboard hotkeys and resizing for wxMDIChildFrame
262 menu bars.
263  
264 Added flag to wxSplitterWindow to update its children's
265 sizes "live" instead of moving a XOR'ed bar around - this
266 is a resource-draining option. Also corrected cursors
267 in splitter window.
268  
269 New way to show "disabled" or greyed toolbar items.
270  
271 Rewrote parts of the tree ctrl to allow multiple selections
272 and variable size items (Sylvain). These new function do not
273 exist in the native Win32 tree control.
274  
275 Implemented global cursors and wxBusyCursor etc. Also removed
276 another cursor misbehaviour.
277  
278 Updated many parts of the documentation to reflect changes
279 in wxWindows 2.1, wxPython and more exact description of
280 cross-platform issues as well as platform differences.
281  
282 Many other fixes, mainly by others...
283  
284 Further compile fixes for different architectures.
285  
286
287   
288 25th May '99: Fifth wxGTK 2.1 snapshot released
289   
290
291  
292 This is mostly a bug-fix release. We are having funny
293 times to make wxGTK work well with different micro
294 versions of GTK 1.2 - which is very close to impossible.
295 All versions give warnings, although their number might
296 vary a lot. I use GTK 1.2.3 and only get wanrnings in
297 one sample (notebook) and that one is due to a bug in
298 GTK - some people using GTK 1.2.2 reported hundreds of warnings
299 getting spitted out for what seems like no reason.
300  
301 This snapshot contains the beginnings of our merging of
302 headers, meaning that in the future all ports will
303 use the same headers and will share a lot more code.
304 We have taken this moment to reorganize some code and
305 hope to have eliminated much bad C++ code, as reported
306 primarily by SGI's compilers (Vadim Zeitlin).
307  
308 Rewritten char and key event propagation routines
309 to reflect documentation and do the same on wxGTK
310 as on wxMSW. If you are interested in ascii chars
311 and cursor key etc, intercept EVT_CHAR, if you 
312 are interested in which key actually got pressed,
313 intercept EVT_KEYDOWN (Norbert Irmer).
314  
315 Control that are given -1 as their ID no longer
316 get arbitrary positive IDs assigned but arbitrary
317 negative IDs. This had caused some trouble with ID clashes.
318  
319 wxWindow and wxScrolledWindow no longer use the
320 wxScrollEvent, but the newly invented wxScrollWinEvent
321 so that no mixing up of events sent from wxSliders
322 or wxScrollbars placed in a wxWindow can occur.
323  
324 Added wxProgressDialog for use with long background
325 work such as printing.
326  
327 Added drawing sample and scrolling sample, both of
328 which show some misbehaviours...
329  
330 When drawing with the wxXOR logical mode, wxGTK now uses
331 GdkXOR (instead of GdkInvert) and when drawing in wxINVERT logical
332 mode, wxGTK now uses GdkInvert (as before). When you did some
333 rubberband dragging and you used wxXOR and a black pen, then
334 you should change wxINVERT.
335  
336 Applied more patches for SGI and HP-UX compilation.
337  
338 More updates for wxSockets (Guilhem Lavaux). Seems to be nearly
339 finished.
340  
341 You can now use threads within your GUI again. Well, 
342 at least if you know what you are doing and you had a look 
343 at the threads sample.
344  
345 wxGLCanvas updated so that it can share display lists
346 over several windows and to not exhibit any flicker. 
347 (Norber Irmer).
348  
349 wxNotebook revamped so that its process of creation matches
350 wxMSW's more closely, also avoiding problems with wrong page
351 number. Added InsertPage() and the possibility to prevent
352 switching pages by intercepting the PAGE_CHANGING event. Also,
353 wxNotebooks now get shown even if all pages are empty.
354  
355 Added Activate() to wxMDIChildFrame (Russel).
356  
357 Improved wxSplitterWindow behaviour and visual feed-back when
358 given a minimal size etc (Bruce DeVisser).
359  
360 Minor updates to wxTreeCtrl, wxListBox, printing, wxClipboard,
361 wxString, wxThreads and many others.
362  
363 Also wxMSW got a big face-lift, not to mention the new wxMac release...
364  
365                         
366   
367 11th May '99: Fourth wxGTK 2.1 snapshot released
368   
369  
370 This is mostly a bug-fix release. This affects wxSocket, wxThread,
371 and a few GUI classes. Also more work has been done and window
372 placement and decorations etc. which we hope to have finished now.
373  
374 Applied patches for FreeBSD and SGI compilation (not yet finshed).
375  
376 Updated wxPython to beta 9.
377  
378 Made wxGLCanvas work again - strangely it flickers now...
379  
380 wxStaticText is currently broken with GTK 1.2.2 (which I don't
381 yet have and thus could not fix). Also, scrolling subwindows
382 (although much improved including a sample) doesn't work perfectly
383 due to a bug in GTK 1.2.1 (probably 1.2.2 as well).
384  
385 Added wxStaticLine.
386   
387 Note that the next release might bring about changes to keyboard
388 handling and scroll event intercepting from wxScrolledWindow. 
389  
390 By and large much of the code has stabilized and won't be much
391 different in the final wxWindows 2.1 release. Please test as
392 much as you can.
393  
394 The next release will have a new build system.
395  
396
397   
398 3rd May '99: Third wxGTK 2.1 snapshot released
399   
400  
401 Updated INSTALL.txt and SYMBOLS.txt.
402  
403 Support for Unicode is now almost complete. Most samples work in
404 both Unicode and non-Unicode mode. Thanks to Ove Kaaven and Vadim.
405  
406 Internal changes required for wxOLE and addition of a very experimental
407 wxOLE code section using GNOME's Bonobo library (from GNOME's CVS).
408  
409 New version of wxPython that works with the wxGTK 2.1.
410 This now includes a very comprensive test/demo suite. Thanks to
411 Robin Dunn, Harm v.d. Heijden and others. Beware of the hang-man...
412  
413 More fine tuning of focus handling and GUI widgets.
414  
415 Complete rewrite of wxSocket classes (still experimental).
416 Thanks to Guilhem Lavaux.
417   
418 wxMenuBar supports underlined shortcuts like Windows does,
419 indicated by a leading & character. wxMenus now have hotkeys
420 such as in wxXt and wxMSW.
421   
422 Rewritten MDI subsystem.
423   
424 Correcetions and additions to the printing framework including
425 a paper type database (Julian).
426  
427 Several controls now support more style flags for modifying
428 look (and feel) of the controls and windows.
429  
430 New implementation of idle handlers, which now send an idle
431 event only once after the event queue has been emptied (which
432 is what happens in the wxMSW port as well), not regularly.
433 This no longer forces wxGTK applications to sleep (by having
434 to call usleep()) in idle time - giving more CPU slices to
435 the application if desired.
436  
437 wxGLCanvas (the OpenGl for wxWindows) now accepts keyboard input.
438  
439 The usual number of compile and bug fixes from all involved.
440  
441
442   
443 21st April '99: Second wxGTK 2.1 snapshot released
444   
445  
446 Added much code for Unicode support. Still experimental, but looks very
447 cool - thanks to Ove Kaaven and Vadim Zeitlin. If you are very brave, then
448 you can compile wxGTK with "configure --with-unicode".
449  
450 More updates on the dreaded issue of making frames and dialogs impossible
451 to resize etc.
452  
453 Drag and Drop works now under GTK 1.2 - at least basically when dragging
454 and dropping text. The API is not entirely fixed yet but seems quite
455 good now. Support for different actions (copy/move/link/..) still missing.
456 I also removed support for GTK 1.0 Drag and Drop - this is just broken
457 and unusable in GTK 1.0 and I don't want to fix it.
458  
459 I now embed the JPEG library and handlers for JPEG and GIF have been
460 added to the existing PNG and BMP (and XPM for GTK version only). In
461 the future, the RPMs will not contain these libraries but depend on
462 the image libraries to be preinstalled whereas the source *.tgz will
463 ship with everything that is needed for wxGTK so that no downloading
464 of ten image libs will be required - also avoiding problems with ten
465 different kinds of libJPEG-6.0.1.7.IV beta 7. We also updated the
466 PNG code to the newest PNG version.
467  
468 wxImage now makes use of the fast rendering code as provided by
469 GTK 1.2 whenever possible. This should mean a speed-up for graphics
470 heavy apps.
471  
472 Many fixes all over. Also should compile with GTK 1.2.0 as opposed
473 to only with GTK 1.2.1 now.
474  
475 wxPython still doesn't compile, I think.
476  
477
478   
479 12th April '99: First wxGTK 2.1 snapshot released
480   
481  
482 This is the first developers' version of wxWindows 2.1 for GTK. It's main
483 new feature is that it supports GTK 1.2 (as opposed to GTK 1.0) which
484 will make development within the GNOME evironment a lot easier.
485  
486 Apart from the move to GTK 1.2 and the changes (some major) that were
487 required as part of that work, enhancement or corrections have been
488 made to many of the non-GUI classes and functions (such as wxClipboard, 
489 wxThread, wxSocket, wxConfig)
490 and a few GUI classes (accelerators in menus, listbox always with
491 scrollbar, wxFrame honours Motif Window Manager hints, corrected tab
492 traversal for broken GTK 1.0 widgets).
493  
494 There have been slight changes to the priting dialogs and their
495 setup data (which might break apps using this code in previous
496 versions). Also, a bug concerning printing white has been fixed
497 (actually not tested).
498  
499 Although this is only the first 2.1 snapshot, there is little reason not
500 to use it as many bugs from version 2.0 have been corrected. There are,
501 pf course, still a few problem left with GTK 1.2 (some of which relate
502 to bugs in GTK).
503  
504 I think I preserved backward compatility with GTK 1.0 and if not it
505 should be easy to fix - but mostly I don't care.
506  
507 Drag'N'Drop is currently completely broken. Also, wxPython currently
508 doesn't compile with this release. The OpenGL canvas still seems to
509 work.
510  
511 Major targets for the final release (still a long way): a new configure
512 system, support JPEG and GIF formats, wxHTML, super-duppah frame layout
513 stuff, syntax-highlighting editor, possibly Unicode, possibly some GNOME 
514 gooddies, possibly world domination.
515  
516
517   
518 5th March '99: wxWindows 2.0 released
519   
520  
521 This is the final version of wxWindows 2.0 for GTK. The versions for
522 Windows and Motif (and also this version) are available form Julian Smart's
523 site. The Mac version is still under development.
524  
525
526   
527 19th February '99: wxWindows 2.0 beta 5
528   
529  
530 This is the fifth beta release and it contains mostly bug fixes and
531 updates for documentation.
532  
533 Applied compile fixes for Solaris (different flavours and compilers).
534  
535
536   
537 12th February '99: wxWindows 2.0 beta 4
538   
539  
540 This is the fourth beta release and it contains mostly bug fixes and
541 updates for documentation.
542  
543 Tracked a few more cases, where the bahaviour between wxMSW and wxGTK
544 differed. This was the case for closing a dialog or frame as well as
545 for clearing a device context or setting its background colour and some
546 other minor details.
547  
548 Most standard dialogs have been face-liftet a little.
549  
550 Implememted default buttons for GTK.
551  
552 Fixed many bugs. You guessed it.
553  
554
555   
556 29th January '99: wxWindows 2.0 beta 3
557   
558  
559 This is the third beta release and it contains mostly bug fixes. 
560  
561 There is one field where we haven't been able to fix the API yet, and that
562 it Drag'n'Drop. This is mostly due to the fact that DnD in
563 GTK 1.0 is hardly usable and much different from GTK 1.2 which means that
564 we have to design a common API for Windows, GTK 1.0 and GTK 1.2. Although
565 we are trying to prevent that, it is possible that wxWindows 2.0 (being
566 based on GTK 1.0) will not have proper DnD support.
567  
568 The major changes are that tool tips have been added, threads have been completely 
569 rewritten, the ODBC code has been updated and improved, the socket code works 
570 better now.
571  
572 Classes for managing MIME-types under Windows and Unix have been added.
573  
574 There is now a wxGLCanvas class for OpenGl/Mesa for the Windows, GTK and
575 Motif ports. Come see the penguins flying...
576  
577 Documentation has received a big face lift - it now covers nearly all the
578 classes, at least.
579  
580 The usual amount of bug fixes. Countless.
581  
582 A few member functions of wxString have been renamed.
583  
584 For those who are using the ever-so-popular wxImage class (which
585 now available on Motif and Windows as well) in 8-bit mode: wxGTK
586 now creates a color cube upon start-up in 8-bit mode and thus the
587 generation of bitmaps from images has been speeded up 20 times.
588  
589 It is now possible to develop with wxGTK without having the GTK 1.0 header
590 files installed so that having the GTK 1.2 header files installed no longer
591 is any problem. We also provide RPMs for RedHat glibc 2 based systems, compiled
592 with egcs 1.1.1 on SuSE 6.0. Note that the RPM will   not   work in
593 SuSE 6.0 as SuSE decided to ship 6.0 with a broken GTK+ package.
594  
595
596   
597 6th January '99: wxWindows 2.0 beta 2
598   
599  
600 This is the second beta release and contains it mostly build and
601 bug fixes. Threads work well now on (up-to-date) glibc 2 systems,
602 commercial Unices and Windows.
603  
604                         
605   
606 20th December '98: wxWindows 2.0 beta 1
607   
608  
609 This is the first beta release and we have used the time before
610 this release to tidy up some parts of the API. All releases from
611 now on will be source code compatible but we reserve binary compatibility
612 for the final release. Because of this, the actual library name of
613 the beta version will not be 2.0 but 1.99, so that we prevent 
614 conflicts with the final library later on. After the final release
615 we'll only fix bugs so that there will be no reason to link any
616 program statically with wxGTK.
617  
618 We changed the name of the shared library to include the version of
619 the GTK used so that no conflicts emerge with simultaneous
620 versions of wxWindows for GTK 1.0 and for GTK 1.2 and so on.
621  
622 As you can see, we have not moved to GTK 1.1.X as the different
623 development versions are too different and buggy to be useful. We'll
624 wait for a stable GTK 1.2 release (hardly 1.2.0) and start porting
625 then.
626  
627 wxGTK now compiles without problems on anything between gcc 2.7.2 on
628 Linux-x86 and egcs 1.1 on Linux-Alpha and egcs 1.0 on Sparc. This isn't
629 as easy as it sounds...
630  
631 Available form this site are the Python bindings of wxWindows.
632 Thanks to Robin Dunn for this tremendous contribution.
633 Tkinter is dead, Java is dead, wxPython rules! That's all there is to say.
634  
635 Although only a few new classes have been added, many have been polished
636 up substantially, the most visible are wxListCtrl, wxTreeCtrl and
637 all classes related to printing. Also the DialogEd now functions
638 much better than before. Drag'n'Drop is fucntional but probably won't 
639 be perfect until we use GTK 1.2 and its much improved DnD features.
640  
641 wxClipboard has arrived and works for text. Other formats have not been
642 tested carefully yet.
643  
644 wxMiniFrame has been added which might be useful for docking toolbars
645 etc. Someone has already done that for the MSW port and we hope to
646 include his very nice work later.
647  
648 wxDirDialog has been added (thanks to Harm von der Heijden).
649  
650 The entite "tab traveral" system for moving from item to item in
651 a dialog has been rewritten. It now completely overrides the
652 not-so-well-done GTK native tab system.
653  
654 Quite much has been done to improve the wxImage class, which is now
655 available in the Windows port as well. Very useful for anything related
656 to image processing. wxGTK also uses this class internally e.g. to scale
657 bitmaps when the scale factor (e.g. zooming) of a drawing context
658 has changed.
659   
660 Some of the small and handy classes (wxDate, wxTime, wxVariant) have
661 received a face-lift. wxList has been rewritten to make it possible
662 to write type-safe lists. The collection of utility functions (wxFileFind etc)
663 has been revamped and cleaned-up (thanks to Vadim Zeitlin, who has also
664 greatly enhanced many basic classes, ranging wxString to the debug and
665 log system).
666  
667 We removed some constructors of GDI classes (such as wxPen, wxColour)
668 which took a pointer as a parameter. This lead to many errors among users
669 resulting in unexpected behaviour so it was decided to remove these
670 constructors.
671  
672 As the number of users and the number of test programs and samples
673 is steadialy rising the core classes of wxWindows for MSW and GTK 1.0
674 can be considered to be very stable if not outright bug-free. I haven't
675 seen a crash for weeks now and wxWindows' internal debug features also
676 have improved every week, making stepping-through with a debugger almost
677 completely unnecessary as the library reports possible errors itself
678 (when in debug mode).
679