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