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):

2012-10-28 02:08 VZ, revision 72807

Implement image support for wxNotebook pages in wxOSX/Cocoa. This currently doesn't work correctly for left/right orientations but at least it does work for the default top (and also bottom) one. Closes #12754.

2012-10-28 02:08 VZ, revision 72806

Fix taskbar sample compilation under wxOSX/Cocoa. Use wxTBI_XXX constants instead of wxTaskBarIcon::XXX ones which don't seem to exist any longer. See #11831.

2012-10-28 02:08 VZ, revision 72805

Fix the pages range in the print dialog in wxOSX. Set the min/max pages earlier for them to be taken into account and also actually do set them in the print settings. Closes #8349.

2012-10-27 14:28 VZ, revision 72803

Another attempt to fix wxTextMeasure compilation with VC6. Simply make the methods accessed by the nested class public.

2012-10-27 14:28 VZ, revision 72802

Allow using wxTextMeasure::GetLargestStringExtent() with wxArrayString. Change the signature of this method to take the number of strings and the pointer to the first of them instead of wxVector<wxString> as this allows it to be used with all of wxVector<wxString>, wxArrayString and raw arrays of wxStrings. Also return the computed size from it instead of filling output parameters. Closes #14781.

2012-10-27 14:27 VZ, revision 72801

Allow wxTextMeasure to work with non-native wxDC objects too. Just forward back to wxDC itself in this case instead of using the platform-specific code in wxTextMeasure that only works with native DCs. See #14781.

2012-10-27 14:27 VZ, revision 72800

Fix warning about signed/unsigned comparison in wxFile::ReadAll(). Compare ssize_t value with another ssize_t value instead of size_t one to avoid warnings.

2012-10-27 14:27 VZ, revision 72799

Just fix header comments of wxTextMeasure-related files, no real changes. See #14781.

2012-10-27 07:51 PC, revision 72798

redo r72781 in a way that preserves binary compatibility, closes #14525

2012-10-27 05:15 RD, revision 72788

Add missing WXK constants for the control keys

2012-10-27 05:15 RD, revision 72787

Generate the interface file for STC from gen_iface too.

2012-10-27 03:27 VZ, revision 72786

Fix incorrect libraries in the documentation. Use wxcore for the GUI classes that were mistakenly documented as belonging to the wxbase library. Closes #14783.

2012-10-27 03:27 VZ, revision 72785

Add wxAuiToolBar::Create(). Implement two-step creation of wxAuiToolBar to allow doing it from XRC. See #13520.

2012-10-27 03:27 VZ, revision 72784

Renamed file containing wxAuiToolBar documentation. The real header is called wx/aui/auibar.h, not wx/aui/toolbar.h.

2012-10-27 03:27 VZ, revision 72783

Fix PCH-less build after previous commit. Need to include wx/window.h now that wx/animate.h is not included any more.

2012-10-27 02:46 VZ, revision 72782

Break implicit dependency of "core" on "adv" via wxXmlResourceHandlerImplBase. wxXmlResourceHandlerImplBase::GetAnimation() returned wxAnimation by value which created references to wxAnimationCtrlNameStr and wxNullAnimation symbols, defined in the "adv" library, in "core" when using Sun CC even though they were not referenced directly. Fix this by returning wxAnimation by pointer to keep it opaque for "core" code.

2012-10-26 18:32 PC, revision 72781

Store the selected directory in wxGTK wxDirDialog, fixes #14525

2012-10-26 01:55 VZ, revision 72780

Compilation fix for STL build after the last commit. Add missing fn_str() call.

2012-10-26 01:26 VZ, revision 72779

Store the selected directory in wxGTK wxDirDialog. This should help with the selected directory not being remembered since GTK+ 2.24.11 as apparently gtk_file_chooser_get_filename() doesn't work any more now after hiding the dialog -- so call it before doing this and save the result. Also get rid of the ugly and apparently completely unnecessary OnFakeOk(). Closes #14525.

2012-10-26 01:26 VZ, revision 72778

Prevent pasting too much text into limited length wxTextCtrl in wxGTK. Improve insert-text signal handler to block pasting text into the control, which may overflow the specified max length in one action, and not only entering individual characters. See #3158.

2012-10-26 00:30 VZ, revision 72777

Make wxFILE_EXISTS_SYMLINK work on its own, without wxFILE_EXISTS_NO_FOLLOW. Include the wxFILE_EXISTS_NO_FOLLOW bit in wxFILE_EXISTS_SYMLINK definition to allow using just wxFileName::Exists(wxFILE_EXISTS_SYMLINK) which used to never work because the link was followed. Closes #14777.

2012-10-26 00:19 VZ, revision 72776

Include wx/xml/xml.h from the XRC handlers that need it. Including this header from wx/xrc/xmlres.h itself only when WXMAKINGDLL_XRC is defined doesn't work when we're building a static library and not a shared/DLL one and we don't have any symbol defined in this case, so just don't try to be smart and include this header from the files that need it. This fixes breakage of r72756.

2012-10-25 15:37 JS, revision 72775

Backported menu update event processing, but only in wxGTK if idle update processing is being used to work around the global menu not generating open events in Ubuntu Unity. This is the minimal code change to get idle processing working in wxGTK. You can either edit platform.h to switch on idle event processing, or set UBUNTU_MENUPROXY to 0 in your application before GTK+ initialisation, e.g. in your app class ctor, to switch off the global menu and avoid the bug.

2012-10-25 01:41 VZ, revision 72763

PCH-less build fix for DynamicLibraryTestCase. Include wx/log.h needed by wxLogWarning().

2012-10-25 01:40 VZ, revision 72762

Implement clipping in wxSVGFileDC. Support setting the clipping region and add update the documentation and the sample accordingly. Closes #14462.

2012-10-25 01:40 VZ, revision 72761

No real changes, just avoid unnecessary string operations in wxSVGFileDCImpl. Simply write string together instead of concatenating them during run-time. See #14462.

2012-10-25 01:39 VZ, revision 72760

No changes, just remove unused variable from wxSVGFileDCImpl. sWarn was never used, drop it. See #14462.

2012-10-25 01:14 VZ, revision 72759

Show some information about the environment in the unit tests. For now just show the system description and the locale, this should already be helpful for diagnosing some test failures.

2012-10-25 01:13 VZ, revision 72758

Test for the shared library existence in DynamicLibraryTestCase. Trying to understand why does the test fail in some build slaves builds.

2012-10-25 01:13 VZ, revision 72757

Add a missing test for wxHAS_CALL_AFTER in the implementation too. This completes the changes of r72743.

2012-10-24 20:34 VZ, revision 72756

Try to avoid accidental use of wxXmlNode in XRC handlers. Now that the handlers can be defined outside of the XRC library, we can't use wxXmlNode in them because this would create an (unsatisfied) link dependency on the xml library. To avoid this happening accidentally, don't include wx/xml/xml.h from the XRC header, unless building the xrc library itself.

2012-10-24 20:33 VZ, revision 72755

Disable dropdown menu support in wxRibbonXmlHandler. The code handling it uses wxXmlNode directly as it's written now which isn't allowed as it introduces a dependency of ribbon library on the xml one and so currently breaks linking of the ribbon DLL under MSW. See #12058.

2012-10-24 20:22 VZ, revision 72754

Don't call wxSafeYield() from wxGenericListCtrl::EditLabel(). This could result in wxYield() reentrancy and while it could be avoided by using wxSafeYield(NULL, true /* only if needed */) it seems that we don't actually need to yield here at all and a simple Update() should be enough. Closes #14727.

2012-10-24 20:22 VZ, revision 72753

Don't iterate over files in wxFileSystemWatcherBase. We ignore the files anyhow when recursively adding watches for the entire tree, so don't include them in the iteration. See #14543.

2012-10-24 20:21 VZ, revision 72752

Remove wxAUI dependency on wxXML as it doesn't depend on it. Don't include wxAUI -> wxXML dependency in the libraries diagram in the manual.

2012-10-24 20:21 VZ, revision 72751

Respect wxFileName::DontFollowLink() in wxFileSystemWatcher. Watch the link itself and not its target if DontFollowLink() had been called. Closes #14543.

2012-10-24 16:02 VZ, revision 72750

Make wxDateTime invalid after Set((time_t)-1) call. Closes #14776.

2012-10-24 16:02 VZ, revision 72749

Close wxLogWindow automatically if it's the last remaining TLW. Don't keep the application opened just because a log window is shown. Closes #14775.

2012-10-24 16:01 VZ, revision 72748

Add wxVector::assign(). Closes #14703.

2012-10-24 15:13 JS, revision 72747

Updated Lativan translation

2012-10-24 15:11 JS, revision 72746

Updated Latvian translation

2012-10-24 02:25 VZ, revision 72745

Don't use std::min(), it's not available everywhere. Fix compilation using Sun CC under Solaris.

2012-10-24 02:25 VZ, revision 72744

Don't use Shift-TAB in keyboard test. This key combination seems to be intercepted by GTK now for keyboard navigation purposes and we never get key up events for it. Just use a different key.

2012-10-24 02:17 VZ, revision 72743

Disable wxEvtHandler::CallAfter() for VC6, it's too broken for it. There is no clear way to implement wxRemoveRef() for VC6 so just disable it, and CallAfter() as it relies on it, for this compiler.

2012-10-24 01:58 VZ, revision 72742

Don't follow symlinks in wxFileName::Rmdir(wxPATH_RMDIR_RECURSIVE). Following symlinks, possibly leading outside of the directory being removed, is at best surprising and at worst dangerous, so don't do it and just mimic the behaviour of "rm -rf", i.e. remove everything inside this directory, including the symlinks themselves, but don't follow them. Closes #14649.

2012-10-24 01:57 VZ, revision 72741

Mention wxFILE_EXISTS_NO_FOLLOW in wxFILE_EXISTS_SYMLINK description. Using wxFILE_EXISTS_SYMLINK without wxFILE_EXISTS_NO_FOLLOW can only be fruitless, so mention that they should normally be used together in the documentation. An alternative solution would be to always add wxFILE_EXISTS_NO_FOLLOW automatically if wxFILE_EXISTS_SYMLINK is used, perhaps we should do this instead. See #14542.

2012-10-24 01:57 VZ, revision 72740

Add wxDIR_NO_FOLLOW flag for wxDir iteration. This flag allows to avoid following the symbolic links during the directory traversal. In particular, this means that links to the directories (potentially outside the directory being traversed) are not considered as directories at all when it is used, potentially avoiding surprises. Closes #14542.

2012-10-24 01:57 VZ, revision 72739

Change the way directory iteration flags are constructed. Instead of explicitly constructing the flags from the flags that should be included, construct them by excluding the flags that shouldn't be used. This makes the code more stable in the sense that it will continue to work when new flags, such as the upcoming wxDIR_NO_FOLLOW, are added. See #14542.

2012-10-23 22:48 JS, revision 72738

We need to generate an event even if the value is the same else combobox event-ignoring behaviour breaks and a combobox in a property editor (for example) can fail to respond to the first key press.

2012-10-23 19:29 PC, revision 72737

non-pch build fix

2012-10-23 19:28 PC, revision 72736

Minor changes to some comments remove ambiguous "only" procession --> processing

2012-10-23 16:30 VZ, revision 72731

Fix for PCH-less compilation of wxRibbonXmlHandler. Need to have wxMenu declaration in order to wxDynamicCast() to it.

2012-10-23 16:03 VZ, revision 72730

Guard gmake-specific syntax with IF_GNU_MAKE in make_dist.mk. Debian distribution target uses GNU make extensions to make syntax which makes the entire makefile impossible to use with other make versions, e.g. Solaris make. Fix this by prepending IF_GNU_MAKE to all Debian-specific lines, there should be never any need to use them with non-GNU make.

2012-10-23 15:52 VZ, revision 72729

Add support for wxRibbonBar and related controls to XRC. Add wxRibbonXmlHandler and an example of using it to the xrc sample. Closes #12058.

2012-10-23 15:51 VZ, revision 72728

Add support for wxAuiNotebook to XRC. Add wxAuiNotebookXmlHandler to "aui" library, now that we can do it without adding a dependency of it on "xrc" one. Closes #10889.

2012-10-23 15:51 VZ, revision 72727

Refactor wxXRC to allow defining handlers outside of xrc library. Split wxXmlResourceHandler into an ABC and the real implementation to allow referencing the ABC in the core library itself but without pulling in all of the XRC into it. This also allows defining XRC handlers, which only depend on this ABC and not the xrc library, in other libraries, such as richtext, as demonstrated by the now enabled wxRichTextXMLHandler. Closes #10996.

2012-10-23 15:51 VZ, revision 72726

Define WXDLLIMPEXP_FWD_RIBBON for consistency with all the other libraries. We defined only WXDLLIMPEXP_RIBBON but not the FWD version, do add it now.

2012-10-23 14:06 VZ, revision 72725

Recognize more XRC elements as containing translatable strings. This allows to translate the text of these elements in wxrc-generated code using gettext. Closes #14765.

2012-10-23 14:03 VZ, revision 72724

Add a simple unit test for wxRegion::Intersect(). Check that Intersect() returns true, yet the intersection is empty.

2012-10-23 14:02 VZ, revision 72723

Process pending events from wxYield() in wxGTK. Calling wxYield() is supposed to process the pending events but it didn't, any more, in wxGTK. Restore this by explicitly calling ProcessPendingEvents() from wxGTK wxYield() implementation as wxGUIEventLoop::ProcessIdle() does not call it, in spite of a comment to the contrary in the sources. Closes #14760.

2012-10-23 14:02 VZ, revision 72722

Add wxEvtHandler::CallAfter() for asynchronous method calls. Add wxAsyncMethodCallEvent that is handled simply by calling the method this event was created for and add default handler for this event to wxEvtHandler. Implement CallAfter() overloads for up to 2 parameters only for now.

2012-10-23 14:02 VZ, revision 72721

Add wx/meta/removeref.h header defining wxRemoveRef<> helper. This is a very simple template allowing to remove the reference from the given type, similar to std::remove_reference<>.

2012-10-22 23:46 VZ, revision 72720

Fix border size computation in wxAuiTabArt. Space was reserved for the borders even when it wasn't filled, resulting in visual artefacts. Fix this by virtualizing the function returning the additional space needed for the borders and only overriding it to return non zero in wxAuiGtkTabArt. Closes #14710.

2012-10-22 17:51 VZ, revision 72719

Set C++ global locale too in wxAppTraitsBase::SetLocale(). Ensure that C++ locale matches the C one, otherwise operations on C++ streams may get much slower because some implementations (notable MinGW-64) change and reset the C locale on every function call in this case.

2012-10-22 17:51 VZ, revision 72718

Revert accidental incompatible change to wxFileName::DirExists(). The non-static version tests for the existence of the directory part of the object only as is explicitly mentioned in the documentation, so do the test on GetPath() and not GetFullPath() as we did since r72707. Also add a unit test for this behaviour. Closes #14771.

