Commit Graph

16270 Commits

Author SHA1 Message Date
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
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
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
Vadim Zeitlin
316da5d468 Auto-link expat and zlib even in non-GUI programs when using MSVC.
These libraries are not GUI-specific and should be included even in console
applications.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-03 12:44:40 +00:00
Vadim Zeitlin
1a2e0268f0 Include the required headers from wx/custombgwin.h.
Make this header self-contained, i.e. safe to include as the first wxWidgets
header being included from the user code.

Closes #16391.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-24 10:58:47 +00:00
Stefan Csomor
c7f1a920b1 supporting menu dimension retrieval for menubars, fixes #2570
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-20 15:28:20 +00:00
Vadim Zeitlin
c3ba472abb Fix test for __WXOSX__ in common code.
Check whether it's defined, not whether it's true.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-16 22:55:08 +00:00
Stefan Csomor
0d6d012936 common type for native rectangle
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-15 17:14:21 +00:00
Artur Wieczorek
1a2983d433 Resolve ambiguity in multiple inheritance of function GetPropertyByLabel in wxPGPage.
In wxPropertyGridPage class derived from wxPropertyGridPageState and wxPropertyGridInterface, function GetPropertyByLabel is inherited from both base classes.
To resolve this ambiguity, function defined in wxPGInterface is introduced in wxPGPage through 'using-declaration'.
(This is a temporary fix and finally GetPropertyByLabel function should be removed from wxPropertyGridPageState.)

See #15251.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-14 17:18:58 +00:00
Stefan Csomor
c6201f2d70 completing in place swapping macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-14 16:03:03 +00:00
Stefan Csomor
14c736b89b fixing commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-14 15:50:13 +00:00
Stefan Csomor
b8c3fc0771 adding in place replacements avoiding self assignment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-14 15:42:34 +00:00
Artur Wieczorek
3c483f6739 Use native renderers in wxPG under MSW by default.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-13 16:38:19 +00:00
Vadim Zeitlin
45adc64f9f Fix inserting an element of wxArrayString itself back into it.
Do the insertion/addition before deallocating the old memory to allow things
like array.Add(array[0]) to work correctly.

Closes #2290.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-13 14:30:22 +00:00
Tim Kosse
635694c9b3 wxBitmapComboBoxBase uses wxArrayPtrVoid, so we need to #include "wx/dynarray.h". This fixes a compile error in situations where wx/dynarray.h is not implicitly included through other headers, e.g. when building wx with many features disabled.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-12 08:31:22 +00:00
Artur Wieczorek
63a9cc4c2e Use automatically generated ID values for wxPG sub-controls.
Currently in wxPG there are used fixed "magic" ID values to identify sub-controls and this can lead to side effects if these values overlap with ID values assigned to another controls in the application (like e.g. menu items).

Closes #13634.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-09 18:56:36 +00:00
Artur Wieczorek
71db47d26a Refresh property grid when property is switched to read-only state.
Property grid is refreshed to reflect the new state of the property.
Small refactoring of wxPropertyGridInterface class: SetPropertyReadOnly() function body moved from header file to source file.

Closes #16306.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-07 22:32:57 +00:00
Stefan Csomor
2ade9eb811 added missing impl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-06 14:56:30 +00:00
Stefan Csomor
74493e3f6b support for 64 bit ios
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-06 10:33:22 +00:00
Tim Kosse
705a1b547d Implement wxGenericListCtrl::EndEditLabel.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-06 10:32:42 +00:00
Stefan Csomor
c78bca596e adding base virtuals
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-04 20:10:09 +00:00
Stefan Csomor
ec73c71d6a supporting NSString also in Carbon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-04 16:58:03 +00:00
Stefan Csomor
96ac247a9e adding 10.9 constants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-04 10:35:10 +00:00
Vadim Zeitlin
fb99672f62 Hopefully finish removing the old wxCocoa port.
Get rid of the rest of __WXCOCOA__ tests in the sources.

Drop configure option for using it.

Also remove the documentation for this port.

This should have also been part of r76735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 22:03:21 +00:00
Vadim Zeitlin
1ca1d77e01 Remove the inclusions of wx/cocoa headers which don't exist any more.
This should have been part of r76735: in addition to removing the old Cocoa
port headers, also remove the references to them from the common include
files.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-02 13:28:42 +00:00
Vadim Zeitlin
e1655f5394 Stop duplicating wxFrame dtor in all ports.
wxGTK1, wxGTK, wxMSW and wxOSX all did the same thing in their wxFrame dtor,
so just do it in wxFrameBase instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-02 13:28:29 +00:00
Dimitri Schoolwerth
0f84eca7c6 Fix wxMenuItem::SetBitmap infinite recursion differently.
Don't call SetBitmap from GetHBitmapForMenu but instead handle possibly
needed bitmap modifications earlier on during SetBitmap. Allows for
GetHBitmapForMenu to be const and gets rid of the clumsy re-entry check
introduced in r76754.
Also check the bitmap for alpha presence instead of needlessly converting
the bitmap to an image and checking the latter for alpha.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-27 05:38:11 +00:00
Dimitri Schoolwerth
d201caad89 Clean up GetHBitmapForMenu.
Merge wxMenuItem::GetHBitmapForMenuCheckable and ::DoGetHBitmapForMenu
into wxMenuItem::GetHBitmapForMenu. Change its boolean parameter to an
enum specifying the kind of bitmap that is wanted (normal, checked, or
unchecked).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-24 18:54:05 +00:00
Dimitri Schoolwerth
dadc0ed341 Fixes for building wxMSW under Cygwin.
Replace a few __WXMSW__ tests with __WINDOWS__ as the former is not
defined any longer (since r73290) when compiling with wxUSE_GUI set to 0.

Tested changes with both wxGTK and wxMSW builds under Cygwin.

Closes #14382.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-24 02:47:13 +00:00
Dimitri Schoolwerth
6b12639c49 Fix failing Win32 calls with checkable menu item.
Since r76202 InsertMenuItem is used when adding checkable menu items even
without a bitmap. The call fails because hbmpChecked and hbmpUnchecked are
set to HBMMENU_CALLBACK on pre-Vista, making the menu owner drawn
unnecessarily.

Fix by adding GetHBitmapForMenuCheckable which is used when assigning
values to hbmpChecked and hbmpUnchecked. GetHBitmapForMenu remains
unchanged (for possible porting reasons) and is used for hBmpItem only.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-23 20:05:30 +00:00
Vadim Zeitlin
af77028fcf Add wxDictionaryStringSortAscending comparison function.
Add "dictionary sort" callbacks and document them and the already existing
wxStringSortAscending() and wxStringSortDescending().

See #16330.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-23 12:02:09 +00:00
Vadim Zeitlin
e2e79bd000 Allow specifying custom comparator for wxSortedArrayString.
Add a possibility to order wxSortedArrayString in some order different from
the default alphabetical one.

Closes #16330.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-23 01:08:50 +00:00
Vadim Zeitlin
8161cf19e9 Change wxStringSort{As,De}cending() to use references, not pointers.
This is more convenient to use and makes more sense as the arguments are never
null.

See #16330.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-23 01:08:44 +00:00
Vadim Zeitlin
3c92ebb168 Force wxUSE_GRAPHICS_CONTEXT to 0 for wxMotif build.
wxGraphicsContext is not implemented in this port.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-23 01:08:38 +00:00
Stefan Csomor
1a5b712103 using proper types for webkit variants, see #16329
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-20 08:14:46 +00:00
Stefan Csomor
e7bf85055c removing 'old' cocoa port
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-18 16:52:20 +00:00
Stefan Csomor
d5f39e6305 adapting const parameter convention
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-18 14:22:29 +00:00
Václav Slavík
bd650ec3d9 Use IRichEditOleCallback for wxTextCtrl's context menu.
In wxMSW, use IRichEditOleCallback::GetContextMenu() to provide our
default context menu for rich text controls, instead of using
EVT_CONTEXT_MENU.

The latter completely overrides native control's handling and in
particular breaks Windows 8's builtin spellchecking support.

Fall back to the previous non-OLE code for older richtext versions.

