void CReportCtrl::Initialize(const CReportCtrl::ColInfo cols[], int nColCount, UINT nOpFlag) { m_nOpFlag = nOpFlag; m_cols = cols; m_nColCount = nColCount; AllowEdit(nOpFlag != 0); SetGridStyle(FALSE,xtpReportGridSolid); GetPaintManager()->SetColumnStyle(xtpReportColumnResource); GetPaintManager()->m_strNoItems.Empty(); for (int i=0; i<nColCount; ++i) { const ColInfo &c = cols[i]; if (c.fmt != FmtIdOnly) { CXTPReportColumn *pCol = new CXTPReportColumn(GetColumns()->GetCount(),c.caption,c.width, !c.fixed,XTP_REPORT_NOICON,c.sortable); pCol->AllowRemove(FALSE); pCol->SetAllowDrag(FALSE); AddColumn(pCol); } } if (nOpFlag & OpModify) m_pSubmitOpCol = AddOpCol(IndexModify); if (nOpFlag & OpReset) m_pResetOpCol = AddOpCol(IndexReset); if (nOpFlag & OpDelete) m_pDeleteOpCol = AddOpCol(IndexDelete); }
CXTPReportColumn* CReportCtrl::AddOpCol(int i) { const ColInfo &c = s_EditCols[i]; CXTPReportColumn *pCol = new CXTPReportColumn(GetColumns()->GetCount(),c.caption,c.width,FALSE,XTP_REPORT_NOICON,FALSE); pCol->AllowRemove(FALSE); pCol->SetAllowDrag(FALSE); AddColumn(pCol); return pCol; }