2012-10-22 13:21 VZ, revision 72717

Ensure the correct cleanup order for GDI+-related modules in wxMSW. GDI+ DLL could be unloaded by wxGdiPlusModule before wxGDIPlusRendererModule:: OnExit() was called, resulting in a crash when trying to call a GDI+ function from the latter. Fix this by adding a correct dependency between the modules. Closes #14769.

2012-10-21 22:48 VZ, revision 72716

Remove unnecessary SetInitialSize() from wxGTK wxComboBox::Create(). SetInitialSize() is already done by PostCreation() called just above, no need to call it twice.

2012-10-21 22:33 SJL, revision 72715

Explicitly unregister custom wxWebViewIE namespaces when we are done with them. Also add a missing ClassFactory::AddRef. Closes #14749

2012-10-20 16:49 VZ, revision 72714

Check the return value of system() and pipe() in the test suite. This is mainly to avoid -Wunused-result warnings under recent Linux systems but also could give valuable information if the call does fail.

2012-10-20 16:48 VZ, revision 72713

Fix tests compilation in STL build after r72707. Add an explicit call to wxString::c_str() as there is no implicit conversion in STL build.

2012-10-20 14:04 VZ, revision 72712

Nepali translation update from Him Prasad Gautam.

2012-10-20 00:03 VZ, revision 72711

Update header control when wxPropertyGridManager is resized. Closes #14762.

2012-10-20 00:03 VZ, revision 72710

Allow specifying all wxFlexGridSizer parameters in XRC. Add support for specifying flexible direction, grow mode in non-flexible direction and row/column proportions for the growable ones. Closes #14767.

2012-10-20 00:03 VZ, revision 72709

Add more error checks to XRC handler for longs, doubles and fonts. Verify that the values in the XRC really conform to the expected type. Closes #14766.

2012-10-20 00:02 VZ, revision 72708

Add missing styles support to wxWindow XRC handler. wxBORDER_RAISED, wx[HV]SCROLL and a few extended styles were not recognized. See #14766.

2012-10-20 00:02 VZ, revision 72707

Allow testing for existence of specific file types in wxFileName. Add "flags" parameter to wxFileName::Exists() to allow testing for the existing of files of specific type: not only regular or directory but also symlink, device, FIFO or socket. And also to pass wxFILE_EXISTS_NO_FOLLOW flag inhibiting following the symlinks without using DontFollowLink(). Closes #14542.

2012-10-19 13:06 VZ, revision 72706

Remove assert checking for valid font in wxMSW wxDC::GetTextExtent(). It wasn't there before wxTextMEasure changes and it doesn't seem obvious why should it be there, it should be possible to measure the text using the default wxDC font without setting one explicitly.

2012-10-19 12:43 VZ, revision 72705

Declare MeasuringGuard as friend in wxTextMeasureBase. This should hopefully fix VC6 compilation.

2012-10-19 12:42 VZ, revision 72704

Invalidate wxGrid best size when the grid is changed. Don't keep using the cached best size if rows/columns are added/removed to/from wxGrid or resized, doing this meant that we always used the first computed best size which was way too small after adding rows/columns to the grid. There could be more places where the grid best size may need to be invalidated but this should be a good start. Closes #14761.

2012-10-19 01:41 VZ, revision 72703

Fix bug in wxFileName::Exists("/"). Don't remove too many trailing slashes, the lone slash of "/" should remain.

2012-10-18 20:35 RD, revision 72702

non-pch build fix

2012-10-18 07:06 PC, revision 72701

non-pch build fix

2012-10-18 01:06 VZ, revision 72700

Fix crash in wxDC::GetMultiLineTextExtent() after last commit. Don't call wxTextMeasure::DoGetTextExtent() with NULL width pointer, it now supposes that both width and height pointers are non-NULL. Add at least a trivial unit test for GetMultiLineTextExtent().

2012-10-18 00:35 VZ, revision 72699

Factor out text measurement from wxDC and wxWindow into wxTextMeasure. Add a new private wxTextMeasure class implementing methods for measuring text and move the often duplicated (but not always identically) code for doing the same from wxDC and wxWindow into it. Currently this class is only really implemented in wxMSW and wxGTK. Also extend the test for text measuring functions and rename it to MeasuringTextTestCase from MeasuringContextTestCase as it's not wxGC-specific any more. Closes #14705.

2012-10-18 00:35 VZ, revision 72698

Remove unused code from MeasuringContextTestCase. m_win variable was never used and setUp() and tearDown() were simply not needed here.

2012-10-17 18:44 VZ, revision 72697

Fix wxGrid editors background painting. There were two fundamental problems: first, we painted on a separately created wxClientDC instead of using the wxPaintDC already available in wxGrid. Second, we invalidated the control while painting, resulting in endless repainting, at least under wxGTK. Fix the first problem by passing wxDC to wxGridCellEditor::PaintBackground() and the second one by not refreshing the control from there as it just seems unnecessary. Also pass the attribute by reference for consistency with wxGridCellRenderer::Draw() and because this pointer can never be NULL. Closes #2628.

2012-10-17 18:23 PC, revision 72696

Disconnect all GTK signals referencing a wx object which is being destructed or which is destroying the associated GTK object

2012-10-17 17:45 VZ, revision 72695

Make wxFindReplaceData accessors const. Closes #14755.

2012-10-17 02:24 VZ, revision 72694

Added buildbot slave configuration for brandt64. New 64 bit build slave ran by Gerald Brandt with just a couple of builds for now.

2012-10-17 00:28 VZ, revision 72693

Add wxEvent::GetEventUserData() and improve user data documentation. Provide a public and documented accessor for wxEvent::m_callbackUserData. Also document better the user data semantics and how it can be used. Closes #14748.

2012-10-17 00:28 VZ, revision 72692

Define CLSID_DragDropHelper ourselves to fix VC6 build. VC6 SDK doesn't define CLSID_DragDropHelper constant neither, so do it ourselves too to complete the changes of r72673. Closes #14697.

2012-10-16 20:05 PC, revision 72691

fix crash in wxWindowGTK::GTKHandleUnrealize(), closes #14752

2012-10-16 16:06 VZ, revision 72690

Use the correct window as parent of wxInfoBar close button. Fix breakage of r72474 that used the parent window instead of wxInfoBar itself as the parent of its close button. Closes #14750.

2012-10-16 16:02 VZ, revision 72689

Improve inotify()-based wxFileSystemWatcher to handle creation/deletion. Handle creation and deletion of directories under the watched path better. See #14544.

2012-10-16 16:02 VZ, revision 72688

Add a debug helper to show information about a GtkWidget under gdb. For now just give its type which is not exactly exhaustive but better than nothing.

2012-10-16 16:01 VZ, revision 72687

Correct example of handling property values changes in the docs. "." was incorrectly used with a pointer, replace it with a "->".

2012-10-15 03:17 VZ, revision 72686

Correctly document the library the classes belong to. Many classes were documented as being in a wrong library, mostly a lot of wxbase vs wxcore confusion but we even managed to document wxAuiManager as being in wxbase. Correct all this. Closes #14745, #14747.

2012-10-15 03:13 VZ, revision 72685

Make help strings for --enable-webview* configure options match their names. The options didn't have the underscore shown in the help message, so remove the underscore (while it could be argued that underscore makes the option names more readable, it seems better to preserve the existing names for compatibility).

2012-10-15 03:10 VZ, revision 72684

