Commit Graph

29689 Commits

Author SHA1 Message Date
Julian Smart
77ea6c48d3 Fixed shift-click selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-21 09:56:32 +00:00
Vadim Zeitlin
5f899cbe91 Fix bug when setting an out of range date in wxMSW wxDatePickerCtrl.
The internally stored date value was getting out of sync with the real date in
the control itself when SetValue() was called with a date out of the currently
set range. This resulted in an assert failure and other unpleasantness later.

Fix the bug and add a unit test checking for it (and also with some other
basic wxDatePickerCtrl checks).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-19 22:46:45 +00:00
Vadim Zeitlin
106f0d98f8 Implement wxCalendarCtrl::SetDateRange() in the native GTK version.
While GTK+ doesn't support imposing ranges for dates selection natively, we
can do it ourselves by preventing the user from selecting any date outside of
the currently valid range.

This allows to use ranges under all platforms and not only in wxCalendarCtrl
itself but in wxDatePickerCtrl as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-19 22:46:36 +00:00
Vadim Zeitlin
459c6f2a8a Suppress harmless gcc warnings about enum elements unhandled in switch.
Latest mingw64 MinGW compiler has the headers required for enabling
wxUSE_DBGHELP, fix the warnings given by g++ when compiling wxDbgHelpDLL code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-19 22:46:32 +00:00
Paul Cornett
af806b13aa fix GTKGetLabel() and DoApplyWidgetStyle(): children are GtkWidget, not GtkBoxChild
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-19 20:52:26 +00:00
Stefan Csomor
2ebfa9c04c fixing iphone build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-18 15:23:39 +00:00
Vadim Zeitlin
bb60690d1d Fix g++ warnings about initialized variables being declared extern.
Don't declare variables extern when initializing them, this is already the
case implicitly anyhow and explicit "extern" results in g++ warnings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-17 21:53:32 +00:00
Vadim Zeitlin
6a5f121bf9 Use GdipStringFormatCachedGenericTypographic hack for MinGW as well.
When using GDI+ with MinGW, the same hack as for Cygwin is needed (see r66787)
as it uses the same w32api headers and libraries for GDI+ support (if it has
them at all).

See #11716.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-17 21:53:28 +00:00
Vadim Zeitlin
eeac2326b0 Avoid problems with conflicting UINT16 definitions in Cygwin headers.
UINT16 is incorrectly defined inside Gdiplus namespace in w32api gdiplus.h
used by Cygwin and MinGW resulting in compilation errors about ambiguous
symbols.

Fix this by forcefully redefining UINT16 in our own code.

Closes #13113.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-17 21:53:22 +00:00
Vadim Zeitlin
ff8a5f3d77 Fix wxStringOutputStream in wxUSE_UNICODE_UTF8 build.
For some reason the conversion of the bytes written to this stream to Unicode
was only done in wxUSE_UNICODE_WCHAR build but not in wxUSE_UNICODE_UTF8 one.
Do it in any wxUSE_UNICODE build now.

This allows to use wxStringOutputStream under Unix again, in particular it
fixes an assert in samples/html/zip when trying to load the raw contents of a
ZIP file in wxHtmlWindow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 16:22:15 +00:00
Vadim Zeitlin
3d55f45e94 Suppress various harmless warnings in MinGW build with -Wconversion.
No real changes, simply add casts to make the implicit conversions that g++
warns about when using -Wconversion explicit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 15:14:02 +00:00
Vadim Zeitlin
616ad49187 Make wxUIActionSimulator mouse move events marginally more precise.
Round the values instead of truncating them when converting from pixel values
to Win32 ::mouse_event() 0..65535 scale. This probably doesn't make any real
difference in practice but seems more correct and also avoids g++ warnings.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 15:13:59 +00:00
Vadim Zeitlin
53d7ab9545 Use symbolic WAIT_FAILED constant instead of raw -1.
No real changes, just make the code slightly more readable by using a symbolic
constant instead of a magic value.

This also avoids g++ warnings about implicit conversion of a signed value (-1)
to unsigned type (DWORD).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 15:13:56 +00:00
Vadim Zeitlin
1fdce0aeb9 Round the values in wxDC coordinate calculations.
Make the conversion of logical coordinates to the device ones more precise by
avoiding errors due to truncation of floating point values to integer ones.

See #13284.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 15:13:52 +00:00
Vadim Zeitlin
f76c3ff677 Round font sizes in AdjustToSymbolicSize() instead of truncating.
This was mainly done to suppress g++ warning about implicit float to int
conversion but it also seems to make more sense to round the value here
instead of truncating it to int.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 15:13:49 +00:00
Jouk Jansen
db06cdc08c add src/gtk/anybutton.cpp to OpenVMS makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 09:07:13 +00:00
Robin Dunn
fc85e0db36 Use wxAnyButton's DoGetBestSize for toggle buttons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-16 00:43:22 +00:00
Vadim Zeitlin
bc927c9a8c Generic wxHyperlinkCtrl appearance and behaviour improvements.
Show focus rectangle around the control when it has focus. Also handle the
space key to trigger the link.

Also allow using either the native or generic version of the class in the
widgets sample.

Closes #11285.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-15 21:56:23 +00:00
Vadim Zeitlin
da8eb5f5bb Don't crash in wxOSX wxTextEntry if the window wasn't created yet.
Assert instead of crashing in wxTextEntry method if the associated window
hadn't been fully created yet.

