1
0
forked from 0ad/0ad

no message

This was SVN commit r94.
This commit is contained in:
Gee 2003-11-25 03:21:11 +00:00
parent 5736482af1
commit 953f72a91c
5 changed files with 19 additions and 10 deletions

View File

@ -81,6 +81,8 @@ public:
*/ */
virtual map_Settings GetSettingsInfo() const { return IGUISettingsObject<SButtonSettings>::m_SettingsInfo; } virtual map_Settings GetSettingsInfo() const { return IGUISettingsObject<SButtonSettings>::m_SettingsInfo; }
virtual void ResetStates() { IGUIButtonBehavior::ResetStates(); }
/** /**
* Handle Messages * Handle Messages
* *

View File

@ -55,7 +55,7 @@ bool CClientArea::SetClientArea(const CStr &Value)
// (200) (percent) (100) <== percent PLUS pixel // (200) (percent) (100) <== percent PLUS pixel
// (200) (percent) (-100) <== percent MINUS pixel // (200) (percent) (-100) <== percent MINUS pixel
// (200) (percent) (100) (-100) <== Both PLUS and MINUS are used, INVALID // (200) (percent) (100) (-100) <== Both PLUS and MINUS are used, INVALID
string one_value = "_$value[$arg(percent)%_[+_$value]_[-_$arg(_minus)$value]_]"; string one_value = "_[-_$arg(_minus)]$value[$arg(percent)%_[+_$value]_[-_$arg(_minus)$value]_]";
string four_values = one_value + "$arg(delim)" + string four_values = one_value + "$arg(delim)" +
one_value + "$arg(delim)" + one_value + "$arg(delim)" +
one_value + "$arg(delim)" + one_value + "$arg(delim)" +
@ -167,3 +167,8 @@ const IGUIObject * CInternalCGUIAccessorBase::GetObjectPointer(const CGUI &GUIin
return GUIinstance.m_pAllObjects.find(Object)->second; return GUIinstance.m_pAllObjects.find(Object)->second;
} }
void CInternalCGUIAccessorBase::QueryResetting(IGUIObject *pObject)
{
GUI<>::RecurseObject(0, pObject, IGUIObject::ResetStates);
}

View File

@ -123,6 +123,9 @@ protected:
/// const version /// const version
static const IGUIObject * GetObjectPointer(const CGUI &GUIinstance, const CStr &Object); static const IGUIObject * GetObjectPointer(const CGUI &GUIinstance, const CStr &Object);
/// Wrapper for ResetStates
static void QueryResetting(IGUIObject *pObject);
}; };
@ -141,6 +144,7 @@ class GUI : public CInternalCGUIAccessorBase
// Private functions further ahead // Private functions further ahead
friend class CGUI; friend class CGUI;
friend class IGUIObject; friend class IGUIObject;
friend class CInternalCGUIAccessorBase;
public: public:
/** /**
@ -200,7 +204,8 @@ public:
if (Setting == CStr(_T("hidden"))) if (Setting == CStr(_T("hidden")))
{ {
// Hiding an object requires us to reset it and all children // Hiding an object requires us to reset it and all children
RecurseObject(0, pObject, IGUIObject::ResetStates); QueryResetting(pObject);
//RecurseObject(0, pObject, IGUIObject::ResetStates);
} }
return PS_OK; return PS_OK;

View File

@ -136,14 +136,10 @@ bool IGUIObject::MouseOver()
u16 mouse_x = GetMouseX(), u16 mouse_x = GetMouseX(),
mouse_y = GetMouseY(); mouse_y = GetMouseY();
//CRect ca = m_BaseSettings.m_Size.GetClientArea(CRect(0,0,g_xres,g_yres)); return (mouse_x >= m_CachedActualSize.left &&
CRect ca = m_CachedActualSize; mouse_x <= m_CachedActualSize.right &&
mouse_y >= m_CachedActualSize.top &&
mouse_y <= m_CachedActualSize.bottom);
return (mouse_x >= ca.left &&
mouse_x <= ca.right &&
mouse_y >= ca.top &&
mouse_y <= ca.bottom);
} }
u16 IGUIObject::GetMouseX() const u16 IGUIObject::GetMouseX() const

View File

@ -105,6 +105,7 @@ class IGUIObject
{ {
friend class CGUI; friend class CGUI;
friend class CInternalCGUIAccessorBase;
#ifndef _MSC_VER #ifndef _MSC_VER
template <class T> template <class T>
#endif #endif