Commit Graph

44 Commits

Author SHA1 Message Date
Marc Jessome
a052557af3 Add wxKeyEvent::IsAutoRepeat()
The new method is currently supported in Qt, Cocoa, MSW ports (i.e. all
major ones except for wxGTK).

Keyboard example updated with a "Repeat" column.

Closes https://github.com/wxWidgets/wxWidgets/pull/2414
2021-07-06 12:58:05 +01:00
PB
f57f214122 Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
Vadim Zeitlin
542aafff39 Ensure that we accept WXK_XXX in RegisterHotKey() in wxMSW
RegisterHotKey() wrongly expected to be given VK_XXX MSW virtual key
code constant, which couldn't work in portable code, so fix it to accept
WXK_XXX constants, while preserving compatibility by still accepting
VK_XXX values not clashing with them.
2019-05-02 20:53:18 +02:00
Vadim Zeitlin
2cc44337c6 Use only wxFont ctor from wxFontInfo in the samples
Follow the documentation advice and prefer to use the ctor taking
wxFontInfo as it makes the code slightly shorter and more readable.
2018-09-17 15:29:42 +02:00
Vadim Zeitlin
5f7a6bd15b Replace Connect() with Bind() in all samples and utils too
Still use Connect() in unit tests which were written explicitly for it
and in EventConnector, which can't use Bind() as it uses a variable for
the event type.

No real changes, just use the newer and more convenient function.
2018-05-31 16:19:23 +02:00
Maarten Bent
3b98570f57 Miscellaneous improvements to the multimedia keys support
Simplified mapping keys on Windows.

Handle multimedia keys in the keyboard, text and treetest samples.

Ignore multimedia keys in wxRichTextCtrl.
2016-01-20 18:56:03 +01:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Paul Cornett
8b4ae731d3 use wxOVERRIDE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 00:02:23 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
ce7fe42e84 Provide shorter synonyms for wxEVT_XXX constants.
Use the same short names as are used by the event table macros for the event
type constants themselves. This makes them much more comfortable to use, e.g.
Bind(wxEVT_BUTTON) compared to Bind(wxEVT_COMMAND_BUTTON_CLICKED).

The old long names are still kept for backwards compatibility and shouldn't be
removed as it doesn't really cost anything to continue providing them, but all
new event types should only use the short versions.

Closes #10661.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 10:11:03 +00:00
Vadim Zeitlin
c77ef57e6e Allow using either single or multi line wxTextCtrl in keyboard sample.
These controls are implemented quite differently in wxGTK, so it's convenient
to be able to test both of them in the sample to check that they both behave
correctly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-03-21 22:37:06 +00:00
Vadim Zeitlin
819638a71f Tweak wxGTK keyboard handling to allow accelerators to work again.
Accelerators were broken by the changes of r72640 which were done to ensure
that the focused window gets the keyboard event first, before its top level
parent. Fix them now by still passing the events to the focused window first
but also passing them to the parent top level if it hasn't been handled by the
focused child.

Unfortunately this is still not fully compatible with wxMSW because in wxGTK
wxEVT_CHAR handler must skip the event in order to allow the accelerator using
the same key to work, while in wxMSW the accelerator can only be suppressed by
overriding wxWindow::MSWShouldPreProcessMessage(). We will need to make the
two ports behave in the same way when the event is not skipped in the future.

But for now, at least make them both behave correctly when the handler does
skip the event.

Closes #14553.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-03-21 22:36:57 +00:00
Vadim Zeitlin
7c8bfa876a Add an option to use wxTextCtrl as input window in keyboard sample.
Keyboard handling is subtly different in wxGTK for native controls and generic
wxWindows so add a way to test both of them in the sample.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-31 11:09:00 +00:00
Vadim Zeitlin
c4f49d69cf Make keyboard sample output less confusing.
Warn if key presses occur when the input window doesn't have focus as the
usual key events are not generated then which could be understood as a bug in
the sample instead of the correct result.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-29 22:08:21 +00:00
Vadim Zeitlin
2f7baaeccf Don't eagerly set wxKeyEvent position fields.
This results in a noticeable delay when using wxGTK via a remote X11
connection for every key event as a round trip to server is needed to get the
mouse pointer position every time a key is pressed or released.

Only provide the position on demand. And explain that it's actually not very
useful as it's simply the same as the current mouse position.

Closes #14361.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-24 20:45:52 +00:00
Vadim Zeitlin
e709239889 Use wxHAS_IMAGES_IN_RESOURCES instead of explicit platform checks.
Add a special symbol which is defined only if the icons and other images (e.g.
cursor) are in the separate resource files and don't need to be embedded as
XPMs in the main program.

This makes the checks more clear and more customizable as it's enough to
change wxHAS_IMAGES_IN_RESOURCES definition instead of changing many platform
checks.

Closes #14050.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-03-04 00:28:58 +00:00
Dimitri Schoolwerth
2d143b6689 Removed ellipsis from "About..." occurrences.
MS and Apple guidelines mention ellipses should generally be used when a command needs additional information from the user before the operation can execute. This is not the case for showing an about dialog so the ellipses have been removed.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-20 16:51:09 +00:00
Vadim Zeitlin
edf5822ace Implement EVT_CHAR_HOOK for wxOSX/Cocoa.
Send wxEVT_CHAR_HOOK event from wxOSX/Cocoa code.