Also make the new MSWCreateContextMenu() method virtual so that the
context menu can be customized.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-18 12:51:49 +00:00
Václav Slavík
2cf91e5c7c Add wxMenu::MSWDetachHMENU().
Make it possible to pass ownership of a wxMenu to win32.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-18 12:51:45 +00:00
Václav Slavík
3821abef51 Handle WM_*MENU* events in wxWindow.
Contrary to MSDN implications, at least some of these messages are not
actually sent to the TLW for popup menus, but to the owning window or
even its parent window (!).

Move the handling of these events from wxTLW to wxWindow.  Move menu
depth tracking to wxFrame, because it only makes sense for frame's
menus and move DoGiveHelp() from wxTLW to wxFrame.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-18 12:51:39 +00:00
Tim Kosse
9280f836c2 Under certain conditions, selecting a menu item triggers an assert in toplevel.cpp:1539:
wxASSERT_MSG( m_menuDepth > 0, wxS("No open menus?") );

The conditions to reproduce:
- Windows 8.1
- An application manifest that indicates Windows 8.1 compatibility

In this case, wxGetWinVersion() used to return wxWinVersion_Unknown (Without a manifest indicating 8.1 support, wxWinVersion_8 is being returned). This in turn causes the version check against Windows98 in toplevel.cpp:450 to fail, ultimately leading to the mentioned assert.

See http://msdn.microsoft.com/en-us/library/windows/desktop/ms724439%28v=vs.85%29.aspx for details.

This patch on trunk adjusts adds the wxWinVersion_8_1 enum value and returns it on Windows 8.1 if the program is manifested as such.

In future, a different approach needs to be chosen that does not depend the deprecated GetVersion function.




git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-15 22:17:39 +00:00
Vadim Zeitlin
895a58609b Fix misspellings of "occurred" and "occurrences".
See https://github.com/wxWidgets/wxWidgets/pull/9

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-11 15:25:33 +00:00
Vadim Zeitlin
2594929d9f Move include/wx/unix/execute.h to include/wx/unix/private.
This header is private and is not supposed to be used from the outside the
library.

See #16325.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-11 14:55:08 +00:00
Vadim Zeitlin
b6469b4369 Fix changing the label of a submenu in wxMSW.
Use position, not the ID, to find the native menu items to allow the code in
wxMenuItem::SetItemLabel() and DoSetBitmap() to also work with submenus and
not just the normal items.

Closes #16246.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-09 20:33:17 +00:00
Vadim Zeitlin
af692f090b Fix getting position of wxPopupWindow in wxMSW.
Don't offset the returned values by the parent window origin unnecessarily: as
popup windows are created as children of the desktop window in wxMSW, their
coordinates are already expressed in screen coordinate system (which is
exactly the same as display window coordinate system) and we must not try to
translate them to it once again, this is completely wrong and was probably a
left over from earlier wxPopupWindow implementation in which it wasn't created
as a child of desktop.

Closes #4440.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-09 20:33:11 +00:00
Vadim Zeitlin
82112b5de2 Fix changing wxWindow ID in wxMSW.
This must be done both at wxWidgets and MSW level, otherwise changing the ID
results in window not recognizing itself as the recipient of the messages sent
to it by Windows.

Closes #3697.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-09 00:54:12 +00:00
Vadim Zeitlin
5979baa0e2 Compilation fix for wxMSW 64 bit build with icc.
This compiler doesn't want to narrow INVALID_HANDLE_VALUE to int, so use
wxUIntPtr instead.

See #16233.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-02 18:14:22 +00:00
Vadim Zeitlin
649deb111a Explicitly convert int to HANDLE to fix 64 bit wxMSW build.
This fixes g++ compilation problem in 64 bit mode after the changes of r76653,
it complained about comparing pointer (HANDLE) with an integer. It might also
fix compilation with icc.

See #16233.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-02 13:15:19 +00:00
Vadim Zeitlin
35434eea52 Hide tooltip when its associated window is hidden in wxMSW.
Don't leave the tooltip shown on screen if the window it was shown for was
hidden or iconized (without moving the mouse, as that would have dismissed the
tooltip as well).

Closes #16265.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-02 01:15:39 +00:00
Vadim Zeitlin
70bcb9ac46 Add a simple wrapper for Windows event handle object.
This will be used instead of raw events in wxMSW code in the upcoming commit.

See #16233.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-06-02 01:15:25 +00:00