|
|
|
|
|
|
||
|
/****************************************************************************/ /**
**/ /** Copyright
(c) 2005 Diodia Software (http://www.diodia.com/) **/ /**
**/ /** Use in any
form with or without modification for commercial and non- **/ /** commercial
purposes is permitted. **/ /**
**/ /****************************************************************************/ #include "stdafx.h"
#include "RssHelpers.h" #include "RssMultiFeedC.h"
/****************************************************************************/ /* /* DESCRIPTION : RssMultiFeedC constructor. /* /* RETURN VALUE: - /* /****************************************************************************/ RssMultiFeedC::RssMultiFeedC() { }
/****************************************************************************/ /* /* DESCRIPTION : RssMultiFeedC destructor. /* /* RETURN VALUE: - /* /****************************************************************************/ RssMultiFeedC::~RssMultiFeedC() { Clear(); }
/****************************************************************************/ /* /* DESCRIPTION : Clear all items from joined RSS feed. /* /* RETURN VALUE: None /* /****************************************************************************/ void RssMultiFeedC::Clear() { while (mChannel.begin() != mChannel.end()) mChannel.erase(mChannel.begin()); while (mFeeds.begin() != mFeeds.end()) { delete *mFeeds.begin(); mFeeds.erase(mFeeds.begin()); } }
/****************************************************************************/ /* /* DESCRIPTION : Add RSS feed to joined RSS feed. /* /* RETURN VALUE: None /* /****************************************************************************/ void RssMultiFeedC::AddFeed(RssFeedC *Feed) { int Idx;
mFeeds.push_back(Feed);
for (Idx = 0; Idx < Feed->GetNoOfItems(); Idx++) mChannel.insert(Feed->GetNthItem(Idx)); }
/****************************************************************************/ /* /* DESCRIPTION : Get number of items in feed. /* /* RETURN VALUE: Number of items in feed /* /****************************************************************************/ int RssMultiFeedC::GetNoOfItems() const { return (int) mChannel.size(); }
/****************************************************************************/ /* /* DESCRIPTION : Get nth item in feed. /* /* RETURN VALUE: RSS item /* /****************************************************************************/ RssItemC *RssMultiFeedC::GetNthItem(int Index) const { RssChannelC::const_iterator Idx;
for (Idx = mChannel.begin(); Idx != mChannel.end(); Idx++) if (--Index < 0) break;
if (Idx == mChannel.end()) return NULL;
return *Idx; }
|
Source Files Commands.cpp Context.cpp CreatePath.cpp DateParser.cpp DlgEditFeedC.cpp DlgManageFeedsC.cpp Hook.cpp Iso8601.cpp MsXmlMisc.cpp MsXmlSelect.cpp RegistryNotify.cpp RegistryUtil.cpp RSS.cpp RSS.def RSS.idl RssAction.cpp RssDownloader.cpp RssFeed.cpp RssHelpers.cpp RssInit.cpp RssItem.cpp RssMultiFeed.cpp RssTimer.cpp RssXml.cpp StdAfx.cpp Header Files Commands.h ContextC.h DateParser.h DlgEditFeedC.h DlgManageFeedsC.h Helper.h HookC.h RegistryNotify.h RegistryNotifyC.h Resource.h RssDownloaderC.h RssFeedC.h RssHelpers.h RssItemC.h RssMultiFeedC.h StdAfx.h ThreadObject.h XmlHelpers.h Resource Files about.htm DiodiaLogoSmall.gif logo.bmp manifest.xml read.bmp RSS.rc RSS.rgs ToolBandLayout.xml |
|
|
© 2002-2008 Diodia Software |
||