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