|
|
|
|
Forum
Please
Log In
to post a new message or reply to an existing one. If you are not registered, please
register.
NOTE: Some forums may be read-only if you are not currently subscribed to
our technical support services.
Subject |
Author |
Date |
|
Stephan Finkler
|
Mar 15, 2005 - 11:04 AM
|
Setting an accelerator in the customize form makes a call to CExtCustomizePageKeyboard::OnAccelAssign().
There is a call to "pSite->OnFormatCmdAccelText(_cmdKeyInfo)" where I can change the accelerator text. In OnFormatCmdAccelText I have to know the last _cmdKeyInfo of this CmdID, because when the cmdKeyInfo has changed I have to set a new text.
Is there an easy way to get this information.
Thanks for any advice.
|
|
Technical Support
|
Mar 16, 2005 - 3:22 AM
|
Thank you for the interesting question! At present, we cannot find an easy way to solve your task. The problem is hidden in the internal structure of CExtCustomizeSite class which stores key combinations in the CExtCustomizeSize::CMapKey2Cmd object. The latter is the map which uses a key code as a map key and a command identifier as a key value. There is no place in this design to save the last assigned command key combination, i.e. no priority nor any time stamp is supported for a particular key combination of a command. We supposed that all the key combinations for a command have equal priorities and there are no reason to remember a particular of them as the last. Besides, we need to change the serialization algorithm of the customize site and make it remember key time stamps or priorities. Please let us know whether this task is critical for you?
|
|
Stephan Finkler
|
Mar 16, 2005 - 3:40 AM
|
>Besides, we need to change the serialization algorithm of the customize site and >make it remember key time stamps or priorities
Thats my problem too. So I decided to use your technique to assign a accelerator. (May be a virtual function call to CExtCustomizeSite in OnAccelAssign() with CCmdKeyInfos in following releases would be nice)
Thanks for your help
|
|
Technical Support
|
Mar 16, 2005 - 9:13 AM
|
Thank you for your suggestion. Anyway, sometime in the future we will rewrite the accelerator support code for the customize site because Prof-UIS still does not support multiple key accelerator combinations (e.g., Ctrl+K,K as an accelerator of a particular command) which cannot be now implemented by using Win32 HACCEL accelerator table handles.
|
|