89 lines
2.4 KiB
C++
89 lines
2.4 KiB
C++
// ColumnDividerPage.cpp : implementation file
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "resource.h"
|
|
#include "ColumnDividerPage.h"
|
|
|
|
#ifdef _DEBUG
|
|
#define new DEBUG_NEW
|
|
#undef THIS_FILE
|
|
static char THIS_FILE[] = __FILE__;
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CColumnDividerPage property page
|
|
|
|
IMPLEMENT_DYNCREATE(CColumnDividerPage, CDividerPage)
|
|
|
|
CColumnDividerPage::CColumnDividerPage() : CDividerPage(CColumnDividerPage::IDD)
|
|
{
|
|
//{{AFX_DATA_INIT(CColumnDividerPage)
|
|
m_bInheritSheet = FALSE;
|
|
//}}AFX_DATA_INIT
|
|
}
|
|
|
|
CColumnDividerPage::~CColumnDividerPage()
|
|
{
|
|
}
|
|
|
|
void CColumnDividerPage::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CDividerPage::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(CColumnDividerPage)
|
|
DDX_Check(pDX, IDC_INHERIT_SHEET, m_bInheritSheet);
|
|
//}}AFX_DATA_MAP
|
|
if(!pDX->m_bSaveAndValidate) {
|
|
if(m_bInheritSheet) {
|
|
GetDlgItem(IDC_DIVIDER_COLOR)->EnableWindow(FALSE);
|
|
GetDlgItem(IDC_DIVIDER_LINETYPE)->EnableWindow(FALSE);
|
|
GetDlgItem(IDC_DIVIDER_LINEWIDTH)->EnableWindow(FALSE);
|
|
GetDlgItem(IDC_NODIVIDER)->EnableWindow(FALSE);
|
|
} else {
|
|
GetDlgItem(IDC_NODIVIDER)->EnableWindow(TRUE);
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CColumnDividerPage, CDividerPage)
|
|
//{{AFX_MSG_MAP(CColumnDividerPage)
|
|
ON_BN_CLICKED(IDC_INHERIT_SHEET, OnInheritSheet)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CColumnDividerPage message handlers
|
|
|
|
void CColumnDividerPage::Obj2Dlg(const TSheetColumn &col, const TDividerStyle &styleParent)
|
|
{
|
|
const TDividerStyle ÷r=col.GetDividerStyle();
|
|
m_parentDivider=styleParent;
|
|
if(divider.GetDividerFlag()==TDividerStyle::kParent) {
|
|
CDividerPage::Obj2Dlg(m_parentDivider);
|
|
m_bInheritSheet=TRUE;
|
|
} else {
|
|
CDividerPage::Obj2Dlg(divider);
|
|
m_bInheritSheet=FALSE;
|
|
}
|
|
}
|
|
|
|
void CColumnDividerPage::Dlg2Obj(TSheetColumn &col) const
|
|
{
|
|
TDividerStyle ÷r=col.GetDividerStyle();
|
|
if(m_bInheritSheet) {
|
|
CopyObject(m_parentDivider, divider);
|
|
divider.SetDividerFlag(TDividerStyle::kParent);
|
|
} else {
|
|
CDividerPage::Dlg2Obj(divider);
|
|
if(divider.GetDividerFlag()==TDividerStyle::kParent)
|
|
divider.SetDividerFlag(TDividerStyle::kLocal);
|
|
}
|
|
}
|
|
|
|
void CColumnDividerPage::OnInheritSheet()
|
|
{
|
|
UpdateData(TRUE);
|
|
UpdateData(FALSE);
|
|
}
|