Changelogs

Overview

These changelogs reflect the history of all files in the Subversion repository. The changelog has been generated at 2016-05-09 08:38:04

Changes per page:

25 50 100 250 500 1000 2000

Changelog for wxWidgets (70435 changes):

2010-11-22 02:22 VZ, revision 66228

Silently ignore timer events from timers which were just stopped. An assert in wxTimerWndProc() could be provoked by valid user code which simply started and stopped the timers quickly enough because a WM_TIMER could have been already generated just before we stopped the timer. Simply ignore events from unknown timer under assumption that they must come from the recently stopped ones instead of asserting. Ideally we'd somehow distinguish between the situation described above and the really bogus events which could indicate bugs in wx code or a change in behaviour in a future version of Windows but there is no easy way to do it so for now just settle for not asserting in normal case. Closes #10052.

2010-11-22 02:22 VZ, revision 66227

Refactor wxStatusBar creation in wxMSW to do it in standard way. Use wxControl-provided CreateControl() and MSWCreateControl() methods to create the status bar instead of duplicating their code in its Create(). Also translate wx styles to MSW ones in overridden MSWGetStyle() now. In addition to making the code smaller and more clear, this fixes the non-respect of the styles specified at status bar creation (e.g. border), see #12655.

2010-11-22 02:22 VZ, revision 66226

Derive wxStatusBar from wxControl and not wxWindow. wxStatusBar is no less a control than wxToolBar and deriving it from wxControl gives access to convenient native control creation functions under MSW (which will be used by the next commit).

2010-11-22 02:22 VZ, revision 66225

Use status full, not client, size to determine frame client size in wxMSW. We need to account for the full size of status bar, including potential borders, when calculating the client size of the frame containing it. Closes #12697.

2010-11-22 02:22 VZ, revision 66224

Send page changed event after changing the page in wxMSW wxNotebook. Update the currently selected page before generating wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED event in wxMSW wxNotebook. This is more consistent with other ports and more logical as "-ED" events are supposed to be sent after the action they notify about is completed. And it also allows to set the focus in this event handler whereas any attempts to do it would have been disregarded before as changing the active page resets focus. Notice that this does introduce an incompatibility: calling wxNotebook::GetSelection() from PAGE_CHANGED event handler now returns the new page and not the old one as before. Again, this is more logical and more consistent. Closes #12688.

2010-11-22 02:22 VZ, revision 66223

Use correct wxDEBUG_LEVEL value when building wxscintilla library. wxScintilla code uses wxVector<> which brings in wxDEBUG_LEVEL-dependent code so we must use the wxDEBUG_LEVEL value consistent with the rest of the library when building it. Simply pass wxDEBUG_LEVEL definition on the compiler command line if it's different from the default. Closes #12626.

2010-11-22 02:22 VZ, revision 66222

Always define WXUSINGDLL when compiling Scintilla in shared wx build. We need WXUSINGDLL even in monolithic build because Scintilla references wx debugging functions (wxOnAssert(), wxTheAssertHandler &c) which still must be seen as being exported from the (monolithic) DLL in this case. See #12626.

2010-11-21 14:00 VZ, revision 66221

Correct wxFont::GetFamily() unit test to test for wxFONTFAMILY_DEFAULT. GetFamily() returns wxFONTFAMILY_DEFAULT and not wxFONTFAMILY_UNKNOWN since r65670. Correct the test to handle wxFONTFAMILY_DEFAULT as allowed value.

2010-11-21 14:00 VZ, revision 66220

Revert r66070: "Unload bogus XRC resources in "garbage" unit test." This change is not needed any longer after r66219 which fixed the real underlying problem, i.e. that attempting to load an invalid XRC file resulted in failures when loading all subsequent XRC files.

2010-11-21 00:53 VZ, revision 66219

