chxavurllist.h
上传用户:dangjiwu
上传日期:2013-07-19
资源大小:42019k
文件大小:2k
源码类别:

Symbian

开发平台:

Visual C++

  1. /************************************************************************
  2.  * chxavurllist.h
  3.  * --------------
  4.  *
  5.  * Synopsis:
  6.  * Contains the declaration of the CHXAvURLList class.  It's basically
  7.  * a neat way to keep track of the urls most recently viewed.
  8.  *
  9.  *
  10.  * Target:
  11.  * Symbian OS
  12.  *
  13.  *
  14.  * (c) 1995-2003 RealNetworks, Inc. Patents pending. All rights reserved.
  15.  *
  16.  *****************************************************************************/
  17. #ifndef _chxavurllist_h_
  18. #define _chxavurllist_h_
  19. // Standard includes...
  20. #include <stdio.h>
  21. #include <stdlib.h>
  22. // Symbian includes...
  23. #include <e32base.h>
  24. // Helix includes...
  25. #include "unkimp.h"
  26. #include "ihxpckts.h"
  27. #include "hxstring.h"
  28. #include "hxurl.h"
  29. #include "hxwintyp.h"
  30. #include "hxcom.h"
  31. #include "hxlist.h"
  32. #include "hxbuffer.h"
  33. #include "hxcomm.h"
  34. #include "hxmon.h"
  35. // Include from this project...
  36. #include "chxbody.h"
  37. #include "chxsmartptr.h"
  38. #include "chxavurlinfo.h"
  39. // class CHXAvURLList declaration...
  40. class CHXAvURLList : 
  41.     public CHXBody
  42. {
  43. public:
  44.     CHXAvURLList(int maxURLs);
  45.     CHXAvURLList();
  46.     virtual ~CHXAvURLList();
  47.     void InitializeL();
  48. public:
  49.     int NumURLs() const;
  50.     void AddHead(const CHXAvURLInfo*& pURLInfo);
  51.     void Remove(const CHXAvURLInfo*& pURLInfo);
  52.     int RemoveMatches(const TDesC& url);
  53.     void Clear();
  54.     CHXAvURLInfo* GetURL(int index) const;
  55.     void SetURL(int index, const CHXAvURLInfo*& pURLInfo);
  56.     void SetMax(int count);
  57.     int GetMax() const;
  58.     bool WriteFile(const CHXString& filename) const;
  59.     bool ReadFile(const CHXString& filename);
  60. private:
  61.     // ReadFile helper
  62.     void AddTail(const CHXAvURLInfo*& pURLInfo);
  63.    
  64.     int m_maxURLs;
  65.     CHXSimpleList m_urls;
  66. };
  67. typedef CHXSmartPtr<CHXAvURLList> CHXAvURLListPtr;
  68. #endif // _chxavurllist_h_