Some more accelerator fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -99,11 +99,11 @@ wxAcceleratorTable::wxAcceleratorTable(
|
||||
int i;
|
||||
|
||||
m_refData = new wxAcceleratorRefData;
|
||||
pArr = (PACCELTABLE) new int[nAccelLength];
|
||||
pArr = (PACCELTABLE) new BYTE[nAccelLength];
|
||||
|
||||
for (i = 0; i < n; i++)
|
||||
{
|
||||
USHORT uVirt = 0;
|
||||
USHORT uVirt = AF_CHAR;
|
||||
|
||||
if (vaEntries[i].GetFlags() & wxACCEL_ALT)
|
||||
uVirt |= AF_ALT;
|
||||
@@ -116,7 +116,8 @@ wxAcceleratorTable::wxAcceleratorTable(
|
||||
USHORT uKey = wxCharCodeWXToOS2( vaEntries[i].GetKeyCode()
|
||||
,&bIsVirtual
|
||||
);
|
||||
uVirt |= AF_VIRTUALKEY;
|
||||
if (bIsVirtual)
|
||||
uVirt |= AF_VIRTUALKEY;
|
||||
|
||||
USHORT uCmd = vaEntries[i].GetCommand();
|
||||
|
||||
|
@@ -267,15 +267,6 @@ bool wxMenu::DoInsertOrAppend(
|
||||
wxString sError;
|
||||
#if wxUSE_ACCEL
|
||||
UpdateAccel(pItem);
|
||||
|
||||
//
|
||||
// Ensure the accelerator table is set to the frame (not the client!)
|
||||
//
|
||||
if (!::WinSetAccelTable( vHabmain
|
||||
,(HWND)pFrame->GetFrame()
|
||||
,m_vAccelTable.GetHACCEL()
|
||||
))
|
||||
wxLogLastError("WinSetAccelTable");
|
||||
#endif // wxUSE_ACCEL
|
||||
|
||||
//
|
||||
@@ -1017,6 +1008,14 @@ void wxMenuBar::Attach(
|
||||
|
||||
#if wxUSE_ACCEL
|
||||
RebuildAccelTable();
|
||||
//
|
||||
// Ensure the accelerator table is set to the frame (not the client!)
|
||||
//
|
||||
if (!::WinSetAccelTable( vHabmain
|
||||
,(HWND)pFrame->GetFrame()
|
||||
,m_vAccelTable.GetHACCEL()
|
||||
))
|
||||
wxLogLastError("WinSetAccelTable");
|
||||
#endif // wxUSE_ACCEL
|
||||
} // end of wxMenuBar::Attach
|
||||
|
||||
|
Reference in New Issue
Block a user