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

2014-09-23 19:39 VZ, revision 77766

in wxGTK, wxOSX/Cocoa, plus wxUniv, GetNumberOfLines() always returns the number of logical, not physical, lines. See #12366, maybe they did not test wxUniv at that time.

2014-09-23 19:39 VZ, revision 77765

wxUniv focus on wx11 port, so modified unv/theme.h, make GTK theme as the default theme

2014-09-23 19:39 VZ, revision 77764

add if preprocessor directive, if wxUniv build with MSW, include wx/stockitem.h, others are not. with x11 and this head file will cause error

2014-09-23 19:39 VZ, revision 77763

Add wx/stockitem.h to univ/button.cpp and univ/tglbtn.cpp, to fix wxUniv MSW complitaion error

2014-09-23 19:38 VZ, revision 77762

Click scrollbar will cause recapture mouse twice error, add check sentence before capture and release mouse in HandleMouse()

2014-09-23 19:38 VZ, revision 77761

Release the mouse and capture data at the end of the function. This was not always done before and it was wrong because other event such as mouse left up will not release mouse

2014-09-23 19:38 VZ, revision 77760

wxX11 wxFont miss the wxFont (const wxString &nativeInfoString) ctor, it will cause build tests failed. Added and fixed

2014-09-23 19:38 VZ, revision 77759

Refactor: create src/univ/anybutton.cpp. Extract and pull the common functions from wxButton and wxToggleButton to wxAnyButton in wxUniv too. Also make wxToggleButton inherit from wxToggleButtonBase correctly

2014-09-23 18:37 PC, revision 77758

cairo_image_surface_get_{width,height} have been available in cairo since version 1.0

2014-09-21 13:51 VZ, revision 77757

Fix wxCompositeWindow compilation after the latest change. SetSize() doesn't have any dependent parameters so call it via an explicit "this->" to make it work with standard conforming compilers (and not MSVC).

2014-09-21 03:41 VZ, revision 77756

Update layout of wxCompositeWindow on layout direction change. The children layout will almost always depend on the layout direction, so redo it when the latter changes. In particular, this fixes changing the layout of wxSpinCtrlDouble under MSW. See #11583.

2014-09-21 03:41 VZ, revision 77755

Fix setting layout direction for wxSpinCtrl in wxMSW. Position the spin control components (the button and the text) correctly for the current layout. Also update the layout of the text explicitly. See #11583.

2014-09-21 03:41 VZ, revision 77754

Fix setting layout direction for wxComboBox in wxMSW. The EDIT control used by the native combobox is different from normal EDIT controls and has to be handled specially. We also need to explicitly forward WS_EX_LAYOUTRTL to the dropdown window as it doesn't inherit it from the combobox itself automatically. See #11583.

2014-09-21 03:41 VZ, revision 77753

Don't leak global objects in Direct2D code. Ensure that all globals are freed on library shutdown by using a module just to perform this cleanup.

2014-09-21 03:41 VZ, revision 77752

Don't call CoInitializeEx() from Direct2D code. This is unnecessary, COM is already initialized on the application startup and Direct2D can't be used before that anyhow. This also fixes lack of matching CoUninitialize() call.

2014-09-21 00:12 VZ, revision 77751

Document wxWindow::HitTest(). This is not a very useful method, but by providing at least some documentation for it, we prevent it from inheriting the docs for the next method, which have nothing to do with it.

2014-09-21 00:07 VZ, revision 77750

Fix double release in wxGLCanvas code. The change in r77701 was partially wrong, we shouldn't release Objective-C object if initializing it failed. See #16555.

2014-09-21 00:07 VZ, revision 77749

Avoid integer overflow/wraparound in wxString::Mid(). Don't compare nLength with "nFirst + nCount" as this could wrap around. Compare nCount with maximal allowed count, after ensuring that nFirst itself is valid first, instead. Closes #16572.

2014-09-21 00:07 VZ, revision 77748

Use wxMulDivInt32() instead of multiplying and dividing ints with doubles. This is mostly done to avoid warnings about converting the result of multiplying and dividing an int by doubles back to int, but is also more correct as wxMulDivInt32() rounds the result correctly instead of truncating the fractional part, and is also a tiny bit more efficient under MSW where the native ::MulDiv() is available.

