233 lines
6.6 KiB
C++
233 lines
6.6 KiB
C++
/*=========================================================================
|
|
*
|
|
* SECdMode.cpp : display mode dialog - Implementation file
|
|
*
|
|
*
|
|
* Version 1.0
|
|
* Creation date
|
|
* Revision date
|
|
*
|
|
* Shaitan
|
|
*=======================================================================*/
|
|
|
|
#include "stdafx.h"
|
|
#include "acp_base.h"
|
|
#include "SECTint.hpp"
|
|
|
|
#include "SECdMode.hpp"
|
|
|
|
#include "..\Main\Inc\_EditID.h"
|
|
#include "TUT.h"
|
|
|
|
//#################################################################################
|
|
// SECT_DialogMode dialog
|
|
//#################################################################################
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
SECT_DialogMode::SECT_DialogMode(CWnd* pParent)
|
|
: CFormView(SECT_DialogMode::IDD)
|
|
{
|
|
//{{AFX_DATA_INIT(SECT_DialogMode)
|
|
//}}AFX_DATA_INIT
|
|
}
|
|
|
|
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
void SECT_DialogMode::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CFormView::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(SECT_DialogMode)
|
|
DDX_Control(pDX, SECT_IDC_EDITSECTOR, m_cSector);
|
|
DDX_Control(pDX, SECT_IDC_EDITLIST, m_cList);
|
|
//Shaitan Clean Env
|
|
// DDX_Control(pDX, SECT_IDC_EDITENV, m_cEnv);
|
|
DDX_Control(pDX, SECT_IDC_SECTORTEXT, m_cSectorText);
|
|
DDX_Control(pDX, SECT_IDC_LISTTEXT, m_cListText);
|
|
//Shaitan Clean Env
|
|
// DDX_Control(pDX, SECT_IDC_ENVTEXT, m_cEnvText);
|
|
DDX_Control(pDX, SECT_IDC_MODESYM, m_cModeSym);
|
|
//}}AFX_DATA_MAP
|
|
}
|
|
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
BEGIN_MESSAGE_MAP(SECT_DialogMode, CFormView)
|
|
//{{AFX_MSG_MAP(SECT_DialogMode)
|
|
ON_WM_SIZE()
|
|
ON_WM_DESTROY()
|
|
ON_BN_CLICKED(SECT_IDC_EDITSECTOR, OnSectors)
|
|
ON_BN_CLICKED(SECT_IDC_EDITLIST, OnList)
|
|
//Shaitan Clean Env
|
|
// ON_BN_CLICKED(SECT_IDC_EDITENV, OnEnv)
|
|
ON_BN_CLICKED(SECT_IDC_MODESYM, OnModeSym)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
//#################################################################################
|
|
// SECT_DialogMode Inits
|
|
//#################################################################################
|
|
|
|
/*===========================================================================
|
|
* Description: Init dialog
|
|
* Creation date:
|
|
* Author: Shaitan
|
|
*---------------------------------------------------------------------------
|
|
* Revision date: Author:
|
|
*=========================================================================*/
|
|
void SECT_DialogMode::fn_vInitDialog (Sector_Interface *pOwnerDLL, CWnd *pParent, BOOL bShowSymetric, const CString csTag)
|
|
{
|
|
// create the dialog
|
|
m_bInitialised = FALSE;
|
|
m_pOwnerDLL = pOwnerDLL;
|
|
CFormView::Create(NULL, "", AFX_WS_DEFAULT_VIEW, CRect(0,0,120,180), pParent, AFX_IDW_PANE_FIRST, NULL);
|
|
|
|
// init data for dialog
|
|
CFormView::UpdateData(FALSE);
|
|
|
|
// FOR TUTORIAL
|
|
TUT_M_vGetTutDll();
|
|
|
|
TUT_M_vRegisterControl(m_cModeSym.m_hWnd, "OSC_DMODE" + csTag + "_BUTTON_SYMETRIC", TUT_e_Button);
|
|
TUT_M_vRegisterControl(m_cSector.m_hWnd, "OSC_DMODE" + csTag + "_BUTTON_SECTOR", TUT_e_Button);
|
|
TUT_M_vRegisterControl(m_cList.m_hWnd, "OSC_DMODE" + csTag + "_BUTTON_LIST", TUT_e_Button);
|
|
//Shaitan Clean Env
|
|
// TUT_M_vRegisterControl(m_cEnv.m_hWnd, "OSC_DMODE" + csTag + "_BUTTON_ENV", TUT_e_Button);
|
|
// END TUTORIAL
|
|
|
|
// update mode
|
|
m_bShowSymetric = bShowSymetric;
|
|
m_cModeSym.EnableWindow(bShowSymetric);
|
|
m_cModeSym.ShowWindow(bShowSymetric);
|
|
m_cModeSym.SetCheck(m_pOwnerDLL->fn_bSymetricMode());
|
|
fn_vUpdateEditMode();
|
|
m_bInitialised = TRUE;
|
|
}
|
|
|
|
|
|
/*===========================================================================
|
|
* Description: update dialog when selection changes
|
|
* Creation date:
|
|
* Author: Shaitan
|
|
*---------------------------------------------------------------------------
|
|
* Revision date: Author:
|
|
*=========================================================================*/
|
|
void SECT_DialogMode::fn_vUpdateEditMode (void)
|
|
{
|
|
tdeEditMode eEditMode;
|
|
|
|
eEditMode = m_pOwnerDLL->GetEditMode();
|
|
|
|
// reinit buttons
|
|
m_cSector.SetCheck(eEditMode == E_em_EditSector);
|
|
m_cList.SetCheck(eEditMode == E_em_EditList);
|
|
//Shaitan Clean Env
|
|
// m_cEnv.SetCheck(eEditMode == E_em_EditEnv);
|
|
}
|
|
|
|
|
|
//#################################################################################
|
|
// SECT_DialogMode Messages
|
|
//#################################################################################
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
void SECT_DialogMode::OnSize (UINT nFlags, int cx, int cy)
|
|
{
|
|
RECT WindowPosition;
|
|
int wcx, mcx, scx, mpy;
|
|
|
|
if (!m_bInitialised)
|
|
return;
|
|
|
|
GetWindowRect(&WindowPosition);
|
|
|
|
// calculate position
|
|
wcx = WindowPosition.right - WindowPosition.left - 20;
|
|
//Shaitan Clean Env
|
|
mcx = (wcx > 0) ? wcx / 2/*3*/ : 0;
|
|
scx = (wcx < 20) ? 20 : wcx-20;
|
|
|
|
// if necessary, move symetric
|
|
if (m_bShowSymetric)
|
|
{
|
|
m_cModeSym.MoveWindow(20, 2, scx, 18);
|
|
mpy = 20;
|
|
}
|
|
else
|
|
mpy = 0;
|
|
|
|
// move text
|
|
m_cSectorText.MoveWindow(5, mpy+5, mcx, 20);
|
|
m_cListText.MoveWindow(mcx+10, mpy+5, mcx, 20);
|
|
//Shaitan Clean Env
|
|
// m_cEnvText.MoveWindow(2*mcx + 15, mpy+5, mcx, 20);
|
|
// move radio buttons
|
|
m_cSector.MoveWindow(mcx/2, mpy+25, 20, 17);
|
|
m_cList.MoveWindow(3*mcx/2 + 5, mpy+25, 20, 17);
|
|
//Shaitan Clean Env
|
|
// m_cEnv.MoveWindow(5*mcx/2 + 10, mpy+25, 20, 17);
|
|
}
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
void SECT_DialogMode::OnDestroy (void)
|
|
{
|
|
// FOR TUTORIAL
|
|
TUT_M_vGetTutDll();
|
|
|
|
TUT_M_vUnregisterControl(m_cModeSym.m_hWnd);
|
|
TUT_M_vUnregisterControl(m_cSector.m_hWnd);
|
|
TUT_M_vUnregisterControl(m_cList.m_hWnd);
|
|
//Shaitan Clean Env
|
|
// TUT_M_vUnregisterControl(m_cEnv.m_hWnd);
|
|
// END TUTORIAL
|
|
|
|
CFormView::OnDestroy();
|
|
}
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
void SECT_DialogMode::OnSectors (void)
|
|
{
|
|
if (m_cSector.GetCheck())
|
|
m_pOwnerDLL->SetEditMode(E_em_EditSector);
|
|
else
|
|
m_pOwnerDLL->SetEditMode(E_em_EditList);
|
|
}
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
void SECT_DialogMode::OnList (void)
|
|
{
|
|
if (m_cList.GetCheck())
|
|
m_pOwnerDLL->SetEditMode(E_em_EditList);
|
|
else
|
|
m_pOwnerDLL->SetEditMode(E_em_EditSector/*E_em_EditEnv*/);
|
|
}
|
|
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
//Shaitan Clean Env
|
|
/*
|
|
void SECT_DialogMode::OnEnv (void)
|
|
{
|
|
if (m_cEnv.GetCheck())
|
|
m_pOwnerDLL->SetEditMode(E_em_EditEnv);
|
|
else
|
|
m_pOwnerDLL->SetEditMode(E_em_EditSector);
|
|
}
|
|
*/
|
|
/*----------------------------------------
|
|
----------------------------------------*/
|
|
void SECT_DialogMode::OnModeSym (void)
|
|
{
|
|
m_pOwnerDLL->SetSymetricMode(m_cModeSym.GetCheck());
|
|
}
|
|
|
|
|