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.

2010-11-12 08:15 JJ, revision 66124

Update SETUP for OpenVMS

2010-11-11 16:51 MW, revision 66121

Use wxFS_SEEKABLE flag loading images.

2010-11-11 13:09 VZ, revision 66120

Improve check for ASCII locale in wxGTK initialization code. Use wxFontMapper::GetEncodingFromName() to check if the current locale encoding is ASCII instead of just comparing the name with "US-ASCII" which is not the name used by most platforms (e.g. current Linux systems call this encoding "ANSI_X3.4-1968"). This avoid creating a wxCSConv object for ASCII encoding unnecessarily on startup.

2010-11-11 13:09 VZ, revision 66119

Initialize wxCSConv immediately instead of deferring it. Deferred initialization code was not MT-safe and just wasn't that useful anyhow because it is rare to create a wxCSConv object and not use it afterwards. Remove the deferred initialization logic and create the real conversion used by wxCSConv immediately in its ctor. Also improve the comments by clearly explaining the possible values of wxCSConv::m_name and m_encoding. Closes #12630.

2010-11-11 13:09 VZ, revision 66118

Fix typo in error message given if wxUSE_CAIRO is undefined. Replaced the wrongly copy-and-pasted wxUSE_BUTTON with wxUSE_CAIRO.

2010-11-11 05:09 RD, revision 66117

No docs yet, just the bare interace so we can get XML for Phoenix.

2010-11-11 02:29 RD, revision 66116

Fix a parameter type and add some missing const keywords

2010-11-10 14:53 VZ, revision 66103

Disable unit tests which can't work in ANSI build. Disable unit tests involving operations (such as conversions between UTF and anything but plain ASCII) not available in ANSI build. This fixes the test suite for non-Unicode build under Unix.

2010-11-10 14:53 VZ, revision 66102

Use wxString::To8BitData() instead of mb_str() to handle NULs correctly. In ANSI build wxString::mb_str() returns a pointer to the internal wxString data directly instead of a buffer with a proper length, so it provides access to the part of the string before the first embedded NUL only. Use To8BitData() which always returns the buffer of the correct size in all builds. The open question remains whether mb_str() should be changed to return a (non owned) buffer and not just a pointer in ANSI build. This would make manipulating strings with embedded NULs safer but mb_str() would be less efficient and less compatible.

2010-11-10 14:53 VZ, revision 66101

Fix wxString::{Before,After}{First,Last} unit test for ANSI build. The test used a wide character constant and so didn't work in ANSI build. Use an ASCII string there now while still keeping the original version in Unicode build.

2010-11-10 14:53 VZ, revision 66100

Don't check for wxDF_UNICODETEXT support in ANSI builds. wxDF_UNICODETEXT clipboard format can't be even constructed without provoking an assert in ANSI build of wxGTK, so avoid using it, we don't support it anyhow.

2010-11-10 14:53 VZ, revision 66099

Initialize paragraph descent in wxRichTextParagraph::Layout(). This variable was used as the initial value for the descent but was never initialized, so the descent computation could be completely wrong.

2010-11-10 14:53 VZ, revision 66098

Don't crash in wxGUIEventLoop::Exit() if not running in wxX11. The implementation of wxEventLoop::IsRunning() has changed since this code was written and it doesn't check for m_impl != NULL any more. Because of this, calling Exit() for an active but not running event loop resulted in a crash in wxX11. Fix this by doing nothing in this case. This seems better than asserting as the event handling code exits the loop if an event handler throws an exception and the loop might not be running in this case yet (events could be processed because of a wxYield() call).

2010-11-10 14:53 VZ, revision 66097

Implement bitmap mask copying in wxX11. Copy the mask pixmap properly in wxX11, otherwise copying masks resulted in freeing the same pixmap twice and an X error. This fixes the bitmap unit test for wxX11.

2010-11-10 14:52 VZ, revision 66096

Don't test for DC validity in wxX11 wxDC text extent functions. The code in GetTextExtent() and GetChar{Width,Height}() works fine even for non-initialized wxMemoryDC and the ellipsization unit test relies on this working so simply remove the asserts which resulted in the test failures.

2010-11-10 14:52 VZ, revision 66095

Disable measuring context unit test for wxX11. wxCairoRenderer::CreateMeasuringContext() is only implemented for wxGTK so the test fails under other ports when using Cairo. Disable it for wxX11 for now.

2010-11-10 14:52 VZ, revision 66094

Use Cairo for wxGraphicsContext in wxX11. Check for Cairo in configure for wxX11 too. Fix compilation of wxCairoContext for non-{GTK,MSW} platforms. Also make wxUSE_CAIRO a "normal" option, i.e. add it to all wx/setup.h files instead of defining it as 1 unconditionally for wxGTK and 0 for everything else.

2010-11-10 14:52 VZ, revision 66093

Disable unit test for wxColour alpha under wxX11. wxX11 doesn't support alpha component of wxColour currently.

2010-11-10 14:52 VZ, revision 66092

Fix signed/unsigned comparison warnings in wxUniv wxNotebook. Recent replacement of size_t wxNotebook::m_selection with int wxBookCtrlBase::m_selection resulted in appearance of many warnings in wxUniv wxNotebook. Fix them by removing some now unnecessary casts between int and size_t and adjusting the remaining ones.

2010-11-10 14:52 VZ, revision 66091

Add #if checks fixing minimal wxGTK build. Check for functions availability before using them. This fixes compilation of wxGTK with all features disabled.

2010-11-10 14:52 VZ, revision 66090

Fix harmless unused parameter warnings in minimal build. No real changes, just add some wxUnusedVar() to avoid warnings about parameters unused in some non-default build configurations.

2010-11-10 14:52 VZ, revision 66089

Don't exclude a bunch of wxDir methods when wxUSE_LONGLONG==0. The #endif part of a #if wxUSE_LONGLONG check was incorrectly positioned and excluded the definition of several wxDir methods not related to wxLongLong when wxUSE_LONGLONG was 0.

2010-11-10 14:52 VZ, revision 66088

Fix wxGLCanvas compilation with wxUSE_PALETTE==0. This fixes compilation problems with the minimal build of wxGTK and will make removing palette support in the future simpler.

2010-11-10 14:51 VZ, revision 66087

Fix wxStandardDialogLayoutAdapter compilation with wxUSE_BUTTON==0. This class probably should not be compiled in at all in the minimal build but in the meanwhile just add #if checks around its button-related parts.

2010-11-10 14:51 VZ, revision 66086

Make wxBitmap::ConvertToDisabled() available in all ports. This method was defined in wxBitmapBase which is not used by wxMSW (and wxOS2) so it wasn't available there. Move the definition of the method inline and reuse it for all ports, making it part of either wxBitmapBase or wxBitmap as appropriate. This is clearly ugly but we still have no good solution for deriving wxBitmap from wxBitmapBase in wxMSW as it already inherits from MSW-specific wxGDIImage there. Also document that ConvertToDisabled() is only available when wxUSE_IMAGE==1.

2010-11-10 01:36 VZ, revision 66082

Disconnect "hide" menu signal to fix menu destruction in wxGTK. The "hide" signal handler was triggered when destroying a sub-menu (even if it was not shown at this time). Disconnect it to avoid asserts due to attempts to generate an event for an already detached menu and to avoid the (bogus) wxEVT_MENU_CLOSE event as well. Closes #12668.

2010-11-10 01:36 VZ, revision 66081

Add a test for deleting a sub-menu to the menu sample. Also fix some typos in the help message. See #12668.

2010-11-10 01:36 VZ, revision 66080

Fix wxUSE_DC_CACHEING spelling in the documentation. It was consistently misspelt as wxUSE_DC_CACHE. Closes #12377.

2010-11-10 01:36 VZ, revision 66079

No changes, just simplify docview sample a bit. Remove some unnecessary function arguments and m_frame member variable. Closes #12374.

2010-11-10 01:36 VZ, revision 66078

Correct wxID_SEPARATOR description in menu documentation. Also correct a typo in Delete() function links. Closes #12666.

2010-11-10 00:53 VZ, revision 66077

Fix preprocessor definitions for wxBase build under OS X. Define __WXOSX__ for non-GUI build under Darwin. Ensure that the rest of the code compiles correctly when just __WXOSX__ is defined but neither of __WXOSX_{CARBON,COCOA,IPHONE}__ is. This ensures that wxBase can actually be built under Mac. Move OS X symbols definitions in wx/platform.h after wx/setup.h inclusion as they rely on __DARWIN__ and wxUSE_GUI values which are both define in that file now. Still keep them before wx/chkconf.h inclusion which relies on __WXOSX_XXX__ being defined. Yes, it's a mess and should be cleaned up more permanently some day. Also remove some redundancy from wx/osx/{carbon,cocoa}/private.h by factoring out common parts into wx/osx/core/private.h. Also include this header itself from wx/osx/private.h directly instead of including it thrice from different sub-ports headers. Closes #12660.

2010-11-10 00:53 VZ, revision 66076