Mention David Hart bug fixes in wxFileSystemWatcher. See #14488, #14490, #14544.

2012-10-15 03:10 VZ, revision 72683

Handle deletion of watched directories in wxFileSystemWatcher sample. Don't assert when trying to stop watching a directory that doesn't exist any more later. See #14544.

2012-10-15 03:09 VZ, revision 72682

Fix bug in Unix wxFileSystemWatcher implementation when watch is deleted. Don't assert when removing a watch descriptor from the stale descriptors list. See #14544.

2012-10-15 03:09 VZ, revision 72681

Check for filespec when generating events in wxFileSystemWatcher. Instead of setting watches on individual files when a non-empty filespec is given, always watch all the files but just ignore the events from the ones not matching the filespec. This makes the code simpler and fixes several bugs. See #14544.

2012-10-15 03:09 VZ, revision 72680

Add support for symlinks to wxFileName. Allow to work with the symlinks themselves and not the file they reference by calling the new wxFileName::DontFollowLink(). Update Unix wxDir implementation to not treat symlinks to directories as directories, this ensures that we don't recurse into the directories outside of the original parent accidentally. Closes #14542.

2012-10-15 03:08 VZ, revision 72679

Make wxFileSystemWatcher watch entries reference-counted. This helps to avoid problems that arise from watching the same physical file system path multiple times, which could happen when adding a watch for a path already watched because of a recursive watch on a parent directory, for example. Closes #14490.

2012-10-15 03:08 VZ, revision 72678

Improve handling of file spec in wxFileSystemWatcher::AddTree(). Fix watching too many files (i.e. even those not matching the provided spec) and asserts when removing a recursive watch with a file spec in wxMSW. Closes #14488.

2012-10-14 21:30 VS, revision 72677

anybutton.cpp compilation fix for wxUSE_IMAGE=0. Disabled bitmaps are not rendered properly in this configuration, they look the same as normal ones. This is hardly ideal, but such degradations are to be expected when disabling something as widely used as wxImage.

2012-10-14 21:15 VS, revision 72676

Compilation fix - wx/vector.h is not part of PCH.

2012-10-14 21:14 VS, revision 72675

wxDisplay only needs dynlib.h, not dynload.h.

2012-10-14 16:55 VZ, revision 72674

Make GetClippingBox() work for wxPrinterDC in wxGTK. GetClippingBox() implementation relies on wxDCImpl::m_clip[XY][12] being updated in DoSetClippingRegion() but this wasn't done here. Fix this by adding the code to do this to the base class version of this method and calling it from wxGtkPrinterDCImpl. Also, refactor wxGCDCImpl to reuse the same code instead of duplicating it. Closes #14697.

2012-10-14 16:42 VZ, revision 72673

Provide stand-in IDropTargetHelper definition to fix VC6 build. VC6 SDK doesn't define this interface, so do it ourselves to fix its build after the changes of r72668. See #14697.

2012-10-14 00:55 VZ, revision 72672

Make TAB behaviour in wxGrid more configurable. Allow making TAB/Shift-TAB wrap to the next/previous row or going to the next/previous control when the cursor is at the end/beginning of the current row easily. Also add wxEVT_GRID_TABBING event to allow customizing TAB behaviour even further. Update the sample to show the different possible standard behaviours and a stupid example of a custom one (it would be probably more useful to implement something a tad more realistic, e.g. tabbing to the next non-empty cell). Closes #14711.

2012-10-14 00:54 VZ, revision 72671

Just correct the path in the header comment. Add the missing "private" path component.

2012-10-14 00:54 VZ, revision 72670

Document that HasFocus() is new in 2.9. Closes #14740.

2012-10-14 00:54 VZ, revision 72669

No changes, just update a comment about default buttons in wxMSW. Remove the TODO from it because it's not really obvious if using the proposed approach is such a good idea.

2012-10-14 00:53 VZ, revision 72668

Display system-provided drag images during drag-and-drop in wxMSW. This is especially useful when dragging files from Explorer as it provides big, informative drag images for them that can be easily displayed using Windows shell support for them. See #14697.

2012-10-14 00:53 VZ, revision 72667

Use a "hidden" dialog, not frame, in sync wxExecute() hack in wxMSW. Replace a "hidden" (not really, but shown far off screen) frame with a dialog to avoid this frame appearing in the Alt+TAB list. Closes #13251.

2012-10-14 00:52 VZ, revision 72666

Set the standard sample icon for the exec sample. Do this for consistency with all the other ones and also because it makes it simpler to notice any unwanted icons for hidden windows created by this sample. See #13251.

2012-10-14 00:52 VZ, revision 72665

Freeze wxTreeCtrl in wxMSW by hiding it. This is far from perfect but better than alternative as freezing this control by sending WM_SETREDRAW to it can result in completely broken behaviour as explained in http://support.microsoft.com/kb/130611. And not freezing it at all shows horrible flicker when adding even a relatively small number of items at once to the control because it recalculates and repositions its scrollbars after every parent node addition.

2012-10-14 00:52 VZ, revision 72664

Set wxTAB_TRAVERSAL for wxNavigationEnabled<> windows with focusable children. We need to have this flag under wxMSW in order for navigation events to be generated for the window. As wxNavigationEnabled can't set this flag on creation because its ctor is called too early, do it in overridden AddChild(). Closes #13271.

2012-10-14 00:51 VZ, revision 72663

Allow using windows that can't be focused with wxNavigationEnabled<>. The code in wxNavigationEnabled<> assumed that the window itself could be focused if it didn't have any focusable children because it was originally extracted from wxPanel that can, indeed, be focused. This is however not the case for all windows, notably not for wxStaticBox which now derives from wxNavigationEnabled as well but can never be focused itself. Add wxControlContainer::DisableSelfFocus() and call it from wxStaticBox to support this situation. This required splitting m_acceptsFocus flag into m_acceptsFocusSelf and m_acceptsFocusChildren and updating various methods using them. See #13271.

2012-10-14 00:51 VZ, revision 72662

Use WS_EX_CONTROLPARENT for wxStaticBox in wxMSW. This doesn't change anything currently but it seems correct to use this style with wxStaticBox as it can now contain other windows (and so be "control parent"), so it could allow Windows or other programs checking for this style to handle it more correctly.

2012-10-14 00:51 VZ, revision 72661

Remove unused wxNavigationEnabled::AcceptFocus() method. This doesn't seem to be ever called or used from anywhere else.

2012-10-14 00:50 VZ, revision 72660

Document wxListBox limitation concerning TAB characters. TABs appear simply as a space under MSW (because we don't use LBS_USETABSTOPS style there) but are aligned to (multiple of 8?) tab stops under GTK. It's not clear which behaviour is actually preferable so for now just document the inconsistency and advise people to use spaces instead.

2012-10-14 00:50 VZ, revision 72659

Remove mention of "listbox callback" from wxListBox documentation. This is probably a left over from wxWidgets 1.x.

2012-10-14 00:49 VZ, revision 72658

Improve explanation of maximal number of wxListBox items in the documentation. Don't say that it's limited -- because, strictly speaking, it isn't -- but mention other controls that are better alternatives for large numbers of items.

2012-10-14 00:49 VZ, revision 72657

Do give focus to the wxNotebook page when switching to it under MSW. Switching to the page but keeping the focus on the notebook itself makes it difficult to use the UI from keyboard and is inconsistent with the behaviour of native property sheets. Do restore the code to set the focus to the page as the bug that resulted in a wrong radio button being selected when we did this was apparently fixed elsewhere in the meanwhile because it doesn't happen any more even with this change. See #2268.

2012-10-12 20:45 VZ, revision 72656

Tamil translations update from DINAKAR T.D.

2012-10-12 00:29 VZ, revision 72655

Document default argument value of wxListCtrl::EnableBellOnNoMatch(). In addition to forgetting to specify the default value in wxGenericListCtrl, it was also not documented, do it now to complete the fix of r72654.

2012-10-11 14:41 VZ, revision 72654

Use "true" by default in wxGenericListCtrl::EnableBellOnNoMatch(). The changes of r72639 mistakenly omitted the default value for EnableBellOnNoMatch() argument in this class (although it was present in the base class and in wxGenericTreeCtrl), fix this.

2012-10-11 13:15 JJ, revision 72653

Update setup.h for OpenVMS

2012-10-10 20:47 VZ, revision 72652

Mention InvalidateBestSize() in DoGetBestClientSize() documentation. It is not obvious that it needs to be called when the best size changes, so give at least a hint.

2012-10-10 17:45 JS, revision 72651

Don't write text if it's empty

2012-10-10 17:43 JS, revision 72650

Don't write text if it's empty

2012-10-09 23:28 VZ, revision 72649

Do return the protocol part from GetLocaltion() for local wxFSFiles. wxLocalFSHandler created wxFSFile without the protocol information which means that calling GetLocaltion() on this file later doesn't return it, contrary to the documentation. Do include the protocol to fix this. Closes #14638.

2012-10-09 23:02 VZ, revision 72648

Generate text events in generic wxSpinCtrl itself. The text events in a wxSpinCtrl should originate from the control itself but they were just propagated upwards from wxTextCtrl embedded into it and hence had wrong event object and event ID fields. Fix this by making EVT_TEXT come from wxSpinCtrl itself, in addition to EVT_TEXT_ENTER ones which we already forwarded like this.

2012-10-09 23:01 VZ, revision 72647

Copy wxCommandEvent string explicitly in its copy ctor. Due to the optimization used in wxCommandEvent::GetString(), which returns the string from the text control that generated the event only if it's really needed, wxCommandEvent::m_cmdString field may be empty even when it does have an associated string. As we lose the possibility to retrieve the value on demand from wxTextCtrl when we make a copy (because it can be associated with a different object), we need to explicitly copy the string to avoid losing this data entirely. This fixes GetString() value for the text events generated by generic wxSearchCtrl.

2012-10-09 23:01 VZ, revision 72646

Fix printing in landscape mode in wxGTK. Only apply Cairo transforms in StartPage(), doing it earlier interferes with the code doing the coordinate system rotation inside GTK+ itself when a non-portrait printing mode is used. Closes #14732.

2012-10-09 06:01 PC, revision 72645

backport r69863 "Don't include pbt.h from wxMSW code unnecessarily"

2012-10-08 14:09 VZ, revision 72643

Document wxGrid methods dealing with cell overflow. Closes #14733.

2012-10-08 14:09 VZ, revision 72642

Recreate GtkPrintOperation every time when printing in wxGTK. Apparently reusing GtkPrintOperation is not allowed, so create a new one every time we need it. Closes #14731.

2012-10-08 14:09 VZ, revision 72641

Improve wxAuiNotebook appearance when using some GTK themes. Let wxAuiNotebook render the border itself, instead of doing it in dock art class. This allows the notebook to do it correctly for the current theme. Closes #14710.

2012-10-08 00:42 VZ, revision 72640

Ensure that key events are sent to focused window first in wxGTK. Start processing key events from the currently focused window, this ensures that its key event handlers are tried before the top level window accelerators. This is consistent with wxMSW and allows a window to locally override the global accelerators which really makes sense. Closes #14553.

2012-10-08 00:42 VZ, revision 72639

Implement incremental search in wxGenericListCtrl. Mostly copy wxGenericTreeCtrl incremental search implementation to wxGenericListCtrl (unfortunately there is no simple way to reuse this code currently), including the recently added EnableBellOnNoMatch() method. Update the sample to test it, the key event handling in it had to be modified to allow it.

2012-10-08 00:42 VZ, revision 72638

Add a possibility to beep on no match to wxGenericTreeCtrl. For consistency with Windows, allow to optionally generate a beep when incremental search in the tree control doesn't find anything.

2012-10-08 00:41 VZ, revision 72637

Fix return value of wxGenericTreeCtrl::FindItem(). We incorrectly returned the item we started from instead of invalid item if there was no match, fix this.

2012-10-08 00:41 VZ, revision 72636

Handle successive key presses better in wxGenericTreeCtrl search code. Go to the next item starting with the given character if the same one is pressed multiple times. This is more useful than searching for an item starting with multiple occurrences of this character (which usually won't exist) and is more consistent with how Windows handles this.

2012-10-08 00:40 VZ, revision 72635

Recognize "_" as alphanumeric key in wxGenericTreeCtrl find item code. Items can have underscores in their names too, not just letters and digits.

2012-10-08 00:40 VZ, revision 72634

Fix spurious label editing in generic wx{List,Tree,DataView}Ctrl. Clicking on the control to give it focus must not start editing the label of an item in it, this is bad UI as you need to carefully select where do you click to avoid starting to edit the label and nobody else does it like this (probably because of the former reason). As a side note, it would be really great to abstract the item handling in a class that could be reused by all these controls instead of having to update 3 slightly different versions of the same code every time.

2012-10-08 00:40 VZ, revision 72633

Don't set focus explicitly in wxGenericListCtrl mouse handling code. Just skip the event to allow the system to set the focus to the control itself. This is more consistent with the other controls and should result in correct behaviour everywhere automatically.

2012-10-08 00:39 VZ, revision 72632

Don't set focus to generic wxDataViewCtrl on any button press. Only set focus if the left button was pressed for consistency with just about everything else. Also, just skip the event instead of setting the focus explicitly.

2012-10-08 00:39 VZ, revision 72631

No real changes, just don't use brush styles for background mode in wxHTML. Use just wxTRANSPARENT and wxSOLID instead of wxBRUSHSTYLE_TRANSPARENT and wxBRUSHSTYLE_SOLID when changing the background mode. See #14599.

2012-10-08 00:38 VZ, revision 72630

Support some CSS styles for the links in wxHTML too. Refactor limited CSS styles support for <span> tag to reuse it for <a> tag as well. Closes #14599.

2012-10-08 00:38 VZ, revision 72629

Flush log messages from other threads on shutdown too. Add a call to wxLog::FlushActive() to the shutdown code as calling just wxLog::SetActiveTarget(NULL) is not enough, it flushes the current log target only but not the ones used by other threads. Closes #14595.

2012-10-08 00:38 VZ, revision 72628

Update the year in the copyright for wxMSW DLLs. Just s/2010/2012/

2012-10-08 00:37 VZ, revision 72627

Fix drawing of wxAuiNotebook with GTK theme when active tab is invisible. Draw a box using gtk_paint_box() for the tabs, without border for the active one to avoid an extra line across the gap, and with the border for the others. Closes #14728.

2012-10-08 00:37 VZ, revision 72626

Fix test for __WXGTK__ in wxCairoContext. It must be tested with #ifdef, not #if.

2012-10-07 18:49 VS, revision 72625

Fix wxGenericCollapsiblePane to expand frame's size. wxGenericCollapsiblePane::DoGetBestSize() is dynamic, returning different values for collapsed and open states. Therefore the control must invalidate best sizes cache every time its state changes.

2012-10-05 01:24 VZ, revision 72621

Add support for wxALWAYS_SHOW_SB style to wxScrolled<>. Simply call ShowScrollbars(wxSHOW_SB_ALWAYS) if this style is specified. Closes #13616.

2012-10-05 01:24 VZ, revision 72620

Document wxHSCROLL and wxVSCROLL styles for wxScrolled<>. Explain that by default both styles are assumed but that using just one of them disables the scrolling in the other direction.

2012-10-05 01:23 VZ, revision 72619

Add a setting for the disabled text colour to wxRibbon art. Allow specifying the text for the labels of the disabled items separately. Closes #14721.

2012-10-05 01:23 VZ, revision 72618

Add a more convenient wxColour::MakeDisabled() overload. Allow creating a disabled version of the colour without having to manually break it into RGB components and then recreating it from them.

2012-10-05 00:49 VZ, revision 72617

Remove unneeded variable initializations in wxPM code. Closes #14724.

2012-10-05 00:48 VZ, revision 72616

Fix bugs in the recently added wxDateTime::DiffAsDateSpan(). Correct the test for negative spans less than a month and use the correct month for computing the number of days in it. Also add unit tests for problematic cases. Closes #14704.

2012-10-05 00:48 VZ, revision 72615

Add wxDateSpan::GetTotalMonths() method. This is similar to the existing GetTotalDays() and counts both months and years. See #14704.

2012-10-05 00:47 VZ, revision 72614

Fix fatal bug in the recently added wxFile::ReadAll(). Make sure we exit the loop when reading the file in chunks in wxFile::ReadAll() and add a unit test for it to ensure that it's really correct. Closes #14725.

2012-10-04 18:08 PC, revision 72613

non-pch build fix

2012-10-04 17:58 PC, revision 72612

remove always-true comparison of unsigned value >= 0

2012-10-04 17:55 PC, revision 72611

silence warnings about shadowed variables with GCC -Wshadow

2012-10-03 10:32 VZ, revision 72610

Do use IsEscapeKey() in wxDialog escape key handling. This method was added back in r40686 but was never actually used anywhere. Do use it in wxDialogBase::OnCharHook() now instead of hard-coding the check for WXK_ESCAPE, this should allow using Cmd+. to work like Escape under Mac which was apparently the intention of the code in src/osx/dialog_osx.cpp. Also fix IsEscapeKey() itself to ignore any modifiers as at least under MSW Esc always closes the dialog, even if Shift or Alt is pressed.

2012-10-03 09:58 VZ, revision 72609

Add missing header to fix MiscGUIFuncsTestCase compilation. Need full wxPanel declaration here now.

2012-10-03 02:16 VZ, revision 72608

Fix wxFindWindowAtPoint() unit test to pass under GTK. We need to ensure that all windows are realized before querying their positions on screen, so add an extra wxYield(). Also adjust the tests slightly as the windows are now all created in the beginning of the function. Finally, use Destroy() instead of wxDELETE() for windows.

2012-10-03 02:16 VZ, revision 72607

Added a simple unit test for wxWindow::ClientToScreen(). Check that this function works consistently for the TLW and its children and grand-children.

2012-10-03 02:16 VZ, revision 72606

Avoid creating children of wxButton in MiscGUIFuncsTestCase. This doesn't work in wxGTK, use a normal wxWindow instead of wxButton in this case.

2012-10-02 18:19 PC, revision 72605

remove some unnecessary casts

2012-10-02 17:57 PC, revision 72604

make more Init() functions private

2012-10-01 12:47 VZ, revision 72603

Fix assert about passing long as "%d" in wxXRC code. Closes #14718.

2012-10-01 11:55 VZ, revision 72602

No changes, just remove some unneeded variables initializations. Closes #14716, #14717.

2012-10-01 11:55 VZ, revision 72601

Test for wxAuiMDIClientWindow being non-NULL before using it. wxAuiMDIParentFrame::GetActiveChild() may be called before the client window is created, don't crash in this case but just return NULL. Closes #14684.

2012-10-01 11:55 VZ, revision 72600

Add wxDateTime::DiffAsDateSpan(). This method returns the difference between the dates as wxDateSpan, unlike the existing Subtract() and overloaded operator-() that return wxTimeSpan. Closes #14704.

2012-10-01 11:40 VZ, revision 72599

Fix PCH-less build after the changes of r72589. Use wx{SOLID,TRANSPARENT} instead of wxBRUSHSTYLE_{SOLID,TRANSPARENT}. This makes more sense as we're setting background mode, not brush style, here and also fixed compilation when not using PCH.

2012-10-01 00:28 VZ, revision 72598

Read and write files using binary mode in wxStyledTextCtrl. Use binary mode to preserve the original file EOLs when loading it and also to save it with the same EOLs later. Add very primitive EOL auto-detection to LoadFile(). Also add SaveFile()/LoadFile() which were missing in !wxUSE_TEXTCTRL case.

2012-10-01 00:28 VZ, revision 72597

Small optimization of wxFFile::ReadAll(): avoid extra string copy. Use swap() to move the newly created string into its destination instead of copying it there. This can be relatively important as the string represents an entire file contents here and so could be quite long.

2012-10-01 00:28 VZ, revision 72596

Added wxFile::ReadAll() for consistency with wxFFile::ReadAll(). Make it possible to use wxFFile and wxFile interchangeably for simply reading the entire contents of the file as a string.

2012-10-01 00:27 VZ, revision 72595

Reimplement wxTextEntry::DoSetValue() in wxStyledTextCtrl. The version inherited from the base class does work already but calling Scintilla SetText() directly should be more efficient than selecting everything and then calling ReplaceSelection() as the base class version does, less code is executed.

2012-10-01 00:27 VZ, revision 72594

Fix wxStyledTextCtrl::WriteText() to replace the selection. WriteText() must replace the selection, not just insert the new text, otherwise SetValue() implementation inherited from the base class doesn't work as it doesn't clear the old contents of the control before adding new text to it.

2012-10-01 00:26 VZ, revision 72593

Don't call ClearAll() before LoadFile() in the stc sample. There is no need to clear the control contents before loading a file into it because LoadFile() is supposed to do this on its own (although currently it doesn't, which will be fixed soon).

2012-10-01 00:26 VZ, revision 72592

Make stc sample startup faster. Don't show "About" dialog on startup, this has nothing to do with the purpose of this sample and is just annoying. Also, don't select the entire file after opening it.

2012-10-01 00:21 VZ, revision 72591

Add per-direction wxSocket wait flags and byte counters. Allow to specify whether the socket should block until all the data is read or written or, on the contrary, avoid blocking only when reading or writing instead of always using the same behaviour in both directions. Also add separate counters for the bytes read/written instead of using the same one for both. These changes make it possible to use the same socket for reading/writing in different threads. Closes #14506.

2012-10-01 00:21 VZ, revision 72590

Don't crash in generic wxDataViewCtrl if it doesn't have any model. A model may be dissociated from a still existing control, don't crash if it happens (notice that we still would crash in the native GTK version right now, so this still remains to be fixed there). See #14616.

2012-10-01 00:20 VZ, revision 72589

Add support for background-color style to span element in wxHTML. Add code for setting/restoring background mode and use it to implement support for changing the text background colour. Closes #14443.

2012-10-01 00:20 VZ, revision 72588

Fix handling of spaces after <img> tag in wxHTML. Don't collapse the spaces following this tag with the ones preceding it. See #14557. Closes #2980.

2012-10-01 00:20 VZ, revision 72587

Convert image tags to text using their alt attribute in wxHTML. This is useful when copying wxHtmlWindow contents to clipboard, for example. Closes #14557.

2012-10-01 00:19 VZ, revision 72586

Fix handling of not fully specified min/max size in wxBoxSizer. wxSizerItem::AddBorderToSize() added in r72344 (see #11497) didn't work correctly as it replaced unspecified (i.e. set to -1) components of wxSize with the small positive values that did take effect, contrary to the intention. Fix it to only adjust the actually set component(s) of wxSize. Closes #14696.

2012-10-01 00:19 VZ, revision 72585

No changes, just fix some typos in comments in wxXRC code. Closes #14714.

2012-10-01 00:19 VZ, revision 72584

No changes, just remove unneeded variable initialization. Closes #14712, #14713.

2012-09-30 22:35 VZ, revision 72583

Revert "Don't use StringFormat::GenericTypographic() in MSW wxGraphicsContext." This reverts r72442 and restores the use of GenericTypographic string format for GDI+ text rendering. While it's true that using this flag with small font sizes results in pretty bad output, especially under Windows XP, not using it results in wrong text extent calculations for all sizes which is even worse. See #14537.

2012-09-30 22:35 VZ, revision 72582

Fix computation of menu button best size in generic wxSearchCtrl. Invalidate the cached best size when the bitmap changes. Closes #14708.

2012-09-30 22:35 VZ, revision 72581

Clear the search control automatically when it's "Cancel" button is pressed. This should be the desired behaviour in the vast majority of cases, so do it by default. Replace the useless OnSearchButton() doing nothing with search button events with OnCancelButton() handling cancel button events and clearing the control.

2012-09-30 22:34 VZ, revision 72580

Don't use text control foreground colour for generic wxSearchCtrl itself. Logically, it should be done in the other direction and also doing it like this means that the search and cancel icons, rendered using the current foreground colour, are barely visible when using generic wxTextCtrl::SetHint() implementation, as in wxGTK, because the text control foreground is set to light grey in this case.

2012-09-30 18:55 PC, revision 72579

make wxWindowGTK::Init() private, it is not meant to be called from derived classes

2012-09-30 04:33 RD, revision 72578

Use Refresh when the initial paint was abandoned by Scintilla so it will trigger a repaint of the whole window. This is done for things like style changes, word wrapping or brace highlights where more than the current line is affected. Fixes #14653.

2012-09-29 01:50 VZ, revision 72577

Fix generic wxSearchCtrl best size calculation. The best size of its text control part was not calculated correctly any more because a wrong best size was cached during wxSearchTextCtrl construction, when the final class overridden DoGetBestSize() was not called. Fix this by explicitly invalidating the best size at the end of constructor for now even though it would be arguably better to fix this in some way not requiring anything extra to be done to always take the overridden method into account, especially as it used to work before. But it's not clear how exactly to restore this so for now do at least fix wxSearchCtrl appearance. Closes #14708.

2012-09-29 01:50 VZ, revision 72576

Fix wxSearchCtrl recreation in the widgets sample. The control wasn't readded to the sizer correctly after being recreated.

2012-09-29 01:49 VZ, revision 72575

Remove unused SearchCtrlWidgetsPage::Reset() from widgets sample. This method was simply unused and unneeded.

2012-09-29 01:49 VZ, revision 72574

Don't send events for disabled ribbon bar buttons. Hover and activation events were sent even for the disabled buttons which was unexpected and inconsistent with wxRibbonToolBar, so don't do it. Closes #14709.

2012-09-29 01:48 VZ, revision 72573

Make wxHelpControllerBase::SetFrameParameters() title more clear. Describe it as "title format string" and call it "titleFormat" and not just "title" because this is what it is. Closes #14707.

2012-09-29 01:48 VZ, revision 72572

Add "inherit" to <font> XRC tag. This allows to construct a font based on the parent window font instead of either fully specifying all font parameters or basing it on a standard font. Closes #14632.

2012-09-29 01:48 VZ, revision 72571

Fix testing for existence of paths with trailing separators in wxMSW. We removed the trailing separators, that prevented GetFileAttributes() from working correctly, from the path but then didn't pass the modified path to it but the original one. Fix this and do use the updated path.

2012-09-28 18:09 PC, revision 72569

Avoid unrealizing a frozen window It seems to continue to prevent updates to the affected area Fixes #13543

2012-09-28 00:41 VZ, revision 72568

Make wxTextEntryDialog resizable. It can be used for entry of relatively long text now, especially when wxTE_MULTILINE flag is used, so allow the user to resize it to facilitate the entry. Closes #14702.

2012-09-28 00:41 VZ, revision 72567

Add two step creation to wxTextEntryDialog. Add Create() method and default ctor for consistency with the other classes. See #14702.

2012-09-28 00:41 VZ, revision 72566

Use SelectAll() instead of SetSelection(-1, -1). The former is more clear and also shorter. Closes #14701.

2012-09-28 00:40 VZ, revision 72565

Remove the now unnecessary wxRichTextCtrl::SelectAll(). It is already inherited from the base wxTextEntry class. See #14701.

2012-09-27 15:58 VZ, revision 72564

Fix _tputenv() return value test in wxSetEnv(). _tputenv() returns -1, not 0, on error, as all the other CRT functions, so the test added by r72496 resulted in wxSetEnv() and wxUnsetEnv() always failing when using MSVC.

2012-09-27 14:47 VZ, revision 72563

Account correctly for the controller when computing wxBookCtrl best size. We must not increase the total control size in the direction along the controller window as the size of the controller in this direction is determined by the size of the control itself. So doing this resulted in always increasing best size in this direction to be at least equal to the current size which was wrong. Closes #14496.

2012-09-27 14:47 VZ, revision 72562

Use wxSize::IncTo() in wxBookCtrlBase::DoGetBestSize(). No changes, just use an existing wxSize method instead of reimplementing it in the loop over the pages in wxBookCtrlBase.

2012-09-27 14:46 VZ, revision 72561

Avoid useless iteration on all pages in wxBookCtrlBase::DoGetBestSize(). If m_fitToCurrentPage is true, there is no need to iterate over all the pages computing their max best size only in order to overwrite it with the best size of the current page later. This doesn't result in any changes in the behaviour, just avoids useless best size computations.

2012-09-27 00:30 VZ, revision 72560

Do not unref GtkWidget of unattached wxMenuBar. This results in the destruction of the widgets of all of its menu and when wxMenu objects are themselves destroyed in the base class dtor, we try to destroy their already destroyed widgets, resulting in critical GTK warnings. Simply don't do anything in wxMenuBar dtor itself if the menu bar is not attached to a frame as the workaround was only needed in case of destroying attached menu bars.

2012-09-27 00:29 VZ, revision 72559

Fix GTK warnings when destroying unattached wxMenuBar. Reset m_focusWidget to NULL when destroying m_widget in wxMenuBar dtor, otherwise we try to use this already destroyed (because it's the same as m_widget) widget in wxWindow dtor later resulting in critical GTK warnings.

2012-09-27 00:29 VZ, revision 72558

Don't crash in wxMenuBar::Remove() if unattached in wxGTK. It should be possible to remove a menu from a menu bar even before it is attached to a frame without crashing.

2012-09-26 14:20 VZ, revision 72557

Update MSW installation instructions for 2.9. Remove all mentions of 16 bit build. Update the list of supported compilers and their versions. Update Unicode build description. Closes #11908.

2012-09-26 14:20 VZ, revision 72556

Merge "selected" and "active" child in wxAuiMDIParentFrame. They are one and the same thing and so just make them really synonymous instead of (unsuccessfully) trying to keep them synchronized. Closes #14684.

2012-09-26 01:53 RD, revision 72555

Reserve the whole style byte for styles. See #14688

2012-09-26 01:53 RD, revision 72554

Scintilla's Point class no longer matches the structure of wxPoint, so we need to copy points to a wxPoint array instead of just typcasting Scintilla's array. Fixes #14687

2012-09-25 22:40 BP, revision 72553

Fixed interface typo breaking wxRibbonBar docs (from r72495).

2012-09-25 20:01 PC, revision 72552

call Thaw() instead of DoThaw() so frozen status will be properly updated, and use a loop in case window has been frozen more than once

2012-09-25 19:55 PC, revision 72551

fix deleting a frozen multi-line wxTextCtrl, see #13543

2012-09-25 15:50 VZ, revision 72550

Attempt to fix wxHelpControllerBase::SetFrameParameters() documentation. Don't use "%s" in the brief comment, "%" is apparently not allowed there.

2012-09-25 15:08 SC, revision 72549

adding constants for newer OSX versions to make sure our conditional expressions are working with earlier SDKs

2012-09-25 12:50 VZ, revision 72548

Add wxGenericAboutDialog documentation. Closes #14660.

2012-09-25 12:50 VZ, revision 72547

Fix too hastily copy-pasted wxVariantDataSafeArray documentation. Some parts were not updated after copying them from wxVariantDataErrorCode. Closes #14689.

2012-09-25 12:49 VZ, revision 72546

Really fix stack dumps for asserts and wxStackWalker::Walk() calls. The code apparently tried to compensate for the wrong "skip" values used in the calls to wxStackWalker::Walk() by skipping too much in Walk() itself which was wrong as it dropped the frames that should have been shown. Fix this by skipping only the one extra (compared to Walk() itself) frame we add in wxStackWalker Unix implementation and not 3 of them and do skip more frames when calling Walk() from assert failure handlers. Also fix the wrong number of frames used in ProcessFrames(): we must not subtract the number of skipped frames, they were already skipped. Closes #14690.

2012-09-25 12:49 VZ, revision 72545

Use utf8_str(), not mb_str(), for strings passed to GTK+. All GTK+ strings must be encoded in UTF-8, not whichever encoding the current locale happens to use.

2012-09-25 12:48 VZ, revision 72544

Vietnamese translations update from Trần Ngọc Quân.

2012-09-24 00:49 VZ, revision 72543

Improve SAFEARRAY support in wxMSW OLE Automation code. Add a new wxSafeArray<> class wrapping SAFEARRAY. Also add support for converting VARIANTs containing other, previously unsupported, standard types. Closes #14637.

2012-09-24 00:49 VZ, revision 72542

Explain EVT_CONTEXT_MENU generation in more details. Document that you should not count on specific order of mouse right button and context menu events. Closes #12535.

2012-09-24 00:49 VZ, revision 72541

No changes, just reuse a bit of code in wxMSW wxMDIParentFrame. Call wxMDIChildFrame::Activate() instead of redoing the same thing. This also ensures that iconized MDI children are restored before being activated (see previous commit). See #13946.

2012-09-24 00:48 VZ, revision 72540

Restore an iconized MDI child frame when activating it. Without doing this activating an iconized frame doesn't do anything at all, i.e. doesn't present it to the user as presumably intended. Closes #13946.

2012-09-24 00:48 VZ, revision 72539

Correct best size computation for wxCheckBox with borders under MSW. As wxCheckBox can now have borders (see previous commit), we must override DoGetBestClientSize() and not DoGetBestSize() in it to take account of them.

2012-09-24 00:47 VZ, revision 72538

Respect styles translated to WS_EX_XXX in wxMSW wxCheckBox and wxRadioButton. Take into account the window styles that translate to extended Windows styles at MSW level. Also override MSWGetStyle() in these classes, just as in most (all?) other ones, for consistency instead of doing wx-to-MSW styles translation directly in Create(). Notice that as a side effect of this change, border styles now work for wxCheckBox which wasn't the case before. It's not clear if this is really wanted but OTOH there doesn't seem to be any real reason to forbid them neither. Closes #14674.

2012-09-22 18:16 VZ, revision 72537

Allow wxWrapSizer to request more size than it used previously. The code in wxWrapSizer::CalcMin() ensured that the sizer never requested more space than what it had been already given which, while clearly done intentionally, seems to be wrong because it can never end up with enough space for all its rows/columns unless it is set to up to expand in the containing sizer. In other words, the old code could return the size which was not enough to show the sizer contents fully which is against CalcMin() contract. Change this by simply removing the check for the new minimal size being less than the old one. This allows the wrap sizer demo in the layout sample to work correctly whereas before the sizer contents was completely invisible initially.

2012-09-22 18:16 VZ, revision 72536

Make wxWrapSizer demo in the layout sample more dynamic. Allow adding checkboxes to and removing them from the wrap sizer to demonstrate how it adjusts to its contents dynamically.

2012-09-22 18:16 VZ, revision 72535

Credit "sodev" with correct full name. Amend the change log entry of r71701. See #14380.

2012-09-21 12:26 VZ, revision 72534

Fix crash on wxMediaCtrl creation in wxMSW. A valid RECT pointer must be passed to DoVerb(OLEIVERB_INPLACEACTIVATE) but r72027 (see #14209) broke this and passed it NULL resulting in an instant crash. Revert this part of the change and do pass out window client area. Closes #14682.

2012-09-21 01:12 VZ, revision 72533

Fix wxPluginLibrary wxClassInfo pointers initialization. The values of m_ourFirst and m_ourLast were inversed in wxPluginLibrary ctor. Fix this and explain in a comment that "first" and "last" here refer to the order in the linked list and not the chronological order. Closes #14483.

2012-09-21 01:12 VZ, revision 72532

Fix wrong configure test for abi::__forced_unwind in previous commit. The previous commit was accidental and contained an initial version of the patch which didn't test for NPTL abi::__forced_unwind correctly and just tested whether cxxabi.h header was available. Tighten the check to work on the other systems and check for __forced_unwind existence itself. Also check for cxxabi.h before testing for __cxa_demangle as there is no need to try to compile another test program if we already know that this entire header is unavailable anyhow. See #14626.

2012-09-21 01:00 VZ, revision 72531

Rethrow abi::__forced_unwind in wxThread code under Unix. We must always rethrow the special abi::__forced_unwind exception when handling exception in threads under Linux as the NPTL simply terminates the process at first opportunity if this exception is not rethrown. See http://udrepper.livejournal.com/21541.html for more details. Closes #14626.

2012-09-21 00:15 VZ, revision 72530

Add public (but not documented) wxCheckBox::MSWMakeOwnerDrawn(). It can be useful to explicitly make a check box owner drawn, so make the private MakeOwnerDrawn() public and add "MSW" prefix to it to allow doing this from the user code. Closes #14679.

2012-09-20 22:02 VZ, revision 72529

Fix and enhance support for client data in wxRibbonButtonBar. Add the possibility to retrieve the client data associated with a button and not only set it (which wasn't very useful on its own). Also allow having both typed (owned) and untyped (not owned) client data, as in the other wxWidgets controls. To avoid confusion between two different kinds of data, remove "client_data" argument from the functions adding buttons and provide separate methods with distinct names for setting and getting client data. Closes #14630.

2012-09-20 22:02 VZ, revision 72528

Add wxRibbonButtonBarEvent::GetButton(). Allow to retrieve the button associated with the given button bar event. See #14630.