a
This commit is contained in:
@@ -0,0 +1,261 @@
|
||||
// appdatadevdetaillistview.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "geomative.h"
|
||||
#include "appdatadevdetaillistview.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CAppDataDevDetailListView
|
||||
|
||||
IMPLEMENT_DYNCREATE(CAppDataDevDetailListView, CListView)
|
||||
|
||||
CAppDataDevDetailListView::CAppDataDevDetailListView()
|
||||
{
|
||||
m_pMngFrm = NULL;
|
||||
}
|
||||
|
||||
CAppDataDevDetailListView::~CAppDataDevDetailListView()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CAppDataDevDetailListView, CListView)
|
||||
//{{AFX_MSG_MAP(CAppDataDevDetailListView)
|
||||
ON_NOTIFY_REFLECT(NM_CUSTOMDRAW, OnCustomdrawDetailList)
|
||||
ON_NOTIFY_REFLECT(NM_SETFOCUS, OnSetfocus)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CAppDataDevDetailListView drawing
|
||||
|
||||
void CAppDataDevDetailListView::OnDraw(CDC* pDC)
|
||||
{
|
||||
CDocument* pDoc = GetDocument();
|
||||
// TODO: add draw code here
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CAppDataDevDetailListView diagnostics
|
||||
|
||||
#ifdef _DEBUG
|
||||
void CAppDataDevDetailListView::AssertValid() const
|
||||
{
|
||||
CListView::AssertValid();
|
||||
}
|
||||
|
||||
void CAppDataDevDetailListView::Dump(CDumpContext& dc) const
|
||||
{
|
||||
CListView::Dump(dc);
|
||||
}
|
||||
#endif //_DEBUG
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CAppDataDevDetailListView message handlers
|
||||
|
||||
void CAppDataDevDetailListView::OnInitialUpdate()
|
||||
{
|
||||
CListView::OnInitialUpdate();
|
||||
|
||||
// TODO: Add your specialized code here and/or call the base class
|
||||
CString strRowTitle;
|
||||
int iRowIndex = (int)VAL_ZERO;
|
||||
LVCOLUMN lvCol;
|
||||
memset(&lvCol, VAL_ZERO, sizeof(LVCOLUMN));
|
||||
|
||||
lvCol.mask = LVCF_FMT;
|
||||
lvCol.fmt = LVCFMT_RIGHT;
|
||||
|
||||
m_pDetailList = &GetListCtrl();
|
||||
m_pDetailList->SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_ONECLICKACTIVATE | LVS_EX_GRIDLINES);
|
||||
|
||||
m_pMngFrm = (CMDIChildWnd*)GetParentFrame();
|
||||
|
||||
m_pDetailList->InsertColumn(0, _T(""), LVCFMT_RIGHT, LIST_DETAIL_WIDTH_TITLE);
|
||||
m_pDetailList->InsertColumn(1, _T(""), LVCFMT_LEFT, LIST_DETAIL_WIDTH_VALUE);
|
||||
m_pDetailList->SetColumn(0, &lvCol);
|
||||
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_DENAME);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_REGISTER);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_ACTIVATION);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_MODELNO);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_SN);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_HWV);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_SWV);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_MDATE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_MBATCH);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_NTTIME);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_MUSAGE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_IFREQUENCY);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_NUMFORMAT);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_TSYS);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_MVOLTAGE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_MSYS);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_TZONE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_STDELAY);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_PSMODE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_PBTONE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_TTONE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_BVOLTAGE);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_DIMMER);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
iRowIndex++;
|
||||
strRowTitle.Empty();
|
||||
strRowTitle.LoadString(IDS_DB_DEVICE_CRYPTOGUARD);
|
||||
m_pDetailList->InsertItem(iRowIndex, strRowTitle);
|
||||
|
||||
m_iRowCount = ++iRowIndex;
|
||||
|
||||
while (VAL_ZERO != (LIST_DETAIL_AMOUNT_ROW - (UINT)iRowIndex))
|
||||
{
|
||||
m_pDetailList->InsertItem(iRowIndex, _T(""));
|
||||
iRowIndex++;
|
||||
}
|
||||
}
|
||||
|
||||
void CAppDataDevDetailListView::OnCustomdrawDetailList (NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>(pNMHDR);
|
||||
|
||||
*pResult = CDRF_DODEFAULT;
|
||||
|
||||
if (CDDS_PREPAINT == pLVCD->nmcd.dwDrawStage)
|
||||
{
|
||||
*pResult = CDRF_NOTIFYITEMDRAW;
|
||||
}
|
||||
else if (CDDS_ITEMPREPAINT == pLVCD->nmcd.dwDrawStage)
|
||||
{
|
||||
*pResult = CDRF_NOTIFYSUBITEMDRAW;
|
||||
}
|
||||
else if ((CDDS_ITEMPREPAINT | CDDS_SUBITEM) == pLVCD->nmcd.dwDrawStage)
|
||||
{
|
||||
COLORREF clrNewTextColor, clrNewBkColor;
|
||||
|
||||
if ((int)VAL_ZERO == pLVCD->iSubItem)
|
||||
{
|
||||
clrNewTextColor = RGB(0, 0, 255);
|
||||
clrNewBkColor = ::GetSysColor (COLOR_BTNFACE);
|
||||
}
|
||||
else
|
||||
{
|
||||
clrNewTextColor = RGB(0, 0, 0);
|
||||
clrNewBkColor = RGB(255, 255, 230);
|
||||
}
|
||||
|
||||
pLVCD->clrText = clrNewTextColor;
|
||||
pLVCD->clrTextBk = clrNewBkColor;
|
||||
*pResult = CDRF_DODEFAULT;
|
||||
}
|
||||
}
|
||||
|
||||
void CAppDataDevDetailListView::OnSetfocus(NMHDR* pNMHDR, LRESULT* pResult)
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
GetParent()->SetFocus();
|
||||
*pResult = 0;
|
||||
}
|
||||
|
||||
BOOL CAppDataDevDetailListView::PreCreateWindow(CREATESTRUCT& cs)
|
||||
{
|
||||
// TODO: Add your specialized code here and/or call the base class
|
||||
cs.style &= ~LVS_TYPEMASK;
|
||||
cs.style |= LVS_REPORT | LVS_SINGLESEL | LVS_NOCOLUMNHEADER | LVS_NOSCROLL;
|
||||
return CListView::PreCreateWindow(cs);
|
||||
}
|
||||
Reference in New Issue
Block a user