Files
Leviathan/Client/Game/game/Interface/SUIGuildSubManageWnd.h
T
2026-06-01 12:46:52 +02:00

101 lines
3.1 KiB
C++

#pragma once
//#include "SUIWnd.h" // UI 공통 클래스
// 길드관리 창.
class KUIControlPanel; // 패널.
class KUIControlPanelManager; // 패널 관리자.
class SUIGuildSubManageWnd : public SUIWnd
{
private:
//-----------------------------
// 2010.11.26. 길드정보 변경시 UI 갱신방식 => 길드윈도우 open 시 UI 갱신 으로 변경.
DWORD m_bRefresh; // 갱신조건.
bool m_bUIRefresh; // 길드윈도우 open 시에 UI를 갱신할지 여부.
//-----------------------------
// Panel Manager.
KUIControlPanelManager * m_pPanelManager;
// 현재 오픈되어있는 패널.
KUIControlPanel * m_pCrrOpenPanel;
// 팝업윈도우 위치지정용 컨트롤.
KUIWnd * m_pPosPopupWnd;
enum E_PANEL_INDEX
{
E_PANEL_INDEX_ONESELF, // 나의관리
E_PANEL_INDEX_MARK, // 길드마크넣기
E_PANEL_INDEX_MEMBER, // 길드원가입, 제외
E_PANEL_INDEX_ATTACK, // 공격대
E_PANEL_INDEX_CLASS, // 길드등급
E_PANEL_INDEX_NOTICE, // 길드공지쓰기
E_PANEL_INDEX_MAX
};
//// 패널들..
//class SUIOneselfPanelWnd * m_pPanelOneself; // Panel 나의관리
//class SUIMarkPanelWnd * m_pPanelMark; // Panel 길드마크넣기
//class SUIAdministraionPanelWnd * m_pPanelAdmin; // Panel 길드원 관리
//class SUIAttackingArmyPanelWnd * m_pPanelAttacking; // Panel 공격대 결성
//class SUIClassNamePanelWnd * m_pPanelClassName; // Panel 길드등급 명칭
//class SUIJoinPanelWnd * m_pPanelJoin; // Panel 길드원 가입
//class SUINoticePanelWnd * m_pPanelNotice; // Panel 길드공지쓰기
bool m_bOpenTheOne; // 한개 패널오픈.
public :
SUIGuildSubManageWnd( SGameManager * pGameManager );
virtual ~SUIGuildSubManageWnd();
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 ProcMsgAtStatic( SGameMessage* pMsg );
virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam );
virtual void Process(DWORD dwTime);
// virtual DWORD OnMouseMessage(DWORD dwMessage, int x, int y);
//------------------------------------------
void Release(); // 메모리 해제.
// Data설정.
void DataMapping( bool bOpen = false );
// 패널 윈도우들의 ProcMsgAtStatic.
void PanelProcMsg( SGameMessage * pMsg );
// 패널 등록.
void RegisterPanel( KUIWndManager* pWndManager, KUIControlPanel * pPanel, char * strNUI, KPoint & kPos, int nWindowID=-1 );
void CloseWnd(); // 창 닫기.
//------------------------------------------
void PanelDisable( int nBitSet, int _and, int wndID, bool bOpen, int nLine ); // 해당 패널 disable.
void AuthorityProcess( SPlayerSlot * pPlayerSlot, bool bOpen=false ); // 권한처리.
//
// 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
};