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