Don't keep entries for XRC resources that failed to load in wxXmlResource. Attempting to load a resource that couldn't be loaded resulted in wxXmlResource::Load() returning false for this and _all_the_subsequent_ calls to it because each call to Load() reattempted to reload all resources, including the one(s) that failed to load initially. Instead, try to load just the resource(s) that we should load right now and ignore all the other ones. Also, don't add entries for the one(s) that we fail to load. This fixes the unit test failures in the XRC test case which was affected by the test checking that XRC couldn't be loaded from garbage that ran before it. It also makes the code simpler by ensuring that wxXmlResourceDataRecords elements always have a valid wxXmlDocument associated with them. Also clean up the code: use wxScopedPtr instead of manually deleting pointers and reorganize #if checks to be easier to follow.

2010-11-21 00:53 VZ, revision 66218

Don't consider extra ".." an error in wxFileName::Normalize(). The path being normalized could have come from user and there doesn't seem to be any point in complaining about too many ".."s in it when we can handle them correctly instead. So simply ignore the extra ".."s for the absolute paths and keep them unchanged for the relative ones instead of returning an error. See #10960.

2010-11-20 12:58 JMS, revision 66217

Reworked wxSystemColourProperty::StringToValue() to use wxColour::Set() instead of doing string-to-colour conversion by itself. This adds support for HTML-colours, among other things (closes #12696).

2010-11-19 08:57 RD, revision 66210

Fix some bad parameter names, add missing methods, add missing classes, etc.

2010-11-19 08:51 RD, revision 66209

Add a SetSize to wxSizeEvent

2010-11-18 15:10 VZ, revision 66205

Improve documentation about handling C++ exceptions in wx programs. Try to explain the different exception handling strategies more clearly in the overview and also update OnUnhandledException() documentation.

2010-11-18 13:41 VZ, revision 66203

Check wxDateTime components validity more rigorously. Check that the provided day is strictly positive and also that the month is in valid range: while it should always be, considering that it's an enum element, in practice people often cast ints to wxDateTime::Month with potentially fatal results. Catch this with an assert in wxDateTime::Tm::IsValid().

2010-11-18 13:41 VZ, revision 66202

Explicitly include "wx/dynlib.h" from src/msw/combobox.cpp. This header was only included implicitly via wx/msw/uxtheme.h and thus the code failed to compile with wxUSE_UXTHEME==0 but wxUSE_DYNLIB_CLASS==1. See #12664.

2010-11-17 06:57 PC, revision 66180

remove const from by-value return type, it's useless

2010-11-17 02:22 VZ, revision 66179

Remove obsolete warning from wxMenuBar::GetTitle() documentation. This method can be used for menu bar entries also since the previous commit. Do mention that SetTitle() can't be used to change a menu bar menu title however.

2010-11-17 02:20 VZ, revision 66178

Simplify wxMSW wxMenuBar title management. Store the titles of the menu bar menus in the menu objects themselves. This makes wxMenu::GetTitle() return the expected result for them (which also fixes the current unit test failures for wxMSW) and makes wxMenuBar code simpler. This removes the wxMenuInfo class which existed for XTI purposes only but as it was apparently unfinished and MSW-specific it shouldn't be a big loss.

2010-11-17 02:20 VZ, revision 66177

No real changes, just minor cleanup of wxImage code. Make more local variables const. Use consistent spacing. Don't use needless comparison with NULL. Don't avoid not using double negation. See #12682.

2010-11-17 02:20 VZ, revision 66176

Don't pass a bool to wxImage::MakeEmptyClone() which takes an enum. Correct the changes of r66167 which accidentally left a call to MakeEmptyClone() using its previous signature. See #12682.

2010-11-16 23:38 VZ, revision 66175

Correct form of mnemonics returned by wxGTK wxMenu::GetTitle(). wxMenu::GetTitle() returned a string in GTK+ format (i.e. using underscores instead of ampersands) instead of the expected wx one. This is, of course, the right thing to do and it also fixes wxMenuBar::FindMenuItem() as a side effect. Closes #12672.

2010-11-16 23:38 VZ, revision 66174

Emphasize that wxUSE_DYNLIB_CLASS shouldn't be disabled in wxMSW. Mention in the setup.h comment that wxDynamicLibrary is used in a lot of places internally and disabling it can result in a loss of a lot of important functionality. See #12664.

2010-11-16 23:38 VZ, revision 66173

Add more checks for wxUSE_DYNLIB_CLASS to wxMSW. Compilation fixes for wxApp and wxComboBox for wxUSE_DYNLIB_CLASS==0. See #12664.

2010-11-16 23:38 VZ, revision 66172

Correct checks for wxUSE_PRINTING_ARCHITECTURE and wxUSE_ENH_METAFILE. Compilation fixes for building without one or both of these symbols. See #12664.

2010-11-16 23:38 VZ, revision 66171

Avoid asserts due to not overriding OnGetItemText() in VirtListCtrlTestCase. A virtual list control must override wxListCtrl::OnGetItemText() method and wxMSW native implementation asserts if this is not the case (the generic one should arguably do it as well). Avoid the asserts by providing a dummy implementation of OnGetItemText() in the unit test.

2010-11-16 23:38 VZ, revision 66170

Add an explicit SetFocus() call to fix wxTreeCtrl unit test. Fixing the implicit focus grabbing by wxTreeCtrl::SelectItem() in r65905 broke its unit test case as the simulated key event was not delivered to wxTreeCtrl itself any more. Fix this by simply setting the focus to the tree explicitly before sending it any key strokes.

2010-11-16 23:38 VZ, revision 66169

Correct wxMSW wxToolTip behaviour for wxRadioBox items tooltips. The assert added in r66053 checking that we couldn't have tooltips for child windows if we didn't have the tooltip for the main one turned out to be wrong, at least in wxRadioBox case it's perfectly possible to have the tooltips for the individual radio buttons without having one for the box itself. Replace the assert with a simple if check. This fixes a unit test failure in RadioBoxTestCase.

2010-11-16 23:38 VZ, revision 66168

Don't use some "recent" C++98 features not supported by VC6. Don't return void values nor redeclare the same variable in for loops to fix VC6 compilation.

2010-11-16 23:37 VZ, revision 66167

No changes, just refactor common code in wxImage cloning functions. Extract code common to several wxImage methods creating new images based on an existing one in a new MakeEmptyClone() method. Closes #12682.

2010-11-16 23:37 VZ, revision 66166

Fix crashes in wxDateTime::ParseDate() for some invalid dates. Parsing an incomplete date with nothing but whitespace and/or date delimiter characters at the end crashed as we happily went beyond the end of string. Fix this by not using a loop which didn't check for the iterator validity. Closes #12685.

2010-11-15 09:52 JJ, revision 66161

Update OpenVMS makefile

2010-11-15 01:22 VZ, revision 66157

VC6 compilation fix in wxDIB::Create(). Deal with the lack of scope around variables declared inside the for loop in this compiler, previously it gave "error C2360: initialization of 'x' is skipped by 'case' label" message and also complained about redefinition of 'x'.

2010-11-15 01:11 VZ, revision 66156

Fix incorrect use of word "alternative" in the documentation. There can't be only one alternative. Closes #12681.

2010-11-14 15:04 VZ, revision 66153

Restore code for closing inherited file descriptors in the child. The code closing all file descriptors inherited from the parent in the child process created by wxExecute() was removed in r57324 by mistake (probably due the fact that its meaning was poorly explained) but we still do need to do this, of course, to avoid descriptor "leaks" (e.g. the parent couldn't really close any of them). Restore the code for closing all unneeded file descriptors in the child in slightly modified form and add a comment pointing to an URL explaining how to do it better in the future. Closes #12636.

2010-11-14 15:04 VZ, revision 66152

Fix spurious errors when writing to the child process stdin under Unix. Since the child pipe was made non-blocking in r65993, it became possible to write to child process without deadlocking when the pipe became full. However this still resulted in an error from wxFileOutputStream as it didn't handle EAGAIN returned from write() any differently than any other error, even though it is an expected situation in this particular case. Change Unix wxExecute() to use wxPipeOutputStream which ignores EAGAIN unlike wxFileOutputStream to fix this. See #12636.

2010-11-14 15:04 VZ, revision 66151

No real changes, just reamed HAS_PIPE_INPUT_STREAM. Renamed the symbol indicating whether pipe-based streams are available from HAS_PIPE_INPUT_STREAM to HAS_PIPE_STREAMS as it's not really input-specific. See #12636.

2010-11-14 13:09 VZ, revision 66150

Add wxFile::{Get,Clear}LastError() functions. Remember the errno of the last file operation instead of just remembering whether there was an error or not. See #12636.

2010-11-14 13:09 VZ, revision 66149

Handle image hot spot in wxImage::Rotate180(). Set the hot spot coordinates correctly for the image returned from Rotate180(), just as it's already done by Rotate90(). Closes #12680.

2010-11-14 02:02 VZ, revision 66146

Add wxImage::Rotate180() function. Closes #12679.

2010-11-14 02:02 VZ, revision 66145

Handle hot spots in wxImage::Rotate90(). Set hot spot coordinates for the rotated image if the original one had them. Also handle the case when the source image has both alpha and mask correctly. Closes #3680.

2010-11-13 18:13 VZ, revision 66144

Don't use standard menu ids in the unit test to avoid Mac problems. wxOSX rearranges the standard menu items such as wxID_EXIT and wxID_ABOUT and, for the former, changes its text to "Quit", so don't use them in the menu unit test which expects to find the items in the menus to which they were added and exactly with the labels used when adding them.

2010-11-13 16:03 VZ, revision 66143

Don't put cursor at the end of wxGridCellEnumEditor control. Putting the cursor to the end of the control when the editing starts doesn't make much sense as this should be the default behaviour anyhow and, worse, this results in an assert under wxMSW where a read-only wxComboBox doesn't have any cursor to move. Closes #12446.

2010-11-13 16:03 VZ, revision 66142

Initialize scrollbar positions in wxGTK correctly. The scrollbar positions stored in wxWindow::m_scrollPos were not initially correct in wxGTK because wxScrollHelper::SetScrollbars() didn't update them and only set the values of the underlying GtkAdjustments themselves. This resulted in filtering out of the first scroll event as the code (wrongly) believed that the scrollbar position hadn't changed. Fix this by setting m_scrollPos to the real scrollbar positions. Closes #12468.

2010-11-13 16:03 VZ, revision 66141

Add a unit test checking selection updating in virtual wxListCtrl. Verify that the selection is updated correctly after the number of items in the control is decreased. See #12378.

2010-11-13 16:03 VZ, revision 66140

Don't assert if config file contains an invalid boolean value. Asserts should be only triggered by programming errors, not by user actions, and the assert checking that the value is either 0 or 1 in wxConfigBase::DoReadBool() could happen if the user edited the file and put a wrong value into it. Replace the assert with a warning message. See #11437.

2010-11-13 16:03 VZ, revision 66139

Add a beginning of wxMenu unit test. Test wxMenu and wxMenuBar item search and counting functions. See #12672.

2010-11-13 16:02 VZ, revision 66138

Make menu operations always work with "Test" menu in the sample. Some tests in the "Menu" menu of the menu sample worked with the "Test" menu while others used the last one ("Help" initially but possibly something else if the test commands from "Menubar" menu were used). Harmonize all menu commands to use the "Test" menu now. See #12668.

2010-11-13 16:02 VZ, revision 66137

Fix resizing of wxGrid columns when they were reordered. The column resizing code in wxGrid didn't take account of the fact that the column positions and indices could be different. Correct it by inserting calls to wxGrid::GetColAt() and GetColPos() in a new wxGridOperations::GetLineBefore() method. Closes #11984.