2 wxWindows 2.0 for Windows Change Log
3 ------------------------------------
5 Alpha 18, December 29th 1998
6 ----------------------------
8 - Win16 support working again (VC++ 1.5)
9 - Win16 now uses generic wxNotebook, wxListCtrl,
10 wxTreeCtrl -- more or less working now, although
11 a little work on wxNotebook is still needed.
12 Under 16-bit Windows, get assertion when you click
14 - Wrote 16-bit BC++ makefiles: samples don't yet link.
15 - Added CodeWarrior support to distribution courtesy
18 Alpha 17, November 22nd 1998
19 ----------------------------
21 - More documentation updates, especially for
22 wxLayoutWindow classes and debugging facilities.
23 - Changed wxDebugContext to use wxDebugLog instead
25 - Now supports VC++ 6.0, and hopefully BC++ 5.0.
26 However, DLL support may be broken for BC++ since
27 VC++ 6 required changing of WXDLLEXPORT keyword
29 - Numerous miscellaneous changes.
31 Alpha 16, September 8th 1998
32 ----------------------------
34 - Added wxSashWindow, wxSashLayoutWindow classes, and sashtest
36 - Guilhem's socket classes added, plus wxsocket sample.
37 - A few more makefiles added.
38 - GnuWin32/BC++ compatibility mods.
39 - Further doc updates.
40 - wxProp updates for correct working with wxGTK.
42 Alpha 15, August 31st 1998
43 --------------------------
46 - wxDC::GetDepth added.
47 - Contribution added whereby wxBitmap will be
48 converted to DC depth if they don't match.
49 - wxConfig API improved, documentation updated.
50 - Printing classes name conventions cleaned up.
51 - wxUpdateUIEvent now derives from wxCommandEvent
52 so event can travel up the window hierachy.
54 Alpha 14, July 31st 1998
55 ------------------------
57 - Toolbar API has been simplified, and now
58 wxFrame::GetClientArea returns the available client
59 area when toolbar, status bar etc. have been accounted for.
60 wxFrame::CreateToolBar added in line with CreateStatusBar.
61 - Documentation updates, incl. for wxToolBar.
62 - New wxAcceleratorTable class plus wxFrame::SetAcceleratorTable.
63 - Various additions from other folk, e.g. streams, wxConfig
65 - Added wxDocMDIParentFrame, wxDocMDIChildFrame for doc/view.
67 Alpha 13, July 8th 1998
68 -----------------------
70 - Implemented wxPoint as identical to POINT on Windows, and
71 altered wxDC wxPoint functions to use wxPoint directly in
72 Windows functions, for efficiency.
73 - Cured wxASSERT bug in wxStatusBar95.
74 - #ifdefed out some bits in oleutils.cpp for compilers that
76 - Added some operators to wxPoint, wxSize.
77 - Added inline wxDC functions using wxPoint, wxSize, wxRect.
79 Alpha 12, July 7th 1998
80 -----------------------
82 - Added wxApp::GetComCtl32Version, and wxTB_FLAT style, so can
83 have flat toolbars on Win98 or Win95 with IE >= 3 installed.
85 Alpha 11, July 3rd 1998
86 -----------------------
88 - Added thread.h, thread.cpp.
89 - Changed Enabled, Checked to IsEnabled, IsChecked in wxMenu,
91 - Changed wxMenuItem::SetBackColor to SetBackgroundColour,
92 SetTextColor to SetTextColour, and added or made public several
94 - Added two overloads to wxRegion::Contains. Added
95 wxRegion::IsEmpty for a more consistent naming convention.
96 - Added Vadim's wxDataObject and wxDropSource.
97 - ENTER/LEAVE events now work.
98 - Cured wxMemoryDC bug where the DC wasn't being deleted.
99 - Cured wxGauge SetSize major bugginess.
100 - Cured problem where if a GDI object was created on the stack,
101 then went out of scope, then another object was selected into
102 the DC, GDI objects would leak. This is because the assignment
103 to e.g. wxDC::m_pen would delete the GDI object without it first
104 being selected out of the DC. Cured by selecting the old DC object
105 first, then doing the assignment.
106 - Split up wxGaugeMSW, wxGauge95, wxSliderMSW, wxSlider95
107 - Various other bug fixes and additions.
109 Alpha 10, May 7th 1998
110 ----------------------
112 - Added desiredWidth, desiredHeight parameters to wxBitmapHandler
113 and wxIcon functions so that you can specify what size of
114 icon should be loaded. Probably will remain a Windows-specific thing.
115 - wxStatusBar95 now works for MDI frames.
116 - Toolbars in MDI frames now behave normally. They still
117 require application-supplied positioning code though.
118 - Changed installation instructions, makefiles and batch files
119 for compiling with Gnu-Win32/Mingw32/EGCS. Also timercmn.cpp
120 change to support Mingw32/EGCS. Bison now used by default.
122 Alpha 9, April 27th 1998
123 ------------------------
125 - Cured bug in wxStatusBar95 that caused a crash if multiple
127 - Added Gnu-Win32 b19/Mingw32 support by changing resource
128 compilation and pragmas.
129 - Cured wxMenu bug introduced in alpha 8 - didn't respond to
130 commands because VZ changed the id setting in wxMenu::MSWCommand.
132 Alpha 8, April 17th 1998
133 ------------------------
135 - Added IsNull to wxGDIObject to check if the ref data is present or not.
136 - Added PNG handler and sample - doesn't work for 16-bit PNGs for
138 - Added wxJoystick class and event handling, and simple demo.
139 - Added simple wxWave class. Needs Stop() function.
140 - Added wxModule (module.h/module.cpp) to allow definition
141 of modules to be initialized and cleaned up on wxWindows
143 - Start of Mingw32 compatibility (see minimal and dialogs samples
144 makefile.m95 files, and install.txt).
145 - Note: Windows printing has stopped working... will investigate.
147 - Updated wxString: bug fixes, added wxArrayString, some
148 compatibility functions.
149 - Updated log.h/cpp, added wxApp::CreateLogTarget.
150 - file.h: new wxTempFile class.
151 - defs.h: added wxSB_SIZE_GRIP for wxStatusBar95
152 - statbr95: wxStatusBar95 control.
153 - registry.h/cpp: wxRegKey class for Win95 registry.
154 - listbox.cpp: corrected some bugs with owner-drawn listboxes.
155 - wxConfig and wxFileConfig classes.
157 Alpha 7, March 30th 1998
158 ------------------------
160 - Added tab classes, tab sample.
161 - Now can return FALSE from OnInit and windows will be
162 cleaned up properly before exit.
163 - Improved border handling so panels don't get borders
165 - Debugged MDI activation from Window menu.
166 - Changes to memory debug handling, including checking for
167 memory leaks on application exit - but see issues.txt for
169 - Added wxTaskBarIcon (taskbar.cpp/h, plus samples/taskbar)
170 to allow maintenance of an icon in the Windows 95 taskbar
172 - Got MFC sample working (MFC and wxWindows in the same
173 application), partly by tweaking ntwxwin.mak settings.
174 - Got DLL compilation working again (VC++).
175 - Changed wxProp/Dialog Editor filenames.
177 Alpha 6, March 10th 1998
178 ------------------------
180 - Found stack error bug - stopped unwanted OnIdle recursion.
181 - Removed bug in wxTreeCtrl::InsertItem I added in alpha 5.
182 - Changed exit behaviour in wxApp/wxFrame/wxDialog. Now will
183 check if the number of top-level windows is zero before
184 exiting. Also, wxApp::GetTopWindow will return either
185 m_topWindow or the first member of wxTopLevelWindows, so you
186 don't have to call wxApp::SetTopWindow.
187 - Added dynarray.h/dynarray.cpp (from Vadim).
188 - Added first cut at OLE drag and drop (from Vadim). dnd sample
189 added. Drop target only at this stage. See src/msw/ole/*.cpp,
190 wx/include/msw/ole/*.h. WIN32 only because of UUID usage.
191 Doesn't work with GnuWin32 - no appropriate headers e.g. for
193 Doesn't work with BC++ either - crashes on program startup.
194 - Added Vadim's owner-draw modifications - will probably remain
195 Windows-only. This enhances wxMenu, wxListBox. See ownerdrw sample.
196 - Added wxLB_OWNERDRAW for owner-draw listboxes.
197 - Vadim's wxCheckListBox derives from wxListBox. See checklst sample.
198 Doesn't entirely work for WIN16.
199 - Vadim has added wxMenuItem as a separate file menuitem.cpp. It
200 can also be used as an argument to wxMenu::Append, not just for
201 internal implementation.
202 - Some #ifdefs done for MINGW32 compilation (just alter OPTIONS
203 in makeg95.env, together with mingw32.bat). However, resource
204 binding is not working yet so most apps with dialogs crash.
206 Alpha 5, 14th February 1998
207 ---------------------------
209 - GENERIC AND MSW-SPECIFIC CODE NOW TREATED AS TWO SEPARATE
210 DISTRIBUTIONS. This change log will therefore now refer to
211 the Windows-specific code only. See docs/changes.txt for generic
213 - Removed Windows-specific reference counting system (GDI
214 resources were cleaned up in idle time) - minimal
215 advantages now we have a wxWin reference counting system.
216 - Added missing WXDLLEXPORT keywords so DLL compilation works
218 - Removed most warnings for GnuWin32 compilation.
219 - Added wxRegion/wxRegionIterator, but haven't yet used it in
222 Alpha 4, 31st January 1998
223 --------------------------
225 - Changed wxDC functions to take longs instead of floats. GetSize now takes
226 integer pointers, plus a version that returns a wxSize.
227 - const keyword added to various wxDC functions.
228 - Under Windows, wxDC no longer has any knowledge of whether
229 an associated window is scrolled or not. Instead, the device
230 origin is set by wxScrolledWindow in wxScrolledWindow::PrepareDC.
231 - wxScrolledWindow applications can optionally override the virtual OnDraw
232 function instead of using the OnPaint event handler. The wxDC passed to
233 OnDraw will be translated by PrepareDC to reflect scrolling.
234 When drawing outside of OnDraw, must call PrepareDC explicitly.
235 - wxToolBarBase/wxToolBarSimple similarly changed to allow for
237 - Integrated wxPostScriptDC patches for 1.xx by Chris Breeze,
238 to help printing with multiple pages.
239 - IPC classes given base classes (wxConnectionBase etc.) which
240 define the API used by different implementations. DDE
241 implementation updated to use these base classes.
242 - wxHelpInstance now separated into wxHelpControllerBase (base
243 for all implementations), wxWinHelpController (uses standard
244 WinHelp), wxXLPHelPController (talks to wxHelp by DDE or
245 TCP/IP). There will be others eventually, such as
246 wxHTMLHelpController for Microsoft (and Netscape?) HTML Help.
247 - Added Vadim Zeitlin's wxString class plus
248 internationalization code (gettext simulation, wxLocale, etc.).
249 New files from Vadim:
255 src\common\string.cpp
259 No longer use GNU wxString files.
260 - Split off file-related functions into include\wx\filefn.h and
261 src\common\filefn.cpp.
262 - Borland C++ support (WIN32) for main library and
263 samples, using makefile.b32 files.
264 - Preparation done for allowing BC++ to compile wxWin as a DLL,
265 including changes to defs.h.
266 - wxIntPoint removed, wxPoint is now int, and wxRealPoint
268 - Added wxShowEvent (generated when window is being shown or
270 - Got minimal, docview, mdi samples working for 16-bit VC++ and
271 cured 16-bit problem with wxTextCtrl (removed global memory
273 - Updated GnuWin32 makefiles, checked minimal, mdi, docview samples.
275 Alpha 3, September 1997
276 -----------------------
278 - wxListCtrl, wxTreeCtrl, wxImageList classes done.
279 - Instigated new file hierarchy, split files and classes up more logically.
280 - PrologIO and some other utils now put into core library.
281 - Revamped print/preview classes, added wxPageSetupDialog.
282 - Started documentation.
284 Alpha 2, 30th April 1997
285 ------------------------
287 - EVT_... macros now have at least one argument, for conformance
288 with MetroWerks compiler.
289 - Added ids to .wxr file format.
290 - Got Dialog Editor compiled and running again but need
291 to extend functionality to be in line with new controls.
292 Added dialoged\test app to allow dynamic loading of .wxr files
293 for testing purposes.
294 - Rewrote wxBitmap to allow installable file type
296 - Rewrote wxBitmapButton, wxStaticBitmap to not use Fafa.
297 - Wrote most of wxTreeCtrl and sample (need wxImageList to implement it
299 - Added back wxRadioBox.
300 - Tidied up wx_main.cpp, wxApp class, putting PenWin code in
303 Alpha 1, 5th April 1997
304 -----------------------
306 At this point, the following has been achieved:
308 - A lot, but not all, of the code has been revamped for better
309 naming conventions, protection of data members, and use of
310 wxString instead of char *.
311 - Obsolete functionality deleted (e.g. default wxPanel layout,
312 old system event system) and code size reduced.
313 - Class hierarchy changed (see design doc) - base classes such
314 as wxbWindow now removed.
315 - No longer includes windows.h in wxWin headers, by using stand-in
316 Windows types where needed e.g. WXHWND.
318 - wxScrolledWindow, wxStatusBar and new MDI classes added.
319 MDI is now achived using separate classes, not window styles.
320 - wxSystemSettings added, and made use of to reflect standard
322 - SetButtonFont/SetLabelFont replaced by SetFont; font and colour
323 settings mucho rationalised.
324 - All windows are now subclassed with the same window proc to make
325 event handling far more consistent. Old internal wxWnd and derived
327 - API for controls revised, in particular addition of
328 wxValidator parameters and removal of labels for some controls.
329 - 1 validator written: see examples/validate.
330 - Event table system introduced (see most samples and
331 wx_event.cpp/ProcessEvent, wx_event.h). wxEvtHandler
332 made more flexible, with Push/PopEventHandler allowing a chain
334 - wxRadioBox removed - will be added back soon.
335 - Toolbar class hierarchy revised:
337 wxToolBarSimple (= old wxToolBar)
338 wxToolBar95 (= old wxButtonBar under Win95
339 wxToolBarMSW (= old wxButtonBar under WIN16/WIN32)
340 - Constraint system debugged somewhat (sizers now work properly).
341 - wxFileDialog, wxDirDialog added; other common dialogs now
342 have class equivalents. Generic colour and font dialogs
343 rewritten to not need obsolete panel layout.
344 - .wxr resource system partially reinstated, though needs
345 an integer ID for controls. Hopefully the resource system
346 will be replaced by something better and more efficient
348 - Device contexts no longer stored with window and accessed
349 with GetDC - use wxClientDC, wxPaintDC, wxWindowDC stack
351 - wxSlider uses trackbar class under Win95, and wxSL_LABELS flag
352 determines whether labels are shown. Other Win95-specific flags
353 introduced, e.g. for showing ticks.
354 - Styles introduced for dealing with 3D effects per window, for
355 any window: all Win95 3D effects supported, plus transparent windows.
356 - Major change to allow 3D effect support without CTL3D, under
358 - Bitmap versions of button and checkbox separated out into new
359 classes, but unimplemented as yet because I intend to remove
360 the need for Fafa - it apparently causes GPFs in Win95 OSR 2.
361 - utils/wxprop classes working (except maybe wxPropertyFormView)
362 in preparation for use in Dialog Editor.
363 - GNU-WIN32 compilation verified (a month or so ago).