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