Also test for wxEVT_CHAR_HOOK in the keyboard sample and show the effect of
not skipping it.

Closes #12431.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-12-02 00:50:12 +00:00
Vadim Zeitlin
d7b3992a5f Replace erroneous comma with a semicolon in keyboard sample.
Fix typo in the sample, comma was used instead of a semicolon. The code still
worked correctly but make it look correctly too now.

Closes #13453.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-09-21 15:08:06 +00:00
Stefan Csomor
d3f81b8533 adding raw_control for osx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-08-24 11:19:43 +00:00
Vadim Zeitlin
e7b12eece0 Improve printing out of pressed keys in the keyboard sample.
Add missing elements of wxKeyCode enum ("Windows" and "Command" keys) to the
GetVirtualKeyCodeName() function in the sample.

Also output "unknown" and not blank for WXK_NONE.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-11 10:18:57 +00:00
Vadim Zeitlin
b6885972ee Fixes to key codes in keyboard events generated by wxMSW.
Only set Unicode key code if the event corresponds to a character key and set
it to (newly added) WXK_NONE for the other ones to avoid nonsensical values in
it for e.g. "Home" key presses.

Also set non-Unicode key to WXK_NONE for the characters that can't be
represented in the current locale. This is consistent with wxGTK and avoids
conflicts between special key values and Unicode keys.

Clearly document the above behaviour.

Notice that implementing the correct behaviour in wxMSW involved untangling
previously interwoven WM_KEY{DOWN,UP} and WM_CHAR messages handlers. Clearly
separate them now as they get different input (key codes for the former,
characters for the latter) and especially don't try to convert from both kinds
of input using a single wxCharCodeMSWToWX() function. As this function doesn't
need to distinguish between keys and characters any more it can simply return
the converted value in all cases instead of returning 0 sometimes to indicate
a character value instead of a key. Simplify the code using this function
accordingly.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-11 10:18:47 +00:00
Vadim Zeitlin
a30305f8b0 Add test of accelerators using both ASCII and non-ASCII keys to the sample.
Test using 'Ctrl-A', just 'A' and 'Esc' as accelerators as all of them except
the first one were reported not to work in some cases.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-17 16:44:22 +00:00
Francesco Montorsi
41f02b9acc always call SetIcon() on the main frame of the sample; some small cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 01:01:00 +00:00
Vadim Zeitlin
66ad7d6a0a compilation fix for builds without wxHAS_RAW_KEY_CODES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-19 05:33:36 +00:00
Vadim Zeitlin
a96bab36bf present information about key presses better; some code simplification (#9541)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-07 15:24:49 +00:00
Václav Slavík
52bbab36a2 report Unicode characters when reporting EVT_CHAR in keyboard sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-28 11:09:20 +00:00
Václav Slavík
7ef3025745 use the new DoLogString signature (fixes with 2.8 compat switched off)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-04-28 10:57:48 +00:00
Vadim Zeitlin
4849eced7f make the text in the top area more readable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-29 01:25:40 +00:00
Vadim Zeitlin
6e69dd00cc don't use deprecated DoLog() overload
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-29 01:23:38 +00:00
Vadim Zeitlin
45e6e6f8ab call OnInit() from all samples to allow using standard command line options with all of them (patch 1623971)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-02-04 00:34:18 +00:00
Włodzimierz Skiba
277956850e Fix after removal of PRIOR/NEXT in common headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-24 08:28:08 +00:00
Jamie Gadd
413553cc60 Distinguish numpad extended keys. Fixes bug #1327720
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-22 05:04:31 +00:00
Václav Slavík
749bfe9a6d compilation fixes for gcc-3.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-02 12:36:02 +00:00
Włodzimierz Skiba
b29903d485 wxUSE_LOG fixes and sizer adjustements related to positioning with/without LOG output.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-21 10:29:21 +00:00
Julian Smart
be5a51fb59 More name changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-25 11:20:37 +00:00
Włodzimierz Skiba
ee1a622dd0 -1->wxID_ANY, TRUE->true and FALSE->false replacements.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-19 16:24:20 +00:00
Dimitri Schoolwerth
d1f4723592 applied patch #929947: "Various cleaning of warnings under MSW"; removed some tabs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-04-06 13:19:42 +00:00
Julian Smart
dacaa6f142 Applied patch [ 846809 ] Cleaning of 11 samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-12-11 11:25:46 +00:00
Mattia Barbon
87728739f2 Various warning and Unicode fixes from ABX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-09-09 20:24:34 +00:00
Vadim Zeitlin
2b5f62a0b2 merged 2.4 branch into the trunk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-04 14:11:26 +00:00
Vadim Zeitlin
59db511380 report all ASCII keys, not just the US-ASCII ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-04-08 13:35:36 +00:00
Vadim Zeitlin
62fa9712a0 added option to show the raw key codes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-04-07 21:02:10 +00:00
Vadim Zeitlin
7de7aed440 added a new sample to show the key events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-04-07 18:08:25 +00:00