BOOL CuDlgDomPropRoleXGrantedEvent::OnInitDialog() { CDialog::OnInitDialog(); // subclass list control and connect image list VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this)); m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_DBEVENT); m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListCtrl.SetCheckImageList(&m_ImageCheck); CHECKMARK_COL_DESCRIBE aColumns[LAYOUT_NUMBER] = { { _T(""), FALSE, 80 + 16+4 }, // 16+4 for image { _T(""), FALSE, 80 }, { _T(""), FALSE, 80 }, { _T("Raise"), TRUE, -1 }, { _T("Register"), TRUE, -1 }, }; lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME));// _T("Name") lstrcpy(aColumns[1].szCaption, VDBA_MfcResourceString(IDS_TC_OWNER));//_T("Owner") lstrcpy(aColumns[2].szCaption, VDBA_MfcResourceString(IDS_TC_PARENT_DB)); InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
BOOL CuDlgDomPropDbSeq::OnInitDialog() { CDialog::OnInitDialog(); VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this)); // Initalize the Column Header of CListCtrl (CuListCtrl) LV_COLUMN lvcolumn; TCHAR strHeader[LAYOUT_NUMBER][32]; lstrcpy(strHeader[0], VDBA_MfcResourceString(IDS_TC_NAME));// _T("Name") lstrcpy(strHeader[1], VDBA_MfcResourceString(IDS_TC_OWNER));//_T("Owner") int i, hWidth [LAYOUT_NUMBER] = {120, 120}; memset (&lvcolumn, 0, sizeof (LV_COLUMN)); lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH; for (i=0; i<LAYOUT_NUMBER; i++) { lvcolumn.fmt = LVCFMT_LEFT; lvcolumn.pszText = (LPTSTR)(LPCTSTR)strHeader[i]; lvcolumn.iSubItem = i; lvcolumn.cx = hWidth[i]; m_cListCtrl.InsertColumn (i, &lvcolumn); } m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_SEQUENCE); m_cListCtrl.SetImageList(&m_ImageList, LVSIL_SMALL); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
BOOL CuDlgDomPropTableColumns::OnInitDialog() { CDialog::OnInitDialog(); // // subclass columns list control and connect image list // VERIFY (m_cListColumns.SubclassDlgItem (IDC_MFC_LIST1, this)); m_ImageList.Create(1, 18, TRUE, 1, 0); m_cListColumns.SetImageList (&m_ImageList, LVSIL_SMALL); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListColumns.SetCheckImageList(&m_ImageCheck); #define COLLIST_NUMBER 7 CHECKMARK_COL_DESCRIBE aColColumns[COLLIST_NUMBER] = { /* { _T("Order #"), FALSE, 60 }, */ { _T(""), FALSE, 80 }, { _T(""), FALSE, 100}, { _T(""), FALSE, -1 }, { _T("With Null"), TRUE, -1 }, { _T("With Default"), TRUE, -1 }, { _T(""), FALSE, -1 }, { _T(""), FALSE, -1 }, }; lstrcpy(aColColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_COL_NAME)); lstrcpy(aColColumns[1].szCaption, VDBA_MfcResourceString(IDS_TC_TYPE)); lstrcpy(aColColumns[2].szCaption, VDBA_MfcResourceString(IDS_TC_PRIM_KEY)); lstrcpy(aColColumns[5].szCaption, VDBA_MfcResourceString(IDS_TC_DEFAULT_SPEC)); lstrcpy(aColColumns[6].szCaption, VDBA_MfcResourceString(IDS_TC_COLUMN_COMMENT)); InitializeColumns(m_cListColumns, aColColumns, COLLIST_NUMBER); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
void CxDlgUserMod::ExecuteRemoteCommand(LPCTSTR csCommandLine) { int hnode; CString csTempo,csNodeName,csTitle; LPUCHAR vnodeName = (LPUCHAR)GetVirtNodeName ( m_nNodeHandle); csNodeName = vnodeName; hnode = OpenNodeStruct ((LPUCHAR)(LPCTSTR)csNodeName); if (hnode<0) { CString strMsg = VDBA_MfcResourceString (IDS_MAX_NB_CONNECT);//_T("Maximum number of connections has been reached" strMsg += CString(VDBA_MfcResourceString (IDS_E_USERMOD)); // " - Cannot launch 'usermod' command."); AfxMessageBox (strMsg); return; } // Temporary for activate a session UCHAR buf[MAXOBJECTNAME]; DOMGetFirstObject (hnode, OT_DATABASE, 0, NULL, FALSE, NULL, buf, NULL, NULL); csTitle.Format(IDS_T_USERMOD, (LPCTSTR)csNodeName, (LPCTSTR)m_csDBName); execrmcmd1( (char *)(LPCTSTR)csNodeName, (char *)(LPCTSTR)csCommandLine, (char *)(LPCTSTR)csTitle, TRUE); CloseNodeStruct(hnode,FALSE); }
void CuDlgDBEventPane01::UpdateControl() { CView* pView = (CView*)GetParent(); ASSERT (pView); CDbeventDoc* pDoc = (CDbeventDoc*)pView->GetDocument(); ASSERT (pDoc); CWnd* pSplitter = pView->GetParent(); ASSERT (pSplitter); CDbeventFrame* pFrame = (CDbeventFrame*)pSplitter->GetParent(); ASSERT (pFrame); // // Remark: // InitializeDBEvent() is called on the CBN_SELCHANGE of Database ComboBox. CString strNone; if (strNone.LoadString (IDS_DATABASE_NONE) == 0) strNone = "<None>"; if (pDoc->m_strDBName == "" || pDoc->m_strDBName == strNone) return; // Load ... // Initialize the new Database. if (DBETraceInit (pDoc->m_hNode, (LPUCHAR)(LPCTSTR)pDoc->m_strDBName , pFrame->m_hWnd, &(pDoc->m_nHandle)) == RES_SUCCESS) { pDoc->m_bDBInit = TRUE; m_strCurrentDB = pDoc->m_strDBName; } else { pDoc->m_bDBInit = FALSE; pDoc->m_nHandle = -1; BfxMessageBox (VDBA_MfcResourceString(IDS_E_INITIALIZE_DB_EVENT));//"Error while initializing the Database for DB Event Registration" } if (pDoc->m_bDBInit) { int index; CTypedPtrList<CObList, CuDataRegisteredDBevent*>& listDBEvent = pDoc->m_listRegisteredDBEvent; POSITION pos = listDBEvent.GetHeadPosition(); while (pos != NULL) { CuDataRegisteredDBevent* dbe = listDBEvent.GetNext (pos); index = m_cListDBEvent.AddString (dbe->m_strDBEvent); if (index != LB_ERR) { LPTSTR lpszOwner = new TCHAR [dbe->m_strOwner.GetLength() +1]; lstrcpy (lpszOwner, (LPTSTR)(LPCTSTR)dbe->m_strOwner); m_cListDBEvent.SetItemData (index, (DWORD)lpszOwner); if (dbe->m_bRegistered) { if (DBETraceRegister (pDoc->m_nHandle, (LPUCHAR)(LPCTSTR)dbe->m_strDBEvent, (LPUCHAR)(LPCTSTR)dbe->m_strOwner) != RES_SUCCESS) BfxMessageBox (VDBA_MfcResourceString(IDS_E_REGISTERING_DB_EVENT));//"Error while Registering DB Event" else m_cListDBEvent.SetCheck (index, 1); } } } } }
void CuDlgDomPropTableStatistic::OnGenerate() { CWaitCursor doWaitCursor; SORTPARAMS s; s.m_bAsc = m_statisticData.m_bAsc; s.m_nItem = m_statisticData.m_nCurrentSort; int nSelected = m_cListColumn.GetNextItem (-1, LVNI_SELECTED); if (nSelected != -1) { CaTableStatisticColumn* pColumn = (CaTableStatisticColumn*)m_cListColumn.GetItemData (nSelected); if (!pColumn) return; if(pColumn->m_bComposite && m_statisticData.m_nNumColumnKey<2) { if (m_statisticData.m_nOT == OT_TABLE) { // // There is only one column in the key structure of the base table, // therefore a composite histogram cannot be generated. // AfxMessageBox(VDBA_MfcResourceString(IDS_ERR_TBL_ONLY_WITH_TWO_KEY_COL)); return; } else if (m_statisticData.m_nOT == OT_INDEX) { // // Statistics cannot be generated on this index since it has only // 1 key column. This operation is used to generate a composite histogram. AfxMessageBox(VDBA_MfcResourceString(IDS_ERR_ONLY_WITH_TWO_KEY_COL)); return; } } CString strColumn = pColumn->m_strColumn; if (!Table_GenerateStatistics (this->m_hWnd ,pColumn, m_statisticData)) return; if (!QueryStatColumns()) return; m_cListColumn.SortItems(CaTableStatisticColumn::Compare, (LPARAM)&s); // // Try to selected the old selected item: nSelected = Find (strColumn); if (nSelected != -1) { // // This line cause to execute the member: OnItemchangedList1() // and then draw the statistic: m_cListColumn.SetItemState (nSelected, LVIS_SELECTED|LVIS_FOCUSED, LVIS_SELECTED|LVIS_FOCUSED); } } EnableButtons(); }
BOOL IsServiceInstalled (LPCTSTR lpszServiceName) { SC_HANDLE schSCManager; SC_HANDLE schService; // // Connect to service control manager on the local machine and // open the ServicesActive database schSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS); if (schSCManager == NULL ) { CString strMsg; LONG err = GetLastError(); switch (err) { case ERROR_ACCESS_DENIED: case ERROR_DATABASE_DOES_NOT_EXIST: case ERROR_INVALID_PARAMETER: //strMsg = _T("Failed to connect to the Service Control Manager"); AfxMessageBox (VDBA_MfcResourceString(IDS_E_CONNECT_SERVICE)); break; } return FALSE; } // // Check if the Service 'lpszServiceName' is already installed // REGEDT32.EXE can check this on // HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services schService = OpenService (schSCManager, lpszServiceName, SERVICE_ALL_ACCESS); if (schService != NULL) return TRUE; return FALSE; }
BOOL CuDlgDomPropReplicConn::OnInitDialog() { CDialog::OnInitDialog(); VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this)); // Initalize the Column Header of CListCtrl (CuListCtrl) LV_COLUMN lvcolumn; TCHAR strHeader[LAYOUT_NUMBER][32] = { _T("#"), _T(""), }; lstrcpy(strHeader[1], VDBA_MfcResourceString(IDS_TC_VNODE)); int i, hWidth [LAYOUT_NUMBER] = {30 + 16, 200}; // + 16 for image memset (&lvcolumn, 0, sizeof (LV_COLUMN)); lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH; for (i=0; i<LAYOUT_NUMBER; i++) { //CString strHeader; //strHeader.LoadString (strHeaderID[i]); lvcolumn.fmt = LVCFMT_LEFT; lvcolumn.pszText = (LPTSTR)(LPCTSTR)strHeader[i]; lvcolumn.iSubItem = i; lvcolumn.cx = hWidth[i]; m_cListCtrl.InsertColumn (i, &lvcolumn); } m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_REPLIC_CONNECTION); m_cListCtrl.SetImageList(&m_ImageList, LVSIL_SMALL); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
void CxDlgTablePrimaryKey::OnAddColumn() { if (m_bAlter) return; CString strItem; int iIndex = -1; int i, idx, nCount = m_cListCtrl.GetItemCount(); for (i=0; i<nCount; i++) { if (m_cListCtrl.GetItemState(i, LVIS_SELECTED) & LVIS_SELECTED) { strItem = m_cListCtrl.GetItemText (i, 0); if (m_cListKey.FindStringExact (-1, strItem) != LB_ERR) continue; if (m_cListCtrl.GetCheck(i, 1) == TRUE) { //CString strMsg = _T("Nullable column cannot be part of primary key."); AfxMessageBox (VDBA_MfcResourceString(IDS_E_NULLABLE_COL)); continue; } idx = m_cListKey.AddString(strItem); } } EnableControls(); }
BOOL CuDlgDomPropTableGrantees::OnInitDialog() { CDialog::OnInitDialog(); // subclass list control and connect image list VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this)); m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_DBGRANTEES); // Index 0: unknown type m_ImageList.AddIcon(IDI_TREE_STATIC_USER); // Index 1: user m_ImageList.AddIcon(IDI_TREE_STATIC_GROUP); // Index 2: group m_ImageList.AddIcon(IDI_TREE_STATIC_ROLE); // Index 3: role m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListCtrl.SetCheckImageList(&m_ImageCheck); // Initalize the Column Header of CListCtrl (CuListCtrl) CHECKMARK_COL_DESCRIBE aColumns[LAYOUT_NUMBER] = { { _T(""), FALSE, 80 + 16 + 4 }, // + 16+4 since image { _T("Select"), TRUE, -1 }, { _T("Insert"), TRUE, -1 }, { _T("Update"), TRUE, -1 }, { _T("Delete"), TRUE, -1 }, { _T("Reference"), TRUE, -1 }, { _T("Copy Into"), TRUE, -1 }, { _T("Copy From"), TRUE, -1 }, { _T("All"), TRUE, -1 }, }; lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME)); // _T("Name") InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER-1); // Remove _T("All") return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
void CxDlgPreferencesBackgroundRefresh::FillObjectType () { int nIdx; FREQUENCY* pObj = NULL; CString strMsg = VDBA_MfcResourceString(IDS_E_INITIALIZE_OBJECT);//_T("Cannot Initialize Object Types."); InitObjectType (); nIdx = m_cComboObjectType.AddString (m_strAllObject); if (nIdx == CB_ERR) { AfxMessageBox (strMsg); return; } pObj = new FREQUENCY; memset (pObj, 0, sizeof(FREQUENCY)); m_cComboObjectType.SetItemData (nIdx, (DWORD)pObj); for (int i = 0; i < GetMaxRefreshObjecttypes(); i++) { nIdx = m_cComboObjectType.AddString ((LPCTSTR)RefreshSettingsObjectTypeString [RefObjTypePosInArray(i)].szString); if (nIdx == CB_ERR) { AfxMessageBox (strMsg); return; } pObj = new FREQUENCY; memcpy (pObj, &(FreqSettings[RefObjTypePosInArray(i)]), sizeof (FREQUENCY)); m_cComboObjectType.SetItemData (nIdx, (DWORD)pObj); } }
BOOL CuDlgDomPropIceFacetNPageRoles::OnInitDialog() { CDialog::OnInitDialog(); // subclass list control and connect image list VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this)); m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_ICE_ROLE); m_cListCtrl.SetImageList(&m_ImageList, LVSIL_SMALL); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListCtrl.SetCheckImageList(&m_ImageCheck); // Initalize the Column Header of CListCtrl (CuListCtrl) CHECKMARK_COL_DESCRIBE aColumns[LAYOUT_NUMBER] = { { _T(""), FALSE, 100 + 16 + 4 }, // + 16+4 since image { _T("Execute"), TRUE, -1 }, { _T("Read"), TRUE, -1 }, { _T("Update"), TRUE, -1 }, { _T("Delete"), TRUE, -1 }, }; lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME)); // _T("Name") InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
BOOL CuDlgDBEventPane02::OnMaxLineChange (int nMax) { CView* pView = (CView*)GetParent(); ASSERT (pView); CDbeventDoc* pDoc = (CDbeventDoc*)pView->GetDocument(); ASSERT (pDoc); int nCount = m_cListRaisedDBEvent.GetItemCount(); if (nCount > nMax) { int i, diff = nCount - nMax; if (pDoc->m_bClearFirst) { for (i=0; i<diff; i++) m_cListRaisedDBEvent.DeleteItem (0); } else { //CString strMsg = "New value is smaller than actual number of lines,\n" // "and 'Clear First When Max Reached is not checked'.\n" // "Previous value is kept"; BfxMessageBox (VDBA_MfcResourceString(IDS_E_NEW_VALUE), MB_OK|MB_ICONEXCLAMATION); return FALSE; } } return TRUE; }
BOOL CuDlgDomPropTableStatistic::OnInitDialog() { CDialog::OnInitDialog(); VERIFY (m_cListColumn.SubclassDlgItem (IDC_MFC_LIST1, this)); LONG style = GetWindowLong (m_cListColumn.m_hWnd, GWL_STYLE); style |= LVS_SHOWSELALWAYS; SetWindowLong (m_cListColumn.m_hWnd, GWL_STYLE, style); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListColumn.SetCheckImageList(&m_ImageCheck); m_ImageList.Create(1, 23, TRUE, 1, 0); VERIFY (m_cListStatItem.SubclassDlgItem (IDC_MFC_LIST2, this)); m_cListStatItem.SetImageList (&m_ImageList, LVSIL_SMALL); int i; LV_COLUMN lvcolumn; const int LAYOUT_NUMBER_STATITEM = 6; LSCTRLHEADERPARAMS statHeader [LAYOUT_NUMBER_STATITEM] = { {_T("#"), 30, LVCFMT_RIGHT, FALSE}, {_T(""), 80, LVCFMT_LEFT, FALSE}, {_T(""), 50, LVCFMT_RIGHT, FALSE}, {_T(""), 100, LVCFMT_LEFT, FALSE}, {_T(""), 60, LVCFMT_RIGHT, FALSE}, {_T(""), 100, LVCFMT_LEFT, FALSE} }; lstrcpy(statHeader [1].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_VALUE)); //_T("Value") lstrcpy(statHeader [2].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_COUNT)); //_T("Count") lstrcpy(statHeader [3].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_GRAPH)); //_T("Graph") lstrcpy(statHeader [4].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_REP_FACTOR)); //_T("Rep Factor") lstrcpy(statHeader [5].m_tchszHeader,VDBA_MfcResourceString(IDS_TC_GRAPH)); //_T("Graph") memset (&lvcolumn, 0, sizeof (LV_COLUMN)); lvcolumn.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH; for (i=0; i<LAYOUT_NUMBER_STATITEM; i++) { lvcolumn.fmt = statHeader[i].m_fmt; lvcolumn.pszText = (LPTSTR)(LPCTSTR)statHeader[i].m_tchszHeader; lvcolumn.iSubItem = i; lvcolumn.cx = statHeader[i].m_cxWidth; m_cListStatItem.InsertColumn (i, &lvcolumn, statHeader[i].m_bUseCheckMark); } EnableButtons(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
BOOL IsServiceRunning (LPCTSTR lpszServiceName) { SC_HANDLE schSCManager; SC_HANDLE schService; SERVICE_STATUS svrstatus; memset (&svrstatus, sizeof(svrstatus), 0); // // Connect to service control manager on the local machine and // open the ServicesActive database schSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS); if (schSCManager == NULL ) { CString strMsg; LONG err = GetLastError(); switch (err) { case ERROR_ACCESS_DENIED: case ERROR_DATABASE_DOES_NOT_EXIST: case ERROR_INVALID_PARAMETER: //strMsg = _T("Failed to connect to the Service Control Manager"); AfxMessageBox (VDBA_MfcResourceString(IDS_E_CONNECT_SERVICE)); break; } return FALSE; } // // Check if the Service 'lpszServiceName' is already installed // REGEDT32.EXE can check this on // HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services schService = OpenService (schSCManager, lpszServiceName, SERVICE_ALL_ACCESS); if (schService == NULL) return FALSE; // // Check if the Service 'lpszServiceName' is Running if (!QueryServiceStatus (schService, &svrstatus)) { //CString strMsg = _T("Cannot query the service status information"); AfxMessageBox (VDBA_MfcResourceString(IDS_E_SERVICE_STATUS)); return FALSE; } if (svrstatus.dwCurrentState == SERVICE_RUNNING) return TRUE; return FALSE; }
void CuDlgDomPropTblPages::SetCellLegendsToHashed() { m_stCell1.SetItemType(PAGE_HEADER); // Free Header page m_stCell2.SetItemType(PAGE_MAP); // Free Map page m_stCell3.SetItemType(PAGE_UNUSED); // Unused page m_stPg3.SetWindowText(VDBA_MfcResourceString(IDS_I_UNUSED));//_T("Unused") m_stCell4.ShowWindow(SW_HIDE); m_stPg4.ShowWindow(SW_HIDE); m_stCell5.SetItemType(PAGE_DATA); // Data page m_stPg5.SetWindowText(VDBA_MfcResourceString(IDS_I_DATA_WO));//_T("Data w/o overflow" m_stCell6.SetItemType(PAGE_EMPTY_DATA_NO_OVF); // Empty data, with no overflow page m_stPg6.SetWindowText(VDBA_MfcResourceString(IDS_I_EMPTY_WO));//_T("Empty w/o overflow") m_stCell7.SetItemType(PAGE_DATA_WITH_OVF); // Non-Empty data, with overflow pages m_stPg7.SetWindowText(VDBA_MfcResourceString(IDS_I_DATA_WITH));//_T("Data with overflow") m_stCell8.SetItemType(PAGE_EMPTY_DATA_WITH_OVF); // Empty data, wih overflow pages m_stPg8.SetWindowText(VDBA_MfcResourceString(IDS_I_EMPTY_WITH));//_T("Empty with overflow") m_stCell9.SetItemType(PAGE_OVERFLOW_DATA); // Overflow data page m_stPg9.SetWindowText(VDBA_MfcResourceString(IDS_I_OVERFLOW_WITH_DTA));//_T("Overflow with data") m_stCell10.SetItemType(PAGE_EMPTY_OVERFLOW); // Empty overflow page m_stPg10.SetWindowText(VDBA_MfcResourceString(IDS_I_EMPTY_OVERFLOW));//_T("Empty Overflow") m_stCell11.ShowWindow(SW_HIDE); m_stPg11.ShowWindow(SW_HIDE); m_stCell12.ShowWindow(SW_HIDE); m_stPg12.ShowWindow(SW_HIDE); }
void CuDlgDomPropTblPages::SetCellLegendsToNonHashed() { m_stCell1.SetItemType(PAGE_HEADER); // Free Header page m_stCell2.SetItemType(PAGE_MAP); // Free Map page m_stCell3.SetItemType(PAGE_FREE); // Free page, has been used and subsequently made free m_stPg3.SetWindowText(VDBA_MfcResourceString(IDS_I_FREE));//_T("Free") m_stCell4.SetItemType(PAGE_UNUSED); // Unused page, has never been written to m_stCell4.ShowWindow(SW_SHOW); m_stPg4.ShowWindow(SW_SHOW); m_stCell5.SetItemType(PAGE_DATA); // Data page m_stPg5.SetWindowText(VDBA_MfcResourceString(IDS_I_DATA));//_T("Data") m_stCell6.SetItemType(PAGE_ASSOCIATED); // Associated data page m_stPg6.SetWindowText(VDBA_MfcResourceString(IDS_I_ASSO_DATA));//_T("Associated data") m_stCell7.SetItemType(PAGE_OVERFLOW_LEAF); // Overflow leaf page m_stPg7.SetWindowText(VDBA_MfcResourceString(IDS_I_OVERFLOW_LEAF));//_T("Overflow leaf") m_stCell8.SetItemType(PAGE_OVERFLOW_DATA); // Overflow data page m_stPg8.SetWindowText(VDBA_MfcResourceString(IDS_I_OVERFLOW_DATA));//_T("Overflow data") m_stCell9.SetItemType(PAGE_ROOT); // Root page m_stPg9.SetWindowText(VDBA_MfcResourceString(IDS_I_ROOT));//_T("Root") m_stCell10.SetItemType(PAGE_INDEX); // Index page m_stPg10.SetWindowText(VDBA_MfcResourceString(IDS_I_PAGE_INDEX));//_T("Index") m_stCell11.ShowWindow(SW_SHOW); m_stPg11.ShowWindow(SW_SHOW); m_stCell12.ShowWindow(SW_SHOW); m_stPg12.ShowWindow(SW_SHOW); m_stCell11.SetItemType(PAGE_SPRIG); // Sprig page m_stCell12.SetItemType(PAGE_LEAF); // Leaf page }
BOOL CuDlgDomPropRoleXGrantedDb::OnInitDialog() { CDialog::OnInitDialog(); // subclass list control and connect image list VERIFY (m_cListCtrl.SubclassDlgItem (IDC_MFC_LIST1, this)); m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_DATABASE); m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListCtrl.SetCheckImageList(&m_ImageCheck); CHECKMARK_COL_DESCRIBE aColumns[LAYOUT_NUMBER] = { { _T(""), FALSE, 80 + 16+4 }, // 16+4 for image { _T("access"), TRUE, -1 }, // OT_DBGRANT_ACCESY_USER, { _T("no access"), TRUE, -1 }, // OT_DBGRANT_ACCESN_USER, { _T("crepr"), TRUE, -1 }, // OT_DBGRANT_CREPRY_USER, { _T("no crepr"), TRUE, -1 }, // OT_DBGRANT_CREPRN_USER, { _T("cretb"), TRUE, -1 }, // OT_DBGRANT_CRETBY_USER, { _T("no cretb"), TRUE, -1 }, // OT_DBGRANT_CRETBN_USER, { _T("dbadm"), TRUE, -1 }, // OT_DBGRANT_DBADMY_USER, { _T("no dbadm"), TRUE, -1 }, // OT_DBGRANT_DBADMN_USER, { _T("lkmod"), TRUE, -1 }, // OT_DBGRANT_LKMODY_USER, { _T("no lkmod"), TRUE, -1 }, // OT_DBGRANT_LKMODN_USER, { _T("qryio"), TRUE, -1 }, // OT_DBGRANT_QRYIOY_USER, { _T("no qryio"), TRUE, -1 }, // OT_DBGRANT_QRYION_USER, { _T("qryrw"), TRUE, -1 }, // OT_DBGRANT_QRYRWY_USER, { _T("no qryrw"), TRUE, -1 }, // OT_DBGRANT_QRYRWN_USER, { _T("updsc"), TRUE, -1 }, // OT_DBGRANT_UPDSCY_USER, { _T("no updsc"), TRUE, -1 }, // OT_DBGRANT_UPDSCN_USER, { _T("selsc"), TRUE, -1 }, // OT_DBGRANT_SELSCY_USER, { _T("no selsc"), TRUE, -1 }, // OT_DBGRANT_SELSCN_USER, { _T("cnctl"), TRUE, -1 }, // OT_DBGRANT_CNCTLY_USER, { _T("no cnctl"), TRUE, -1 }, // OT_DBGRANT_CNCTLN_USER, { _T("idltl"), TRUE, -1 }, // OT_DBGRANT_IDLTLY_USER, { _T("no idltl"), TRUE, -1 }, // OT_DBGRANT_IDLTLN_USER, { _T("sespr"), TRUE, -1 }, // OT_DBGRANT_SESPRY_USER, { _T("no sespr"), TRUE, -1 }, // OT_DBGRANT_SESPRN_USER, { _T("tblst"), TRUE, -1 }, // OT_DBGRANT_TBLSTY_USER, { _T("no tblst"), TRUE, -1 }, // OT_DBGRANT_TBLSTN_USER, { _T("qrycpu"), TRUE, -1 }, // OT_DBGRANT_QRYCPY_USER, { _T("no qrycpu"), TRUE, -1 }, // OT_DBGRANT_QRYCPN_USER, { _T("qrypage"), TRUE, -1 }, // OT_DBGRANT_QRYPGY_USER, { _T("no qrypage"), TRUE, -1 }, // OT_DBGRANT_QRYPGN_USER, { _T("qrycost"), TRUE, -1 }, // OT_DBGRANT_QRYCOY_USER, { _T("no qrycost"), TRUE, -1 }, // OT_DBGRANT_QRYCON_USER, { _T("sequence"), TRUE, -1 }, // OT_DBGRANT_SEQCRY_USER, { _T("no sequence"), TRUE, -1 } // OT_DBGRANT_SEQCRN_USER, }; lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME));// _T("Name") InitializeColumns(m_cListCtrl, aColumns, GetOIVers()>=OIVERS_30? LAYOUT_NUMBER: LAYOUT_NUMBER-2); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
void CxDlgPreferencesBackgroundRefresh::SaveAsDefaults () { TCHAR freq [10]; TCHAR unit [10]; TCHAR load_opt [3]; TCHAR parent_opt [3]; TCHAR privateString [30]; CString strFile; FREQUENCY* pCur = NULL; int i, nCount = m_cComboObjectType.GetCount(); ASSERT (nCount == (GetMaxRefreshObjecttypes() +1)); if (strFile.LoadString (IDS_INIFILENAME) == 0) strFile = _T("vdba.ini"); for (i = 1; i < nCount; i++) { pCur = (FREQUENCY*)m_cComboObjectType.GetItemData (i); if (!pCur) { CString strMsg = VDBA_MfcResourceString(IDS_E_SETTING_DEFAULT);//_T("Cannot Save Setting as Defaults."); AfxMessageBox (strMsg); return; } wsprintf (freq, _T("%d"), pCur->count); wsprintf (unit, _T("%d"), pCur->unit ); wsprintf (load_opt , _T("%d"), pCur->bOnLoad); wsprintf (parent_opt , _T("%d"), pCur->bSyncOnParent); wsprintf (privateString, "%s %s %s %s", freq, unit, load_opt, parent_opt); WritePrivateProfileString ( "BACKGROUND REFRESH SETTINGS", RefreshSettingsObjectTypeString [RefObjTypePosInArray(i-1)].szString, privateString, strFile); } int nMessage = REFRESH_NONE; int nID = GetCheckedRadioButton (IDC_MFC_RADIO1, IDC_MFC_RADIO3); switch (nID) { case IDC_MFC_RADIO1: nMessage = REFRESH_WINDOW_POPUP; break; case IDC_MFC_RADIO2: nMessage = REFRESH_STATUSBAR; break; case IDC_MFC_RADIO3: nMessage = REFRESH_NONE; break; } SettingSaveFlagSaveAsDefault(m_bSaveAsDefault); SettingSaveFlagRefreshSyncAmongObject(m_bSynchronizeAmongObjects); SettingSaveFlagRefreshMessageOption(nMessage); }
LONG CuDlgDomPropTableStatistic::OnLoad (WPARAM wParam, LPARAM lParam) { int nCount = 0; try { LPCTSTR pClass = (LPCTSTR)wParam; ASSERT (lstrcmp (pClass, "CuDomPropDataTableStatistic") == 0); CuDomPropDataTableStatistic* pData = (CuDomPropDataTableStatistic*)lParam; m_nOT = pData->m_statisticData.m_nOT; m_statisticData = pData->m_statisticData; InitializeStatisticHeader(m_statisticData.m_nOT); // // List of statistic columns; CaTableStatisticColumn* pColumn = NULL; while (!m_statisticData.m_listColumn.IsEmpty()) { pColumn = m_statisticData.m_listColumn.RemoveHead(); if (m_cListColumn.InsertItem (nCount, "") != -1) { m_cListColumn.SetItemData (nCount, (DWORD)pColumn); nCount++; } } UpdateDisplayList1(); m_bLoad = TRUE; // Prevent from calling OnItemchangedList1() m_cListColumn.SetItemState (pData->m_nSelectColumn, LVIS_SELECTED, LVIS_SELECTED); m_bLoad = FALSE; // // Draw statistic Items: DrawStatistic (); // // Extra information: m_bUniqueFlag = m_statisticData.m_bUniqueFlag; m_bCompleteFlag = m_statisticData.m_bCompleteFlag; m_strUniqueValues.Format (_T("%ld"), m_statisticData.m_lUniqueValue); m_strRepetitionFactors.Format (_T("%ld"), m_statisticData.m_lRepetitionFlag); UpdateData (FALSE); m_bExecuted = TRUE; } catch (CMemoryException* e) { VDBA_OutOfMemoryMessage(); e->Delete(); } catch (...) { //CString strMsg = _T("Internal error: cannot display the statistic of the table."); AfxMessageBox (VDBA_MfcResourceString(IDS_E_STAT_TABLE)); } EnableButtons(); return 0L; }
void CxDlgCheckPointLst::InitializeListCtrl() { // // subclass columns list control and connect image list // VERIFY (m_cListCtrl.SubclassDlgItem (IDC_LIST_CHECKPOINT, this)); m_ImageList.Create(1, 18, TRUE, 1, 0); m_cListCtrl.SetImageList (&m_ImageList, LVSIL_SMALL); m_ImageCheck.Create (IDB_CHECK_NOFRAME, 16, 1, RGB (255, 0, 0)); m_cListCtrl.SetCheckImageList(&m_ImageCheck); #define LAYOUT_NUMBER (6) CHECKMARK_COL_DESCRIBE aColumns[LAYOUT_NUMBER] = { { _T(""), FALSE, 200}, { _T(""), FALSE, -1 }, { _T(""), FALSE, -1 }, { _T(""), FALSE, -1 }, { _T(""), TRUE, -1 }, { _T(""), FALSE, 210} }; lstrcpy(aColumns[0].szCaption, VDBA_MfcResourceString(IDS_TC_DATE )); lstrcpy(aColumns[1].szCaption, VDBA_MfcResourceString(IDS_TC_CKPSEQUENCE)); lstrcpy(aColumns[2].szCaption, VDBA_MfcResourceString(IDS_TC_FIRSTJNL )); lstrcpy(aColumns[3].szCaption, VDBA_MfcResourceString(IDS_TC_LASTJNL )); lstrcpy(aColumns[4].szCaption, VDBA_MfcResourceString(IDS_TC_VALID )); lstrcpy(aColumns[5].szCaption, VDBA_MfcResourceString(IDS_TC_MODE )); InitializeColumns(m_cListCtrl, aColumns, LAYOUT_NUMBER); }
BOOL CuDlgDomPropView::OnInitDialog() { CDialog::OnInitDialog(); m_ImageList.Create(16, 16, TRUE, 1, 1); m_ImageList.AddIcon(IDI_TREE_STATIC_VIEWTABLE); m_ImageList.AddIcon(IDI_TREE_STATIC_TABLE); m_ImageList.AddIcon(IDI_TREE_STATIC_VIEW); m_clistCtrl.SetImageList (&m_ImageList, LVSIL_SMALL); #define VIEWCOMP_NUMBER 2 CHECKMARK_COL_DESCRIBE aViewComps[VIEWCOMP_NUMBER] = { { _T(""), FALSE, 125 + 16 }, // + 16 for image { _T(""), FALSE, 125 }, }; lstrcpy(aViewComps[0].szCaption, VDBA_MfcResourceString(IDS_TC_NAME)); // _T("Name") lstrcpy(aViewComps[1].szCaption, VDBA_MfcResourceString(IDS_TC_OWNER)); InitializeColumns(m_clistCtrl, aViewComps, VIEWCOMP_NUMBER); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
void CuEditableListCtrlDuplicateDbSelectLocation::InitSortComboBox() { int TypeLocation,i,iIndex,err; char szObject[MAXOBJECTNAME]; char szFilter[MAXOBJECTNAME]; BOOL bOnlyOneLocName; CComboBox* pCombo = COMBO_GetComboBox(); pCombo->ResetContent(); err = DOMGetFirstObject(GetCurMdiNodeHandle(), OT_LOCATION, 0, NULL, TRUE, NULL, (LPUCHAR)szObject, NULL, NULL); while (err == RES_SUCCESS) { BOOL bOK; for (i = 0, TypeLocation = 0,bOnlyOneLocName = TRUE;i <= LOCATIONDUMP;i++,TypeLocation=i) { if (DOMLocationUsageAccepted(GetCurMdiNodeHandle(),(LPUCHAR)szObject,TypeLocation,&bOK) == RES_SUCCESS && bOK) { switch (TypeLocation) { case LOCATIONDATABASE: case LOCATIONWORK: { if ( bOnlyOneLocName ) { iIndex = pCombo->AddString (szObject); bOnlyOneLocName = FALSE; } } break; } } } err = DOMGetNextObject ((LPUCHAR)szObject,(LPUCHAR)szFilter, NULL); } if (err != RES_SUCCESS && err != RES_ENDOFDATA) { //"Error while getting Location list." CString csMsg = VDBA_MfcResourceString (IDS_E_DUPLICATEDB_FILL_COMBO_LOCATION); MessageWithHistoryButton(m_hWnd,csMsg); } }
LONG CuDlgDomPropTableStatistic::OnGetData (WPARAM wParam, LPARAM lParam) { CuDomPropDataTableStatistic* pData = NULL; CaTableStatisticColumn* pColumn = NULL; CaTableStatisticColumn* pNewColumn = NULL; CaTableStatisticItem* pStatItem = NULL; CaTableStatisticItem* pNewStatItem = NULL; int i, nCount; try { nCount = m_cListColumn.GetItemCount(); pData = new CuDomPropDataTableStatistic(); pData->m_statisticData = m_statisticData; pData->m_nSelectColumn = -1; for (i=0; i<nCount; i++) { pColumn = (CaTableStatisticColumn*)m_cListColumn.GetItemData(i); pNewColumn = new CaTableStatisticColumn(); *pNewColumn= *pColumn; pData->m_statisticData.m_listColumn.AddTail(pNewColumn); if (m_cListColumn.GetItemState (i, LVIS_SELECTED) & LVIS_SELECTED) pData->m_nSelectColumn = i; } nCount = m_cListStatItem.GetItemCount(); for (i=0; i<nCount; i++) { pStatItem = (CaTableStatisticItem*)m_cListStatItem.GetItemData(i); if (!pStatItem) continue; pNewStatItem = new CaTableStatisticItem(); *pNewStatItem= *pStatItem; pData->m_statisticData.m_listItem.AddTail (pNewStatItem); } } catch (CMemoryException* e) { VDBA_OutOfMemoryMessage(); e->Delete(); } catch (...) { //CString strMsg = _T("Cannot allocate data for storing."); AfxMessageBox (VDBA_MfcResourceString(IDS_E_ALLOCATE_DATA)); pData = NULL; } return (LRESULT)pData; }
void CuDlgDomPropTableStatistic::OnItemchangedList1(NMHDR* pNMHDR, LRESULT* pResult) { NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR; *pResult = 0; if (m_bLoad) return; CaTableStatisticColumn* pColumn = NULL; if (pNMListView->iItem >= 0 && pNMListView->uNewState > 0 && (pNMListView->uNewState&LVIS_SELECTED)) { CWaitCursor doWaitCursor; try { pColumn = (CaTableStatisticColumn*)m_cListColumn.GetItemData(pNMListView->iItem); CleanStatisticItem(); if (!pColumn) return; if (!pColumn->m_bHasStatistic) return; // // Query the statistic for this column: // Table_GetStatistics (pColumn, m_statisticData); // Extra information: m_bUniqueFlag = m_statisticData.m_bUniqueFlag; m_bCompleteFlag = m_statisticData.m_bCompleteFlag; m_strUniqueValues.Format (_T("%ld"), m_statisticData.m_lUniqueValue); m_strRepetitionFactors.Format (_T("%ld"), m_statisticData.m_lRepetitionFlag); DrawStatistic (); } catch (CMemoryException* e) { VDBA_OutOfMemoryMessage(); e->Delete(); } catch (...) { //CString strMsg = _T("Internal error: cannot display the statistic of the table."); AfxMessageBox (VDBA_MfcResourceString(IDS_E_STAT_TABLE)); } } UpdateData (FALSE); EnableButtons(); }
LONG CuDlgIpmDetailLocation::OnUpdateData (WPARAM wParam, LPARAM lParam) { int ires = RES_ERR, nNodeHandle = (int)wParam; LPIPMUPDATEPARAMS pUps = (LPIPMUPDATEPARAMS)lParam; ASSERT (pUps); switch (pUps->nIpmHint) { case 0: case FILTER_IPM_EXPRESS_REFRESH: break; default: return 0L; } try { ResetDisplay(); if (pUps->nIpmHint != FILTER_IPM_EXPRESS_REFRESH) { memset (&m_locStruct, 0, sizeof (m_locStruct)); m_locStruct = *(LPLOCATIONDATAMIN)pUps->pStruct; } CuStatisticPieDoc* pDoc = (CuStatisticPieDoc*)m_pDlgFrame->GetDoc(); CuPieInfoData* pPieInfo = pDoc->GetPieInfo(); if (Pie_Create(pPieInfo, nNodeHandle, (LPLOCATIONDATAMIN)&m_locStruct, TRUE)) { m_pDlgFrame->DrawLegend (&m_cListLegend, TRUE); } else { //CString strMsg = _T("Location Space Statistic error"); BfxMessageBox (VDBA_MfcResourceString(IDS_E_LOCATION_SPACE), MB_ICONEXCLAMATION|MB_OK); pPieInfo->Cleanup(); m_cListLegend.ResetContent(); } pDoc->UpdateAllViews (NULL); } catch (CMemoryException* e) { VDBA_OutOfMemoryMessage(); e->Delete(); } return 0L; }
void CuDlgDBEventPane02::UpdateControl() { CView* pView = (CView*)GetParent(); ASSERT (pView); CDbeventDoc* pDoc = (CDbeventDoc*)pView->GetDocument(); ASSERT (pDoc); CWnd* pSplitter = pView->GetParent(); ASSERT (pSplitter); CDbeventFrame* pFrame = (CDbeventFrame*)pSplitter->GetParent(); ASSERT (pFrame); CString strNone; if (strNone.LoadString (IDS_DATABASE_NONE) == 0) strNone = "<None>"; if (pDoc->m_strDBName == "" || pDoc->m_strDBName == strNone) return; // Load ... int nCount; CTypedPtrList<CObList, CuDataRaisedDBevent*>& listRaisedDBEvent = pDoc->m_listRaisedDBEvent; nCount = listRaisedDBEvent.GetCount(); POSITION pos = listRaisedDBEvent.GetHeadPosition(); while (pos != NULL) { CuDataRaisedDBevent* dbe = listRaisedDBEvent.GetNext (pos); IncomingDBEvent (pDoc, dbe->m_strNum, dbe->m_strTime, dbe->m_strDBEvent, dbe->m_strDBEOwner, dbe->m_strDBEText); } if ((pDoc->m_nMaxLine+1) == nCount) { CTime t = CTime::GetCurrentTime(); CString st= t.Format ("%c"); nCount = m_cListRaisedDBEvent.GetItemCount (); int index = m_cListRaisedDBEvent.InsertItem (nCount, (LPTSTR)"", 0); m_cListRaisedDBEvent.SetItemText (index, 1, (LPTSTR)(LPCTSTR)st); m_cListRaisedDBEvent.SetItemText (index, 2, VDBA_MfcResourceString(IDS_INTERRUPTED));//"<Interrupted>" } SetHeader (pDoc->m_strRaisedSince); }
LONG CuEditableListCtrlDuplicateDbSelectLocation::OnComboDlgOK (UINT wParam, LONG lParam) { int iItem, iSubItem; CString s = COMBO_GetText(); COMBO_GetEditItem(iItem, iSubItem); if (iItem < 0) { SetFocus(); return 0L; } try { SetItemText (iItem, NEW_LOC,s); GetParent()->SendMessage (WM_LAYOUTCOMBODLG_OK, (WPARAM)(LPCTSTR)m_ComboDlgOriginalText, (LPARAM)(LPCTSTR)s); } catch (...) { //CString strMsg = _T("Cannot change combo text."); AfxMessageBox (VDBA_MfcResourceString(IDS_E_CHANGE_COMBO)); } SetFocus(); return 0L; }
LONG CuDlgDomPropStaticProfile::OnUpdateData (WPARAM wParam, LPARAM lParam) { // cast received parameters int nNodeHandle = (int)wParam; LPIPMUPDATEPARAMS pUps = (LPIPMUPDATEPARAMS)lParam; ASSERT (nNodeHandle != -1); ASSERT (pUps); // ignore selected actions on filters switch (pUps->nIpmHint) { case 0: case FILTER_DOM_SYSTEMOBJECTS: // eligible case FILTER_DOM_BASEOWNER: //case FILTER_DOM_OTHEROWNER: break; case FILTER_DOM_BKREFRESH: // eligible if UpdateType is compatible with DomGetFirst/Next object type, // or is ot_virtnode, which means refresh for all whatever the type is if (pUps->pSFilter->UpdateType != OT_VIRTNODE && pUps->pSFilter->UpdateType != OT_PROFILE) return 0L; break; case FILTER_SETTING_CHANGE: VDBA_OnGeneralSettingChange(&m_cListCtrl); return 0L; default: return 0L; // nothing to change on the display } // Get info on the current item LPTREERECORD lpRecord = (LPTREERECORD)pUps->pStruct; ASSERT (lpRecord); ResetDisplay(); // // Get list of Profiles // m_Data.m_uaStaticProfile.RemoveAll(); int iret; LPUCHAR aparentsTemp[MAXPLEVEL]; UCHAR buf[MAXOBJECTNAME]; UCHAR bufOwner[MAXOBJECTNAME]; UCHAR bufComplim[MAXOBJECTNAME]; // parent preparation aparentsTemp[0] = aparentsTemp[1] = aparentsTemp[2] = NULL; memset (&bufComplim, '\0', sizeof(bufComplim)); memset (&bufOwner, '\0', sizeof(bufOwner)); iret = DOMGetFirstObject(nNodeHandle, OT_PROFILE, 0, // level, aparentsTemp, // Temp mandatory! pUps->pSFilter->bWithSystem, // bwithsystem NULL, // lpowner buf, bufOwner, bufComplim); if (iret != RES_SUCCESS && iret != RES_ENDOFDATA) { // Erroneous case! CuNameOnly errItem(VDBA_MfcResourceString (IDS_DATA_UNAVAILABLE), TRUE); // Special"<Data Unavailable>" m_Data.m_uaStaticProfile.Add(errItem); } else { while (iret == RES_SUCCESS) { CuNameOnly item((const char*)buf, FALSE); // Not special, but regular m_Data.m_uaStaticProfile.Add(item); iret = DOMGetNextObject(buf, bufOwner, bufComplim); } } if (m_Data.m_uaStaticProfile.GetCount() == 0) { CuNameOnly noItem(VDBA_MfcResourceString (IDS_E_NO_PROFILE), TRUE);//"<No Profile>" m_Data.m_uaStaticProfile.Add(noItem); } // Refresh display RefreshDisplay(); return 0L; }
LONG CuDlgDomPropTableColumns::OnUpdateData (WPARAM wParam, LPARAM lParam) { // cast received parameters int nNodeHandle = (int)wParam; LPIPMUPDATEPARAMS pUps = (LPIPMUPDATEPARAMS)lParam; ASSERT (nNodeHandle != -1); ASSERT (pUps); // ignore selected actions on filters switch (pUps->nIpmHint) { case 0: //case FILTER_DOM_SYSTEMOBJECTS: //case FILTER_DOM_BASEOWNER: //case FILTER_DOM_OTHEROWNER: break; case FILTER_DOM_BKREFRESH_DETAIL: if (m_Data.m_refreshParams.MustRefresh(pUps->pSFilter->bOnLoad, pUps->pSFilter->refreshtime)) break; // need to update else return 0; // no need to update break; case FILTER_SETTING_CHANGE: VDBA_OnGeneralSettingChange(&m_cListColumns); return 0L; default: return 0L; // nothing to change on the display } // Get info on the object TABLEPARAMS tableparams; memset (&tableparams, 0, sizeof (tableparams)); LPTREERECORD lpRecord = (LPTREERECORD)pUps->pStruct; ASSERT (lpRecord); ResetDisplay(); x_strcpy ((char *)tableparams.DBName, (const char *)lpRecord->extra); x_strcpy ((char *)tableparams.objectname, RemoveDisplayQuotesIfAny((LPCTSTR)StringWithoutOwner(lpRecord->objName))); x_strcpy ((char *)tableparams.szSchema, (const char *)lpRecord->ownerName); tableparams.detailSubset = TABLE_SUBSET_COLUMNSONLY; // minimize query duration int dummySesHndl; int iResult = GetDetailInfo ((LPUCHAR)GetVirtNodeName(nNodeHandle), OT_TABLE, &tableparams, FALSE, &dummySesHndl); if (iResult != RES_SUCCESS) { // Table may not exist if propagate too fast if (iResult != RES_ENDOFDATA) ASSERT (FALSE); // Reset m_Data CuDomPropDataTableColumns tempData; tempData.m_refreshParams = m_Data.m_refreshParams; m_Data = tempData; // Create error item and that's it! /* "<Data Unavailable>" */ CuTblColumn tblColumn1(VDBA_MfcResourceString (IDS_DATA_UNAVAILABLE)); m_Data.m_uaColumns.Add(tblColumn1); // Refresh display RefreshDisplay(); return 0L; } // Update refresh info m_Data.m_refreshParams.UpdateRefreshParams(); TCHAR *lpObjComment = NULL; int iret = RES_SUCCESS; LPOBJECTLIST ls ,lpColTemp,lpObjCol = NULL; LPCOMMENTCOLUMN lpCommentCol; ls = tableparams.lpColumns; while (ls) { lpColTemp = AddListObjectTail(&lpObjCol, sizeof(COMMENTCOLUMN)); if (!lpColTemp) { // Need to free previously allocated objects. FreeObjectList(lpObjCol); lpObjCol = NULL; break; } LPCOLUMNPARAMS lstbl=(LPCOLUMNPARAMS)ls->lpObject; lpCommentCol = (LPCOMMENTCOLUMN)lpColTemp->lpObject; lstrcpy((LPTSTR)lpCommentCol->szColumnName,(LPCTSTR)(LPUCHAR)lstbl->szColumn); lpCommentCol->lpszComment = NULL; ls=(LPOBJECTLIST)ls->lpNext; } if (lpObjCol) iret = VDBAGetCommentInfo ( (LPTSTR)(LPUCHAR)GetVirtNodeName(nNodeHandle), (LPTSTR)tableparams.DBName, (LPTSTR)tableparams.objectname, (LPTSTR)tableparams.szSchema, &lpObjComment, lpObjCol); else ASSERT (FALSE); // update member variables, for display/load/save purpose // list of columns m_Data.m_uaColumns.RemoveAll(); ls = tableparams.lpColumns; ASSERT (ls); // No columns is unacceptable while (ls) { LPCOLUMNPARAMS lpCol = (LPCOLUMNPARAMS)ls->lpObject; ASSERT (lpCol); // Column name CString csName = lpCol->szColumn; // Format "column type" CString csType = ""; if (lstrcmpi(lpCol->tchszInternalDataType, lpCol->tchszDataType) != 0) { ASSERT (lpCol->tchszInternalDataType[0]); csType = lpCol->tchszInternalDataType; // UDTs if (lstrcmpi(lpCol->tchszInternalDataType,VDBA_MfcResourceString(IDS_OBJECT_KEY)) == 0 || lstrcmpi(lpCol->tchszInternalDataType,VDBA_MfcResourceString(IDS_TABLE_KEY) ) == 0) { if (lpCol->bSystemMaintained) csType += VDBA_MfcResourceString(IDS_SYSTEM_MAINTAINED); else csType += VDBA_MfcResourceString(IDS_NO_SYSTEM_MAINTAINED); } } else { LPUCHAR lpType; lpType = GetColTypeStr(lpCol); if (lpType) { csType = lpType; ESL_FreeMem(lpType); } else { // Unknown type: put type name "as is" - length will not be displayed csType = lpCol->tchszDataType; } } // Format "default specification" CString csDefSpec = ""; if (lpCol->lpszDefSpec) csDefSpec = lpCol->lpszDefSpec; // Format "Comment" CString csTblComment = ""; LPOBJECTLIST LsObj = lpObjCol; LPCOMMENTCOLUMN lpCommentCol; while (LsObj) { lpCommentCol = (LPCOMMENTCOLUMN)LsObj->lpObject; if (strcmp((LPTSTR)lpCommentCol->szColumnName,(LPTSTR)lpCol->szColumn) == 0) { if (iret!=RES_SUCCESS && !lpCommentCol->lpszComment) csTblComment.LoadString(IDS_NOT_AVAILABLE); else { if (lpCommentCol->lpszComment) csTblComment = lpCommentCol->lpszComment; } } LsObj = (LPOBJECTLIST)LsObj->lpNext; } // item on the stack CuTblColumn tblColumn(csName, // LPCTSTR name, csType, // LPCTSTR type, ??? Code complexe lpCol->nKeySequence,// int primKeyRank, lpCol->bNullable, // BOOL bNullable, lpCol->bDefault, // BOOL bWithDefault, csDefSpec, // LPCTSTR defSpec csTblComment ); // LPCTSTR comment on column CuMultFlag *pRefCol = m_Data.m_uaColumns.Find(&tblColumn); ASSERT (!pRefCol); m_Data.m_uaColumns.Add(tblColumn); // Loop on next column ls = (LPOBJECTLIST)ls->lpNext; } // liberate detail structure FreeAttachedPointers (&tableparams, OT_TABLE); // liberate column comment ls = lpObjCol; while (ls) { lpCommentCol = (LPCOMMENTCOLUMN)ls->lpObject; if (lpCommentCol->lpszComment) ESL_FreeMem (lpCommentCol->lpszComment); ls = (LPOBJECTLIST)ls->lpNext; } FreeObjectList(lpObjCol); if (lpObjComment) ESL_FreeMem (lpObjComment); // Refresh display RefreshDisplay(); return 0L; }