Commit Graph

14980 Commits

Author SHA1 Message Date
Vadim Zeitlin
ecb35373ee Add virtual dtor to wxCustomBackgroundWindowBase.
Suppress g++ warnings about a class with virtual methods but non-virtual dtor
by making the dtor virtual even if we don't need it to be virtual in this
class.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-04 23:57:36 +00:00
Vadim Zeitlin
f27f9577ca Allow 2-step creation of wxGenericProgressDialog.
Add default ctor and Create() with the same parameters as the non-default
ctor.

Closes #13555.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-03 23:52:39 +00:00
Vadim Zeitlin
64ac3db840 Update all controls using in-place editors to handle Escape/Return correctly.
Define EVT_CHAR_HOOK handlers to ensure that pressing Escape/Return while an
in-place edit control is active affects only it and is not used for the
keyboard navigation.

Closes #9102.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:50:41 +00:00
Vadim Zeitlin
4e4841b0ba No changes, just move wxTreeCtrlBase ctor to the source file.
Move inline ctor out of line to prepare for changing it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:50:33 +00:00
Vadim Zeitlin
3a95f73c00 Make wxEVT_CHAR_HOOK propagate upwards and send it to the window itself.
Send wxEVT_CHAR_HOOK events to the focused window itself but make them
propagatable to ensure that the parent windows (including the top level
parent) still get it. This still allows the TLW parent to intercept keyboard
handling in its child but allows the child (or an intermediate parent window)
to have some say in the matter.

See #9102.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:50:25 +00:00
Vadim Zeitlin
e45d90901d Added wxKeyEvent ctor for creating event of the different type for same key.
This is useful for implementation code in a couple of ports so provide a
higher level ctor doing this instead of having to use a copy ctor and then
manually changing the event type.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:50:19 +00:00
Vadim Zeitlin
dfc7216da7 Refactor wxKeyEvent copying code.
Avoid duplication between copy ctor and assignment operator.

Also extract the assignment of everything not including the event type in a
reusable function as this can be useful for key event generation code in wxGTK
and possibly other ports.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:50:16 +00:00
Vadim Zeitlin
b9697cb410 Added wxCriticalSection::TryEnter() method.
This is similar to wxMutex::TryLock() and useful for the same reasons.

Closes #13638.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-01 14:22:15 +00:00
Paul Cornett
0f29501b66 Fix crash when appending menuitem after removing it from another menu.
Also remove unused return value from GtkAppend

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-01 06:57:44 +00:00
Vadim Zeitlin
37bea8d229 Don't include all wx/xxx/webviewhistoryitem_xxx.h headers.
Only one of these headers is available for each platform so include at most
one of them.

Closes #13705.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-30 10:21:43 +00:00
Vadim Zeitlin
99644bf127 Include wx/defs.h, not wx/setup.h from wx/webview.h for consistency.
All wx headers start by including wx/defs.h so do it in wx/webview.h as well
even if wx/setup.h was sufficient in this particular case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-30 10:21:40 +00:00
Vadim Zeitlin
2f0bebe646 Use more clear names for variables in wxHtmlSelection code.
Call the variables and related methods "character position" instead of
"private position" which wasn't very clear.

Closes #13307.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-30 09:21:33 +00:00
Steve Lamerton
8a4e043aef Override MSWTranslateMessage for wxActiveXContainer. Calling IOleInPlaceActiveObject::TranslateAccelerator ensures that accelerators and other keyboard functionality behaves correctly.
Fixes #13679.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-28 20:19:16 +00:00
Vadim Zeitlin
6c5cc8a075 Override GetMainWindowOfCompositeControl() in wxGrid subwindows.
This is necessary for HasFocus() to work correctly for them since the changes
of r69788.

Closes #13686.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-28 19:15:59 +00:00
Vadim Zeitlin
4e2b91bb27 Extend wxBannerWindow background bitmap if necessary.
Ensure that the entire banner window uses the same background colour as the
bitmap, even when the bitmap is too small for the window size. This allows to
avoid using huge bitmaps if extending the bitmap with solid colour looks good
enough.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-28 18:58:52 +00:00
Vadim Zeitlin
1d8d3cc5a1 Add support for custom numeric formats to wxGrid.
Allow %e and %g formats (as well as their upper-letter equivalents) in
addition to the default %f format for number display in wxGrid.

