Esempio n. 1
0
BOOL CCP_MainApp::EnterGroupID(long lID)
{
	BOOL bResult = FALSE;

	if(m_GroupID == lID)
		return TRUE;

	// if we are switching to the parent, focus on the previous group
	if(m_GroupParentID == lID && m_GroupID > 0)
		m_FocusID = m_GroupID;

	switch(lID)
	{
	case -1:
		m_FocusID = -1;
		m_GroupID = -1;
		m_GroupParentID = -1;
		m_GroupText = "History";
		bResult = TRUE;
		break;
	default: // Normal Group
		try
		{
			CppSQLite3Query q = theApp.m_db.execQueryEx(_T("SELECT lParentID, mText, bIsGroup FROM Main WHERE lID = %d"), lID);
			if(q.eof() == false)
			{
				if(q.getIntField(_T("bIsGroup")) > 0)
				{
					m_GroupID = lID;
					m_GroupParentID = q.getIntField(_T("lParentID"));
//					if( m_GroupParentID == 0 )
//				      m_GroupParentID = -1; // back out into "all top-level groups" list.
					m_GroupText = q.getStringField(_T("mText"));
					bResult = TRUE;
				}
			}
		}
		CATCH_SQLITE_EXCEPTION
		break;
	}

	if(bResult)
	{
		theApp.RefreshView();
		if(QPasteWnd())
			QPasteWnd()->UpdateStatus(true);
	}

	return bResult;
}
Esempio n. 2
0
BOOL CCP_MainApp::TryEnterOldGroupState()
{
	BOOL enteredGroup = FALSE;

	if(m_oldGroupID > -2)
	{
		m_GroupID = m_oldGroupID;
		m_GroupParentID = m_oldGroupParentID;
		m_GroupText = m_oldGroupText;

		ClearOldGroupState();

		theApp.RefreshView();
		if(QPasteWnd())
			QPasteWnd()->UpdateStatus(true);

		enteredGroup = TRUE;
	}

	return enteredGroup;
}
Esempio n. 3
0
BOOL CCP_MainApp::EnterGroupID(long lID, BOOL clearOldGroupState/* = TRUE*/, BOOL saveCurrentGroupState/* = FALSE*/)
{
	BOOL bResult = FALSE;

	if(m_GroupID == lID)
		return TRUE;

	DWORD startTick = GetTickCount();

	if(clearOldGroupState)
	{
		ClearOldGroupState();
	}

	if(saveCurrentGroupState)
	{
		SaveCurrentGroupState();
	}

	// if we are switching to the parent, focus on the previous group
	if(m_GroupParentID == lID && m_GroupID > 0)
		m_FocusID = m_GroupID;

	switch(lID)
	{
	case -1:
		m_FocusID = -1;
		m_GroupID = -1;
		m_GroupParentID = -1;
		m_GroupText = "History";
		bResult = TRUE;
		break;
	default: // Normal Group
		try
		{
			CppSQLite3Query q = theApp.m_db.execQueryEx(_T("SELECT lParentID, mText, bIsGroup FROM Main WHERE lID = %d"), lID);
			if(q.eof() == false)
			{
				if(q.getIntField(_T("bIsGroup")) > 0)
				{
					m_GroupID = lID;
					m_GroupParentID = q.getIntField(_T("lParentID"));
					m_GroupText = q.getStringField(_T("mText"));
					bResult = TRUE;
				}
			}
		}
		CATCH_SQLITE_EXCEPTION
		break;
	}

	if(bResult)
	{
		theApp.RefreshView();
		if(QPasteWnd())
			QPasteWnd()->UpdateStatus(true);
	}

	DWORD endTick = GetTickCount();
	if((endTick-startTick) > 150)
		Log(StrF(_T("Paste Timing EnterParentId: %d"), endTick-startTick));

	return bResult;
}