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