Closes #13583.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-28 13:23:33 +00:00
Vadim Zeitlin
fb7ce3e8cc No changes, just moved wxLocaltime_r() and wxGmtime_r() to wx/time.h.
These functions are used by wxGetTimeZone() defined in time.cpp and so need to
be available from wx/time.h. This is also the most logical place for them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 20:28:43 +00:00
Vadim Zeitlin
603c73dbba Implement wxStackWalker for wxMSW under x86-64.
Use 64 bit debug help functions instead of 32 bit ones and add code for
dealing with x86-64 stack frames.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:52:13 +00:00
Vadim Zeitlin
fc4070fc9d Add support for VK_OEM_102 key under wxMSW.
This is the "<>|" key on German keyboard and is also used in many other
layouts so failing to handle it resulted in not receiving EVT_KEY_XXX events
for these keys in wxWidgets programs.

Closes #13558.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:53 +00:00
Vadim Zeitlin
e65ae1d36d Change value of wxHELP to avoid clash with wxSTAY_ON_TOP.
Using wxSTAY_ON_TOP with wxMessageDialog resulted in "Help" button appearing
since r68537 because these two constants had the same numeric value.

Avoid this by changing wxHELP value to be the same as wxCLOSE_BOX instead: the
latter can't be used with wxMessageDialog so this should solve the problem,
even if there are still conflicts. Also adjust the other button constants
values to account for wxHELP change.

Closes #13433.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:45 +00:00
Vadim Zeitlin
cec1b1ab0b Removed private wxGetLocalTimeUsec() function from Unix code.
The function was badly named as it returned UTC time and not local time and
can be simply replaced with the just added public wxGetUTCTimeUSec().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:33 +00:00
Vadim Zeitlin
173a5ddc77 No changes, just move time functions from wx/stopwatch.h to wx/time.h.
Preserve compatibility by including wx/time.h from wx/stopwatch.h but put all
the time-related functions in a more logical place.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:27 +00:00
Vadim Zeitlin
a43503cb8d Added wxGetUTCTimeMillis() and wxGetUTCTimeUSec().
Fixed wxGetLocalTimeMillis() to really return the local time and provide
wxGetUTCTimeMillis() doing what this function used to do before. Closes #13610.

Also add wxGetUTCTimeUSec() for even higher resolution time stamps as it is
basically the same as wxGetUTCTimeMillis() anyhow, at least for MSW and
non-ancient Unix systems providing gettimeofday().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:23 +00:00
Vadim Zeitlin
59068d79f7 Extracted private GetTimeZone() to public wxGetTimeZone() function.
Created new wx/time.h header for this function, more time-related functions
will be added to it later.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:19 +00:00
Vadim Zeitlin
b0ec002323 Added wxStopWatch::TimeInMicro() for better precision time measurement.
Also simplify/streamline wxStopWatch implementation and replace confusingly
named m_pause with more clear m_elapsedBeforePause.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:12 +00:00
Vadim Zeitlin
e76e89aabe Correct wxTLS_PTR definition for !wxHAS_COMPILER_TLS case.
wxTLS_PTR should have type of "T*" instead of being simply usable as "T*"
because of its overloaded operator->(), otherwise the code relying on it being
"T*" and compiling without problems in wxHAS_COMPILER_TLS case could fail to
compile without compiler TLS support.

Closes #13644.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:50:01 +00:00
Vadim Zeitlin
167d0cb30b Define wxCURSOR_DEFAULT_TYPE correctly for the old Cocoa port.
Closes #13652.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-27 19:49:33 +00:00
Stefan Csomor
65c01ad0d4 fixing iPhone build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-25 14:37:03 +00:00
Paul Cornett
46a1983ae4 use int instead of size_t for a couple member variables
it's simpler, and there is no point in using size_t anyway since they are assigned from ints

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-25 00:52:24 +00:00
Vadim Zeitlin
5f4994df03 Added convenient wxCmdLineParser::AddLong{Option,Switch}() wrappers.
The new functions simply call Add{Option,Switch}() with an empty first
argument but using them makes the code more readable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-22 13:18:58 +00:00
Vadim Zeitlin
6e043ba946 Dismiss wxSplashScreen on any user input, not necessarily on splash itself.
Use wxEventFilter to remove the splash screen as soon as any user input is
detected anywhere in the application, not necessarily over the splash screen
itself.

