Files
envi-code/SourceCode/Code2026/tg_shs/shs_annotate/ColumnDividerPage.cpp
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

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 &divider=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 &divider=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);
}