projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update compile support for OpenVMS
[wxWidgets.git]
/
src
/
os2
/
menuitem.cpp
diff --git
a/src/os2/menuitem.cpp
b/src/os2/menuitem.cpp
index 66d1077dbca2f4c2025bf47c0a6d8db7ff4163be..193a679348df0e0fa44aff4b27ff0dff7e314989 100644
(file)
--- a/
src/os2/menuitem.cpp
+++ b/
src/os2/menuitem.cpp
@@
-1,39
+1,35
@@
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
-// Name: menuitem.cpp
+// Name:
src/os2/
menuitem.cpp
// Purpose: wxMenuItem implementation
// Author: David Webster
// Modified by:
// Created: 10/10/98
// RCS-ID: $Id$
// Copyright: (c) David Webster
// Purpose: wxMenuItem implementation
// Author: David Webster
// Modified by:
// Created: 10/10/98
// RCS-ID: $Id$
// Copyright: (c) David Webster
-// Licence: wxWi
dget
s licence
+// Licence: wxWi
ndow
s licence
///////////////////////////////////////////////////////////////////////////////
// ============================================================================
// headers & declarations
// ============================================================================
///////////////////////////////////////////////////////////////////////////////
// ============================================================================
// headers & declarations
// ============================================================================
-#ifdef __GNUG__
- #pragma implementation "menuitem.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
+#include "wx/menuitem.h"
+#include "wx/stockitem.h"
+
#ifndef WX_PRECOMP
#include "wx/font.h"
#include "wx/bitmap.h"
#include "wx/settings.h"
#ifndef WX_PRECOMP
#include "wx/font.h"
#include "wx/bitmap.h"
#include "wx/settings.h"
- #include "wx/font.h"
#include "wx/window.h"
#include "wx/accel.h"
#include "wx/menu.h"
#include "wx/string.h"
#include "wx/window.h"
#include "wx/accel.h"
#include "wx/menu.h"
#include "wx/string.h"
+ #include "wx/log.h"
#endif
#endif
-#include "wx/menuitem.h"
-#include "wx/log.h"
-
#if wxUSE_ACCEL
#include "wx/accel.h"
#endif // wxUSE_ACCEL
#if wxUSE_ACCEL
#include "wx/accel.h"
#endif // wxUSE_ACCEL
@@
-175,22
+171,22
@@
int wxMenuItem::GetRealId() const
// --------------
bool wxMenuItem::IsChecked() const
{
// --------------
bool wxMenuItem::IsChecked() const
{
- USHORT
uFlag = SHORT1FROMMR(::WinSendMsg( GetHMenuOf(m_parentMenu)
-
,MM_QUERYITEMATTR
-
,MPFROM2SHORT(GetId(), TRUE)
-
,MPFROMSHORT(MIA_CHECKED)
-
));
+ USHORT uFlag = SHORT1FROMMR(::WinSendMsg( GetHMenuOf(m_parentMenu)
+ ,MM_QUERYITEMATTR
+ ,MPFROM2SHORT(GetId(), TRUE)
+ ,MPFROMSHORT(MIA_CHECKED)
+ ));
- return (uFlag & MIA_CHECKED);
+ return (uFlag & MIA_CHECKED)
== MIA_CHECKED
;
} // end of wxMenuItem::IsChecked
} // end of wxMenuItem::IsChecked
-wxString wxMenuItemBase::GetLabel
From
Text(
+wxString wxMenuItemBase::GetLabelText(
const wxString& rsText
)
{
wxString sLabel;
const wxString& rsText
)
{
wxString sLabel;
- for (const
c
har* zPc = rsText.c_str(); *zPc; zPc++)
+ for (const
wxC
har* zPc = rsText.c_str(); *zPc; zPc++)
{
if (*zPc == wxT('~') || *zPc == wxT('&'))
{
{
if (*zPc == wxT('~') || *zPc == wxT('&'))
{
@@
-203,7
+199,7
@@
wxString wxMenuItemBase::GetLabelFromText(
sLabel += *zPc;
}
return sLabel;
sLabel += *zPc;
}
return sLabel;
-} // end of wxMenuItemBase::GetLabel
From
Text
+} // end of wxMenuItemBase::GetLabelText
//
// Radio group stuff
//
// Radio group stuff
@@
-211,7
+207,7
@@
wxString wxMenuItemBase::GetLabelFromText(
//
void wxMenuItem::SetAsRadioGroupStart()
{
//
void wxMenuItem::SetAsRadioGroupStart()
{
- m_bIsRadioGroupStart =
TRUE
;
+ m_bIsRadioGroupStart =
true
;
} // end of wxMenuItem::SetAsRadioGroupStart
void wxMenuItem::SetRadioGroupStart(
} // end of wxMenuItem::SetAsRadioGroupStart
void wxMenuItem::SetRadioGroupStart(
@@
-260,7
+256,7
@@
void wxMenuItem::Enable(
);
if (!bOk)
{
);
if (!bOk)
{
- wxLogLastError(
"EnableMenuItem"
);
+ wxLogLastError(
wxT("EnableMenuItem")
);
}
wxMenuItemBase::Enable(bEnable);
} // end of wxMenuItem::Enable
}
wxMenuItemBase::Enable(bEnable);
} // end of wxMenuItem::Enable
@@
-321,9
+317,9
@@
void wxMenuItem::Check(
//
// Also uncheck all the other items in this radio group
//
//
// Also uncheck all the other items in this radio group
//
- wxMenuItemList::
Node* pN
ode = rItems.Item(nStart);
+ wxMenuItemList::
compatibility_iterator n
ode = rItems.Item(nStart);
- for (int n = nStart; n <= nEnd &&
pN
ode; n++)
+ for (int n = nStart; n <= nEnd &&
n
ode; n++)
{
if (n == nPos)
{
{
if (n == nPos)
{
@@
-335,14
+331,14
@@
void wxMenuItem::Check(
}
if (n != nPos)
{
}
if (n != nPos)
{
-
pN
ode->GetData()->m_isChecked = FALSE;
+
n
ode->GetData()->m_isChecked = FALSE;
::WinSendMsg( hMenu
,MM_SETITEMATTR
,MPFROM2SHORT(n, TRUE)
,MPFROM2SHORT(MIA_CHECKED, FALSE)
);
}
::WinSendMsg( hMenu
,MM_SETITEMATTR
,MPFROM2SHORT(n, TRUE)
,MPFROM2SHORT(MIA_CHECKED, FALSE)
);
}
-
pNode = pN
ode->GetNext();
+
node = n
ode->GetNext();
}
}
else // check item
}
}
else // check item
@@
-362,14
+358,12
@@
void wxMenuItem::Check(
}
if (!bOk)
{
}
if (!bOk)
{
- wxLogLastError(
"CheckMenuItem"
);
+ wxLogLastError(
wxT("CheckMenuItem")
);
}
wxMenuItemBase::Check(bCheck);
} // end of wxMenuItem::Check
}
wxMenuItemBase::Check(bCheck);
} // end of wxMenuItem::Check
-void wxMenuItem::SetText(
- const wxString& rText
-)
+void wxMenuItem::SetItemLabel( const wxString& rText )
{
//
// Don't do anything if label didn't change
{
//
// Don't do anything if label didn't change
@@
-379,10
+373,18
@@
void wxMenuItem::SetText(
if (m_text == sText)
return;
if (m_text == sText)
return;
- wxMenuItemBase::SetText(sText);
- OWNER_DRAWN_ONLY(wxOwnerDrawn::SetName(sText));
+ // wxMenuItemBase will do stock ID checks
+ wxMenuItemBase::SetItemLabel(sText);
+
+ // m_text could now be different from 'text' if we are a stock menu item,
+ // so use only m_text below
+
+ OWNER_DRAWN_ONLY(wxOwnerDrawn::SetName(m_text));
#if wxUSE_OWNER_DRAWN
#if wxUSE_OWNER_DRAWN
- SetAccelString(rText.AfterFirst(_T('\t')));
+ if (rText.IsEmpty())
+ SetAccelString(m_text.AfterFirst(_T('\t')));
+ else
+ SetAccelString(rText.AfterFirst(_T('\t')));
#endif // wxUSE_OWNER_DRAWN
HWND hMenu = GetHmenuOf(m_parentMenu);
#endif // wxUSE_OWNER_DRAWN
HWND hMenu = GetHmenuOf(m_parentMenu);
@@
-393,9
+395,9
@@
void wxMenuItem::SetText(
m_parentMenu->UpdateAccel(this);
#endif // wxUSE_ACCEL
m_parentMenu->UpdateAccel(this);
#endif // wxUSE_ACCEL
- USHORT
uId =
GetRealId();
- MENUITEM
vItem;
- USHORT
uFlagsOld;
+ USHORT
uId = (USHORT)
GetRealId();
+ MENUITEM vItem;
+ USHORT uFlagsOld;
if (!::WinSendMsg( hMenu
,MM_QUERYITEM
if (!::WinSendMsg( hMenu
,MM_QUERYITEM
@@
-403,7
+405,7
@@
void wxMenuItem::SetText(
,(MPARAM)&vItem
))
{
,(MPARAM)&vItem
))
{
- wxLogLastError(
"GetMenuState"
);
+ wxLogLastError(
wxT("GetMenuState")
);
}
else
{
}
else
{
@@
-413,19
+415,19
@@
void wxMenuItem::SetText(
uFlagsOld |= MIS_SUBMENU;
}
uFlagsOld |= MIS_SUBMENU;
}
-
BYTE
* pData;
+
char
* pData;
#if wxUSE_OWNER_DRAWN
if (IsOwnerDrawn())
{
uFlagsOld |= MIS_OWNERDRAW;
#if wxUSE_OWNER_DRAWN
if (IsOwnerDrawn())
{
uFlagsOld |= MIS_OWNERDRAW;
- pData = (
BYTE
*)this;
+ pData = (
char
*)this;
}
else
#endif //owner drawn
{
uFlagsOld |= MIS_TEXT;
}
else
#endif //owner drawn
{
uFlagsOld |= MIS_TEXT;
- pData = (
BYTE*)sText.c
_str();
+ pData = (
char*) m_text.wx
_str();
}
//
}
//
@@
-483,4
+485,3
@@
wxMenuItem* wxMenuItemBase::New(
,pSubMenu
);
} // end of wxMenuItemBase::New
,pSubMenu
);
} // end of wxMenuItemBase::New
-