Robin Dunn
3be6f59151
m_id was already set, don't set it to the passed in value again as then we lose the value which may have been calculated for wxID_ANY.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-05 01:23:18 +00:00
Václav Slavík
0c51948f7d
Whitelist wxID_NONE as valid menu item ID.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-09 10:27:40 +00:00
Vadim Zeitlin
a104022931
Fix assert during separator items creation introduced by r64226.
...
Add separators with correct kind, setting m_kind doesn't work any more because
it's overwritten below.
Also add a comment explaining why is overriding the user-specified kind the
right thing to do here.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-07 23:38:26 +00:00
Vadim Zeitlin
d93b98740c
Check that menu ids are limited to MSW-supported range.
...
We already check that positive (i.e. specified by user and not generated by
wx) window ids are in 0..SHRT_MAX range. Now do the same for the menu ids as
ids outside of this range suffer from the same problem under MSW: they get
wrapped and become negative when we receive events for them.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-06 12:40:18 +00:00
Vadim Zeitlin
394cfde3cf
Recurse upwards the menu hierarchy in wxMenu::GetWindow().
...
Only the top level menus have non-NULL wxMenuBar pointer too, so recurse
upwards the menu hierarchy in GetWindow() and not (just) GetInvokingWindow().
This fixes event processing for submenus broken by the recent changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 20:39:39 +00:00
Vadim Zeitlin
1aecefa501
A slightly better compilation fix after PCH-less build breakage in r64126.
...
Include wx/frame.h header instead of casting wxFrame to wxWindow using C style
cast. Although this does work now and probably will work later too it seems
better to not use the cast nevertheless.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 16:59:09 +00:00
Paul Cornett
9a4a080711
non-pch build fix
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 14:40:58 +00:00
Vadim Zeitlin
7739f9c947
Use wxMenu::GetWindow() instead of GetInvokingWindow() in SendEvent().
...
This simplifies the code as we don't need to walk the menu hierarchy upwards
any more (GetInvokingWindow() does it now) and also makes it work for all
menus, not just the popup ones.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 15:07:55 +00:00
Vadim Zeitlin
7118e711dc
Move wxMSW wxMenu::GetWindow() down to wxMenuBase.
...
GetInvokingWindow() can only be used for the popup menus which have the
invoking window, so add a new function which can be used to get the window
associated with any kind of menu in all ports -- it already existed in wxMSW
but is needed elsewhere too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-24 15:07:39 +00:00
Vadim Zeitlin
e3f5caa223
Return correct invoking window for submenus of a popup menu.
...
SetInvokingWindow() is only called for the top menu being popped up itself but
the invoking window should also be associated with its submenus.
Modify GetInvokingWindow() to return the parents invoking window for submenus.
This fixes a crash due to returning NULL from wxMenu::GetWindow() in wxMSW
owner-drawn code.
And it also makes redundant some code in wxUniversal wxMenu implementation
which can now simply use GetInvokingWindow() in all cases.
Closes #11957 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-22 11:21:35 +00:00
Vadim Zeitlin
b871bb951a
Check for menu title being non-empty when appending it to the menu bar.
...
It doesn't make sense to add a menu with empty title to the menu bar so assert
that the title is not empty and fail to add the menu if it is.
See r64033 in wxQT branch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-20 11:59:46 +00:00
Vadim Zeitlin
9a83f86094
Globally replace _T() with wxT().
...
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660 ).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
d3b9f782ef
don't use annoying and unneeded in C++ casts of NULL to "T *" in all other files neither
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-19 13:55:27 +00:00
Vadim Zeitlin
9cd28f4815
allow creating items without parent menus ( #3425 )
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-22 14:47:40 +00:00
Paul Cornett
cabb286d30
move 8 copies of the same function to common code
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-11 05:23:53 +00:00
Paul Cornett
3fd7b18a61
remove redundant WX_CLEAR_LIST, it's done by base dtor
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-24 18:13:12 +00:00
Vadim Zeitlin
d9df421aae
no real changes, just use HandleWindowEvent() instead of GetEventHandler()->SafelyProcessEvent() in the last change
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-23 23:03:40 +00:00
Václav Slavík
147e8ebc05
catch exceptions when sending menu events
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-23 22:31:04 +00:00
Vadim Zeitlin
e2f3bc4110
some Hildon integration work: use HildonProgram (for integration with the OS), HildonWindow (which has native appearance) and more native-like menus
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-12 00:25:09 +00:00
Vadim Zeitlin
0edeeb6d96
use wxWindow::NewControlId() instead of wxNewId() to avoid clashes with user-defined ids; bug fixes in wxMSW for negative menu and toolbar items ids
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-20 22:58:55 +00:00
Julian Smart
c4e43bea7b
GetLabelTop should return the stripped label, for compatibility.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-13 15:32:08 +00:00
Julian Smart
68bc148cac
Compile fixes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-11 18:39:49 +00:00
Julian Smart
52af3158e9
Menu label consistency changes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-11 17:54:59 +00:00
Vadim Zeitlin
c36d477458
extracted wxAcceleratorEntry code from menucmn.cpp in a separate file (this globally makes sense and also fixes link when wxUSE_MENUS==0)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-05 22:03:27 +00:00
Vadim Zeitlin
88f67c2242
test for special keys first, before testing for alphanumeric ones as even keys such as WXK_F2 can be recognized as alnum in some locales, in ToString() (modified patch 1669197; bug 1620758)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 23:40:22 +00:00
Robin Dunn
f24b783af3
Revert menus and toolbars to using wxNewId() too since their IDs can't
...
be negative either
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-21 06:43:59 +00:00
Vadim Zeitlin
9249d38d6e
use wxWindow::NewControlId() instead of wxNewId() to avoid clashes with the user-defined ids
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-01-18 14:15:54 +00:00
Robin Dunn
97b2445934
It is not "Invalid" to have a menu item without an accelerator, so
...
don't be noisy about it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-08 20:04:15 +00:00
Vadim Zeitlin
345319d60c
fixes to menu stock items support (patch 1547639)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-05 21:00:55 +00:00
Vadim Zeitlin
90527a50d7
use (new) wxAcceleratorEntry::Create() instead of recently deprecated wxGetAccelFromString()
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-04 23:56:56 +00:00
Robert Roebling
ee0a94cfc2
Commited FRM's stockitem patch (empty stock items).
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-09-03 12:23:04 +00:00
Vadim Zeitlin
eeee4050cf
correct i18n problems in accel handling code (replaces patch 1465417; closes bug 1464912) and a lot of cleanup
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-24 00:56:24 +00:00
Włodzimierz Skiba
faa94f3ec8
Final and global PRIOR/NEXT change: keep consistency using only PAGE versions, deprecate old ids, remove rest of build problems with case statemets.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-27 12:25:17 +00:00
David Surovell
4d53859584
minor refactoring of menu UpdateUI handling
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-11-30 07:59:38 +00:00
Włodzimierz Skiba
0ad966eeac
Allow translated 'Space' in menu accelerators (perhaps more entries should allow it).
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-21 19:06:45 +00:00
Vadim Zeitlin
259c43f679
more extra semicolons removed (patch 1303724)
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-25 11:16:57 +00:00
Mart Raudsepp
8907154c1a
Nuke #pragma implementation/interface's
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Michael Wetherell
eb76ad0b3b
Remove duplicate code
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-08-19 13:24:38 +00:00
Włodzimierz Skiba
7448de8d8d
[1231183] 'cleanup: mismatched indentation' and other cleanings.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-07-22 17:08:42 +00:00
Włodzimierz Skiba
902725eefe
Source cleaning inspired by and included in patch '[ 1215450 ] cleanup: unreachable code.'
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-06 16:47:04 +00:00
Robert Roebling
bbcd40851c
Add conversion to and from menu hotkeys and
...
their GTK pendants.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-05-21 16:05:29 +00:00
Ryan Norton
d161e2f39a
use atoi instead of sscanf
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-04-18 21:24:03 +00:00
Włodzimierz Skiba
525d858363
Last .empty() string source cleaning before 2.5.4.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 13:57:02 +00:00
Julian Smart
7d098cfdd7
Don't return a broken accelerator object if the accelerator was not
...
recognised.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 16:06:13 +00:00
Ryan Norton
0c6099b79e
Revert files to previous version that were affected by wxIsXXX((wxChar)X) change. Note - passing a negative value to those c lib functions is undefined, and could return true on platforms using a lookup table, for example (might crash also?), which is what will happen when casting to char to ansii mode and a char is above 127
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-06 07:09:35 +00:00
Włodzimierz Skiba
32b1391332
Warning fixes to unused variables, int/wxChar keycode and other typecasting, not mixing 'type*' and 'type' variables in single line, IsEmpty to empty replacement etc.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-05 21:18:04 +00:00
Włodzimierz Skiba
4e32eea148
Source cleaning: whitespaces, tabs, -1/wxDefaultCoord/wxID_ANY/wxNOT_FOUND, TRUE/true, FALSE/false.
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-17 22:23:59 +00:00
Vadim Zeitlin
082006f3ab
detach removed submenu from the menubar too
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-25 23:13:57 +00:00
Julian Smart
655719367a
Use old licence name
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e
Name and version changes
...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00