⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rsschannel.h

📁 beereader source code
💻 H
字号:
// RSSChannel.h: interface for the CRSSChannel class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_RSSCHANNEL_H__E96924F8_F9F9_410F_A995_5D663D03B75B__INCLUDED_)
#define AFX_RSSCHANNEL_H__E96924F8_F9F9_410F_A995_5D663D03B75B__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "StdDate.h"
#include "RSSElement.h"
#include "RSSCategory.h"
#include "RSSImage.h"
#include "RSSCloud.h"
#include "RSSTextInput.h"
#include "RSSItem.h"

class CRSSChannel : public CRSSElement  
{
public:
	void ClearUp();
	CRSSChannel();
	virtual ~CRSSChannel();

public:
	BOOL GetSkipHours( int hour );
	void SetSkipHours( CString hour );
	BOOL GetSkipDays( int day );
	void SetSkipDays( CString day );
	void	SetTitle( CString title ) { m_Title = title; };
	CString GetTitle() { return m_Title; };
	void	SetURL( CString url ) { m_URL = url; };
	CString GetURL() { return m_URL; };
	void	SetDescription( CString description ){ m_Description = description; };
	CString GetDescription() { return m_Description; };
	void	SetLanguage( CString language) { m_Language = language; };
	CString GetLanguage() { return m_Language; };
	void	SetCopyright( CString copyright ){ m_Copyright = copyright; };
	CString	GetCopyright() { return m_Copyright; };
	void	SetManagingEditor( CString editor ){ m_ManagingEditor = editor; };
	CString GetManagingEditor() { return m_ManagingEditor; };
	void	SetWebMaster( CString webmaster ) { m_WebMaster = webmaster; };
	CString	GetWebMaster() { return m_WebMaster; };
	void	SetPubDate( CStdDate* pDate ){ m_PubDate = pDate; };
	CStdDate* GetPubDate() { return m_PubDate; };
    void	SetLastBuildDate( CStdDate* pDate ){ m_LastBuildDate = pDate; };
	CStdDate* GetLastBuildDate() { return m_LastBuildDate; };
	void	SetGenerator( CString generator ){ m_Generator=generator; };
	CString GetGenerator() { return m_Generator; };
	void	SetDocs( CString docs) { m_Docs = docs; };
	CString GetDocs() { return m_Docs; };
	void	SetTTL( int ttl ) { m_TTL = ttl ; };
	int		GetTTL() { return m_TTL; };
	void	SetCloud( CRSSCloud* pCloud ) { m_Cloud = pCloud; };
	CRSSCloud* GetCloud() { return m_Cloud; };
	void	SetImage( CRSSImage* pImage ) { m_Image = pImage; };
	CRSSImage* GetImage() { return m_Image; };
	void	SetTextInput( CRSSTextInput* pInput ) { m_TextInput = pInput; };
	CRSSTextInput* GetTextInput() { return m_TextInput; };
	void	 SetRating( CString rating){ m_Rating = rating; };
	CString  GetRating() { return m_Rating; };
	void	 SetVersion( CString ver ) { m_Version = ver; };
	CString  GetVersion() { return m_Version; };
	void	 SetLink( CString link ) { m_Link = link; };
	CString  GetLink( ) { return m_Link; };
	void     SetCacheGUID( CString guid ) { m_CacheGUID = guid; };
	CString  GetCacheGUID() { return m_CacheGUID; };

	int		AddCategory(CRSSCategory* category);
	BOOL	RemoveCategory(int iIndex);
	CRSSCategory* GetCategory(BOOL bFirst);
	int		AddItem(CRSSItem* pItem);
	BOOL	RemoveItem(int iIndex);
	BOOL	RemoveItem(CRSSItem* pItem);
	CRSSItem* GetItem(BOOL bFirst);

	CTime   GetLastUpdateTime() { return m_lastUpdateTime; };
	void    SetLastUpdateTime() {  m_lastUpdateTime = CTime::GetCurrentTime(); };

	HWND  GetCallbackHwnd() { return hwndCallback; };
	void    SetCallbackHwnd( HWND hwnd ){ hwndCallback = hwnd; };

	void   SetSaveTag(BOOL btag) { m_bSaveTag = btag; };
	BOOL   GetSaveTag() { return m_bSaveTag; };

	void   SetRemoveTag( BOOL btag) { m_bRemoveTag = btag; };
	BOOL   GetRemoveTag() { return m_bRemoveTag; };

	void   SetUpdateTimer(int timer = 0){ m_UpdateTimer = timer; };
	
	int   GetItemCount() { return m_ItemCount; };
	int   GetReadedItems() { return m_ReadedItems; };
	int   GetRedFlagItems() { return m_RedFlagItems; };

private:

	///元素中的所有子元素。
	CString		m_Title; //标题元素。
	CString		m_Link; //链接元素。
	CString		m_Description; //描述元素。
	CString		m_Language; //语言元素。
	CString		m_Copyright; //版权元素。
	CString		m_ManagingEditor; //编辑元素。
	CString		m_WebMaster; //技术主管元素。
	CStdDate*	m_PubDate; //出版日期。
	CStdDate*	m_LastBuildDate; //最后编辑日期。
	CObArray	m_Categorys; //类别数组。
	CString		m_Generator; //生成器元素。
	CString		m_Docs; //
	CRSSCloud*	m_Cloud; //
	int			m_TTL; //生命期(以分钟为单位)。
    CRSSImage*	m_Image; //图片元素。
	CRSSTextInput*	m_TextInput; //输入框元素。
	CString		m_Rating;
	BOOL		m_SkipHours[24]; //跳过的小时段。每个小时段使用一个BOOL作为掩码。
	BOOL		m_SkipDays[7]; //跳过的每周的天段。每个天段使用一个BOOL作为掩码。

	CString		m_CacheGUID; //频道本地缓冲标识字符串,可以是文件名,或数据库表中的关键字.
	CTime       m_lastUpdateTime;

	CObArray	m_Items; //频道下的所有项目对象集合。
	CString		m_Version; //版本.
	CString		m_URL;
	int			m_iCurrentCategory;
	int			m_iCurrentItem;

	BOOL        m_bSaveTag; //存储标志.
	BOOL        m_bRemoveTag; //移去标志.

	HWND        hwndCallback; //回调窗口句柄,如为NULL则直接返回到CRSSReader对象中的设置的窗口.

public:
	BOOL        m_bAutoUpdateTitle;  //自动更新频道标题。
	int         m_UpdateTimer;   //频道刷新频率,其值<=0时表示不执行自动刷新
	int         m_ItemCount;  //项总数。
	int         m_ReadedItems; //已读项数。
	int         m_RedFlagItems; //重要项数。
};

#endif // !defined(AFX_RSSCHANNEL_H__E96924F8_F9F9_410F_A995_5D663D03B75B__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -