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