2014-09-21 00:07 VZ, revision 77747

Make wxTextCtrlOleCallback destructor virtual to avoid g++ warnings. This class doesn't really need a virtual dtor as it's never used polymorphically, but add it to avoid g++ warnings about it.

2014-09-21 00:07 VZ, revision 77746

Fix harmless g++ warning about "using NULL in arithmetic". ::SetThreadExecutionState() returns a DWORD, which is not a pointer, so compare its return value with 0, not NULL.

2014-09-21 00:07 VZ, revision 77745

Don't use wxMSW wxAppProgressIndicator if wxUSE_TASKBARBUTTON==0. This class requires wxTaskBarButton to be really implemented, so there is no need to even define the MSW-specific version of it if wxUSE_TASKBARBUTTON is 0 anyhow. This fixes a compilation problem with wxUSE_TASKBARBUTTON==0 but, more importantly, just makes more sense.

2014-09-21 00:07 VZ, revision 77744

Show the message of unexpected message boxes in wxTestingModalHook. This is more informative than showing just the title and we can do it for the message boxes and it's worth handling them specially just because they are so common.

2014-09-21 00:07 VZ, revision 77743

Allow customizing unexpected dialogs description in wxTestingModalHook. Extract creation of the message describing an unexpected dialog in a separate virtual method in order to allow customizing it, notably in order to add more useful description of custom application dialogs.

2014-09-21 00:07 VZ, revision 77742

Mention the title of the unexpected dialog in wxTestingModalHook. It's not very helpful to just say that an unexpected dialog was shown, using its title provides at least some hint as to what dialog it was.

2014-09-21 00:07 VZ, revision 77741

Return the caption from wxMessageDialog::GetTitle(). It was unexpected that wxMessageDialog::GetTitle() returned empty string even when non-empty caption, which is just another word for title, was specified. Implement GetTitle() as synonym for GetCaption() and also provide SetTitle() for consistency.

2014-09-21 00:06 VZ, revision 77740

Fix double release in wxGLCanvas code. The change in r77699 was partially wrong, we shouldn't release Objective-C object if initializing it failed. See #16555.

2014-09-20 21:57 AW, revision 77739

Use wxPropertyGrid::HasInternalFlag() function to check internal flags.

2014-09-20 21:46 AW, revision 77738

Fix manual selection of custom colour item for wxColourProperty and wxSystemColourProperty in wxPG. If keyword 'custom' is entered into the edit field of wxColourProperty or wxSystemColourProperty (with wxPGEditor_ComboBox) then dialog box to query for custom colour should be invoked. Afterwards, when control value is updated, its selection index should be also updated respectively.

2014-09-20 01:56 RD, revision 77737

Oops, a '{' got lost somewhere from the last commit...

2014-09-20 01:44 RD, revision 77736

Oops, a '{' got lost somewhere from the last commit...

2014-09-20 01:28 RD, revision 77735

I'm not totally sure when they were added, but the cairo_image_surface_get_[width|height] functions are not available in cairo 1.10.2.

2014-09-20 01:21 RD, revision 77734

I'm not totally sure when they were added, but the cairo_image_surface_get_[width|height] functions are not available in cairo 1.10.2.

2014-09-19 13:51 VZ, revision 77725

Avoid integer overflow/wraparound in wxString::Mid(). Don't compare nLength with "nFirst + nCount" as this could wrap around. Compare nCount with maximal allowed count, after ensuring that nFirst itself is valid first, instead. Closes #16572.

2014-09-18 16:52 JJ, revision 77724

Synchronizing setup.h_vms with setup.h.in

2014-09-18 16:40 JS, revision 77723

Implemented vertical image alignment.

2014-09-18 16:39 JS, revision 77722

Implemented vertical image alignment.

2014-09-18 02:03 VZ, revision 77721

Document wxGraphicsContext::CreateBitmapFromNativeBitmap() ownership rules. Mention that it takes ownership of the native bitmap passed to it.

2014-09-18 02:02 VZ, revision 77720

Fix crash when creating wxGraphicsBitmap from cairo_surface_t. Initialize m_buffer to avoid crashes when deleting it in Cairo-based wxGraphicsContext implementation for bitmaps created from the native ones. Don't leave the bitmap size uninitialized neither, this might not result in crashes, but is definitely wrong as well.

2014-09-18 02:01 VZ, revision 77719

Document wxGraphicsContext::CreateBitmapFromNativeBitmap() ownership rules. Mention that it takes ownership of the native bitmap passed to it.

2014-09-18 02:01 VZ, revision 77718

Fix crash when creating wxGraphicsBitmap from cairo_surface_t. Initialize m_buffer to avoid crashes when deleting it in Cairo-based wxGraphicsContext implementation for bitmaps created from the native ones. Don't leave the bitmap size uninitialized neither, this might not result in crashes, but is definitely wrong as well.

2014-09-17 12:15 VZ, revision 77717

Update information about wxOSX/Cocoa in the platform overview. Mention that OS X 10.7 is now required and that Cocoa is preferred to Carbon now.

2014-09-16 18:05 SC, revision 77716

backport, fixes #16564

2014-09-16 18:04 SC, revision 77715

fixing #16564, partly reverting r76426

2014-09-16 14:50 PMO, revision 77714

Re-added wxQtPointer smart pointer for easier memory management.

2014-09-15 19:27 VZ, revision 77711

Don't define wxUSE_GRAPHICS_GDIPLUS as 1 by default. Define it and wxUSE_GRAPHICS_DIRECT2D, when it's supposed to be enabled, as wxUSE_GRAPHICS_CONTEXT instead. This ensures they are set to 0 if the use of wxGraphicsContext is entirely disabled, as is the case when using MinGW under MSW by default for example. Closes #16558.

2014-09-15 19:27 VZ, revision 77710

Remove wrong freshness check from build/update-setup-h script. This didn't work correctly if a header was updated from its corresponding setup0.h first as it was then newer than include/wx/msw/setup_inc.h even though it had been older than it at the start of the script execution. Just keep things simple and get rid of the check.

2014-09-15 18:01 VZ, revision 77709

Get rid of IsOk() accessor in Cairo implementation code. This was quite useless as m_ok flag was public anyhow, just use it directly. Incidentally closes #16560.

2014-09-15 14:04 VZ, revision 77708

Portuguese translations update from @mansil. Closes PR #16.

2014-09-15 01:58 VZ, revision 77707

Always include wxGA_PROGRESS in wxGauge styles enumeration. It can still be used even if it's not available under the current platform.

2014-09-15 01:58 VZ, revision 77706

Make wxAppProgressIndicator actually usable. First of all, do define it under non-MSW platforms. Second, don't crash in it when running under XP where wxTaskBarButton is not available. Also add IsAvailable() method to check for its availability explicitly and add a demonstration of this class to the dialogs sample.

2014-09-15 01:58 VZ, revision 77705

Use factory function for wxTaskBarButton creation. This allows to encapsulate checking for errors, which should be handled when using this class as task bar buttons API is not available under Windows XP.

2014-09-15 01:58 VZ, revision 77704

Revert "Avoid generating wxEVT_MENU_OPEN and CLOSE for disabled menus in wxMSW." The check for top level menus being disabled added in r77657 is broken as it's used, with the expectedly bad consequences, for non top level menus as well, as can be seen by opening any submenu, so revert it. See #2168.

2014-09-15 01:58 VZ, revision 77703

Don't crash under XP in the taskbar button sample. Refuse to run if the taskbar button API is not available. This wouldn't make much sense anyhow and is the simplest thing to do.

2014-09-15 01:58 VZ, revision 77702

Update progress immediately in the taskbar button sample. Handle all scroll events instead of just wxEVT_SCROLL_CHANGED which was probably done accidentally.

2014-09-15 01:08 VZ, revision 77701

Request hardware accelerated GL under OS X only if it's available. Otherwise wxGLCanvas creation just fails completely when it isn't, e.g. when running inside a VM. Closes #16555.

2014-09-15 01:08 VZ, revision 77700

Blind fix to wxiOS build after strike-through fixes. This should correct build breakage caused by r77695.

2014-09-15 01:08 VZ, revision 77699

Request hardware accelerated GL under OS X only if it's available. Otherwise wxGLCanvas creation just fails completely when it isn't, e.g. when running inside a VM. Closes #16555.

2014-09-15 01:08 VZ, revision 77698

fixes 64 bit to 32 warnings, see #16329

2014-09-14 20:11 SC, revision 77697

fixing memory leak

2014-09-14 19:07 AW, revision 77696

Use special code to identify custom colour in wxPG. There is already defined a special code (wxPG_COLOUR_CUSTOM) to identify custom colour in wxColourProperty and wxSystemColourProperty but in practice item representing this colour is identified either by position (it is assumed it as always last item) or by fixed text label. This inconsistency makes the code unclear and can lead to problems (see workaround r76627). Now, only wxPG_COLOUR_CUSTOM code is used to identify custom colour and hence "custom colour" item doesn't need to be the last item in the collection and doesn't need to have a fixed text label (like "Custom").

2014-09-14 13:17 VZ, revision 77695

Fixes to wxFont strike-through support in wxOSX. Don't create strike-through fonts by default. Also add support for strike-through in wxCarbon.

2014-09-14 03:00 VZ, revision 77694

Return to using GDI+ by default in wxGraphicsContext under MSW. Unfortunately Direct2D-based wxGraphicsRenderer is not ready for use yet as it doesn't draw lines with width 0, which are commonly used. The code using it in GetDefaultRenderer() will need to be restored when this bug is fixed.

2014-09-14 03:00 VZ, revision 77693

Fix memory leak when creating new Direct2D-based wxGraphicsContext. ID2D1DCRenderTarget was leaked every time a wxD2DContext was created because a raw pointer was given to wxCOMPtr<> which didn't take its ownership. Use wxCOMPtr instead of the raw pointer to fix this and also fix more rare but still possible leak in case of error. This fixes out of memory errors and crashes in the drawing sample after a few seconds of constant window resizing/repainting.

2014-09-14 03:00 VZ, revision 77692

Allow selecting wxGraphicsRenderer to use in the drawing sample. In particular, allow switching between GDI+ and Direct2D under Windows, which is very convenient for comparing the rendering results. This can also be useful when using Cairo.

2014-09-14 03:00 VZ, revision 77691

Split screen selection in a separate menu in the drawing sample. No real changes, just make the "File" menu (which was also renamed to "Drawing" as it has nothing to do with files) less long by splitting off the screen selection in a separate menu.

2014-09-14 02:59 VZ, revision 77690

Avoid creating wxGraphicsContext in the drawing sample unnecessarily. This is not only wasteful, but creating a Direct2D surface associated with a wxDC makes it impossible to paint on the DC using GDI functions, so this completely broke the initial display in the sample.

2014-09-14 02:59 VZ, revision 77689