Fix timeval struct initialization in wxSelectDispatcher. The tv_usec field could overflow its maximal value while tv_sec was always left 0. It would be even better to reuse SetTimeValFromMS() from socket.cpp here in the future. See #11542.

2010-11-10 00:53 VZ, revision 66075

Fix crash in wxCFEventLoop::AddSourceForFD(). Don't reset CFFileDescriptorRef before passing it to CFFileDescriptorCreateRunLoopSource(), this resulted in a crash inside this function. Closes #11542.

2010-11-10 00:53 VZ, revision 66074

Remove non-existent functions declarations from wxOSX/Carbon. wxMacSetupConverters() and wxMacCleanupConverters() don't seem to exist any more so don't declare them.

2010-11-08 17:28 VZ, revision 66071

Document wxRenameFile() behaviour when destination is a directory. Document that the source file is moved to the destination if it's a directory, apparently this is not obvious.

2010-11-08 17:28 VZ, revision 66070

Unload bogus XRC resources in "garbage" unit test. Leaving invalid XRC entries in wxXmlResource internal list of loaded resources resulted in failures in the XRC unit test which executed after this one. It seems that loading an invalid resource shouldn't prevent the other ones from loading correctly later and this probably should be corrected at wxXmlResource level but for now work around this problem in the test itself.

2010-11-08 14:50 VZ, revision 66069

Fix crash in XRC ID range support code. Really fix removing the record from the linked list. This code was modified by r66064 but was still wrong because the wrong pointer was updated.

2010-11-07 23:13 VZ, revision 66066

Compilation fix for STL build after ID range changes in XRC. Fix compilation of the new code which relied on implicit conversion of wxString to "const char *" which is unavailable when wxUSE_STL==1.

2010-11-07 20:34 VZ, revision 66065

Factor our hash function used for XRC ids hash map. Define the hash function in a separate function instead of duplicating it in XRCID_Lookup() and RemoveXRCIDEntry(). The hash function is extremely simplistic and inefficient right now, it should be replaced with wxStringHash::stringHash().

2010-11-07 20:33 VZ, revision 66064

Fix memory leak of XRC ids introduced by the ID range support patch. Fix bug in linked list processing in RemoveXRCIDEntry() added in r66059: it incorrectly overwrote the XRC id table entry with the next element in the list instead of just updating the pointer used during iteration.

2010-11-07 20:33 VZ, revision 66063

Reformat long lines in the new part of the xrc sample. No changes, just break the too long lines.

2010-11-07 20:33 VZ, revision 66062

Use Connect() of Bind() in the new part of xrc sample. Use Connect() for compatibility (notably with VC6 which doesn't support Bind()). Also connect the event handlers on loading the dialog instead of waiting until the relevant page is selected, this makes the code slightly simpler as we don't need to remember whether we connected them or not any longer.

2010-11-07 20:33 VZ, revision 66061

Test both ChangeSelection() and SetSelection() in notebook sample. Test wxBookCtrl::SetSelection() too to be able to check that it does generate events as expected.

2010-11-07 20:33 VZ, revision 66060

Don't require skipping "page changed" event in wxMSW wxNotebook. wxMSW wxNotebook implementation used to handle EVT_NOTEBOOK_PAGE_CHANGED event to update the currently shown page which meant that page changing was broken if the user code handled and didn't skip this event. As the other ports don't require the user code to skip this event, don't do this in wxMSW neither and always update the selected page unconditionally.

2010-11-07 15:00 VZ, revision 66059

Add support for id ranges to XRC. Allow to declare ranges of consecutive IDs in XRC by using the "id[n]" syntax. Show this functionality in the xrc sample and test it in the new unit test. Also show and test the "object reference" XRC functionality. Closes #11431.

2010-11-07 15:00 VZ, revision 66058

Make wxXmlResource::ReportError() wxXmlNode parameter const. This function (and the related DoReportError()) doesn't need to modify its "context" argument so take a const-pointer in it. See #11431.

2010-11-07 15:00 VZ, revision 66057

Mention the GUI test in the unit test tech note. Update the tech note to mention the (relatively) new GUI test program too. See #11431.

2010-11-07 15:00 VZ, revision 66056

Update and reorganize XRC overview to make it more useful. Emphasize the parts most useful for the new users instead of more advanced concepts and generally make the text more readable. Closes #12661.

2010-11-07 14:44 PJC, revision 66055

Add support for toggle buttons to wxRibbonButtonBar.

2010-11-07 14:16 VZ, revision 66054

Fix build with Borland C++ compiler. Disable some parts of the code that this compiler had problems with. Add parentheses to work around its bugs elsewhere. Closes #12558.