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); }
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() ); } } } } }
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; }
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 ); } }
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 }
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() ); } }
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; }
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; } }