📄 optiondialog.cpp
字号:
#include "stdafx.h"
#include "OptionDialog.h"
#include "WindowIDEnum.h"
#include "./Interface/cWindowManager.h"
#include "./Interface/cPushupButton.h"
#include "./Interface/cGuageBar.h"
#include "./Interface/cCheckBox.h"
#include "MacroManager.h"
#include "GameIn.h"
#include "cMsgBox.h"
#include "MacroDialog.h"
#include "MainBarDialog.h"
COptionDialog::COptionDialog()
{
// m_pBtnPreview = NULL;
}
COptionDialog::~COptionDialog()
{
}
void COptionDialog::Add(cWindow * window)
{
if(window->GetType() == WT_PUSHUPBUTTON)
AddTabBtn(curIdx1++, (cPushupButton * )window);
else if(window->GetType() == WT_DIALOG)
AddTabSheet(curIdx2++, window);
else
cTabDialog::Add(window);
}
void COptionDialog::Linking()
{
// m_pBtnPreview = (cButton*)GetWindowForID( OTI_BTN_PREVIEW );
// m_pBtnPreview->SetDisable( TRUE );
}
void COptionDialog::SetActive(BOOL val)
{
if( !m_bDisable )
{
if( val )
{
m_GameOption = *( OPTIONMGR->GetGameOption() );
UpdateData( FALSE );
}
cTabDialog::SetActive(val);
}
//--- main bar icon
CMainBarDialog* pDlg = GAMEIN->GetMainInterfaceDialog();
if( pDlg )
pDlg->SetPushBarIcon( OPT_OPTIONDLGICON, m_bActive );
}
void COptionDialog::UpdateData( BOOL bSave )
{
cDialog* pDlg;
if( bSave ) // 技泼等 可记 啊廉坷扁
{
pDlg = (cDialog*)GetTabSheet( 0 );
m_GameOption.bNoDeal = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NODEAL ))->IsChecked();
m_GameOption.bNoParty = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOPARTY ))->IsChecked();
m_GameOption.bNoFriend = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOFRIEND ))->IsChecked();
m_GameOption.bNoVimu = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOFIGHT ))->IsChecked();
m_GameOption.bNameMunpa = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_MUNPANAME ))->IsChecked();
m_GameOption.bNameParty = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_PARTYNAME ))->IsChecked();
m_GameOption.bNameOthers = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_OTHERSNAME ))->IsChecked();
m_GameOption.nMacroMode = ((cPushupButton*)pDlg->GetWindowForID( OTI_PB_MACROMODE ))->IsPushed();
pDlg = (cDialog*)GetTabSheet( 1 );
m_GameOption.bNoWhisper = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOWHISPER ))->IsChecked();
m_GameOption.bNoChatting = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOCHATTING ))->IsChecked();
m_GameOption.bNoBalloon = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOBALLOON ))->IsChecked();
m_GameOption.bAutoHide = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_AUTOHIDE ))->IsChecked();
m_GameOption.bNoSystemMsg = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOSYSTEMMSG ))->IsChecked();
m_GameOption.bNoExpMsg = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOACQUIREMSG ))->IsChecked();
m_GameOption.bNoItemMsg = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOITEMMSG ))->IsChecked();
pDlg = (cDialog*)GetTabSheet( 2 );
m_GameOption.nGamma = ((cGuageBar*)pDlg->GetWindowForID( OTI_GB_GAMMA ))->GetCurValue();
m_GameOption.nSightDistance = ((cGuageBar*)pDlg->GetWindowForID( OTI_GB_SIGHT ))->GetCurValue();
// m_GameOption.bGraphicCursor = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_CURSOR ))->IsChecked();
m_GameOption.bShadowHero = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_HEROSHADOW ))->IsChecked( );
m_GameOption.bShadowMonster = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_MONSTERSHADOW ))->IsChecked( );
m_GameOption.bShadowOthers = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_OTHERSSHADOW ))->IsChecked( );
pDlg = (cDialog*)GetTabSheet( 3 );
m_GameOption.bSoundBGM = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_BGMSOUND ))->IsChecked();
m_GameOption.bSoundEnvironment = ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_ENVSOUND ))->IsChecked();
m_GameOption.nVolumnBGM = ((cGuageBar*)pDlg->GetWindowForID( OTI_GB_BGMSOUND ))->GetCurValue();
m_GameOption.nVolumnEnvironment = ((cGuageBar*)pDlg->GetWindowForID( OTI_GB_ENVSOUND ))->GetCurValue();
OPTIONMGR->SetGameOption( &m_GameOption );
}
else //沥焊 啊瘤绊 客辑 芒 技泼
{
pDlg = (cDialog*)GetTabSheet( 0 );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NODEAL ))->SetChecked( m_GameOption.bNoDeal );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOPARTY ))->SetChecked( m_GameOption.bNoParty );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOFRIEND ))->SetChecked( m_GameOption.bNoFriend );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOFIGHT ))->SetChecked( m_GameOption.bNoVimu );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_MUNPANAME ))->SetChecked( m_GameOption.bNameMunpa );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_PARTYNAME ))->SetChecked( m_GameOption.bNameParty );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_OTHERSNAME ))->SetChecked( m_GameOption.bNameOthers );
((cPushupButton*)pDlg->GetWindowForID( OTI_PB_CHATMODE ))->SetPush( !m_GameOption.nMacroMode );
((cPushupButton*)pDlg->GetWindowForID( OTI_PB_MACROMODE ))->SetPush( m_GameOption.nMacroMode );
pDlg = (cDialog*)GetTabSheet( 1 );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOWHISPER ))->SetChecked( m_GameOption.bNoWhisper );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOCHATTING ))->SetChecked( m_GameOption.bNoChatting );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOBALLOON ))->SetChecked( m_GameOption.bNoBalloon );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_AUTOHIDE ))->SetChecked( m_GameOption.bAutoHide );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOSYSTEMMSG ))->SetChecked( m_GameOption.bNoSystemMsg );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOACQUIREMSG ))->SetChecked( m_GameOption.bNoExpMsg );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_NOITEMMSG ))->SetChecked( m_GameOption.bNoItemMsg );
pDlg = (cDialog*)GetTabSheet( 2 );
((cGuageBar*)pDlg->GetWindowForID( OTI_GB_GAMMA ))->SetCurValue( m_GameOption.nGamma );
((cGuageBar*)pDlg->GetWindowForID( OTI_GB_SIGHT ))->SetCurValue( m_GameOption.nSightDistance );
// ((cCheckBox*)pDlg->GetWindowForID( OTI_CB_CURSOR ))->SetChecked( m_GameOption.bGraphicCursor );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_HEROSHADOW ))->SetChecked( m_GameOption.bShadowHero );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_MONSTERSHADOW ))->SetChecked( m_GameOption.bShadowMonster );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_OTHERSSHADOW ))->SetChecked( m_GameOption.bShadowOthers );
pDlg = (cDialog*)GetTabSheet( 3 );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_BGMSOUND ))->SetChecked( m_GameOption.bSoundBGM );
((cCheckBox*)pDlg->GetWindowForID( OTI_CB_ENVSOUND ))->SetChecked( m_GameOption.bSoundEnvironment );
((cGuageBar*)pDlg->GetWindowForID( OTI_GB_BGMSOUND ))->SetCurValue( m_GameOption.nVolumnBGM );
((cGuageBar*)pDlg->GetWindowForID( OTI_GB_ENVSOUND ))->SetCurValue( m_GameOption.nVolumnEnvironment );
}
}
void COptionDialog::OnActionEvent(LONG lId, void * p, DWORD we)
{
if( we & WE_BTNCLICK )
{
if( lId == OTI_BTN_OK )
{
UpdateData( TRUE );
OPTIONMGR->ApplySettings();
OPTIONMGR->SaveGameOption();
OPTIONMGR->SendOptionMsg();
SetActive( FALSE );
}
// else if( lId == OTI_BTN_PREVIEW )
// {
// UpdateData( TRUE );
// OPTIONMGR->ApplySettings();
// OPTIONMGR->SaveGameOption();
// m_pBtnPreview->SetDisable( TRUE );
// }
else if( lId == OTI_BTN_CANCEL )
{
OPTIONMGR->CancelSettings();
SetActive( FALSE );
}
else if( lId == OTI_BTN_RESET )
{
OPTIONMGR->SetDefaultOption();
m_GameOption = *( OPTIONMGR->GetGameOption() );
UpdateData( FALSE );
}
else if( lId == OTI_BTN_SETCHAT )
{
/*
if( GAMEIN->GetMacroDialog()->IsActive() )
{
GAMEIN->GetMacroDialog()->SetActive( FALSE );
}
else
{
GAMEIN->GetMacroDialog()->SetMode( MM_CHAT );
GAMEIN->GetMacroDialog()->SetActive( TRUE );
}
*/
}
else if( lId == OTI_BTN_SETMACRO )
{
/*
if( GAMEIN->GetMacroDialog()->IsActive() )
{
GAMEIN->GetMacroDialog()->SetActive( FALSE );
}
else
{
GAMEIN->GetMacroDialog()->SetMode( MM_MACRO );
GAMEIN->GetMacroDialog()->SetActive( TRUE );
}
*/
}
}
if( we & WE_PUSHUP ) //扼叼坷 滚瓢 贸府
{
if( lId == OTI_PB_CHATMODE || lId == OTI_PB_MACROMODE )
((cPushupButton*)((cDialog*)GetTabSheet( 0 ))->GetWindowForID( lId ))->SetPush( TRUE );
}
if( we & WE_PUSHDOWN ) //
{
if( lId == OTI_PB_CHATMODE )
{
((cPushupButton*)((cDialog*)GetTabSheet( 0 ))->GetWindowForID( OTI_PB_MACROMODE ))->SetPush( FALSE );
m_GameOption.nMacroMode = MM_CHAT;
}
else if( lId == OTI_PB_MACROMODE )
{
((cPushupButton*)((cDialog*)GetTabSheet( 0 ))->GetWindowForID( OTI_PB_CHATMODE ))->SetPush( FALSE );
m_GameOption.nMacroMode = MM_MACRO;
}
}
// if( m_pBtnPreview->IsDisable() && lId != OTI_BTN_PREVIEW )
// m_pBtnPreview->SetDisable( FALSE );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -