Commit Graph

33270 Commits

Author SHA1 Message Date
Vadim Zeitlin
79e27d2a08 Also ignore arch-specific build directories in wxMSW wxStandardPaths.
In addition to ignoring debug/release subdirectories, also ignore their
(possible) parent Win32/x64 directories, and for the same reason: this allows
the code using wxStandardPaths to work even when the program is ran from the
build directory.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 15:31:24 +00:00
Vadim Zeitlin
4f0829e135 Avoid unnecessary assignment in wxOSX build.
Don't assign to the variable only to overwrite it with a new value.

Closes #16436.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:35:39 +00:00
Vadim Zeitlin
9c74f1329e Avoid warning about unused variable in wxiOS build.
Define variable only used if wxOSX_USE_COCOA_OR_CARBON inside the check for it.

Closes #16435.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:35:34 +00:00
Vadim Zeitlin
a8bd40d571 Avoid unused variable warning in wxUSE_DATAOBJ==0 build.
Declare variable only used when wxUSE_DATAOBJ==1 inside the check for it.

Closes #16434.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:35:29 +00:00
Vadim Zeitlin
005aa92678 Remove unused variable in wxDCImpl::CalculateEllipticPoints().
Closes #16433.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:35:24 +00:00
Vadim Zeitlin
df13791078 Merge wxQT branch into the trunk.
This merges in the latest sources from GSoC 2014 wxQt project with just a few
minor corrections, mostly undoing wrong changes to common files in that branch
(results of a previous bad merge?) and getting rid of whitespace-only changes.
Also remove debug logging from wxGrid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 01:50:11 +00:00
Vadim Zeitlin
d513d3e2f0 Fix ribbon bar tab width computation if the first tab is hidden.
The logic for the first tab should really deal with the first visible tab as
the actual first tab might be hidden and in this case we shouldn't account for
it at all.

Closes #16432.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-21 14:14:15 +00:00
Vadim Zeitlin
a307120d50 Fix generic wxSearchCtrl size/layout code.
Override DoGetBestClientSize() instead of DoGetBestSize(), as we're really
computing just the size of our contents and like this we don't need to hard
code platform-dependent border sizes in this control itself.

Also use the client size in LayoutControls() for the same reason. This also
makes it unnecessary to pass it the width and height as it can find them on
its own. And x and y were never used in the first place, so remove them too.

Finally, center the bitmaps vertically.

Closes #16422.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-18 21:32:55 +00:00
Vadim Zeitlin
0223c10048 Don't exit event loop when exception occurs inside Yield().
If an unhandled exception occurs in an event handler called from Yield(),
don't exit the current event loop which can continue running after handling
this exception in the code calling Yield().

Closes #16419.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-16 00:24:56 +00:00
Paul Cornett
d0406f4606 Fix handling of identical consecutive key events
Events generated programmatically may have the same timestamp as the previous
event, which caused them to be ignored on the assumption that they were the same
event being sent to a parent window. Fix this by detecting when a new event could
be generated by the event loop.
Closes #15802


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-15 17:09:39 +00:00
Vadim Zeitlin
a4606fbb44 Refactor Unix OpenGL code to avoid using static attributes array.
Put the context attributes in wxGLCanvasX11 itself instead.

See #16402.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-15 12:14:11 +00:00
Vadim Zeitlin
74421a7f35 Fix creating wxGLCanvas without any attributes in wxMSW.
This was broken by the changes of r77018, see #16402.

Just check that we do have the attributes before examining them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-15 12:14:06 +00:00
Vadim Zeitlin
a728a9ac15 Allow using ESC as accelerator in wxMSW again.
This ended up being broken due to an interplay between different unrelated
changes (at least r15120 and r41134) which were both correct, but didn't work
well together and resulted in not only preventing IsDialogMessage() from
handling ESC, but also our own accelerator tables.

Fix this by doing the check for IsDialogMessage() brokenness in
MSWProcessMessage() itself, just before calling it, instead of doing it in
MSWShouldPreProcessMessage() which is (and must be) called before
MSWTranslateMessage() which checks for accelerators using ESC.

Closes #3813.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-14 16:05:32 +00:00
Vadim Zeitlin
a4f707b8a8 Add support for paragraph spacing attribute to wxTextCtrl in wxMSW.
Use PFM_SPACEAFTER/PFM_SPACEBEFORE to implement support for them.

Closes #16417.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-14 12:17:17 +00:00
Vadim Zeitlin
21da20d579 Restore dynamic linking of GDI functions for non-MSVC.
This partially reverts the changes of r77029 and r77039: now functions such as
Set/GetLayout(), AlphaBlend() and GradientFill() are still called (almost)
directly when using MSVC but pass by dynamic loading with the other compilers,
which don't have #pragma comment(lib) and, in MinGW case, also lack some of
these functions in their libraries even if we do link with them.

Closes #16411.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-14 12:11:39 +00:00
Vadim Zeitlin
edad9616e7 Return correct string from wxEVT_TEXT wxComboBox events.
wxCommandEvent::GetString() could return empty string for the
programmatically-generated wxEVT_TEXT events from a wxComboBox.

Fix this by extending the on-demand string retrieval in wxCommandEvent to
wxComboBox as well (it was done only for wxTextCtrl).

Also add a unit test checking that the string has the expected value in the
events sent by all wxTextEntry-derived controls.

Closes #3901.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-11 11:53:01 +00:00
Stefan Csomor
53fc25b609 one call is enough
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-11 07:07:46 +00:00
Vadim Zeitlin
3a0c01cbea Use NMTVDISPINFO instead of TV_DISPINFO in wxMSW code.
The latest w32api 4.0.3, used by MinGW project, still didn't manage to apply a
one line fix to define TV_DISPINFO correctly, so tweak our sources to avoid
using it.

See #15537.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-10 16:11:49 +00:00
Stefan Csomor
3139f756a1 file not needed anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 18:39:31 +00:00
Stefan Csomor
9fa8977992 remove outdated file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 18:38:03 +00:00
Vadim Zeitlin
afdb989e87 Link wxMSW with msimg32.lib now that AlphaBlend() is used statically.
Implicitly link msimg32.lib in when using MSVC and add it to MinGW (and
Borland) makefiles.

This should have been part of r77029.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 18:03:23 +00:00
Vadim Zeitlin
c1a2d55dc5 Remove manual mirroring in RTL case from wxGrid code.
This is not necessary as wxDC already inherits RTL from the window itself and,
in fact, breaks the display when using RTL.

Closes #16250.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 18:03:15 +00:00
Stefan Csomor
0094b93dc6 removing code for pre 10.6 systems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 17:27:19 +00:00
Stefan Csomor
b79595df2d removing code for pre 10.6 systems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 17:20:20 +00:00
Stefan Csomor
1d21bd0877 removing code for pre 10.6 systems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 17:07:54 +00:00
Stefan Csomor
f71ea69505 removing code for pre 10.6 systems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 17:02:17 +00:00
Vadim Zeitlin
2bebe217c1 Remove dynamic loading of GDI functions from wxMSW wxDC code.
All of these functions (AlphaBlend(), SetLayout(), SetWorldTransform(), ...)
are available in XP which is the minimally required version.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 14:21:06 +00:00
Vadim Zeitlin
992671d2a7 Fix wxDC::DrawRectangle() when using RTL in wxMSW.
Extend the correct edge of the rectangle (always the physical right, not the
logical right) to fix off by one errors in RTL mode, affecting notably wxGrid.

See #16250.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-09 14:21:01 +00:00
Paul Cornett
099ca52b29 fix running on GTK < 2.10 when built with later, broken in r72935
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-08 20:37:24 +00:00
Artur Wieczorek
6871f5fe90 Remove temporary fix for drawing check box in the wxPG edit mode with RTL layout
Since the issue is fixed (r77020) this hack is no longer necessary (see #16254).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-08 07:13:03 +00:00
Vadim Zeitlin
07e57ebfbd wxOSX compilation fix after the last commit.
Add the missing wx/time.h header required for using wxGetLocalTimeMillis().

Also add WXUNUSED() around the unused parameters of DrawGauge().

See #16406.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-08 01:46:52 +00:00
Vadim Zeitlin
86cf756ba9 Add wxRendererNative::DrawGauge() method.
Add the method with the native implementations for MSW and OS X and a generic
version fallback.

Closes #16406.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-08 01:03:31 +00:00
Vadim Zeitlin
b5358cec94 Fix drawing on wxDC when using right-to-left layout in wxMSW.
Avoid integer overflow when setting wxDC scale. This affected (i.e. broke)
drawing in RTL but probably not only that.

Closes #16254.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-07 21:03:34 +00:00
Vadim Zeitlin
e871a2157d Add wxGCD() helper function.
It is needed in wxMSW code and it looks like it could be useful to the library
users, so make it public.

See #16254.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-07 21:03:25 +00:00
Vadim Zeitlin
3c7ba39135 Allow requesting core OpenGL profile and explicit OpenGL version.
Add WX_GL_CORE_PROFILE and WX_GL_{MAJOR,MINOR}_VERSION attributes which can be
used to use modern OpenGL with wxGLCanvas.

Closes #16402.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-06 23:31:41 +00:00
Artur Wieczorek
e58975a7e4 Remove unnecessary assertion in wxPGProperty::GetChoiceSelection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-06 23:28:40 +00:00
Tim Kosse
954557e23c Call wxWindow::Navigate when handling the tab key in wxAuiTabCtrl. This fixes tabbing on wxGTK where it was not possible to tab out of the wxAuiNotebook anymore.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-06 14:57:02 +00:00
Artur Wieczorek
138297786c Fix wxPGProperty::InsertChoice
Take into account that wxPGProperty::GetChoiceSelection can return either 0 (for wxEnumProperty) or -1 (for other properties) if choice value list is empty and initialize new selection index properly.

See #16401.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-06 13:34:01 +00:00
Artur Wieczorek
0f9ba6c59f Fix wxPGProperty::GetChoiceSelection
Return the index of the integer choice item on the list instead of item value itself.

See #16401.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-06 13:26:00 +00:00
Vadim Zeitlin
5f9bd3678f Add XRC handler for wxSimplebook.
Similar to wxNotebook but even simpler as wxSimplebook doesn't use images.

Also add wxSimplebook::Create() as the version inherited from wxBookCtrlBase
didn't _quite_ work: we need to add wxBK_TOP style to prevent asserts due to
unknown alignment in the base class when creating wxSimplebook.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-05 22:01:52 +00:00
Stefan Csomor
c69051e476 forwarding printing calls to graphics context as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-04 16:35:23 +00:00
Václav Slavík
964352934e Add window variant support to XRC.
Fixes #16247.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 17:10:24 +00:00
Artur Wieczorek
55a385d7ad Add missing index initialization in one of wxEnumProperty ctor.
In every wxEnumProperty ctor, initial index value of selected choice must be set to zero.

See #16401.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 15:22:54 +00:00
Vadim Zeitlin
bd2a350c42 Fix window position calculation in wxMSW when using RTL.
Just use the native ::MapWindowPoints() to do the coordinate transformation
instead of doing it ourselves: we did it wrongly by inheriting the layout
direction from wxTheApp instead of from the parent window, so fix this in the
best possible way by not doing it at all and just relying on Windows to do it
for us.

In particular, this corrects the display of wxStatusBar in RTL frames.

Closes #15031.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:51 +00:00
Vadim Zeitlin
d35c8954d6 Refresh the window when its layout direction changes in wxMSW.
Rearrange the window children and/or redraw its contents when its layout
direction changes.

See #15031.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:48 +00:00
Vadim Zeitlin
f1950d1111 Don't activate hidden buttons when Enter is pressed in wxMSW.
The keyboard handling code could decide to activate a button which wasn't
currently visible at all, e.g. because it was on a non-current, and hence
hidden, page of a wxBookCtrl. This didn't make any sense, so check for the
button visibility before activating it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:45 +00:00
Vadim Zeitlin
1b90acc357 Add wxDateTime::GetWeekBasedYear().
It was just added as a private function to implement %V format specifier
support, just extract and document it as it could possibly be useful in its
own right.

See #11857.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:41 +00:00
Vadim Zeitlin
29b68052bb Add support for "%V" and "%G" to wxDateTime::Format().
This is useful for creating ISO 8601 week number based stamps.

Closes #11857.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:36 +00:00
Vadim Zeitlin
e393f96dcc Fix static initialization order problem in wxStopWatch under MSW.
Don't rely on the static global gs_perfCounter being already initialized when
wxStopWatch::DoStart() is called, this may not be the case if wxStopWatch
variable is global.

Work around this by wrapping the variable inside a function to ensure that it
is initialized before being used.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:30 +00:00
Vadim Zeitlin
f88585b4ab Update wxSlider background when its parent background changes in wxMSW.
The native control doesn't redraw itself, so force it to do it from the
overridden DoMSWControlColor() which is called every time the background
colour might have changed.

See #12271.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:47:26 +00:00