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