CHANGED: #1471 Implemented property querying for CGroupMenu.
This commit is contained in:
parent
1105f0e3d3
commit
d2025b37f8
4 changed files with 169 additions and 57 deletions
|
@ -296,6 +296,8 @@ namespace NLGUI
|
||||||
|
|
||||||
TCaseMode getCaseMode() { return _CaseMode; }
|
TCaseMode getCaseMode() { return _CaseMode; }
|
||||||
|
|
||||||
|
std::string getProperty( const std::string &name ) const;
|
||||||
|
|
||||||
virtual bool parse (xmlNodePtr cur, CInterfaceGroup *parentGroup);
|
virtual bool parse (xmlNodePtr cur, CInterfaceGroup *parentGroup);
|
||||||
|
|
||||||
virtual void draw ();
|
virtual void draw ();
|
||||||
|
@ -366,6 +368,8 @@ namespace NLGUI
|
||||||
|
|
||||||
CGroupSubMenu *_RootMenu;
|
CGroupSubMenu *_RootMenu;
|
||||||
|
|
||||||
|
std::string _Extends;
|
||||||
|
|
||||||
// Text lookup
|
// Text lookup
|
||||||
NLMISC::CRGBA _Color;
|
NLMISC::CRGBA _Color;
|
||||||
NLMISC::CRGBA _ShadowColor;
|
NLMISC::CRGBA _ShadowColor;
|
||||||
|
|
|
@ -1920,6 +1920,85 @@ namespace NLGUI
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::string CGroupMenu::getProperty( const std::string &name ) const
|
||||||
|
{
|
||||||
|
if( name == "extends" )
|
||||||
|
{
|
||||||
|
return _Extends;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "case_mode" )
|
||||||
|
{
|
||||||
|
uint32 cm = _CaseMode;
|
||||||
|
return toString( cm );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "color" )
|
||||||
|
{
|
||||||
|
return toString( _Color );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "shadow_color" )
|
||||||
|
{
|
||||||
|
return toString( _ShadowColor );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "color_over" )
|
||||||
|
{
|
||||||
|
return toString( _ColorOver );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "shadow_color_over" )
|
||||||
|
{
|
||||||
|
return toString( _ShadowColorOver );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "highlight_over" )
|
||||||
|
{
|
||||||
|
return toString( _HighLightOver );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "color_grayed" )
|
||||||
|
{
|
||||||
|
return toString( _ColorGrayed );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "shadow_color_grayed" )
|
||||||
|
{
|
||||||
|
return toString( _ShadowColorGrayed );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "space" )
|
||||||
|
{
|
||||||
|
return toString( _Space );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "fontsize" )
|
||||||
|
{
|
||||||
|
return toString( _FontSize );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "shadow" )
|
||||||
|
{
|
||||||
|
return toString( _Shadow );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "formatted" )
|
||||||
|
{
|
||||||
|
return toString( _Formatted );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
if( name == "max_visible_line" )
|
||||||
|
{
|
||||||
|
if( _RootMenu == NULL )
|
||||||
|
return "0";
|
||||||
|
else
|
||||||
|
return toString( _RootMenu->getMaxVisibleLine() );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return CGroupModal::getProperty( name );
|
||||||
|
}
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------------------------
|
||||||
bool CGroupMenu::parse (xmlNodePtr in, CInterfaceGroup *parentGroup)
|
bool CGroupMenu::parse (xmlNodePtr in, CInterfaceGroup *parentGroup)
|
||||||
{
|
{
|
||||||
|
@ -1937,6 +2016,8 @@ namespace NLGUI
|
||||||
CGroupSubMenu *gmExtended = NULL;
|
CGroupSubMenu *gmExtended = NULL;
|
||||||
if (prop)
|
if (prop)
|
||||||
{
|
{
|
||||||
|
if( editorMode )
|
||||||
|
_Extends = std::string( prop );
|
||||||
|
|
||||||
CGroupMenu *gm = dynamic_cast<CGroupMenu *>(CWidgetManager::getInstance()->getElementFromId(prop));
|
CGroupMenu *gm = dynamic_cast<CGroupMenu *>(CWidgetManager::getInstance()->getElementFromId(prop));
|
||||||
if (!gm)
|
if (!gm)
|
||||||
|
|
|
@ -1,57 +0,0 @@
|
||||||
<widget>
|
|
||||||
<header>
|
|
||||||
<name>CtrlBase</name>
|
|
||||||
<guiname>cb</guiname>
|
|
||||||
<ancestor>InterfaceElement</ancestor>
|
|
||||||
<description></description>
|
|
||||||
<abstract>true</abstract>
|
|
||||||
<icon></icon>
|
|
||||||
</header>
|
|
||||||
<properties>
|
|
||||||
<property>
|
|
||||||
<name>tooltip</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>tooltip_i18n</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>on_tooltip</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>on_tooltip_params</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>tooltip_parent</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>tooltip_special_parent</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>tooltip_posref</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default>auto</default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>tooltip_posref_alt</name>
|
|
||||||
<type>string</type>
|
|
||||||
<default>auto</default>
|
|
||||||
</property>
|
|
||||||
<property>
|
|
||||||
<name>instant_help</name>
|
|
||||||
<type>bool</type>
|
|
||||||
<default></default>
|
|
||||||
</property>
|
|
||||||
</properties>
|
|
||||||
</widget>
|
|
|
@ -0,0 +1,84 @@
|
||||||
|
<widget>
|
||||||
|
<header>
|
||||||
|
<name>GroupMenu</name>
|
||||||
|
<guiname>CGroupMenu</guiname>
|
||||||
|
<ancestor>GroupModal</ancestor>
|
||||||
|
<description></description>
|
||||||
|
<abstract>false</abstract>
|
||||||
|
<icon></icon>
|
||||||
|
</header>
|
||||||
|
<properties>
|
||||||
|
<property>
|
||||||
|
<name>extends</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default></default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>color</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>255 255 255 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>case_mode</name>
|
||||||
|
<type>int</type>
|
||||||
|
<default>2</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>shadow_color</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>0 0 0 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>color_over</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>255 255 255 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>shadow_color_over</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>0 0 0 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>highlight_over</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>128 0 0 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>color_grayed</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>128 128 128 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>shadow_color_grayed</name>
|
||||||
|
<type>string</type>
|
||||||
|
<default>0 0 0 255</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>space</name>
|
||||||
|
<type>int</type>
|
||||||
|
<default>3</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>fontsize</name>
|
||||||
|
<type>int</type>
|
||||||
|
<default>12</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>shadow</name>
|
||||||
|
<type>bool</type>
|
||||||
|
<default>false</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>formatted</name>
|
||||||
|
<type>bool</type>
|
||||||
|
<default>false</default>
|
||||||
|
</property>
|
||||||
|
<property>
|
||||||
|
<name>max_visible_line</name>
|
||||||
|
<type>int</type>
|
||||||
|
<default>0</default>
|
||||||
|
</property>
|
||||||
|
|
||||||
|
|
||||||
|
</properties>
|
||||||
|
</widget>
|
Loading…
Reference in a new issue