Esempio n. 1
0
int CTDuelInvite::GetNumber(){
	CTEditBox* editBox = ((CTEditBox*)Find(IID_BTN_EDITBOX));
	if(!editBox) return 0;

	char* text = editBox->get_text();
	if(text == NULL) return 0;

	return atoi(text);
}
Esempio n. 2
0
void CChatRoomDlg::SendChatMsg()
{
	CWinCtrl* pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_EDIT );
	
	if( pCtrl->GetControlType() != CTRL_EDITBOX )
		return;

	CTEditBox* pEditBox = (CTEditBox*)pCtrl;

	if( pEditBox->IsFocus() )
	{
		if( CChatRoom::GetInstance().GetState() == CChatRoom::STATE_ACTIVATED )
		{
			char* pszMsg = pEditBox->get_text();
			if( pszMsg && strlen( pszMsg ) >= 1 )
				g_pNet->Send_cli_CHATROOM_MSG( pszMsg );
		}
		else
		{
			AddChatMsg(pEditBox->get_text(), g_dwWHITE );	
		}
		pEditBox->clear_text();

		///내가 채팅 메세지를 보내면 항상 리스트는 맨밑으로 이동
		CWinCtrl* pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_LIST);
		if( pCtrl )
		{
			if( pCtrl->GetControlType() == CTRL_ZLISTBOX)
			{
				CZListBox* pListBox = (CZListBox*)pCtrl;
				pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_SCROLLBAR );
				if( pCtrl && pCtrl->GetControlType() == CTRL_SCROLLBAR )
				{
					CTScrollBar* pScrollBar = (CTScrollBar*)pCtrl;
					pScrollBar->SetValue( pListBox->GetMaximum() );
				}
			}
			else
			{
				CTListBox* pListBox = (CTListBox*)pCtrl;
				pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_SCROLLBAR );
				if( pCtrl && pCtrl->GetControlType() == CTRL_SCROLLBAR )
				{
					CTScrollBar* pScrollBar = (CTScrollBar*)pCtrl;
					pScrollBar->SetValue( pListBox->GetMaximum() );
				}
			}			
		}
	}
}
Esempio n. 3
0
bool CChatRoomDlg::Create( const char* IDD )
{
	if( !CTDialog::Create( IDD )) return false;
		
	CWinCtrl* pCtrl = FindChildInPane( IID_PANE_TOP,  IID_TABBEDPANE );
	if( pCtrl && pCtrl->GetControlType() == CTRL_TABBEDPANE )
	{
		CTabbedPane* pPane = (CTabbedPane*)pCtrl;
		
		///VIDEO
		CJContainer* pContainer = pPane->GetTabContainer( TAB_CONFIG );
		assert( pContainer );
		pCtrl = pContainer->Find( IID_COMBOBOX_MAXUSER );
		if( pCtrl && pCtrl->GetControlType() == CTRL_COMBOBOX )
		{
			CTComboBox* pComboBox = (CTComboBox*)pCtrl;
			for( int i = 2; i <= 8; ++i )
				pComboBox->AddItem( CStr::Printf("%d",i ));
		}


		pCtrl = pContainer->Find( IID_COMBOBOX_TYPE );
		if( pCtrl && pCtrl->GetControlType() == CTRL_COMBOBOX )
		{
			CTComboBox* pComboBox = (CTComboBox*)pCtrl;
			for( int i = 1; i <= 2; ++i )
				pComboBox->AddItem( CStr::Printf("%d",i ));
		}
	}

	pCtrl = FindChildInPane( IID_PANE_BOTTOM, IID_CHAT_EDIT );
	if( pCtrl->GetControlType() == CTRL_EDITBOX )
	{
		CTEditBox* pEditBox = (CTEditBox*) pCtrl;
		pEditBox->SetLimitText(150);
		pCtrl->AddActionListener( this );	
	}


	CChatRoom::GetInstance().AddObserver( this );
	return true;
}
Esempio n. 4
0
void CCreateAvata::Show()
{
	POINT pt = {  g_pCApp->GetWIDTH()-GetWidth(), (g_pCApp->GetHEIGHT() -GetHeight())/2 };

	MoveWindow( pt );

	CWinCtrl * pCtrl = NULL;
	// 아바타 3D로 찍을곳 위치.
	if( pCtrl = Find("AVATA_POS") )
	{		
		m_ptCreateAvatar.x = pCtrl->GetOffset().x + GetPosition().x;
		m_ptCreateAvatar.y = pCtrl->GetOffset().y + GetPosition().y;
		m_szCreateAvatar.cx  = pCtrl->GetWidth();
		m_szCreateAvatar.cy  = pCtrl->GetHeight();
	}

	CTDialog::Show();
	pCtrl = Find( IID_EDITBOX );
	if( pCtrl && pCtrl->GetControlType() == CTRL_EDITBOX )
	{
		CTEditBox* pEditBox = (CTEditBox*)pCtrl;
		pEditBox->SetFocus( true );
	}
}
Esempio n. 5
0
void CMemoViewDlg::SetContent( const char* pszContent )
{
	assert( pszContent );
#ifdef __PRIVATECHAT2
	if( pszContent )
	{
		CWinCtrl* pCtrl = Find( IID_EDITBOX );
		assert( pCtrl );
		if( pCtrl == NULL ) return;

		assert( pCtrl->GetControlType() == CTRL_EDITBOX );
		if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;

		CTEditBox* pEditBox = (CTEditBox*)pCtrl;

		pEditBox->SetText(pszContent);

	}
#else
	if( pszContent )
		m_strContent = pszContent;
#endif
	
}
Esempio n. 6
0
void CCreateAvata::OnLButtonUp( unsigned iProcID )
{
	switch( iProcID )
	{
	case IID_BTN_OK:
		{
			int iSex		= atoi( m_mapSex[m_iSelectedSex].m_strValue.c_str() );
			int iBoneStone	= atoi( m_mapBirthStone[m_iSelectedBirthStone].m_strValue.c_str() );
			int iHair		= atoi( m_mapHair[m_iSelectedHair].m_strValue.c_str() );
			int iFace		= atoi( m_mapFace[m_iSelectedFace].m_strValue.c_str() );
			int iStartPos   = atoi( m_mapStartPos[m_iSelectedStartPos].m_strValue.c_str() );

			
			char szName[255] ={0};

			CWinCtrl* pCtrl = Find( IID_EDITBOX );
			if( pCtrl == NULL || pCtrl->GetControlType() != CTRL_EDITBOX )
			{
				LogString (LOG_NORMAL, "Not Found EditBox(ID-%d) in CCreateAvata::OnLButtonUp\n",IID_EDITBOX );
				return ;
			}
			CTEditBox* pEditBox = ( CTEditBox* ) pCtrl;

			strcpy( szName, pEditBox->get_text() );


			if( CFilterWord::GetInstance().IsValidName( szName) )
			{
				CreateAvata( szName, 0, iSex, iBoneStone, iHair, iFace, iStartPos );
			}
			else
			{
				g_EUILobby.ShowMsgBox(STR_INVALID_CHARACTER_NAME,CTMsgBox::BT_OK ,true ,GetDialogType() );
				pEditBox->clear_text();
			}
		
		}
		break;
	case IID_BTN_CANCEL:
		CGame::GetInstance().ChangeState( CGame::GS_SELECTAVATAR );

//		g_EUILobby.CreateServerListDlg();
		break;
	case IID_BTN_LEFT_SEX:
		--m_iSelectedSex;
		if( m_iSelectedSex < 0 )
			m_iSelectedSex = m_mapSex.size() - 1;
		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeSex", ZZ_PARAM_INT, 
			atoi(m_mapSex[m_iSelectedSex].m_strValue.c_str()), ZZ_PARAM_END );
		break;
	case IID_BTN_LEFT_FACE:
		--m_iSelectedFace;
		if( m_iSelectedFace < 0 )
			m_iSelectedFace = m_mapFace.size() - 1;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeFace", ZZ_PARAM_INT, 
			atoi( m_mapFace[m_iSelectedFace].m_strValue.c_str()), ZZ_PARAM_END );
		break;
	case IID_BTN_LEFT_HAIR:
		--m_iSelectedHair;
		if( m_iSelectedHair < 0 )
			m_iSelectedHair = m_mapHair.size() - 1 ;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeHair", ZZ_PARAM_INT, 
			atoi( m_mapHair[m_iSelectedHair].m_strValue.c_str()), ZZ_PARAM_END );
		break;
	case IID_BTN_LEFT_STARTPOS:
		--m_iSelectedStartPos;
		if( m_iSelectedStartPos < 0 )
			m_iSelectedStartPos = m_mapStartPos.size() - 1;
		break;
	case IID_BTN_LEFT_BIRTHSTONE:
		--m_iSelectedBirthStone;
		if( m_iSelectedBirthStone < 0 )
			m_iSelectedBirthStone = m_mapBirthStone.size() - 1;
		break;
	case IID_BTN_RIGHT_SEX:
		++m_iSelectedSex;
		if( m_iSelectedSex >= m_mapSex.size() )
			m_iSelectedSex = 0;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeSex", ZZ_PARAM_INT, 
			atoi(m_mapSex[m_iSelectedSex].m_strValue.c_str()), ZZ_PARAM_END );

		break;
	case IID_BTN_RIGHT_FACE:
		++m_iSelectedFace;
		if( m_iSelectedFace >= m_mapFace.size() )
			m_iSelectedFace = 0;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeFace", ZZ_PARAM_INT, 
			atoi( m_mapFace[m_iSelectedFace].m_strValue.c_str()), ZZ_PARAM_END );

		break;
	case IID_BTN_RIGHT_HAIR:
		++m_iSelectedHair;
		if( m_iSelectedHair >= m_mapHair.size() )
			m_iSelectedHair = 0;

		CSystemProcScript::GetSingleton().CallLuaFunction( "OnChangeHair", ZZ_PARAM_INT, 
			atoi( m_mapHair[m_iSelectedHair].m_strValue.c_str()), ZZ_PARAM_END );

		break;
	case IID_BTN_RIGHT_STARTPOS:
		++m_iSelectedStartPos;
		if( m_iSelectedStartPos >= m_mapStartPos.size() )
			m_iSelectedStartPos = 0;
		break;
	case IID_BTN_RIGHT_BIRTHSTONE:
		++m_iSelectedBirthStone;
		if( m_iSelectedBirthStone >= m_mapBirthStone.size() )
			m_iSelectedBirthStone = 0;
		break;
	default:
		break;
	}
}
void CClanOrganizeDlg::OrganizeClan()
{
	//조건 체크
	//1. 내가 다른 클랜에 가입하지 않았다.
	//2. 돈이나..레벨등의 조건에 만족한다.

	bool bCheckMakeClan = false;
/*
	if(CCountry::GetSingleton().IsJapan())
	{
	// 05.11.02 : 김주현 - 일본일 경우엔 100000 내면 된다~!
        if(g_pAVATAR->Get_LEVEL() >= 30 && g_pAVATAR->Get_MONEY() >= 100000 )
		{
			bCheckMakeClan = true;
		}
	}
	else
	{
*/
	// 클랜 창설 비용.
	if(g_pAVATAR->Get_LEVEL() >= 30 && g_pAVATAR->Get_MONEY() >= 1000000)
	{
		bCheckMakeClan = true;
	}
//	}
	if( bCheckMakeClan )
	{

		CWinCtrl* pCtrl = Find( IID_EDIT_TITLE );
		assert( pCtrl && pCtrl->GetControlType() == CTRL_EDITBOX );
		if( pCtrl == NULL ) return;
		if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;

		CTEditBox* pEditBox = (CTEditBox*)pCtrl;
		char* pszTitle = pEditBox->get_text();
		if( pszTitle == NULL ) return;
		if( !pszTitle[0] ) return;

		if( !CFilterWord::GetInstance().IsValidName( pszTitle ) )
		{
			g_itMGR.OpenMsgBox(STR_INVALID_CHARACTER_NAME );
			pEditBox->clear_text();
			return;
		}



		pCtrl = Find( IID_EDIT_SLOGAN );
		if( pCtrl == NULL ) return;
		if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;

		pEditBox = (CTEditBox*)pCtrl;
		char* pszSlogan = pEditBox->get_text();

		if( pszSlogan == NULL )
		{
			g_itMGR.OpenMsgBox( STR_CLAN_INPUT_SLOGAN );
			return;
		}

		if( !pszSlogan[0] )
		{
			g_itMGR.OpenMsgBox( STR_CLAN_INPUT_SLOGAN );
			return;
		}

		g_pNet->Send_cli_CLAN_CREATE( (WORD)m_iSelectedClanBack,(WORD)m_iSelectedClanCenter, pszTitle, pszSlogan );

	}
	else
	{
		std::string strMsg = STR_CLAN_RESULT_CLAN_CREATE_NO_CONDITION;
		strMsg.append(", ");
		strMsg.append( STR_CLAN_CREATE_CONDITION );
		g_itMGR.OpenMsgBox( strMsg.c_str() );
	}
}
Esempio n. 8
0
unsigned CChatRoomDlg::Process( unsigned uiMsg, WPARAM wParam, LPARAM lParam )
{
	if( !IsVision())  return 0;

#ifdef __PRIVATECHAT2

	CWinCtrl * pCtrl = NULL;	
	switch(uiMsg)
	{
	case WM_LBUTTONDBLCLK:
		{	
			if( m_iTab == TAB_MEMBER && !m_bMinimize)
			{
				int i=0;
				std::list< CChatMember >::iterator iter;
				for( iter = m_Members.begin(); iter != m_Members.end(); ++iter, i++ )
				{						
					if( pCtrl = Find( CStr::Printf("NAME_%02d", i) ) )
					{
						if( pCtrl->IsInside( lParam ) && strcmp((*iter).GetName(), g_pAVATAR->Get_NAME()) )
						{
							g_itMGR.OpenPrivateChatDlg( (*iter).GetUserTag(), FRIEND_STATUS_NORMAL, (*iter).GetName() );
						}
					}
				}				
			}			
		}
		break;
	case WM_KEYDOWN:
		{
			switch( wParam )
			{

			case VK_TAB:
				{
					CTEditBox* pEditBoxID  = NULL;
					CTEditBox* pEditBoxPwd = NULL;
					pCtrl = Find( IID_EDITBOX_TITLE );
					if( pCtrl && pCtrl->GetControlType() == CTRL_EDITBOX )
						pEditBoxID = (CTEditBox*)pCtrl;

					pCtrl = Find( IID_EDITBOX_PWD );
					if( pCtrl && pCtrl->GetControlType() == CTRL_EDITBOX )
						pEditBoxPwd = ( CTEditBox*) pCtrl;

					if( pEditBoxID && pEditBoxPwd )
					{
						if( pEditBoxID->IsFocus() )
							pEditBoxPwd->SetFocus(true);
						else
							pEditBoxID->SetFocus(true);
					}
					return uiMsg;					
				}
				break;			
			}
		}
	}

#endif //__PRIVATECHAT2

	if( unsigned uiProcID = CTDialog::Process( uiMsg, wParam,lParam ) )
	{
		switch( uiMsg )
		{
#ifdef __PRIVATECHAT2
		case WM_KEYDOWN:
#endif
		case WM_LBUTTONUP:
			OnLButtonUp( uiProcID, wParam, lParam );
			break;
		case WM_LBUTTONDOWN:
			OnLButtonDown( uiProcID, wParam, lParam );
		default:
			break;
		}
		return uiMsg;
	}
	return 0;
}
Esempio n. 9
0
void CChatRoomDlg::OnLButtonUp( unsigned uiProcID, WPARAM wParam, LPARAM lParam )
{
	switch( uiProcID )
	{
	case IID_BTN_MINIMIZE:
		Minimize();
		break;
	case IID_BTN_MAXIMIZE:
		Maximize();
		break;
	case IID_BTN_CLOSE:
		Hide();
		break;
	case IID_BTN_MAKE:
		{
			CWinCtrl* pCtrl = FindChildInPane( IID_PANE_TOP, IID_TABBEDPANE );

			assert( pCtrl );
			if( pCtrl == NULL ) return;
			
			assert( pCtrl->GetControlType() == CTRL_TABBEDPANE );
			if( pCtrl->GetControlType() != CTRL_TABBEDPANE ) return;

			CTabbedPane* pTabbedPane = (CTabbedPane*)pCtrl;

			CJContainer* pContainer = pTabbedPane->GetTabContainer( TAB_CONFIG );
			assert( pContainer );
			if( pContainer == NULL ) return;
			
			pCtrl = pContainer->Find( IID_EDITBOX_TITLE );
			assert( pCtrl );
			if( pCtrl == NULL ) return;
			
			assert( pCtrl->GetControlType() == CTRL_EDITBOX );
			if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;
			
			CTEditBox* pTitleEditBox = (CTEditBox*) pCtrl;
			char* pszTitle = pTitleEditBox->get_text();

			if( pszTitle && strlen( pszTitle ) > 0 )
			{
				pCtrl = pContainer->Find( IID_EDITBOX_PWD );
				assert( pCtrl );
				if( pCtrl == NULL ) return;
				
				assert( pCtrl->GetControlType() == CTRL_EDITBOX );
				if( pCtrl->GetControlType() != CTRL_EDITBOX ) return;
				
				CTEditBox* pTitleEditBox = (CTEditBox*) pCtrl;
				char* pszPwd = pTitleEditBox->get_text();
				if( pszPwd && strlen( pszPwd ) < 1 )
					pszPwd = NULL;

				BYTE btRoomType = CHATROOM_NORMAL;				
				//홍근 오후 3:54 2006-10-26 : 커뮤니티 기능 추가 작업.
#ifdef __PRIVATECHAT2				
				if( pszPwd  )
				{
					btRoomType = CHATROOM_PRIVATE;
				}
#else
#pragma message( "현재 모든 채팅방은 공개방으로한다.")				
				pszPwd = NULL;///현재 모든 채팅방은 공개방
#endif

				pCtrl = pContainer->Find( IID_COMBOBOX_MAXUSER );
				assert( pCtrl );
				if( pCtrl == NULL ) return;
				assert( pCtrl->GetControlType() == CTRL_COMBOBOX );
				if( pCtrl->GetControlType() != CTRL_COMBOBOX ) return;

				CTComboBox* pComboBox = (CTComboBox*)pCtrl;
				const char* pszValue = pComboBox->GetSelectedItem();
				int iMaxUserCount = 8;
				if( pszValue )
					iMaxUserCount = atoi( pszValue );

				CChatRoom::GetInstance().SendReqMakeRoom( btRoomType, iMaxUserCount, pszTitle, pszPwd );
			}
			break;
		}
	default:
		break;
	}
}