Applied patch #1190796 (Further accelerator changes).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Neis 2005-05-14 17:34:11 +00:00
parent 92199f4cb8
commit e94d504dd6
4 changed files with 24 additions and 16 deletions

View File

@ -106,7 +106,8 @@ void wxCheckBox::SetLabel(
const wxString& rsLabel const wxString& rsLabel
) )
{ {
::WinSetWindowText(GetHwnd(), (PSZ)rsLabel.c_str()); wxString sLabel=::wxPMTextToLabel(rsLabel);
::WinSetWindowText(GetHwnd(), (PSZ)sLabel.c_str());
} // end of wxCheckBox::SetLabel } // end of wxCheckBox::SetLabel
wxSize wxCheckBox::DoGetBestSize() const wxSize wxCheckBox::DoGetBestSize() const

View File

@ -132,9 +132,11 @@ bool wxControl::OS2CreateControl(
zClass = WC_CONTAINER; zClass = WC_CONTAINER;
dwStyle |= WS_VISIBLE; dwStyle |= WS_VISIBLE;
wxString sLabel = ::wxPMTextToLabel(rsLabel);
m_hWnd = (WXHWND)::WinCreateWindow( (HWND)GetHwndOf(pParent) // Parent window handle m_hWnd = (WXHWND)::WinCreateWindow( (HWND)GetHwndOf(pParent) // Parent window handle
,(PSZ)zClass // Window class ,(PSZ)zClass // Window class
,(PSZ)rsLabel.c_str() // Initial Text ,(PSZ)sLabel.c_str() // Initial Text
,(ULONG)dwStyle // Style flags ,(ULONG)dwStyle // Style flags
,(LONG)0 // X pos of origin ,(LONG)0 // X pos of origin
,(LONG)0 // Y pos of origin ,(LONG)0 // Y pos of origin

View File

@ -201,7 +201,7 @@ void wxRadioButton::SetFocus()
// generates BN_CLICKED which leads to showing another dialog and so on // generates BN_CLICKED which leads to showing another dialog and so on
// without end! // without end!
// //
// to aviod this, we drop the pseudo BN_CLICKED events generated when the // to avoid this, we drop the pseudo BN_CLICKED events generated when the
// button gains focus // button gains focus
m_bFocusJustSet = TRUE; m_bFocusJustSet = TRUE;
@ -212,7 +212,8 @@ void wxRadioButton::SetLabel(
const wxString& rsLabel const wxString& rsLabel
) )
{ {
::WinSetWindowText((HWND)GetHWND(), (const char *)rsLabel.c_str()); wxString sLabel = ::wxPMTextToLabel(rsLabel);
::WinSetWindowText((HWND)GetHWND(), (const char *)sLabel.c_str());
} // end of wxRadioButton::SetLabel } // end of wxRadioButton::SetLabel
void wxRadioButton::SetValue( void wxRadioButton::SetValue(

View File

@ -60,16 +60,19 @@ bool wxStaticText::Create(
long lSstyle = 0L; long lSstyle = 0L;
lSstyle = WS_VISIBLE | SS_TEXT | DT_VCENTER; lSstyle = WS_VISIBLE | SS_TEXT | DT_VCENTER | DT_MNEMONIC;
if (m_windowStyle & wxALIGN_CENTRE) if (m_windowStyle & wxALIGN_CENTRE)
lSstyle |= DT_CENTER; lSstyle |= DT_CENTER;
else if (m_windowStyle & wxALIGN_RIGHT) else if (m_windowStyle & wxALIGN_RIGHT)
lSstyle |= DT_RIGHT; lSstyle |= DT_RIGHT;
else else
lSstyle |= DT_LEFT; lSstyle |= DT_LEFT;
wxString sLabel = ::wxPMTextToLabel(rsLabel);
m_hWnd = (WXHWND)::WinCreateWindow( (HWND)GetHwndOf(pParent) // Parent window handle m_hWnd = (WXHWND)::WinCreateWindow( (HWND)GetHwndOf(pParent) // Parent window handle
,WC_STATIC // Window class ,WC_STATIC // Window class
,(PSZ)rsLabel.c_str() // Initial Text ,(PSZ)sLabel.c_str() // Initial Text
,(ULONG)lSstyle // Style flags ,(ULONG)lSstyle // Style flags
,0L, 0L, 0L, 0L // Origin -- 0 size ,0L, 0L, 0L, 0L // Origin -- 0 size
,(HWND)GetHwndOf(pParent) // owner window handle (same as parent ,(HWND)GetHwndOf(pParent) // owner window handle (same as parent
@ -121,7 +124,7 @@ wxSize wxStaticText::DoGetBestSize() const
int nHeightLineDefault = 0; int nHeightLineDefault = 0;
int nHeightLine = 0; int nHeightLine = 0;
wxString sCurLine; wxString sCurLine;
bool bLastWasAmpersand = FALSE; bool bLastWasTilde = FALSE;
for (const wxChar *pc = sText; ; pc++) for (const wxChar *pc = sText; ; pc++)
{ {
@ -163,16 +166,16 @@ wxSize wxStaticText::DoGetBestSize() const
else else
{ {
// //
// We shouldn't take into account the '&' which just introduces the // We shouldn't take into account the '~' which just introduces the
// mnemonic characters and so are not shown on the screen -- except // mnemonic characters and so are not shown on the screen -- except
// when it is preceded by another '&' in which case it stands for a // when it is preceded by another '~' in which case it stands for a
// literal ampersand // literal tilde
// //
if (*pc == _T('&')) if (*pc == _T('~'))
{ {
if (!bLastWasAmpersand) if (!bLastWasTilde)
{ {
bLastWasAmpersand = TRUE; bLastWasTilde = TRUE;
// //
// Skip the statement adding pc to curLine below // Skip the statement adding pc to curLine below
@ -181,9 +184,9 @@ wxSize wxStaticText::DoGetBestSize() const
} }
// //
// It is a literal ampersand // It is a literal tilde
// //
bLastWasAmpersand = FALSE; bLastWasTilde = FALSE;
} }
sCurLine += *pc; sCurLine += *pc;
} }
@ -235,7 +238,8 @@ void wxStaticText::SetLabel(
const wxString& rsLabel const wxString& rsLabel
) )
{ {
::WinSetWindowText(GetHwnd(), (PSZ)rsLabel.c_str()); wxString sLabel = ::wxPMTextToLabel(rsLabel);
::WinSetWindowText(GetHwnd(), (PSZ)sLabel.c_str());
// //
// Adjust the size of the window to fit to the label unless autoresizing is // Adjust the size of the window to fit to the label unless autoresizing is