415 lines
19 KiB
C++
415 lines
19 KiB
C++
|
|
#include "stdafx.h"
|
|
#include "CharacterInfo/SUICharacterInfoSubBasicWnd.h"
|
|
#include "CharacterInfo/SUICharacterInfoWnd.h"
|
|
#include "SPlayerInfoMgr.h"
|
|
//#include "Util.h"
|
|
|
|
//-----------------------------------------------------------------------------------------------------------------
|
|
// 생성자
|
|
//-----------------------------------------------------------------------------------------------------------------
|
|
SUICharacterInfoSubBasicWnd::SUICharacterInfoSubBasicWnd(SGameManager* pGameManager)
|
|
: SUICharacterInfoSubMainWnd(pGameManager)
|
|
, m_strPlusColorValue( "000000" )
|
|
, m_strMinusColorValue( "000000" )
|
|
{
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------------------------------------------
|
|
// 윈도우 생성
|
|
//-----------------------------------------------------------------------------------------------------------------
|
|
SUIWnd* SUICharacterInfoSubBasicWnd::CreateWnd( const char* szFile, KUIWndManager* pWndManager, KPoint kPos, int nWindowID )
|
|
{
|
|
SUIWnd::CreateWnd( szFile, pWndManager, kPos, nWindowID );
|
|
|
|
KUIWnd* pChildWnd_Plus( GetChild("static_plus01_value_01") );
|
|
if( pChildWnd_Plus )
|
|
{
|
|
std::string strPlusColorValue( pChildWnd_Plus->GetCaption() );
|
|
CStringUtil::GetTextColorValue( strPlusColorValue, m_strPlusColorValue );
|
|
}
|
|
else
|
|
{
|
|
SDEBUGLOG( "[SUICharacterInfoSubBasicWnd] Can't Find Plus Color Value Sample Control" );
|
|
assert( NULL );
|
|
}
|
|
|
|
KUIWnd* pChildWnd_Minus( GetChild("static_minus01_value_01") );
|
|
if( pChildWnd_Minus )
|
|
{
|
|
std::string strMinusColorValue( pChildWnd_Minus->GetCaption() );
|
|
CStringUtil::GetTextColorValue( strMinusColorValue, m_strMinusColorValue );
|
|
}
|
|
else
|
|
{
|
|
SDEBUGLOG( "[SUICharacterInfoSubBasicWnd] Can't Find Minus Color Value Sample Control" );
|
|
assert( NULL );
|
|
}
|
|
|
|
return this;
|
|
}
|
|
|
|
|
|
void SUICharacterInfoSubBasicWnd::refreshBaseStat()
|
|
{
|
|
CreatureStat stat;
|
|
::memcpy( &stat, &(m_PlayerInfoMgr.GetStat()), sizeof(stat) );
|
|
|
|
setOriValue( "static_status01_value", stat.strength , false, S(1410)); // 힘
|
|
setOriValue( "static_status02_value", stat.agility , false, S(1412)); // 민첩
|
|
setOriValue( "static_status03_value", stat.intelligence , false, S(1413)); // 지력
|
|
setOriValue( "static_status04_value", stat.luck , false, S(1416)); // 행운
|
|
setOriValue( "static_status05_value", stat.vital , false, S(1411)); // 체력
|
|
setOriValue( "static_status06_value", stat.dexterity , false, S(1415)); // 집중
|
|
setOriValue( "static_status07_value", stat.mentality , false, S(1414)); // 정신
|
|
|
|
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::refreshBattleStat()
|
|
{
|
|
CreatureAttribute attribute;
|
|
::memcpy( &attribute, &(m_PlayerInfoMgr.GetAttribute()), sizeof(attribute) );
|
|
|
|
setOriValue("static_basic01_value", attribute.nAttackPointRight, false, S(1417)); // 공격력 오른손
|
|
|
|
/*KUIControlStatic* pStatic = dynamicCast< KUIControlStatic* > (GetChild( "static_basic01_value" ));
|
|
|
|
if ( !m_bLeft )
|
|
{
|
|
m_nBasicY = pStatic->GetRect().top;
|
|
m_bLeft = TRUE;
|
|
}*/
|
|
|
|
/*if ( attribute.nAttackPointLeft == 0 )
|
|
{ SetChildShow ( "static_basic01_left_value", false );
|
|
// SetMovePos ( "static_basic01_value", pStatic->GetRect().left,m_nBasicY+5 );
|
|
|
|
}
|
|
else
|
|
{ SetChildShow ( "static_basic01_left_value", true );
|
|
// SetMovePos ( "static_basic01_value", pStatic->GetRect().left,m_nBasicY );
|
|
}*/
|
|
setOriValue("static_basic01_left_value", attribute.nAttackPointLeft, false, S(1417)); // 공격력 왼손
|
|
setOriValue("static_basic02_value", attribute.nAccuracyRight, false, S(1418)); // 명중
|
|
// setOriValue("static_basic02_left_value", attribute.nAccuracyLeft, false, S(1418)); // 명중
|
|
setOriValue("static_basic03_value", attribute.nDefence, false, S(1421)); // 방어력
|
|
setOriValue("static_basic04_value", attribute.nAvoid, false, S(1423)); // 회피
|
|
|
|
//AziaMafia Fix Attack Speed
|
|
//float fAttackSpeedPerSec = (attribute.nAttackSpeed + m_PlayerInfoMgr.GetItemAttribute().nAttackSpeed) / 115.f;
|
|
float fAttackSpeedPerSec = (attribute.nAttackSpeed + m_PlayerInfoMgr.GetItemAttribute().nAttackSpeed) / 100.f;
|
|
setOriValue("static_basic05_value", attribute.nAttackSpeed, false, SR( 1425, "#@VALUE@#", fAttackSpeedPerSec ).c_str()); // 공격 속도
|
|
setOriValue("static_basic06_value", attribute.nCritical, true, S(1432)); // 치명타율
|
|
setOriValue("static_basic07_value", attribute.nBlockChance, true, S(1432)); // 블럭률
|
|
setOriValue("static_basic08_value", attribute.nMagicPoint, false, S(1419)); // 마력
|
|
setOriValue("static_basic09_value", attribute.nMagicAccuracy, false, S(1420)); // 마명중
|
|
setOriValue("static_basic10_value", attribute.nMagicDefence, false, S(1422)); // 마법 방어
|
|
setOriValue("static_basic11_value", attribute.nMagicAvoid, false, S(1424)); // 마법 저항
|
|
|
|
float fCastingDelay = 100.f - (100.f / (attribute.nCastingSpeed + m_PlayerInfoMgr.GetItemAttribute().nCastingSpeed)*100.f);
|
|
setOriValue("static_basic12_value", attribute.nCastingSpeed, false, SR( 1427, "#@VALUE@#", fCastingDelay ).c_str()); // 시전 속도
|
|
setOriValue("static_basic13_value", attribute.nCriticalPower, true, S(1435)); // 치명타위력
|
|
setOriValue("static_basic14_value", attribute.nBlockDefence, false, S(1433)); // 블럭방어력
|
|
setOriValue("static_basic15_value", attribute.nPerfectBlock, true, S(1437)); // 퍼펙트 블럭률
|
|
setOriValue("static_basic16_value", attribute.nMoveSpeed, false, S(1426)); // 이동 속도
|
|
refreshExpandBattleStat(attribute);
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::refreshExpandBattleStat(CreatureAttribute const& attribute)
|
|
{
|
|
setOriValue("static_expand01_value", attribute.nHPRegenPercentage, true, S(1428)); // hp 재생률
|
|
setOriValue("static_expand02_value", attribute.nMPRegenPercentage, true, S(1430)); // mp 재생률
|
|
setOriValue("static_expand03_value", attribute.nPhysicalPenetration, false, S(1440)); // 물리피해무시
|
|
setOriValue("static_expand04_value", attribute.nPhysicalDefIgnore, false, S(1438)); // 물리방어무시
|
|
setOriValue("static_expand05_value", attribute.nHPRegenPoint, false, S(1429)); // hp 회복력
|
|
setOriValue("static_expand06_value", attribute.nMPRegenPoint, false, S(1431)); // mp 회복력
|
|
setOriValue("static_expand07_value", attribute.nMagicalPenetration, false, S(1441)); // 마법피해관통
|
|
setOriValue("static_expand08_value", attribute.nMagicalDefIgnore, false, S(1439)); // 마법방어무시
|
|
|
|
//setOriValue("static_expand05_value", attribute.nCoolTimeSpeed, false, S(1436)); // 재시전속도
|
|
//setOriValue("static_expand04_value", attribute.nCritical, true, S(1434)); // 치명타률
|
|
//setOriValue("static_expand03_value", attribute.nPhysicalPenetrationRatio, false, S(1444)); // 물리피해관통%
|
|
//setOriValue("static_expand04_value", attribute.nPhysicalDefIgnoreRatio, false, S(1442)); // 물리방어무시%
|
|
//setOriValue("static_expand10_value", attribute.nBlockDefence, false, S(1433)); // 블럭 방어력
|
|
//setOriValue("static_expand07_value", attribute.nMagicalPenetrationRatio, false, S(1445)); // 마법피해관통%
|
|
//setOriValue("static_expand17_value", attribute.nMagicalDefIgnoreRatio, false, S(1443)); // 마법방어무시%
|
|
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::refreshBaseItemStat(CreatureStat const& stat)
|
|
{
|
|
setItemValue( "static_status01_plus_value" , stat.strength ); // 힘
|
|
setItemValue( "static_status02_plus_value" , stat.agility ); // 민첩
|
|
setItemValue( "static_status03_plus_value" , stat.intelligence ); // 지력
|
|
setItemValue( "static_status04_plus_value" , stat.luck ); // 행운
|
|
setItemValue( "static_status05_plus_value" , stat.vital ); // 체력
|
|
setItemValue( "static_status06_plus_value" , stat.dexterity ); // 집중
|
|
setItemValue( "static_status07_plus_value" , stat.mentality ); // 정신
|
|
|
|
|
|
|
|
setSignString( "static_status01_p", stat.strength );
|
|
setSignString( "static_status02_p", stat.agility );
|
|
setSignString( "static_status03_p", stat.intelligence );
|
|
setSignString( "static_status04_p", stat.luck );
|
|
setSignString( "static_status05_p", stat.vital );
|
|
setSignString( "static_status06_p", stat.dexterity );
|
|
setSignString( "static_status07_p", stat.mentality );
|
|
|
|
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::refreshBattleItemStat(CreatureAttribute const& attribute)
|
|
{
|
|
memcpy(&m_creatureAttribute, &attribute, sizeof (m_creatureAttribute));
|
|
|
|
setItemValue("static_basic01_plus_value", attribute.nAttackPointRight); // 공격력 오른손
|
|
setItemValue("static_basic01_left_plus_value", attribute.nAttackPointLeft); // 공격력 왼손
|
|
setItemValue("static_basic02_plus_value", attribute.nAccuracyRight); // 명중 오른손
|
|
//setItemValue("static_basic02_left_plus_value", attribute.nAccuracyLeft); // 명중 왼손
|
|
setItemValue("static_basic03_plus_value", attribute.nDefence); // 방어력
|
|
setItemValue("static_basic04_plus_value", attribute.nAvoid); // 회피
|
|
setItemValue("static_basic05_plus_value", attribute.nAttackSpeed); // 공격 속도
|
|
setItemValue("static_basic06_plus_value", attribute.nCritical, true); // 치명타률
|
|
setItemValue("static_basic07_plus_value", attribute.nBlockChance, true); // 블럭률
|
|
setItemValue("static_basic08_plus_value", attribute.nMagicPoint); // 마력
|
|
setItemValue("static_basic09_plus_value", attribute.nMagicAccuracy); // 마명중
|
|
setItemValue("static_basic10_plus_value", attribute.nMagicDefence); // 마법 방어
|
|
setItemValue("static_basic11_plus_value", attribute.nMagicAvoid); // 마법 저항
|
|
setItemValue("static_basic12_plus_value", attribute.nCastingSpeed); // 시전 속도
|
|
setItemValue("static_basic13_plus_value", attribute.nCriticalPower, true); // 치명타위력
|
|
setItemValue("static_basic14_plus_value", attribute.nBlockDefence, true); // 블럭방어력
|
|
setItemValue("static_basic15_plus_value", attribute.nPerfectBlock, true); // 퍼펙트 블럭률
|
|
setItemValue("static_basic16_plus_value", attribute.nMoveSpeed); // 이동 속도
|
|
|
|
setSignString("static_basic01_p", attribute.nAttackPointRight); // 공격력 오른손
|
|
setSignString("static_basic01_left_p", attribute.nAttackPointLeft); // 공격력 왼손
|
|
setSignString("static_basic02_p", attribute.nAccuracyRight); // 명중 오른손
|
|
//setSignString("static_basic02_left_p", attribute.nAccuracyLeft); // 명중 왼손
|
|
setSignString("static_basic03_p", attribute.nDefence); // 방어력
|
|
setSignString("static_basic04_p", attribute.nAvoid); // 회피
|
|
setSignString("static_basic05_p", attribute.nAttackSpeed); // 공격 속도
|
|
setSignString("static_basic06_p", attribute.nCritical); // 치명타률
|
|
setSignString("static_basic07_p", attribute.nBlockChance); // 블럭률
|
|
setSignString("static_basic08_p", attribute.nMagicPoint); // 마력
|
|
setSignString("static_basic09_p", attribute.nMagicAccuracy); // 마명중
|
|
setSignString("static_basic10_p", attribute.nMagicDefence); // 마법 방어
|
|
setSignString("static_basic11_p", attribute.nMagicAvoid); // 마법 저항
|
|
setSignString("static_basic12_p", attribute.nCastingSpeed); // 시전 속도
|
|
setSignString("static_basic13_p", attribute.nCriticalPower); // 치명타위력
|
|
setSignString("static_basic14_p", attribute.nBlockDefence); // 블럭방어력
|
|
setSignString("static_basic15_p", attribute.nPerfectBlock); // 퍼펙트 블럭률
|
|
setSignString("static_basic16_p", attribute.nMoveSpeed); // 이동 속도
|
|
|
|
refreshExpandBattleItemStat(attribute);
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::refreshExpandBattleItemStat(CreatureAttribute const& attribute)
|
|
{
|
|
setItemValue("static_expand01_plus_value", attribute.nHPRegenPercentage, true); // hp 재생률
|
|
setItemValue("static_expand02_plus_value", attribute.nMPRegenPercentage, true); // mp 재생률
|
|
int nNum = ( attribute.nPhysicalPenetration * ( 100 + attribute.nPhysicalPenetrationRatio ) ) / 100;
|
|
setItemValue("static_expand03_plus_value", nNum ); // 물리피해관통
|
|
nNum = ( attribute.nPhysicalDefIgnore * ( 100 + attribute.nPhysicalDefIgnoreRatio ) ) / 100;
|
|
setItemValue("static_expand04_plus_value", nNum); // 물리방어무시
|
|
setItemValue("static_expand05_plus_value", attribute.nHPRegenPoint); // hp 회복력
|
|
setItemValue("static_expand06_plus_value", attribute.nMPRegenPoint); // mp 회복력
|
|
nNum = ( attribute.nMagicalPenetration * ( 100 + attribute.nMagicalPenetrationRatio ) ) / 100;
|
|
setItemValue("static_expand07_plus_value", attribute.nMagicalPenetration*1.5f); // 마법피해관통
|
|
nNum = ( attribute.nMagicalDefIgnore * ( 100 + attribute.nMagicalDefIgnoreRatio ) ) / 100;
|
|
setItemValue("static_expand08_plus_value", attribute.nMagicalDefIgnore*1.5f); // 마법방어무시
|
|
|
|
|
|
//setItemValue("static_expand03_plus_value", attribute.nBlockChance, true); // 블럭율
|
|
//setItemValue("static_expand05_plus_value", attribute.nCoolTimeSpeed); // 재시전속도
|
|
//setItemValue("static_expand06_plus_value", attribute.nPhysicalDefIgnore); // 물리방어무시
|
|
//setItemValue("static_expand07_plus_value", attribute.nPhysicalPenetration); // 물리피해관통
|
|
//setItemValue("static_expand03_plus_value", attribute.nPhysicalPenetrationRatio);// 물리피해관통%
|
|
//setItemValue("static_expand04_plus_value", attribute.nPhysicalDefIgnoreRatio); // 물리방어무시%
|
|
//setItemValue("static_expand10_plus_value", attribute.nBlockDefence); // 블럭 방어력
|
|
//setItemValue("static_expand07_plus_value", attribute.nMagicalPenetrationRatio); // 마법피해관통%
|
|
//setItemValue("static_expand08_plus_value", attribute.nMagicalDefIgnoreRatio); // 마법방어무시%
|
|
setSignString("static_expand01_p", attribute.nHPRegenPercentage); // hp 재생률
|
|
setSignString("static_expand02_p", attribute.nMPRegenPercentage); // mp 재생률
|
|
setSignString("static_expand03_p", attribute.nPhysicalPenetration); // 물리피해관통
|
|
setSignString("static_expand04_p", attribute.nPhysicalDefIgnore); // 물리방어무시
|
|
setSignString("static_expand05_p", attribute.nHPRegenPoint); // hp 회복력
|
|
setSignString("static_expand06_p", attribute.nMPRegenPoint); // mp 회복력
|
|
setSignString("static_expand07_p", attribute.nMagicalPenetration); // 마법피해관통
|
|
setSignString("static_expand08_p", attribute.nMagicalDefIgnore); // 마법방어무시
|
|
|
|
//setSignString("static_expand03_p", attribute.nBlockChance); // 블럭율
|
|
//setSignString("static_expand04_p", attribute.nCritical); // 치명타률
|
|
//setSignString("static_expand05_p", attribute.nCoolTimeSpeed); // 재시전속도
|
|
//setSignString("static_expand03_p", attribute.nPhysicalPenetrationRatio);// 물리피해관통%
|
|
//setSignString("static_expand04_p", attribute.nPhysicalDefIgnoreRatio); // 물리방어무시%
|
|
//setSignString("static_expand10_p", attribute.nBlockDefence); // 블럭 방어력
|
|
//setSignString("static_expand11_p", attribute.nCriticalPower); // 치명타위력
|
|
//setSignString("static_expand12_p", attribute.nPerfectBlock); // 퍼펙트 블럭률
|
|
//setSignString("static_expand13_p", attribute.nMagicalDefIgnore); // 마법방어무시
|
|
//setSignString("static_expand07_p", attribute.nMagicalPenetrationRatio); // 마법피해관통%
|
|
//setSignString("static_expand08_p", attribute.nMagicalDefIgnoreRatio); // 마법방어무시%
|
|
|
|
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::setOriValue(char const* controlId, int value, bool isPer, const char* szTooltip )
|
|
{
|
|
if( NULL == controlId )
|
|
{
|
|
SDEBUGLOG( "[SUICharacterInfoSubBasicWnd] Control Id Ptr is NULL" );
|
|
assert( NULL );
|
|
return ;
|
|
}
|
|
|
|
std::string strFilter = "%";
|
|
if( !isPer )
|
|
strFilter = "";
|
|
|
|
KUIWnd* pChildWnd( GetChild( controlId ) );
|
|
if( NULL == pChildWnd )
|
|
return ;
|
|
|
|
string strChildCaption( "" );
|
|
CStringUtil::GetTextDecoration( pChildWnd->GetCaption(), strChildCaption );
|
|
|
|
strChildCaption.append( "%d%s" );
|
|
|
|
std::string str( CStringUtil::StringFormat( strChildCaption.c_str() , value, strFilter.c_str()) );
|
|
SetChildCaption(controlId, str.c_str());
|
|
|
|
// 툴팁 추가
|
|
if( szTooltip != NULL )
|
|
{
|
|
SetChildTooltip( controlId, szTooltip );
|
|
}
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::setItemValue(char const* controlId, int value, bool isPer)
|
|
{
|
|
if( NULL == controlId )
|
|
{
|
|
SDEBUGLOG( "[SUICharacterInfoSubBasicWnd] Control Id Ptr is NULL" );
|
|
assert( NULL );
|
|
return ;
|
|
}
|
|
|
|
bool show = (value == 0) ? false : true;
|
|
|
|
SetChildShow(controlId, show);
|
|
if ( false == show )
|
|
return ;
|
|
|
|
KUIWnd* pChildWnd( GetChild( controlId ) );
|
|
if( NULL == pChildWnd )
|
|
{
|
|
SDEBUGLOG( "[SUICharacterInfoSubBasicWnd] Can't Find Control ID - [ %s ]", controlId );
|
|
return ;
|
|
}
|
|
|
|
string strChildCaption( "" );
|
|
CStringUtil::GetTextDecoration( pChildWnd->GetCaption(), strChildCaption );
|
|
|
|
string strValue( "" );
|
|
|
|
if( value > 0 )
|
|
CStringUtil::ReplaceTextColorValue( strChildCaption, m_strPlusColorValue );
|
|
else
|
|
CStringUtil::ReplaceTextColorValue( strChildCaption, m_strMinusColorValue );
|
|
|
|
strChildCaption.append( "%d%s" );
|
|
|
|
std::string strFilter( "%" );
|
|
|
|
if( !isPer )
|
|
strFilter = "";
|
|
|
|
SetChildCaption(controlId, CStringUtil::StringFormat( strChildCaption.c_str(), abs(value), strFilter.c_str() ).c_str() );
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::setSignString(char const* controlId, int value)
|
|
{
|
|
if( NULL == controlId )
|
|
{
|
|
SDEBUGLOG( "[SUICharacterInfoSubBasicWnd] Control Id Ptr is NULL" );
|
|
assert( NULL );
|
|
return ;
|
|
}
|
|
|
|
bool show = (value == 0) ? false : true;
|
|
|
|
SetChildShow(controlId, show);
|
|
if ( false == show )
|
|
return ;
|
|
|
|
KUIWnd* pChildWnd( GetChild( controlId ) );
|
|
if( NULL == pChildWnd )
|
|
return ;
|
|
|
|
string strChildCaption( "" );
|
|
CStringUtil::GetTextDecoration( pChildWnd->GetCaption(), strChildCaption );
|
|
|
|
string strSign( "" );
|
|
if (value > 0)
|
|
{
|
|
CStringUtil::ReplaceTextColorValue( strChildCaption, m_strPlusColorValue );
|
|
strSign = "+";
|
|
}
|
|
else
|
|
{
|
|
CStringUtil::ReplaceTextColorValue( strChildCaption, m_strMinusColorValue );
|
|
strSign = "-";
|
|
}
|
|
|
|
strChildCaption.append( "%s" );
|
|
|
|
SetChildCaption( controlId, CStringUtil::StringFormat( strChildCaption.c_str(), strSign.c_str() ).c_str() );
|
|
}
|
|
|
|
void SUICharacterInfoSubBasicWnd::setExpand(bool expand, bool applyParent)
|
|
{
|
|
m_isExpand = expand;
|
|
|
|
/// parent
|
|
if (applyParent)
|
|
{
|
|
SUICharacterInfoWnd* parent = dynamicCast<SUICharacterInfoWnd*>(GetParent());
|
|
parent->setExpand(expand);
|
|
}
|
|
|
|
bool show = expand ? true : false;
|
|
|
|
SetChildShow("text_basic_03", show);
|
|
SetChildShow("basic_table_03", show);
|
|
|
|
for (int i = 1; i < 15; ++i)
|
|
{
|
|
SetChildShow(CStringUtil::StringFormat("static_expand%02d", i).c_str(), show);
|
|
SetChildShow(CStringUtil::StringFormat("static_expand%02d_value", i).c_str(), show);
|
|
}
|
|
|
|
/// 확장이 보여질 때 아이템에 의한 값의 show/hide는 아이템의 값에 의해서 결정된다
|
|
if (show)
|
|
{
|
|
refreshExpandBattleItemStat(m_creatureAttribute);
|
|
}
|
|
else
|
|
{
|
|
for (int i = 1; i < 15; ++i)
|
|
{
|
|
SetChildShow(CStringUtil::StringFormat("static_expand%02d_p", i).c_str(), show);
|
|
SetChildShow(CStringUtil::StringFormat("static_expand%02d_plus_value", i).c_str(), show);
|
|
}
|
|
}
|
|
|
|
SetChildShow("tab_select_cyan_01", false);
|
|
SetChildShow("tab_select_cyan_02", false);
|
|
if (!expand) SetChildShow("tab_select_cyan_01", true);
|
|
else SetChildShow("tab_select_cyan_02", true);
|
|
|
|
setShowFoldButton(expand);
|
|
}
|
|
|