Closes #13218.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-15 21:56:18 +00:00
Vadim Zeitlin
42440b08ea Fall back to the valid normal bitmap if no state-specific bitmap is set.
After the recent changes we could try to use an invalid bitmap in wxMSW toggle
button code as GetNormalState() could return State_Pressed and then we used
the bitmap for the pressed state unconditionally even if it wasn't set.

It seems more correct to always fall back to the normal bitmap as the pressed
state is already taken into account by GetButtonState().

This fixes unit test failures under MSW after the button classes refactoring.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-15 21:31:48 +00:00
Vadim Zeitlin
c0866512a7 Fix crash when creating and quickly destroying a wxTLW in wxGTK.
Don't crash in timer callback added to work around broken Ubuntu 11.04 WM,
remove it when the window is being destroyed.

This corrects a crash which happened if a TLW was created and destroyed before
this timer had time to fire under Ubuntu.

Closes #13146.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-15 13:33:02 +00:00
Julian Smart
5219cf0588 Caret dropout fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-15 07:54:41 +00:00
Robin Dunn
888cd68347 wxButtonBase::GetDefaultSize is declared but not implemented in the wxOSX-cocoa port. Add an implementation that uses wxAnyButton::GetDefaultSize.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-14 22:19:09 +00:00
Vadim Zeitlin
b4354db179 Refactor wxButton and wxToggleButton to derive from wxAnyButton.
Introduce wxAnyButton class, a common base class for wxButton and
wxToggleButton, allowing to reuse the same implementation for them.

This also allows to implement support for bitmaps in wxToggleButton for all
platforms and make wxBitmapToggleButton a trivial subclass of it everywhere,
similarly to wxBitmapButton and wxButton.

Closes #13198.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-14 13:00:42 +00:00
Vadim Zeitlin
0f4a54a655 Implement wxDataViewCtrl::SetRowHeight() for wxGTK.
Also document that this method can only be used to increase the row height
compared to the default, not to make it smaller.

See #12749.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-11 23:56:44 +00:00
Stefan Csomor
57d3e26697 adding implementation for osx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 23:05:52 +00:00
Stefan Csomor
133cb28b21 adding placeholders for interpolation setting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 21:38:08 +00:00
Stefan Csomor
b58dca4c0f fixing two warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 01:25:27 +00:00
Stefan Csomor
e5062a3130 fixing memory leak
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 01:24:21 +00:00
Stefan Csomor
9d320a7a84 inner layout support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 01:09:33 +00:00
Stefan Csomor
adf264f222 adapting ownership semantics to cocoa convention
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 01:08:43 +00:00
Stefan Csomor
415dfa555a init pattern
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 01:07:39 +00:00
Stefan Csomor
6a62b2c6ed better ownership handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 00:32:27 +00:00
Stefan Csomor
974c115dff guard against nullptr
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 00:31:05 +00:00
Stefan Csomor
395345de7d using common colorspace method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 00:30:26 +00:00
Stefan Csomor
4d3e2dc993 add member for sheetdialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 00:29:13 +00:00
Stefan Csomor
c2a22141f8 better retain/release semantics
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-09 00:24:21 +00:00
Stefan Csomor
668e3f703e adapting to init pattern
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 23:05:54 +00:00
Stefan Csomor
4892e67d72 adding fallback
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 23:05:23 +00:00
Stefan Csomor
361937c786 newstate already set
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 23:02:25 +00:00
Stefan Csomor
dcc5dc59e2 adding fallback
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 23:01:53 +00:00
Stefan Csomor
c9e98a88db making intention clearer by explicit parentheses
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 23:00:36 +00:00
Stefan Csomor
3dc3b2ab56 fixing uninit vars warning and memory errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 22:58:57 +00:00
Stefan Csomor
a985b2c891 adapting to init pattern
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 22:50:28 +00:00
Stefan Csomor
f599a41509 adapting to init pattern
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-08 22:48:29 +00:00
Vadim Zeitlin
bbfd454841 Add wxDataViewCtrl::SetRowHeight() and provide its generic implementation.
Allow changing the (fixed) row height without using wxDV_VARIABLE_LINE_HEIGHT
which may slow down the control display too much.

The new method is not implemented for the native GTK and OS X implementations
yet but should be simple to implement there.

See #12749.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-07 22:49:56 +00:00
Vadim Zeitlin
208f99c3e3 Update status bar fields widths from WM_SIZE handler.
Doing it immediately after calling ::SetWindowPos(), as we used to do, didn't
work correctly (presumably because the status bar fields widths were not
updated yet internally) and resulted in not updating the ellipsized fields
values when "Show window contents while dragging" Windows option was off.
Doing it when we get WM_SIZE works in this case too.

Closes #13257.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-07 22:49:51 +00:00
Vadim Zeitlin
007d2de3c4 Handle colours with alpha channel correctly in wxSVGFileDC.
wxColour::GetAsString(wxC2S_HTML_SYNTAX) doesn't accept colours with alpha
channel as alpha is not representable in HTML syntax, so avoid calling this
function with such colours, remove the alpha component in the caller before
using it instead.

Also slightly simplify wxBrushString() and wxPenString() functions code in
wxSVGFileDC implementation.

Closes #13214.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-07 22:27:35 +00:00
Paul Cornett
9579070b94 avoid direct struct access for GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-07 16:24:26 +00:00
Stefan Csomor
ab332136e4 using higher abstraction to allow for optimized implementations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-06-06 23:23:35 +00:00