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