[saco] Implement/match CChatWindow::ResetDialogControls(...)

* Implement/match `CChatWindow::FUNC_10067200()`
This commit is contained in:
RD42 2024-07-23 19:02:41 +08:00
parent 0a6d658266
commit 5d04ca752d
2 changed files with 40 additions and 5 deletions

View File

@ -46,8 +46,8 @@ CChatWindow::CChatWindow(IDirect3DDevice9 *pD3DDevice, CFontRender *pFontRender,
field_63B6 = NULL; field_63B6 = NULL;
field_63D2 = GetTickCount(); field_63D2 = GetTickCount();
field_63DE = 1; field_63DE = 1;
field_11E = 0; m_pScrollBar = NULL;
field_116 = 0; m_pGameUI = NULL;
field_11A = 0; field_11A = 0;
CreateFonts(); CreateFonts();
@ -61,9 +61,38 @@ void CChatWindow::CreateFonts()
// TODO: CChatWindow::CreateFonts .text:100681D0 // TODO: CChatWindow::CreateFonts .text:100681D0
} }
//----------------------------------------------------
// MATCH
void CChatWindow::ResetDialogControls(CDXUTDialog *pGameUI)
{
m_pGameUI = pGameUI;
if(pGameUI) {
m_pScrollBar = new CDXUTScrollBar(pGameUI);
pGameUI->AddControl(m_pScrollBar);
m_pScrollBar->SetVisible(true);
m_pScrollBar->SetEnabled(true);
FUNC_10067200();
}
}
//----------------------------------------------------
//---------------------------------------------------- //----------------------------------------------------
void CChatWindow::AddDebugMessage(CHAR * szFormat, ...) void CChatWindow::AddDebugMessage(CHAR * szFormat, ...)
{ {
// TODO: CChatWindow::AddDebugMessage .text:100680F0 // TODO: CChatWindow::AddDebugMessage .text:100680F0
} }
// MATCH
void CChatWindow::FUNC_10067200()
{
if(m_pScrollBar) {
m_pScrollBar->SetLocation(10,40);
m_pScrollBar->SetSize(20,((field_63E2+1)*field_0)-60);
m_pScrollBar->SetTrackRange(1,MAX_MESSAGES);
m_pScrollBar->SetPageSize(field_0);
m_pScrollBar->SetTrackPos(MAX_MESSAGES-field_0);
}
}

View File

@ -20,9 +20,9 @@ private:
char field_C; char field_C;
int field_D; int field_D;
char field_11[261]; char field_11[261];
int field_116; CDXUTDialog *m_pGameUI;
int field_11A; int field_11A;
int field_11E; CDXUTScrollBar *m_pScrollBar;
DWORD m_dwChatTextColor; DWORD m_dwChatTextColor;
DWORD m_dwChatInfoColor; DWORD m_dwChatInfoColor;
DWORD m_dwChatDebugColor; DWORD m_dwChatDebugColor;
@ -41,13 +41,19 @@ private:
int field_63D6; int field_63D6;
int field_63DA; int field_63DA;
int field_63DE; int field_63DE;
char _gap63E2[8]; int field_63E2;
char _gap63E6[4];
void CreateFonts(); void CreateFonts();
void FUNC_10067200();
public: public:
void AddDebugMessage(CHAR *szFormat, ...); void AddDebugMessage(CHAR *szFormat, ...);
void ResetDialogControls(CDXUTDialog *pGameUI);
CChatWindow(IDirect3DDevice9 *pD3DDevice, CFontRender *pFontRender, CHAR *szChatLogFile); CChatWindow(IDirect3DDevice9 *pD3DDevice, CFontRender *pFontRender, CHAR *szChatLogFile);
}; };