317 lines
9.0 KiB
C++
317 lines
9.0 KiB
C++
//#pragma once
|
|
//
|
|
////#include <vector>
|
|
//
|
|
////#include "SUIWnd.h" // UI 공통 클래스
|
|
//
|
|
//// 길드 서브창 타입.
|
|
//enum GUILDWND_TYPE
|
|
//{
|
|
// GUILDWND_NONE = -1,
|
|
// GUILDWND_INFO = 0, // 길드정보
|
|
// GUILDWND_MANAGE, // 길드관리
|
|
// GUILDWND_MASTER, // 길드마스터
|
|
// GUILDWND_MAX
|
|
//};
|
|
//
|
|
//
|
|
//class KUIListControl;
|
|
//
|
|
//// Guild 창
|
|
//
|
|
//class SUIGuildWnd : public SUIWnd
|
|
//{
|
|
//private:
|
|
//
|
|
//
|
|
// vector< SUIWnd * > m_ArrTabWnd; // Tab Wnd 관리 배열.
|
|
// // 0 탭 길드원.
|
|
// // 1 탭 길드신청자.
|
|
//
|
|
// KUISimpleTabControl * m_pTabControl; // 탭 컨트롤.
|
|
//
|
|
// int m_nShowSubWnd; // 현재 떠있는 Sub Wnd.
|
|
// vector< int > m_ArrSubWndID;
|
|
//
|
|
// KUIControl * m_BaseControl; // 길드정보컨트롤들의 아래에 깔리는 Base Control.
|
|
// vector< KUIControl * > m_ArrOwnGuildStateControl; // 자신의 길드정보 컨트롤 배열.
|
|
//
|
|
// int m_nSrcHeightLocal; // 길드정보 확장 이전 원본크기.
|
|
// bool m_bExtendLocal; // 자신의 길드정보 확장여부.
|
|
//
|
|
// KUIWnd * m_pMemoControl; // 길드메모컨트롤.
|
|
// class SUIMemoViewWnd * m_pMemoViewWnd; // 자신의 길드메모 출력용 Wnd.
|
|
//
|
|
// class KUIControlIconStatic * m_pLineControl; // 접속률 라인컨트롤.
|
|
// float m_LineOrgWidth; // 라인컨트롤의 원본 너비.
|
|
//
|
|
// KUIControlSimpleButton * m_pBtnCtrlMaster; // 길드마스터 버튼.
|
|
//
|
|
// bool m_bMemoText; // 자신의 메모.
|
|
//
|
|
// bool m_bGuild; // 길드가입여부.
|
|
//
|
|
// //enum E_GUILDMAIN
|
|
// //{
|
|
// // E_GUILDMAIN_button_guild_data_01 // 길드정보 버튼.
|
|
// // button_guild_manage_01 // 길드관리 버튼.
|
|
// // button_guild_master_01 // 길드마스터 버튼.
|
|
//
|
|
// //};
|
|
//
|
|
//
|
|
// // Controls //
|
|
// class KUIControlIconStatic * m_pNoticePictogram; // 공지픽토그램.
|
|
// class KUIControl * m_pControlGuildName; // 길드명.
|
|
// class KUIControl * m_pControlNotice; // 길드공지
|
|
//
|
|
// class KUIControlIconStatic * m_pControlConnect; // 접속
|
|
// class KUIControlIconStatic * m_pControlJob; // 직업
|
|
// class KUIControl * m_pControlLv; // Level
|
|
// class KUIControl * m_pControlID; // 아이디
|
|
//
|
|
// bool m_bFirstOpen; // 최초오픈.
|
|
//
|
|
// bool m_bManageMode; // 관리모드.
|
|
//
|
|
//public :
|
|
//
|
|
// SUIGuildWnd( SGameManager * pGameManager );
|
|
//
|
|
// virtual ~SUIGuildWnd();
|
|
//
|
|
// //------------------------------------------
|
|
//
|
|
// virtual SUIWnd* CreateWnd( const char* szFile, KUIWndManager* pWndManager, KPoint kPos, int nWindowID );
|
|
// virtual bool InitControls( KPoint kPos );
|
|
//
|
|
// virtual void OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd = true );
|
|
//
|
|
// //virtual void OnPosChangeNofity(int nLeft, int nTop);
|
|
// virtual void ProcMsgAtStatic( SGameMessage* pMsg );
|
|
// virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam );
|
|
// virtual DWORD OnMouseMessage(DWORD dwMessage, int x, int y);
|
|
//
|
|
//
|
|
// //------------------------------------------
|
|
//
|
|
// void Release(); // 메모리 해제.
|
|
//
|
|
// void UpdateTabWnd(); // Tab Wnd Update.
|
|
// void UpdateMaster(); // 길드마스터 정보 컨트롤 변경
|
|
// void RefreshLineControl(); // 접속률 라인컨트롤.
|
|
//
|
|
// // 관리모드적용.
|
|
// void ManageMode();
|
|
//
|
|
// //
|
|
// // 길드메모뷰 Wnd.
|
|
// void InitMemoViewWnd(); // 메모뷰Wnd 설정.
|
|
// void ShowMemoView( int x, int y );
|
|
//
|
|
//
|
|
// void ShowSubWnd( GUILDWND_TYPE wndType ); // 길드 Sub Wnd 보임, 숨김 처리. ( TOGGLE )
|
|
// void OpenSubWnd( GUILDWND_TYPE wndType ); // 길드 Sub Wnd Open, 이외 sub wnd 는 Close.
|
|
// void CloseAllSubWnd(); // 모든 길드 Sub Wnd 숨김.
|
|
//
|
|
// void ShowTabWnd( int tabWndType ); // 탭 Wnd 보임, 숨김 처리.
|
|
//
|
|
// void ExtendOwnState(); // 자신의 길드정보 컨트롤 확장.
|
|
//
|
|
// void SetShowGuildState(); // 길드정보 컨트롤의 보임, 숨김처리.
|
|
//
|
|
// inline void DisableBtnCtrl( const char * pStr ); // 해당버튼 비활성화.
|
|
// inline void EnableBtnCtrl( const char * pStr ); // 해당버튼 활성화.
|
|
//
|
|
// void AuthorityProcess(); // 권한처리.
|
|
//
|
|
// //------------------------------------------
|
|
//
|
|
// void SUIGuildWnd::Class_1();
|
|
// void SUIGuildWnd::Class_2();
|
|
// void SUIGuildWnd::Class_3();
|
|
// void SUIGuildWnd::Class_4();
|
|
// void SUIGuildWnd::Class_5();
|
|
// void SUIGuildWnd::Class_6();
|
|
// void SUIGuildWnd::Class_7();
|
|
//#define MAX_AUTHORITY_CLASS 7
|
|
//
|
|
//
|
|
//};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
//#include <vector>
|
|
|
|
//#include "SUIWnd.h" // UI 공통 클래스
|
|
|
|
// 길드 서브창 타입.
|
|
enum GUILDWND_TYPE
|
|
{
|
|
GUILDWND_NONE = -1,
|
|
GUILDWND_INFO = 0, // 길드정보
|
|
GUILDWND_MANAGE, // 길드관리
|
|
GUILDWND_MASTER, // 길드마스터
|
|
GUILDWND_MAX
|
|
};
|
|
|
|
|
|
class KUIListControl;
|
|
|
|
// Guild 창
|
|
|
|
class SUIGuildWnd : public SUIWnd
|
|
{
|
|
private:
|
|
|
|
//-----------------------------
|
|
// 2010.11.26. 길드정보 변경시 UI 갱신방식 => 길드윈도우 open 시 UI 갱신 으로 변경.
|
|
|
|
int m_beforeAuthority; // 이전 등급.
|
|
int m_beforeGuildMemberCount; // 이전 길드원수.
|
|
int m_beforeGuildMemberLoginCount;
|
|
DWORD m_bRefresh; // 갱신조건.
|
|
bool m_bUIRefresh; // 길드윈도우 open 시에 UI를 갱신할지 여부.
|
|
|
|
//-----------------------------
|
|
|
|
|
|
vector< SUIWnd * > m_ArrTabWnd; // Tab Wnd 관리 배열.
|
|
// 0 탭 길드원.
|
|
// 1 탭 길드신청자.
|
|
|
|
// KUISimpleTabControl * m_pTabControl; // 탭 컨트롤.
|
|
|
|
// 2010.06.24. 탭컨트롤 => 버튼.
|
|
// UI팀에서 요청한 기능 때문에 탭컨트롤을 사용하지 못하고 버튼을 이용해 탭컨트롤 기능을 대신한다.
|
|
std::vector< KUIControlButton * > m_arrTabButton;
|
|
|
|
int m_nShowSubWnd; // 현재 떠있는 Sub Wnd.
|
|
vector< int > m_ArrSubWndID;
|
|
|
|
KUIControl * m_BaseControl; // 길드정보컨트롤들의 아래에 깔리는 Base Control.
|
|
vector< KUIControl * > m_ArrOwnGuildStateControl; // 자신의 길드정보 컨트롤 배열.
|
|
|
|
int m_nSrcHeightLocal; // 길드정보 확장 이전 원본크기.
|
|
bool m_bExtendLocal; // 자신의 길드정보 확장여부.
|
|
|
|
KUIWnd * m_pMemoControl; // 길드메모컨트롤.
|
|
|
|
KUIControlSimpleButton * m_pBtnCtrlMaster; // 길드마스터 버튼.
|
|
|
|
bool m_bMemoText; // 자신의 메모.
|
|
|
|
bool m_bGuild; // 길드가입여부.
|
|
|
|
//enum E_GUILDMAIN
|
|
//{
|
|
// E_GUILDMAIN_button_guild_data_01 // 길드정보 버튼.
|
|
// button_guild_manage_01 // 길드관리 버튼.
|
|
// button_guild_master_01 // 길드마스터 버튼.
|
|
|
|
//};
|
|
|
|
|
|
// Controls //
|
|
class KUIControlStatic * m_pNoticePictogram; // 공지픽토그램.
|
|
class KUIControl * m_pControlGuildName; // 길드명.
|
|
class KUIControl * m_pControlNotice; // 길드공지
|
|
class KUIControl * m_pControlCurrent;
|
|
class KUIControl * m_pControlGrade;
|
|
|
|
class KUIControlStatic * m_pControlConnect; // 접속
|
|
class KUIControlStatic * m_pControlJob; // 직업
|
|
class KUIControl * m_pControlLv; // Level
|
|
class KUIControl * m_pControlID; // 아이디
|
|
|
|
bool m_bFirstOpen; // 최초오픈.
|
|
|
|
bool m_bManageMode; // 관리모드.
|
|
bool m_bMasterMode; // 길드마스터모드.
|
|
|
|
/// 2011.09.30 - prodongi
|
|
int m_selectedTempTabIdx;
|
|
|
|
public :
|
|
|
|
SUIGuildWnd( SGameManager * pGameManager );
|
|
|
|
virtual ~SUIGuildWnd();
|
|
|
|
//------------------------------------------
|
|
|
|
virtual SUIWnd* CreateWnd( const char* szFile, KUIWndManager* pWndManager, KPoint kPos, int nWindowID );
|
|
virtual bool InitControls( KPoint kPos );
|
|
|
|
virtual void OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd = true );
|
|
|
|
//virtual void OnPosChangeNofity(int nLeft, int nTop);
|
|
virtual void ProcMsgAtStatic( SGameMessage* pMsg );
|
|
virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam );
|
|
virtual DWORD OnMouseMessage(DWORD dwMessage, int x, int y);
|
|
/// 2011.09.30 - prodongi
|
|
virtual void Process(DWORD dwTime);
|
|
|
|
//------------------------------------------
|
|
|
|
void Release(); // 메모리 해제.
|
|
|
|
void UpdateTabWnd(); // Tab Wnd Update.
|
|
void UpdateMaster( DWORD nRefresh ); // 길드마스터 정보 컨트롤 변경. 갱신조건추가. bintitle.2010.11.26.
|
|
|
|
// 관리모드적용.
|
|
void ManageMode();
|
|
|
|
//
|
|
// 길드메모뷰 Wnd.
|
|
void ShowMemoView( int x, int y );
|
|
|
|
|
|
void ShowSubWnd( GUILDWND_TYPE wndType ); // 길드 Sub Wnd 보임, 숨김 처리. ( TOGGLE )
|
|
void OpenSubWnd( GUILDWND_TYPE wndType ); // 길드 Sub Wnd Open, 이외 sub wnd 는 Close.
|
|
void CloseAllSubWnd(); // 모든 길드 Sub Wnd 숨김.
|
|
|
|
void ShowTabWnd( int tabWndType ); // 탭 Wnd 보임, 숨김 처리.
|
|
|
|
void ExtendOwnState(); // 자신의 길드정보 컨트롤 확장.
|
|
|
|
void SetShowGuildState(); // 길드정보 컨트롤의 보임, 숨김처리.
|
|
|
|
inline void DisableBtnCtrl( const char * pStr ); // 해당버튼 비활성화.
|
|
inline void EnableBtnCtrl( const char * pStr ); // 해당버튼 활성화.
|
|
|
|
void AuthorityProcess(); // 권한처리.
|
|
|
|
//------------------------------------------
|
|
|
|
void SUIGuildWnd::Class_1();
|
|
void SUIGuildWnd::Class_2();
|
|
void SUIGuildWnd::Class_3();
|
|
void SUIGuildWnd::Class_4();
|
|
void SUIGuildWnd::Class_5();
|
|
void SUIGuildWnd::Class_6();
|
|
void SUIGuildWnd::Class_7();
|
|
#define MAX_AUTHORITY_CLASS 7
|
|
|
|
private:
|
|
/// 2011.09.30 임시 저장한 선택 탭 업데이트 - prodongi
|
|
void updateSelectedTempTab();
|
|
|
|
}; |