void CCollectionCreateDialog::AddSelectedFiles(void)
{
	CTypedPtrList<CPtrList, CKnownFile*> knownFileList;
	POSITION pos = m_CollectionAvailListCtrl.GetFirstSelectedItemPosition();
	while (pos != NULL)
	{
		int index = m_CollectionAvailListCtrl.GetNextSelectedItem(pos);
		if (index >= 0)
			knownFileList.AddTail((CKnownFile*)m_CollectionAvailListCtrl.GetItemData(index));
	}

	while (knownFileList.GetCount() > 0)
	{
		CAbstractFile* pAbstractFile = knownFileList.RemoveHead();
		CCollectionFile* pCollectionFile = m_pCollection->AddFileToCollection(pAbstractFile, true);
		if (pCollectionFile)
			m_CollectionListCtrl.AddFileToList(pCollectionFile);
	}

	CString strTitle;
	strTitle.Format(GetResString(IDS_COLLECTIONLIST) + _T(" (%u)"), m_CollectionListCtrl.GetItemCount());
	m_CollectionListLabel.SetWindowText(strTitle);

	GetDlgItem(IDC_CCOLL_SAVE)->EnableWindow(m_CollectionListCtrl.GetItemCount() > 0);
}
Example #2
0
static void InsertSort (CTypedPtrList<CObList, CaLoggedEvent*>& le, CaLoggedEvent* e, int nStart, SORTPARAMS* sr)
{
	int nCmp = 0;
	int nSort= 1; // Range of element to compare.
	BOOL bContinue = TRUE;
	CaLoggedEvent* elm = NULL;
	POSITION p, pos = le.GetHeadPosition();
	while (pos != NULL && bContinue)
	{
		p = pos;
		elm = le.GetNext (pos);
		if (nSort >= nStart || pos == NULL)
			bContinue = FALSE;
		nCmp = CompareSubItem ((LPARAM)e, (LPARAM)elm, (LPARAM)sr);
		if (nCmp >= 0 && bContinue)
		{
			nSort++;
			continue;
		}
		if (nCmp >= 0)
		{
			//
			// e >= elm: insert e after elm.
			le.InsertAfter (p, e);
		}
		else
		{
			//
			// e < elm: insert e before elm.
			le.InsertBefore (p, e);
		}
		break;
	}
}
Example #3
0
BOOL SQLW_ComboBoxFillTables (CComboBox* pCombo, CaLLQueryInfo* pInfo)
{
	int idx = -1;
	CString strItem;
	CTypedPtrList<CObList, CaDBObject*> listObject;

	BOOL bOk = theApp.INGRESII_QueryObject (pInfo, listObject);
	if (!bOk)
		return FALSE;

	POSITION pos = listObject.GetHeadPosition();
	while (pos != NULL)
	{
		CaDBObject* pObj = listObject.GetNext(pos);
#if defined (_DISPLAY_OWNERxITEM)
		AfxFormatString2 (strItem, IDS_OWNERxITEM, (LPCTSTR)pObj->GetOwner(), (LPCTSTR)pObj->GetItem());
#else
		strItem = pObj->GetName();
#endif
		idx = pCombo->AddString (strItem);
		if (idx != CB_ERR)
			pCombo->SetItemData (idx, (DWORD)pObj);
		else
			delete pObj;
	}

	return TRUE;
}
Example #4
0
BOOL CuDlgPropertyPageSqlWizardUpdate2::GetListColumns (CaDBObject* pTable, CStringList& listColumn)
{
	CxDlgPropertySheetSqlWizard* pParent = (CxDlgPropertySheetSqlWizard*)GetParent();
	CTypedPtrList<CObList, CaDBObject*> listObject;
	ASSERT(pTable);
	if (!pTable)
		return FALSE;
	CaLLQueryInfo info(pParent->m_queryInfo);
	if (pTable->GetObjectID() == OBT_TABLE)
		info.SetObjectType(OBT_TABLECOLUMN);
	else
		info.SetObjectType(OBT_VIEWCOLUMN);
	info.SetItem2(pTable->GetName(), pTable->GetOwner());
	BOOL bOk = theApp.INGRESII_QueryObject (&info, listObject);
	if (!bOk)
		return FALSE;

	CString strItem;
	POSITION pos = listObject.GetHeadPosition();
	while (pos != NULL)
	{
		CaDBObject* pObj = listObject.GetNext(pos);

		strItem.Format (
			_T("%s.%s.%s"),
			(LPCTSTR)INGRESII_llQuoteIfNeeded(pTable->GetOwner()),
			(LPCTSTR)INGRESII_llQuoteIfNeeded(pTable->GetName()),
			(LPCTSTR)INGRESII_llQuoteIfNeeded(pObj->GetName()));
		listColumn.AddTail(strItem);
		delete pObj;
	}

	return TRUE;
}
Example #5
0
void CuDlgDomPropStaticProfile::OnDblclkMfcList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	*pResult = 0;

  ASSERT (pNMHDR->code == NM_DBLCLK);

  // Get the selected item
  ASSERT (m_cListCtrl.GetSelectedCount() == 1);
  int selItemId = m_cListCtrl.GetNextItem(-1, LVNI_SELECTED);
  ASSERT (selItemId != -1);

  if (selItemId != -1) {
    CuNameOnly *pFastObject = (CuNameOnly*)m_cListCtrl.GetItemData(selItemId);
    ASSERT (pFastObject);
    ASSERT (pFastObject->IsKindOf(RUNTIME_CLASS(CuNameOnly)));
    if (pFastObject) {
      if (!pFastObject->IsSpecialItem()) {
        CTypedPtrList<CObList, CuDomTreeFastItem*>  domTreeFastItemList;

        domTreeFastItemList.AddTail(new CuDomTreeFastItem(OT_PROFILE,
                                                          (LPCTSTR)pFastObject->GetStrName()
                                                          ));
        if (!ExpandUpToSearchedItem(this, domTreeFastItemList)) {
          AfxMessageBox (IDS_DOM_FAST_CANNOTEXPAND);
        }
        while (!domTreeFastItemList.IsEmpty())
          delete domTreeFastItemList.RemoveHead();
      }
    }
  }
}
void CCollectionViewDialog::DownloadSelected(void)
{
	int iNewIndex = 0;
	for (int iIndex = 1; iIndex < thePrefs.GetCatCount(); iIndex++)
	{
		if (!m_pCollection->m_sCollectionName.CompareNoCase(thePrefs.GetCategory(iIndex)->strTitle))
		{
			iNewIndex = iIndex;
			break;
		}
	}

	if (m_AddNewCatagory.GetCheck() && !iNewIndex)
	{
		iNewIndex = theApp.emuledlg->transferwnd->AddCategory(m_pCollection->m_sCollectionName, thePrefs.GetMuleDirectory(EMULE_INCOMINGDIR), _T(""), _T(""), true);
		theApp.emuledlg->searchwnd->UpdateCatTabs();
	}

	CTypedPtrList<CPtrList, CCollectionFile*> collectionFileList;
	POSITION pos = m_CollectionViewList.GetFirstSelectedItemPosition();
	while (pos != NULL)
	{
		int index = m_CollectionViewList.GetNextSelectedItem(pos);
		if (index >= 0)
			collectionFileList.AddTail((CCollectionFile*)m_CollectionViewList.GetItemData(index));
	}

	while (collectionFileList.GetCount() > 0)
	{
		CCollectionFile* pCollectionFile = collectionFileList.RemoveHead();
		if (pCollectionFile)
			theApp.downloadqueue->AddSearchToDownload(::CreateED2kLink(pCollectionFile, true), thePrefs.AddNewFilesPaused(), iNewIndex);
	}
}
Example #7
0
BOOL DML_QueryDatabase(CdSda* pDoc, CaNode* pNode, CTypedPtrList< CObList, CaDBObject* >& listObj)
{
	BOOL bOK = FALSE;
	CaLLQueryInfo queryInfo (OBT_DATABASE, pNode->GetName());
	queryInfo.SetFetchObjects (CaLLQueryInfo::FETCH_USER);
	queryInfo.SetIndependent(TRUE);

	CaSessionManager& sessionMgr = theApp.GetSessionManager();
	bOK = INGRESII_llQueryObject (&queryInfo, listObj, (void*)&sessionMgr);
#if defined (_IGNORE_STAR_DATABASE)
	if (bOK)
	{
		POSITION p = NULL, pos = listObj.GetHeadPosition();
		while (pos != NULL)
		{
			p = pos;
			CaDatabase* pDb = (CaDatabase*)listObj.GetNext(pos);
			if (pDb->GetStar() != OBJTYPE_NOTSTAR)
			{
				listObj.RemoveAt(p);
				delete pDb;
			}
		}
	}
#endif
	return bOK;
}
Example #8
0
LONG CuDlgIpmPageActiveDatabases::OnLoad (WPARAM wParam, LPARAM lParam)
{
	LPCTSTR pClass = (LPCTSTR)wParam;
	ASSERT (lstrcmp (pClass, _T("CuIpmPropertyDataPageActiveDatabases")) == 0);
	CTypedPtrList<CObList, CuDataTupleActiveDatabase*>* pListTuple;
	pListTuple = (CTypedPtrList<CObList, CuDataTupleActiveDatabase*>*)lParam;
	CuDataTupleActiveDatabase* pObj = NULL;
	POSITION pos = pListTuple->GetHeadPosition();
	try
	{
		ResetDisplay();
		while (pos != NULL)
		{
			pObj = (CuDataTupleActiveDatabase*)pListTuple->GetNext (pos);
			ASSERT (pObj);
			AddActiveDB (
				pObj->m_strDatabase,
				pObj->m_strStatus,
				pObj->m_strTXCnt,
				pObj->m_strBegin,
				pObj->m_strEnd,
				pObj->m_strRead,
				pObj->m_strWrite,
				NULL);
		}
	}
	catch (CMemoryException* e)
	{
		theApp.OutOfMemoryMessage();
		e->Delete();
	}
	return 0L;
}
Example #9
0
LONG CuDlgIpmPageLockLists::OnLoad (WPARAM wParam, LPARAM lParam)
{
	LPCTSTR pClass = (LPCTSTR)wParam;
	ASSERT (lstrcmp (pClass, _T("CuIpmPropertyDataPageLockLists")) == 0);
	CTypedPtrList<CObList, CuDataTupleLockList*>* pListTuple;
	pListTuple = (CTypedPtrList<CObList, CuDataTupleLockList*>*)lParam;
	CuDataTupleLockList* pObj = NULL;
	POSITION pos = pListTuple->GetHeadPosition();
	try
	{
		ResetDisplay();
		while (pos != NULL)
		{
			pObj = (CuDataTupleLockList*)pListTuple->GetNext (pos);
			ASSERT (pObj);
			AddLockList (
				pObj->m_strID, 
				pObj->m_strSession, 
				pObj->m_strCount, 
				pObj->m_strLogical, 
				pObj->m_strMaxL, 
				pObj->m_strStatus,
				NULL);
		}
	}
	catch (CMemoryException* e)
	{
		theApp.OutOfMemoryMessage();
		e->Delete();
	}
	return 0L;
}
Example #10
0
void CuDlgIpmPageActiveDatabases::OnDblclkMfcList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	*pResult = 0;
	ASSERT (pNMHDR->code == NM_DBLCLK);
	
	// Get the selected item
	ASSERT (m_cListCtrl.GetSelectedCount() == 1);
	int selItemId = m_cListCtrl.GetNextItem(-1, LVNI_SELECTED);
	ASSERT (selItemId != -1);
	
	if (selItemId != -1) {
		void* pFastStruct = (void*)m_cListCtrl.GetItemData(selItemId);
		if (!pFastStruct) {
			AfxMessageBox (IDS_E_DIRECT_ACCESS);//"Cannot have direct access after load"
			return;
		}
		
		CTypedPtrList<CObList, CuIpmTreeFastItem*> ipmTreeFastItemList;
		
		// tree organization reflected in FastItemList
		if (IpmCurSelHasStaticChildren(this))
			ipmTreeFastItemList.AddTail(new CuIpmTreeFastItem(TRUE, OT_MON_LOGDATABASE)); // static -> No string needed
		ipmTreeFastItemList.AddTail(new CuIpmTreeFastItem(FALSE, OT_MON_LOGDATABASE, pFastStruct));
		
		if (!ExpandUpToSearchedItem(this, ipmTreeFastItemList)) {
			AfxMessageBox (IDS_IPM_FAST_CANNOTEXPAND);
		}
		while (!ipmTreeFastItemList.IsEmpty())
			delete ipmTreeFastItemList.RemoveHead();
	}
}
void CCollectionViewDialog::DownloadSelected(void)
{
	int iNewIndex = 0;
	for (int iIndex = 1; iIndex < thePrefs.GetCatCount(); iIndex++)
	{
		if (!m_pCollection->m_sCollectionName.CompareNoCase(thePrefs.GetCategory(iIndex)->strTitle))
		{
			iNewIndex = iIndex;
			break;
		}
	}

	if (m_pCollection->m_sCollectionFolder == _T("") || m_pCollection->m_sCollectionName == _T(""))
	{
		return;
	}
	CString strCollectionPath = m_pCollection->m_sCollectionFolder + _T("\\") + m_pCollection->m_sCollectionName;

	if (/*m_AddNewCatagory.GetCheck() &&*/ !iNewIndex)
	{
		/* ismod
		iNewIndex = theApp.emuledlg->transferwnd->AddCategory(m_pCollection->m_sCollectionName, thePrefs.GetMuleDirectory(EMULE_INCOMINGDIR), _T(""), _T(""), true);
		*/
		iNewIndex = theApp.emuledlg->transferwnd->AddCategory(m_pCollection->m_sCollectionName, strCollectionPath, _T(""), _T(""), true);
		theApp.emuledlg->searchwnd->UpdateCatTabs();
		// ismod
		thePrefs.SaveCats();
	}

	CTypedPtrList<CPtrList, CCollectionFile*> collectionFileList;
	POSITION pos = m_CollectionViewList.GetFirstSelectedItemPosition();
	while (pos != NULL)
	{
		int index = m_CollectionViewList.GetNextSelectedItem(pos);
		if (index >= 0)
			collectionFileList.AddTail((CCollectionFile*)m_CollectionViewList.GetItemData(index));
	}

	// ismod
	uint32_t counter = 0;
	while (collectionFileList.GetCount() > 0)
	{
		CCollectionFile* pCollectionFile = collectionFileList.RemoveHead();
		// ismod
		counter++;
		if (pCollectionFile)
		{
			/* ismod
			theApp.downloadqueue->AddSearchToDownload(::CreateED2kLink(pCollectionFile, true), thePrefs.AddNewFilesPaused(), iNewIndex);
			*/
			theApp.downloadqueue->AddSearchToDownload(::CreateED2kLink(pCollectionFile, true), (counter > 2) ? 3 : thePrefs.AddNewFilesPaused(), iNewIndex);
		}
	}

	// ismod
	CreateDirectory(strCollectionPath, NULL);
}
CFileDetailDialog::CFileDetailDialog(CTypedPtrList<CPtrList, CSearchFile*>& paFiles, UINT uPshInvokePage, CListCtrlItemWalk* pListCtrl)
	: CListViewWalkerPropertySheet(pListCtrl)
{
	m_uPshInvokePage = uPshInvokePage;
	POSITION pos = paFiles.GetHeadPosition();
	while (pos)
		m_aItems.Add(paFiles.GetNext(pos));
	m_psh.dwFlags &= ~PSH_HASHELP;
	AddPages();
}
Example #13
0
static void TRANSACTION_ChangeState (
    unsigned long txHigh, 
    unsigned long txLow, 
    CString& strOperation,
    CTypedPtrList < CObList, CaTableTransactionItemData* >& ls)
{
	unsigned long lLow, lHigh;
	CaTableTransactionItemData* pObj = NULL;
	POSITION pos = ls.GetHeadPosition();
	while (pos != NULL)
	{
		pObj = ls.GetNext (pos);
		pObj->GetTransactionID (lHigh, lLow);
		if (txHigh == lHigh && txLow == lLow)
		{
			if (strOperation.CompareNoCase (_T("COMMIT")) == 0)
			{
				pObj->SetCommit  (TRUE);
				pObj->SetJournal (TRUE);
			}
			else
			if (strOperation.CompareNoCase (_T("ABORT")) == 0)
			{
				pObj->SetCommit  (FALSE);
				pObj->SetJournal (TRUE);
			}
			else
			if (strOperation.CompareNoCase (_T("COMMITNJ")) == 0)
			{
				pObj->SetCommit  (TRUE);
				pObj->SetJournal (FALSE);
			}
			else
			if (strOperation.CompareNoCase (_T("ABORTNJ")) == 0)
			{
				pObj->SetCommit  (FALSE);
				pObj->SetJournal (FALSE);
			}
			else
			{
				//
				// String in OPERATION in not in ('commit', 'abort', 'commitnj', 'abortnj')
				ASSERT (FALSE);
			}
		}
	}
}
Example #14
0
// ************************************************************************************************
//                                 LOCAL FUNCTIONS
// ************************************************************************************************
static HRESULT CopyGroups2Stream(CTypedPtrList< CObList, CmtGroup* >& listObject, IStream*& pStream)
{
	HRESULT hError = NOERROR;
	IStream* pStreamBuffer = NULL;
	//
	// Prepare to transfer data through the ISream interface:
	try
	{
		CMemFile file;
		CArchive ar(&file, CArchive::store);

		//
		// List of objects to store to the Archive;
		CTypedPtrList <CObList, CaGroup*> listObject2Store;
		//
		// Write the individual object:
		CaGroup* pObj = NULL;
		POSITION pos = listObject.GetHeadPosition();
		while (pos != NULL)
		{
			CmtGroup* pMtObj = listObject.GetNext(pos);
			pMtObj->GetGroup (pObj);
			listObject2Store.AddTail (pObj);
		}

		//
		// Serialize the list of objects and cleanup the list.
		listObject2Store.Serialize (ar);
		while (!listObject2Store.IsEmpty())
			delete listObject2Store.RemoveHead();
		//
		// Force everything to be written to File (memory file)
		ar.Flush();
		CArchiveToIStream (ar, &pStreamBuffer);
	}
	catch (...)
	{
		hError = E_FAIL;
		if (pStreamBuffer)
			pStreamBuffer->Release();
		pStreamBuffer = NULL;
	}

	pStream = pStreamBuffer;
	return hError;
}
Example #15
0
void CSharedDirsTreeCtrl::ShowFileDialog(CTypedPtrList<CPtrList, CKnownFile*>& aFiles, UINT uPshInvokePage)
{
	if (aFiles.GetSize() > 0)
	{
		CFileDetailDialog dialog(aFiles, uPshInvokePage, m_pSharedFilesCtrl);
		dialog.DoModal();
	}
}
Example #16
0
static BOOL ExistTransaction (CaDatabaseTransactionItemDataDetail* pDetail, CTypedPtrList < CObList, CaBaseTransactionItemData* >& ltr)
{
	POSITION pos = ltr.GetHeadPosition();
	unsigned long l1H, l1L;
	unsigned long l2H, l2L;
	pDetail->GetTransactionID (l1H, l1L);

	while (pos != NULL)
	{
		CaBaseTransactionItemData* pObj = ltr.GetNext (pos);
		pObj->GetTransactionID (l2H, l2L);
		
		if (l1H == l2H && l1L == l2L)
			return TRUE;
	}
	return FALSE;
}
void CCollectionListCtrl::OnNMRclick(NMHDR *pNMHDR, LRESULT *pResult)
{
	CTypedPtrList<CPtrList, CAbstractFile*> abstractFileList;
	POSITION pos = GetFirstSelectedItemPosition();
	while (pos != NULL)
	{
		int index = GetNextSelectedItem(pos);
		if (index >= 0)
			abstractFileList.AddTail((CAbstractFile*)GetItemData(index));
	}

	if(abstractFileList.GetCount() > 0)
	{
		CFileDetailDialog dialog(abstractFileList, 0, this);
		dialog.DoModal();
	}
	*pResult = 0;
}
Example #18
0
void CuDlgDomPropTblInteg::OnDblclkMfcList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	*pResult = 0;

  ASSERT (pNMHDR->code == NM_DBLCLK);

  // Get the selected item
  ASSERT (m_cListCtrl.GetSelectedCount() == 1);
  int selItemId = m_cListCtrl.GetNextItem(-1, LVNI_SELECTED);
  ASSERT (selItemId != -1);

  if (selItemId != -1) {
    CuNameWithOwner *pFastObject = (CuNameWithOwner*)m_cListCtrl.GetItemData(selItemId);
    ASSERT (pFastObject);
    ASSERT (pFastObject->IsKindOf(RUNTIME_CLASS(CuNameWithOwner)));
    if (pFastObject) {
      if (!pFastObject->IsSpecialItem()) {
        CTypedPtrList<CObList, CuDomTreeFastItem*>  domTreeFastItemList;

        // tree organization reflected in FastItemList, different according to record type
        switch (m_Data.m_objType) {
          case OT_TABLE:
          case OT_SCHEMAUSER_TABLE:
            domTreeFastItemList.AddTail(new CuDomTreeFastItem(OT_STATIC_INTEGRITY));
            break;
          case OT_STATIC_INTEGRITY:
            break;
          default:
            ASSERT(FALSE);
            return;
        }
        domTreeFastItemList.AddTail(new CuDomTreeFastItem(OT_INTEGRITY,
                                                          (LPCTSTR)pFastObject->GetStrName(),
                                                          _T("")    // no owner
                                                          ));
        if (!ExpandUpToSearchedItem(this, domTreeFastItemList)) {
          AfxMessageBox (IDS_DOM_FAST_CANNOTEXPAND);
        }
        while (!domTreeFastItemList.IsEmpty())
          delete domTreeFastItemList.RemoveHead();
      }
    }
  }
}
Example #19
0
LONG CuDlgReplicationServerPageAssignment::OnLoad (WPARAM wParam, LPARAM lParam)
{
	LPCTSTR pClass = (LPCTSTR)wParam;
	ASSERT (lstrcmp (pClass, _T("CaReplicationServerDataPageAssignment")) == 0);
	CTypedPtrList<CObList, CStringList*>* pListTuple;
	CaReplicationServerDataPageAssignment* pData = (CaReplicationServerDataPageAssignment*)lParam;
	ASSERT (pData);
	if (!pData)
		return 0L;
	pListTuple = &(pData->m_listTuple);
	CStringList* pObj = NULL;
	POSITION p, pos = pListTuple->GetHeadPosition();
	try
	{
		// For each column:
		const int LAYOUT_NUMBER = 5;
		for (int i=0; i<LAYOUT_NUMBER; i++)
			m_cListCtrl.SetColumnWidth(i, pData->m_cxHeader.GetAt(i));

		int nCount;
		while (pos != NULL)
		{
			pObj = pListTuple->GetNext (pos);
			ASSERT (pObj);
			ASSERT (pObj->GetCount() == 5);
			nCount = m_cListCtrl.GetItemCount();
			p = pObj->GetHeadPosition();
			m_cListCtrl.InsertItem  (nCount,    (LPCTSTR)pObj->GetNext(p));
			m_cListCtrl.SetItemText (nCount, 1, (LPCTSTR)pObj->GetNext(p));
			m_cListCtrl.SetItemText (nCount, 2, (LPCTSTR)pObj->GetNext(p));
			m_cListCtrl.SetItemText (nCount, 3, (LPCTSTR)pObj->GetNext(p));
			m_cListCtrl.SetItemText (nCount, 4, (LPCTSTR)pObj->GetNext(p));
		}
		m_cListCtrl.SetScrollPos (SB_HORZ, pData->m_scrollPos.cx);
		m_cListCtrl.SetScrollPos (SB_VERT, pData->m_scrollPos.cy);
	}
	catch (CMemoryException* e)
	{
		theApp.OutOfMemoryMessage();
		e->Delete();
	}
	return 0L;
}
Example #20
0
void CuDlgIjaTable::GetSelectedTransactions (CTypedPtrList < CObList, CaBaseTransactionItemData* >& ltr)
{
	int i, nCount;
	int nFound = -1;
	CaTableTransactionItemData* pItemTable= NULL;
	CString strTable;
	CString strTableOwner;
	CString strData;

	m_queryTransactionInfo.GetTable (strTable, strTableOwner);

	nCount = m_cListCtrl.GetItemCount();
	for (i=0; i<nCount; i++)
	{
		if (m_cListCtrl.GetItemState (i, LVIS_SELECTED) & LVIS_SELECTED)
		{
			pItemTable = (CaTableTransactionItemData*)m_cListCtrl.GetItemData (i);
			if (!pItemTable)
				continue;
			unsigned long ltr1L, ltr1H;
			unsigned long ltr2L, ltr2H;

			for (int j=0; j<nCount; j++)
			{
				CaTableTransactionItemData* pItem = (CaTableTransactionItemData*)m_cListCtrl.GetItemData(j);
				if (!pItem)
					continue;

				pItem->GetTransactionID(ltr1H, ltr1L);
				pItemTable->GetTransactionID(ltr2H, ltr2L);

				if (ltr1H == ltr2H && ltr1L == ltr2L)
				{
					pItem->SetTable (strTable);
					pItem->SetTableOwner (strTableOwner);
					if (ltr.Find(pItem) == NULL)
						ltr.AddTail (pItem);
				}
			}
		}
	}
}
Example #21
0
BOOL SQLW_CuCheckListBoxFillColumns (CuCheckListBox* pListBox, CaLLQueryInfo* pInfo)
{
	int idx = -1;
	CTypedPtrList<CObList, CaDBObject*> listObject;

	BOOL bOk = theApp.INGRESII_QueryObject (pInfo, listObject);
	if (!bOk)
		return FALSE;

	POSITION pos = listObject.GetHeadPosition();
	while (pos != NULL)
	{
		CaDBObject* pObj = listObject.GetNext(pos);
		idx = pListBox->AddString ((LPCTSTR)pObj->GetName());
		if (idx != LB_ERR)
			pListBox->SetItemData (idx, (DWORD)pObj);
		else
			delete pObj;
	}
	return TRUE;
}
Example #22
0
void VerifyAndUpdateVnodeName (CString* rcsRunNode)
{
	BOOL bExistLocalNode = FALSE;
	BOOL bFound = FALSE;
	CTypedPtrList< CObList, CaDBObject* > lNew;
	BOOL bOk = (VNODE_QueryNode (lNew) == NOERROR)? TRUE: FALSE;
	while (bOk && !lNew.IsEmpty())
	{
		CaNode* pNode = (CaNode*)lNew.RemoveHead();
		if (pNode->IsLocalNode())
			bExistLocalNode = TRUE;
		if (rcsRunNode->CompareNoCase (pNode->GetName()) == 0)
			bFound = TRUE;
		delete pNode;
	}

	CString strError;

	if (bFound == FALSE && bExistLocalNode == TRUE) {
		CString strLoc = LIBMON_getLocalHostName();
		if ( strLoc.CompareNoCase(_T("UNKNOWN LOCAL HOST NAME")) != 0) {
			if ( rcsRunNode->CompareNoCase(strLoc) == 0) {
				rcsRunNode->LoadString(IDS_I_LOCALNODE);
			}
			else	{
				//"Vnode name %s not found. Please create it,\n"
				//"if you want to manage this replicator server."
				strError.Format(IDS_F_VNODE_NOT_FOUND,(LPCTSTR)(*rcsRunNode));
				MessageBox(GetFocus(),strError , NULL,MB_ICONEXCLAMATION | MB_OK | MB_TASKMODAL);
				rcsRunNode->Empty();
			}
		}
		else {
			strError.LoadString(IDS_E_LOCAL_HOST_NAME);//"Local Host name not found."
			MessageBox(GetFocus(),strError , NULL,MB_ICONEXCLAMATION | MB_OK | MB_TASKMODAL);
			rcsRunNode->Empty();
		}
	}
}
Example #23
0
BOOL CaTreeNodeFolder::Refresh()
{
	CString strNodeName;
	CaVNodeTreeItemData* pNode = NULL;
	CaVNodeTreeItemData* pExistNode = NULL;
	POSITION pos = m_listNode.GetHeadPosition();
	while (pos != NULL)
	{
		pNode = m_listNode.GetNext (pos);
		pNode->SetInternalState (NODE_DELETE);
	}
	
	CTypedPtrList<CObList, CaVNodeTreeItemData*> listNode;
	VNODE_QueryNode (m_listNode, listNode);
	pos = listNode.GetHeadPosition();
	while (pos != NULL)
	{
		pNode = listNode.GetNext (pos);
		m_listNode.AddTail (pNode);
	}
	return TRUE;
}
Example #24
0
BOOL SQLW_CuCheckListBoxFillTables (CuListCtrlCheckBox* pListBox, CaLLQueryInfo* pInfo)
{
	int idx = -1;
	CString strItem;
	CTypedPtrList<CObList, CaDBObject*> listObject;

	BOOL bOk = theApp.INGRESII_QueryObject (pInfo, listObject);
	if (!bOk)
		return FALSE;

	LVITEM lvi;
	memset (&lvi, 0, sizeof(lvi));
	lvi.mask = LVIF_TEXT|LVIF_PARAM|LVIF_IMAGE|LVIF_STATE;
	lvi.stateMask = LVIS_STATEIMAGEMASK;
	lvi.state = INDEXTOSTATEIMAGEMASK(1);
	lvi.iImage = 0;
	POSITION pos = listObject.GetHeadPosition();
	while (pos != NULL)
	{
		CaDBObject* pObj = listObject.GetNext(pos);
		lvi.iItem = pListBox->GetItemCount();
		lvi.iSubItem = 0;
		lvi.lParam = (LPARAM)pObj;
		lvi.pszText = (LPTSTR)(LPCTSTR)pObj->GetName();
		idx = pListBox->InsertItem (&lvi);

		if (idx != -1)
		{
			pListBox->SetItemText (idx, 1, pObj->GetOwner());
		}
		else
		{
			delete pObj;
		}
	}

	return TRUE;
}
Example #25
0
BOOL ExpandUpToSearchedItem(CWnd* pPropWnd, CTypedPtrList<CObList, CuIpmTreeFastItem*>& rIpmTreeFastItemList, BOOL bAutomated)
{
    CfIpmFrame* pIpmFrame = NULL;
    if (bAutomated) {
        ASSERT (pPropWnd->IsKindOf(RUNTIME_CLASS(CfIpmFrame)));
        pIpmFrame = (CfIpmFrame*)pPropWnd;
    }
    else {
        pIpmFrame = (CfIpmFrame*)pPropWnd->GetParentFrame();
        ASSERT (pIpmFrame->IsKindOf(RUNTIME_CLASS(CfIpmFrame)));
    }
    ASSERT (pIpmFrame);

    // Get selected item handle
    HTREEITEM hItem = 0;
    if (bAutomated) {
        hItem = 0;      // Will force search on all root items
    }
    else {
        hItem = pIpmFrame->GetSelectedItem();
        ASSERT (hItem);
    }

    // Loop on fastitemlist
    POSITION pos = rIpmTreeFastItemList.GetHeadPosition();
    while (pos) {
        CuIpmTreeFastItem* pFastItem = rIpmTreeFastItemList.GetNext (pos);
        hItem = pIpmFrame->FindSearchedItem(pFastItem, hItem);
        if (!hItem) {
            ASSERT (FALSE);
            return FALSE;
        }
    }
    pIpmFrame->SelectItem(hItem);
    return TRUE;
}
Example #26
0
void CuDlgMain::QueryUser(CComboBoxEx* pComboUser, CaNode* pNode, CString& strSelectedUser)
{
	int nIdx = CB_ERR;
	CWaitCursor doWaitCursor;
	UINT uFlag = (pComboUser == &m_cComboUser1)? REFRESH_USER1: REFRESH_USER2;
	CTypedPtrList< CObList, CaDBObject* >* lUser = (pComboUser == &m_cComboUser1)? &m_lUser1: &m_lUser2;
	pComboUser->ResetContent();
	if ((m_nAlreadyRefresh & uFlag) == 0)
	{
		while (!lUser->IsEmpty())
			delete lUser->RemoveHead();
		CaUserDefault* pDefaultUser = new CaUserDefault (_T("<Default Schema>"), pNode);
		lUser->AddHead(pDefaultUser);
		CaUserAll* pAllUser = new CaUserAll (_T("<All Schemas>"));
		lUser->AddHead(pAllUser);
		DML_QueryUser(NULL, pNode, *lUser);
	}

	COMBOBOXEXITEM cbitem;
	memset (&cbitem, 0, sizeof(cbitem));
	cbitem.mask = CBEIF_IMAGE | CBEIF_TEXT | CBEIF_SELECTEDIMAGE | CBEIF_LPARAM ;
	cbitem.iImage = 0;
	cbitem.iSelectedImage = 0;
	int nDefault = 0;

	POSITION pos = lUser->GetHeadPosition();
	while (pos != NULL)
	{
		CaUser* pUser = (CaUser*)lUser->GetNext(pos);
		cbitem.pszText = (LPTSTR)(LPCTSTR)pUser->GetName();
		cbitem.lParam  = (LPARAM)pUser;
		cbitem.iItem   = pComboUser->GetCount();
		pComboUser->InsertItem (&cbitem);
	}
	if (m_bPreselectDBxUser)
	{
		if (!strSelectedUser.IsEmpty())
		{
			nIdx = pComboUser->FindStringExact(-1, strSelectedUser);
			if (nIdx != CB_ERR)
				pComboUser->SetCurSel(nIdx);
			else
				pComboUser->SetCurSel(nDefault);
		}
		else
		{
			pComboUser->SetCurSel(nDefault);
		}
	}
	m_nAlreadyRefresh |= uFlag;
}
Example #27
0
// DOUBLE CLICK ASSETS SINCE SELECTION NOT AVAILABLE - MASQUED OUT ASSERTIONS
void CuDlgDomPropIceFacetNPageRoles::OnDblclkMfcList1(NMHDR* pNMHDR, LRESULT* pResult)
{
    *pResult = 0;

    ASSERT (pNMHDR->code == NM_DBLCLK);

    // Get the selected item
    //ASSERT (m_cListCtrl.GetSelectedCount() == 1);
    int selItemId = m_cListCtrl.GetNextItem(-1, LVNI_SELECTED);
    //ASSERT (selItemId != -1);

    if (selItemId != -1) {
        CuIceFacetNPageAccessdef* pFastObject = (CuIceFacetNPageAccessdef*)m_cListCtrl.GetItemData(selItemId);
        ASSERT (pFastObject);
        ASSERT (pFastObject->IsKindOf(RUNTIME_CLASS(CuIceFacetNPageAccessdef)));
        if (pFastObject) {
            if (!pFastObject->IsSpecialItem()) {
                CTypedPtrList<CObList, CuDomTreeFastItem*>  domTreeFastItemList;

                // tree organization reflected in FastItemList, different according to record type
                int finalType = -1;
                switch (m_Data.m_objType) {
                case OT_ICE_BUNIT_FACET:
                    domTreeFastItemList.AddTail(new CuDomTreeFastItem(OT_STATIC_ICE_BUNIT_FACET_ROLE));
                // NOTE: No break to chain on reqType
                case OT_STATIC_ICE_BUNIT_FACET_ROLE:
                    finalType = OT_ICE_BUNIT_FACET_ROLE;
                    break;

                case OT_ICE_BUNIT_PAGE:
                    domTreeFastItemList.AddTail(new CuDomTreeFastItem(OT_STATIC_ICE_BUNIT_PAGE_ROLE));
                // NOTE: No break to chain on reqType
                case OT_STATIC_ICE_BUNIT_PAGE_ROLE:
                    finalType = OT_ICE_BUNIT_PAGE_ROLE;
                    break;

                default:
                    ASSERT(FALSE);
                    return;
                }
                domTreeFastItemList.AddTail(new CuDomTreeFastItem(finalType,
                                            (LPCTSTR)pFastObject->GetStrName()
                                                                 ));
                if (!ExpandUpToSearchedItem(this, domTreeFastItemList)) {
                    AfxMessageBox (IDS_DOM_FAST_CANNOTEXPAND);
                }
                while (!domTreeFastItemList.IsEmpty())
                    delete domTreeFastItemList.RemoveHead();
            }
        }
    }
}
bool LastCommonRouteFinder::AddHostsToCheck(CTypedPtrList<CPtrList, CServer*> &list) {
    bool gotEnoughHosts = true;

	if(needMoreHosts) {
		addHostLocker.Lock();

		if(needMoreHosts) {
			POSITION pos = list.GetHeadPosition();

            if(pos) {
				uint32 startPos = rand()/(RAND_MAX/(min(list.GetCount(), 100)));

				for(uint32 skipCounter = 0; skipCounter < startPos && pos != NULL; skipCounter++) {
					list.GetNext(pos);
                }

                if(!pos) {
                    pos = list.GetHeadPosition();
                }

			    uint32 tryCount = 0;
			    while(needMoreHosts && tryCount < (uint32)list.GetCount()) {
				    tryCount++;
				    CServer* server = list.GetNext(pos);
                    if(!pos) {
                        pos = list.GetHeadPosition();
                    }

				    uint32 ip = server->GetIP();

				    AddHostToCheckNoLock(ip);
                }
            }
		}

        gotEnoughHosts = !needMoreHosts;

        addHostLocker.Unlock();
    }

    return gotEnoughHosts;
}
Example #29
0
void CuDlgEventSettingBottom::OnSelchangeComboIngresCategory() 
{
	CWaitCursor doWaitcursor;
	int nRadio = GetCheckedRadioButton (IDC_RADIO1, IDC_RADIO2);
	if (nRadio != IDC_RADIO2)
		return;
	int nSel = m_cComboIngresCategory.GetCurSel();
	if (nSel == CB_ERR)
		return;
	CaMessageEntry* pEntry = (CaMessageEntry*)m_cComboIngresCategory.GetItemData (nSel);
	if (!pEntry)
		return;

	CfEventSetting* pFrame = (CfEventSetting*)GetParentFrame();
	ASSERT (pFrame);
	if (!pFrame)
		return;
	CaMessageManager* pMessageManager = pFrame->GetMessageManager();
	if (!pMessageManager)
		return;
	
	CListCtrl* pListCtrl = &m_cListCtrlIngres;
	CTypedPtrList<CObList, CaLoggedEvent*> lsMsg;
	BOOL bOk = IVM_QueryIngresMessage (pEntry, lsMsg);

	if (!(bOk && pListCtrl))
		return;

	CleanListMessage(pListCtrl);
	CaMessage* pMsg = NULL;
	POSITION pos = lsMsg.GetHeadPosition();
	if (lsMsg.GetCount() > 100)
		pListCtrl->SetItemCount ((int)lsMsg.GetCount());
	while (!lsMsg.IsEmpty())
	{
		CaLoggedEvent* pObj = lsMsg.RemoveHead();
		pMsg = IVM_LookupMessage (pObj->GetCatType(), pObj->GetCode(), pMessageManager);
		if (pMsg)
			pObj->SetClass (pMsg->GetClass());
		else
			pObj->SetClass (pEntry->GetClass());
		pObj->SetClassify(pMsg? TRUE: FALSE);
		AddEventToIngresMessage (pObj);
	}
	EnableButtonFind();
}
Example #30
0
void CUploadQueue::ReSortUploadSlots(bool force) {
    DWORD curtick = ::GetTickCount();
    if(force ||  curtick - m_dwLastResortedUploadSlots >= 10*1000) {
        m_dwLastResortedUploadSlots = curtick;

        theApp.uploadBandwidthThrottler->Pause(true);

    	CTypedPtrList<CPtrList, CUpDownClient*> tempUploadinglist;

        // Remove all clients from uploading list and store in tempList
        POSITION ulpos = uploadinglist.GetHeadPosition();
        while (ulpos != NULL) {
            POSITION curpos = ulpos;
            uploadinglist.GetNext(ulpos);

            // Get and remove the client from upload list.
		    CUpDownClient* cur_client = uploadinglist.GetAt(curpos);

            uploadinglist.RemoveAt(curpos);

            // Remove the found Client from UploadBandwidthThrottler
            theApp.uploadBandwidthThrottler->RemoveFromStandardList(cur_client->socket);
            theApp.uploadBandwidthThrottler->RemoveFromStandardList((CClientReqSocket*)cur_client->m_pPCUpSocket);

            tempUploadinglist.AddTail(cur_client);
        }

        // Remove one at a time from temp list and reinsert in correct position in uploading list
        POSITION tempPos = tempUploadinglist.GetHeadPosition();
        while(tempPos != NULL) {
            POSITION curpos = tempPos;
            tempUploadinglist.GetNext(tempPos);

            // Get and remove the client from upload list.
		    CUpDownClient* cur_client = tempUploadinglist.GetAt(curpos);

            tempUploadinglist.RemoveAt(curpos);

            // This will insert in correct place
            InsertInUploadingList(cur_client);
        }

        theApp.uploadBandwidthThrottler->Pause(false);
    }
}