Fix wxCALL_FOR_EACH() to work with more than 2 arguments with MSVC. Due to a bug in MSVC handling of __VA_ARGS__ (see https://connect.microsoft.com/VisualStudio/feedback/details/380090/variadic-macro-replacement) wxCALL_FOR_EACH() didn't work correctly as long as more than two arguments were used with it. Work around the bug by protecting __VA_ARGS__ from being incorrectly passed as a single token to the macro being called on every step: this was already done for wxCALL_FOR_EACH itself with wxCALL_FOR_EACH_, but we need to do it for all the helper macros too. Also add a test checking that this does, actually, work.

2014-09-14 02:59 VZ, revision 77688

Fix crash in wxMDIParentFrame dtor after taskbar branch merge. wxFrame::m_taskBarButton needs to be initialized in its Init(), not Create(), which is not necessarily used by the derived classes such as wxMDIParentFrame, resulting in a guaranteed crash when deleting an uninitialized pointer later in wxFrame dtor.

2014-09-13 22:45 AW, revision 77687

Fix vertical positioning of text field in the combo box editor associated with wxPG property under wxMSW. Vertical position of text field in wxOwnerDrawnComboBox control (instantiated at property selection) doesn't need any special adjustment. Closes #16556.

2014-09-12 13:31 VZ, revision 77686

Accept "default" as font family value in XRC. Map it to wxFONTFAMILY_DEFAULT, just as we do for all other wxFontFamily enum elements. Closes #16549.

2014-09-12 13:31 VZ, revision 77685

Accept "default" as font family value in XRC. Map it to wxFONTFAMILY_DEFAULT, just as we do for all other wxFontFamily enum elements. Closes #16549.

2014-09-11 22:33 VZ, revision 77684

Simplify Direct2D DLLs loading code a little. Bail out earlier: if d2d1.dll is not there, it doesn't make sense to try to load dwrite.dll. Also use Load() return value directly instead of ignoring it and then checking for IsLoaded().

2014-09-11 22:33 VZ, revision 77683

Suppress error messages when checking for Direct2D availability. Use wxDL_QUIET flag when loading Direct2D DLLs as we're prepared to handle their absence and don't need to show error messages if they're not available.

2014-09-11 19:05 VZ, revision 77682

Implement strike-through support in wxFont in wxOSX. Implement support for this attribute in wxOSX too. Closes #16547.

2014-09-11 19:05 VZ, revision 77681

Fix error message about ChangeWindowMessageFilter() on startup under XP. Use wxDynamicLibrary::RawGetSymbol() (from inside wxDL_INIT_FUNC() macro) instead of GetSymbol() to avoid the error message which was given every time a new wxFrame was created after wxTaskBarButton changes under XP as ChangeWindowMessageFilter() function is not available in it. Also simplify the code a little and don't make pfnChangeWindowMessageFilter static, we don't need to keep it around.

2014-09-11 13:37 VZ, revision 77680

Fix Direct2D code compilation in non-Unicode build. DirectWrite GDI interop only works with Unicode LOGFONTW, so use it explicitly instead of LOGFONT which is LOGFONTA in non-Unicode build.

2014-09-10 18:52 VZ, revision 77669

Fix wxUSE_GRAPHICS_DIRECT2D definition in setup.h files. Define it in wx/msw/setup_inc.h and not in wx/msw/setup0.h itself to ensure that it survives the regeneration of this file using build/update-setup-h. Also only set wxUSE_GRAPHICS_DIRECT2D to 1 for VC10+ and not VC9 as the latter lacks Direct2D header in its default SDK version. Finally also update comments to explain the various settings more clearly and remove outdated information (wxGraphicsContext is not experimental any more).

2014-09-10 18:52 VZ, revision 77668

Convert Direct2D source file to Unix EOL format. No other changes.

2014-09-10 18:52 VZ, revision 77667

Use ID2D1Bitmap instead of ID2D1Image. ID2D1Image is not defined in v7.0A platform SDK used by VC10 and doesn't seem to be needed here as we are only working with ID2D1Bitmaps (deriving from ID2D1Image) anyhow.

2014-09-10 18:52 VZ, revision 77666

Don't use enum name for qualifying enum element. This is a non-standard MSVC extension and can't be done in standard C++.

2014-09-10 18:52 VZ, revision 77665

Remove PI definition from Direct2D wxGraphicsContext code. The line defining PI didn't compile with VC10 because atan(1) is ambiguous (argument could be float, double or long double). And it was not needed anyhow as PI was not used anywhere (and if it were, we should be just using M_PI from wx/math.h anyhow), so simply remove it.

2014-09-10 18:52 VZ, revision 77664

Fix build with g++ 3.4 with -pedantic[-errors] option. The use of variadic macros results in a warning/error if -pedantic[-errors] is used when compiling C++98 code as they are only formally part of C99 (or C++11). With g++ 4 and later, this can be avoided by using -Wno-variadic-macros option, but it doesn't exist in g++ 3, so a nasty workaround in the header itself is required: mark it as system header in order to fix compilation.

2014-09-10 18:52 VZ, revision 77663

Don't skip wxHtmlContainerCell layout, even when the width is 0. This ensures that wxHtmlContainerCell height is set to some reasonable value instead of 0 and fixes infinite loop which occurred in some circumstances in wxGTL when trying to allocate size for wxHtmlListBox as it oscillated between having a vertical scrollbar with bigger width and not having it with smaller width. The latter was wrong as decreasing the width to 0 didn't really obviate the need for the vertical scrollbar and was just an artefact due to not setting wxHtmlContainerCell height at all in this case.

2014-09-10 18:52 VZ, revision 77662

Add wxUIActionSimulator::Select(). Add a helper to select an item in a wxChoice, wxComboBox, wxListBox or similar.

2014-09-10 18:51 VZ, revision 77661

Fix crash in unit tests after TextEntryTestCase::Editable(). The class TextEventHandler added in r77057 (see #3901) setup an event handler which wasn't disconnected when the handler was destroyed, which resulted in a crash later as the window it was connected to continued to exist and generate wxEVT_TEXT events.

2014-09-10 18:51 VZ, revision 77660

Set layout direction for all wxCompositeWindow parts. Forward SetLayoutDirection() to both the base class and all the children, just as we already do for the other setters. See #11583.

2014-09-10 18:51 VZ, revision 77659

Simplify and make more flexible wxCompositeWindow::SetForAllParts(). Allow calling any function compatible with the argument type instead of requiring "bool" return type and the exact match of the parameter type, which forced us to define a separate DoSetForAllParts() helper. See #11583.

2014-09-10 18:51 VZ, revision 77658

Fix setting RTL direction for wxTextCtrl without wxTE_RICH in wxMSW. Plain EDIT text controls don't support WS_EX_LAYOUTRTL, use WS_EX_RTLREADING for them instead. See #11583.

2014-09-10 18:51 VZ, revision 77657

Avoid generating wxEVT_MENU_OPEN and CLOSE for disabled menus in wxMSW. Check if a top level menu is disabled and consume WM_[UN]INITMENUPOPUP that Windows still generates for it when it's clicked for some reason. Closes #2168.

2014-09-10 18:51 VZ, revision 77656

Add a generic wxExpectAny helper class for GUI testing. This is similar to the existing wxExpectModal<wxMessageDialog>, but can be used to dismiss any dialog for which it's just enough to press some button, not just wxMessageDialog. It's convenient to use it as wxTEST_DIALOG(wxYield(), wxExpectAny(wxID_OK)); if some custom dialog which can be safely dismissed is expected.

2014-09-10 18:51 VZ, revision 77655

Make skipping event in wxEVT_PAINT handler work correctly in wxMSW. This should result in the default handler still being called and painting the window, but the latter didn't happen because we called ::EndPaint(), and so validated the window and reset its update region, before passing WM_PAINT to DefWindowProc() in this case. Closes #16381.

2014-09-10 18:51 VZ, revision 77654

Work around buggy printer drivers not returning correct DEVMODE size. Apparently at least one printer driver doesn't report the memory needed by its own DEVMODE struct correctly, resulting in a crash due to a buffer overflow when printing using it. Work around this by allocating slightly more memory than what we really need. Closes #16274.

2014-09-10 18:51 VZ, revision 77653

Implement wxListBox::EnsureVisible() for wxMSW. Manually check whether the item is currently visible and scroll the listbox just enough if it isn't. Closes #3224.

2014-09-10 18:51 VZ, revision 77652

Delete pending objects before destroying wxConfig during cleanup. This allows these objects to save their state in wxConfig, as e.g. top level windows using wxPersistenceManager do. Closes #16397.

2014-09-10 18:51 VZ, revision 77651

No changes, just remove a left-over "#if 0". Remove OSX-specific #if which was not used any more.

2014-09-10 18:51 VZ, revision 77650

Allow recursive calls to wxEventLoop::Yield(). There doesn't seem to be any reason to forbid them and this change allows wxExecute() without wxEXEC_NOEVENTS to work without assertion failures when called from inside wxYield().

2014-09-10 18:51 VZ, revision 77649

Fix AssocQueryString() error reporting in wxMSW. Don't report ERROR_NO_ASSOCIATION as an (unexpected) error, it is perfectly normal to get it if a command is not defined for the given extension.

2014-09-10 18:50 VZ, revision 77648

No changes, just use wxEventLoop::IsYielding() accessor. Use IsYielding() instead of testing m_isInsideYield directly.

2014-09-10 17:59 BP, revision 77647

Add wxUSE_TASKBARBUTTON under MSW port. Taskbar button features are only available under MSW port. Author: Chaobin Zhang