コード例 #1
0
ファイル: CContactList.cpp プロジェクト: kmdtukl/miranda-ng
//************************************************************************
// returns the entry for the specified handle
//************************************************************************
CListEntry<CContactListEntry*,CContactListGroup*> *CContactList::FindContactInGroup(MCONTACT hContact,CListContainer<CContactListEntry*,CContactListGroup*> *pGroup)
{
	if(hContact == NULL)
		return NULL;

	CListItem<CContactListEntry*,CContactListGroup*> *pItemEntry = NULL;
	CListEntry<CContactListEntry*,CContactListGroup*> *pEntry = NULL;
	CListContainer<CContactListEntry*,CContactListGroup*> *pGroupEntry = NULL;
	CListContainer<CContactListEntry*,CContactListGroup*>::iterator iter = pGroup->begin();
	while(iter != pGroup->end())
	{
		if((*iter)->GetType() == ITEM)
		{
			pItemEntry = (CListItem<CContactListEntry*,CContactListGroup*>*)*iter;
			if(pItemEntry->GetItemData()->hHandle == hContact)
				return *iter;
		}
		else
		{
			pGroupEntry = (CListContainer<CContactListEntry*,CContactListGroup*> *)*iter;
			if(pGroupEntry->GetGroupData()->hMetaContact == hContact)
				return *iter;

			pEntry = FindContactInGroup(hContact,pGroupEntry);
			if(pEntry)
				return pEntry;
		}
		iter++;
	}
	return NULL;
}
コード例 #2
0
ファイル: CPlaylist.cpp プロジェクト: Tharit/g15-im-applets
SLISTITEM* CPlaylist::getSelectedItem() {
	CListItem<SLISTITEM*>* pListItem = (CListItem<SLISTITEM*>*)GetSelectedEntry();
	if(pListItem != NULL) {
		SLISTITEM *pItem = pListItem->GetItemData();
		return pItem;
	}
	return NULL;
}
コード例 #3
0
ファイル: CEventScreen.cpp プロジェクト: 0xmono/miranda-ng
//************************************************************************
// Called when the configuration has changed
//************************************************************************
void CEventScreen::OnConfigChanged()
{
	CScreen::OnConfigChanged();

	m_EventLog.SetFont(CConfig::GetFont(FONT_LOG));
	m_EventLog.SetSize(GetWidth()-5,GetHeight()-(CConfig::GetBoolSetting(SHOW_LABELS)?6:0));

	// Update all timestamps
	list<CListEntry<CEventLogEntry*>*>::iterator iter =  m_EventLog.begin();
	CListItem<CEventLogEntry*> *pItem = NULL;
	while(iter != m_EventLog.end())
	{
		pItem = static_cast<CListItem<CEventLogEntry*>*>(*iter);
		pItem->GetItemData()->strTimestamp = CAppletManager::GetFormattedTimestamp(&pItem->GetItemData()->Time) + _T(" ");
		iter++;
	}

	m_Scrollbar.SetSize(4,GetHeight()-(CConfig::GetBoolSetting(SHOW_LABELS)?5:0));
}
コード例 #4
0
ファイル: CPlaylist.cpp プロジェクト: Tharit/g15-im-applets
bool CPlaylist::ScrollUp() {
	if(m_Position && m_Position->GetIndex() == 1 && m_iStart - 1 >= 0) {
		CListItem<SLISTITEM*>* pItem = (CListItem<SLISTITEM*>*)(*(--end()));
		this->RemoveItem(pItem->GetItemData());
		m_iEnd--;
		CHeliumController::getInstance()->requestListItem(this,m_iStart-1);
	}

	bool bRes = CLCDList::ScrollUp();
	if(bRes) {
		m_bFocusCurrentTrack = false;
		m_iPos = m_Position->GetIndex()+m_iStart;
	}
	return bRes;
}
コード例 #5
0
ファイル: CPlaylist.cpp プロジェクト: Tharit/g15-im-applets
bool CPlaylist::ScrollDown() {
	if(m_Position && m_Position->GetIndex() == this->GetEntryCount() - 1 && m_iEnd + 1 < m_iListSize) {
		CListItem<SLISTITEM*>* pItem = (CListItem<SLISTITEM*>*)(*begin());
		this->RemoveItem(pItem->GetItemData());
		m_iStart++;
		CHeliumController::getInstance()->requestListItem(this,m_iEnd+1);
		
	}
	bool bRes = CLCDList::ScrollDown();
	if(bRes) {
		m_bFocusCurrentTrack = false;
		m_iPos = m_Position->GetIndex()+m_iStart;
	}
	return bRes;
}