This ensures that the splash screen disappears as soon as the user starts
working with the application instead of sticking around and covering the main
window.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-22 13:18:55 +00:00
Vadim Zeitlin
58cc15871d Add wxEventFilter and related functionality.
Allow defining event filters to globally pre-process all application events
without having to override wxApp::FilterEvent().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-22 13:18:50 +00:00
Vadim Zeitlin
feb32e3165 Hack wxMSW wxNotebook to show the text controls correctly initially.
Add an Update() call to ensure that text controls in the initially selected
notebook page are shown correctly. It's almost certainly not the right fix for
the real bug that results in text controls not being shown when the notebook
comes up but it doesn't cost much and at least allows us to get correct
appearance for the themed notebooks.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-22 13:18:45 +00:00
Vadim Zeitlin
60eabdbebf No changes, just remove extra whitespace from wxWebViewIE code.
Closes #13678.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-18 23:40:24 +00:00
Vadim Zeitlin
97aa7b9955 Provide HANDLE_PTR for the compilers without it such as VC6.
Also include wx/msw/wrapwin.h defininig HANDLE_PTR from wx/msw/webview_ie.h
that uses it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-17 16:43:34 +00:00
Jouk Jansen
7a3c45f2c8 define Popup and Dismiss for wxComboBox in wxMOTIF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-17 07:51:04 +00:00
Robin Dunn
cce10ca06b Add arg default values for the Create method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-17 01:25:56 +00:00
Robin Dunn
a0ff361188 Don't include webkit headers from wx headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-17 01:23:03 +00:00
Vadim Zeitlin
f559d1a23c Move wxWebView-related definitions to webview_ie.cpp and fix them.
Ensure that all the GUIDs are defined by including initguid.h to fix linking
error with most versions of MinGW.

Use "wx" prefix to avoid clashes with the standard GUIDs if they do happen to
be defined.

Closes #13645.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-16 23:45:22 +00:00
Vadim Zeitlin
c0c9009c8d Add support for digits and +/- sign to wxUIActionSimulator::Text().
Support the characters needed for number entry in wxUIActionSimulator::Text()
too.

Closes #13671.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-15 15:56:55 +00:00
Vadim Zeitlin
31fb3cfe02 Replace wxT() with wxS() in image options definitions.
The optimal way of creating a literal strings consisting of only ASCII
characters is to use wxS() as this avoids the need for run-time conversion in
all builds while wxT() requires a conversion from wchar_t to UTF-8 in UTF-8
builds. So replace wxT() with wxS() in wxImage options definitions.

Also remove wxT() from the options documentation, it's just useless there.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-14 13:35:52 +00:00
Vadim Zeitlin
b6963858fb Added wxIMAGE_OPTION_ORIGINAL_{WIDTH,HEIGHT} wxImage options.
These options allow to retrieve the original image size if the image was
scaled during load.

Closes #13662.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-14 13:35:48 +00:00
Vadim Zeitlin
d6c37f5bc4 Fall back on ::GetMessagePos() if ::GetCursorPos() fails under MSW.
In some rare but reproducible cases GetCursorPos() can fail and return without
filling in the provided point. Fall back to GetMessagePos() if this happens:
this is not ideal but clearly better than using uninitialized position or hard
coding something like (0, 0).

Closes #13664.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-14 12:51:53 +00:00
Vadim Zeitlin
3e6807d701 Don't redefine symbols already defined in latest MinGW headers.
Closes #13645.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-14 12:51:49 +00:00
Vadim Zeitlin
907ea7d5cc No changes, just add another case to a switch on wxMouseButton.
Fix warnings given when wx headers are compiled with g++ -Wswitch-enum option.

Also make the assert messages more precise and less verbose as there is no
need to include the function name in them, all relatively recent compilers
provide it via __FUNCTION__ and wxFAIL_MSG() already uses it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-14 12:51:47 +00:00
Vadim Zeitlin
cf0a0f9303 Move GDK_META_MASK definition in the header in which it is also used.
The code using GDK_META_MASK was moved to wx/gtk/private/event.h from
gtk/window.cpp but the fallback definition of GDK_META_MASK for GTK+ < 2.10
remained in window.cpp.

Move it to the header as well now so that it can be compiled with GTK+ < 2.10
again.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-08 11:02:05 +00:00
Vadim Zeitlin
b6dd4afdf8 Compilation fixes for GTK+ 2.4.
Add missing GTK_CHECK_VERSION(2,6,0) checks.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-08 11:02:02 +00:00
Jouk Jansen
a1db2ca07b wxGTK1 should not include .h files for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-07 09:34:50 +00:00
Václav Slavík
12a7fb5f0b Fix wxArray::Index() with bFromEnd=true in STL build.
This function incorrectly returned index from the end of the array when
searching from the end. Fixed to work as the non-STL version.

Fixes #13626.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 15:20:32 +00:00
Vadim Zeitlin
64b91e2d40 Add wxConvAuto::GetBOMChars() helper.
Closes #13620.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-11-05 11:23:41 +00:00