diff options
author | George Hazan <george.hazan@gmail.com> | 2013-08-06 08:33:44 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2013-08-06 08:33:44 +0000 |
commit | fbed4e49ff41a49e2b8b09e0ccc1268aeffbada1 (patch) | |
tree | 54c8ef840bbbbc2f12faf3c00700adb1b2741ff9 /plugins/TabSRMM/src/contactcache.h | |
parent | e2a9e8224e94127cc73cf62ebfb2a8dfee078c0c (diff) |
- DoTrimMessage removed and replaced with rtrim()
- contactcache.cpp moved from a linked list to a sorted list
git-svn-id: http://svn.miranda-ng.org/main/trunk@5598 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/TabSRMM/src/contactcache.h')
-rw-r--r-- | plugins/TabSRMM/src/contactcache.h | 199 |
1 files changed, 99 insertions, 100 deletions
diff --git a/plugins/TabSRMM/src/contactcache.h b/plugins/TabSRMM/src/contactcache.h index ab166e6b3c..d6684e9cd7 100644 --- a/plugins/TabSRMM/src/contactcache.h +++ b/plugins/TabSRMM/src/contactcache.h @@ -46,120 +46,119 @@ struct TInputHistory { struct TSessionStats {
enum {
- BYTES_RECEIVED = 1,
- BYTES_SENT = 2,
- FAILURE = 3,
- UPDATE_WITH_LAST_RCV= 4,
- SET_LAST_RCV = 5,
- INIT_TIMER = 6,
+ BYTES_RECEIVED = 1,
+ BYTES_SENT = 2,
+ FAILURE = 3,
+ UPDATE_WITH_LAST_RCV = 4,
+ SET_LAST_RCV = 5,
+ INIT_TIMER = 6,
};
- time_t started;
- unsigned int iSent, iReceived, iSentBytes, iReceivedBytes;
- unsigned int messageCount;
- unsigned int iFailures;
- unsigned int lastReceivedChars;
- BOOL bWritten;
+ time_t started;
+ unsigned iSent, iReceived, iSentBytes, iReceivedBytes;
+ unsigned messageCount;
+ unsigned iFailures;
+ unsigned lastReceivedChars;
+ BOOL bWritten;
};
-class CContactCache {
-public:
-
- CContactCache () {}
- CContactCache (const HANDLE hContact);
- ~CContactCache ()
+struct CContactCache : public MZeroedObject
+{
+ CContactCache() {}
+ CContactCache(const HANDLE hContact);
+ ~CContactCache()
{
releaseAlloced();
}
- void inc () { m_accessCount++; }
- const bool isValid () const { return(m_Valid); }
- const WORD getStatus () const { return(m_wStatus); }
- const WORD getMetaStatus () const { return(m_wMetaStatus); }
- const WORD getActiveStatus () const { return(m_isMeta ? m_wMetaStatus : m_wStatus); }
- const WORD getOldStatus () const { return(m_wOldStatus); }
- const TCHAR* getNick () const { return(m_szNick); }
- const HANDLE getContact () const { return(m_hContact); }
- const HANDLE getActiveContact () const { return(m_isMeta ? (m_hSubContact ? m_hSubContact : m_hContact) : m_hContact); }
- const DWORD getIdleTS () const { return(m_idleTS); }
- const char* getProto () const { return(m_szProto); }
- const TCHAR* getProtoT () const { return(m_tszProto); }
- const char* getMetaProto () const { return(m_szMetaProto ? m_szMetaProto : C_INVALID_PROTO); }
- const TCHAR* getMetaProtoT () const { return(m_szMetaProto ? m_tszMetaProto : C_INVALID_PROTO_T); }
- const char* getActiveProto () const { return(m_isMeta ? (m_szMetaProto ? m_szMetaProto : m_szProto) : m_szProto); }
- const TCHAR* getActiveProtoT () const { return(m_isMeta ? (m_szMetaProto ? m_tszMetaProto : m_tszProto) : m_tszProto); }
- bool isMeta () const { return(m_isMeta); }
- bool isSubContact () const { return(m_isSubcontact); }
- bool isFavorite () const { return(m_isFavorite); }
- bool isRecent () const { return(m_isRecent); }
- const TCHAR* getRealAccount () const { return(m_szAccount ? m_szAccount : C_INVALID_ACCOUNT); }
- const TCHAR* getUIN () const { return(m_szUIN); }
- const TCHAR* getStatusMsg () const { return(m_szStatusMsg); }
- const TCHAR* getXStatusMsg () const { return(m_xStatusMsg); }
- const TCHAR* getListeningInfo () const { return(m_ListeningInfo); }
- BYTE getXStatusId () const { return(m_xStatus); }
- const HWND getWindowData (TWindowData*& dat) const { dat = m_dat; return(m_hwnd); }
- const HWND getHwnd () const { return(m_hwnd); }
- int getMaxMessageLength ();
-
- TWindowData* getDat () const { return(m_dat); }
-
- void updateStats (int iType, size_t value = 0);
- const DWORD getSessionStart () const { return(m_stats->started); }
- const int getSessionMsgCount () const { return((int)m_stats->messageCount) ; }
- void updateState ();
- bool updateStatus ();
- bool updateNick ();
- void updateMeta (bool fForce = false);
- bool updateUIN ();
- void updateStatusMsg (const char *szKey = 0);
- void setWindowData (const HWND hwnd = 0, TWindowData *dat = 0);
- void resetMeta ();
- void closeWindow ();
- void deletedHandler ();
- void updateFavorite ();
- TCHAR* getNormalizedStatusMsg (const TCHAR *src, bool fStripAll = false);
- HICON getIcon (int& iSize) const;
+
+ const bool isValid() const { return(m_Valid); }
+ const WORD getStatus() const { return(m_wStatus); }
+ const WORD getMetaStatus() const { return(m_wMetaStatus); }
+ const WORD getActiveStatus() const { return(m_isMeta ? m_wMetaStatus : m_wStatus); }
+ const WORD getOldStatus() const { return(m_wOldStatus); }
+ const TCHAR* getNick() const { return(m_szNick); }
+ const HANDLE getContact() const { return(m_hContact); }
+ const HANDLE getActiveContact() const { return(m_isMeta ? (m_hSubContact ? m_hSubContact : m_hContact) : m_hContact); }
+ const DWORD getIdleTS() const { return(m_idleTS); }
+ const char* getProto() const { return(m_szProto); }
+ const TCHAR* getProtoT() const { return(m_tszProto); }
+ const char* getMetaProto() const { return(m_szMetaProto ? m_szMetaProto : C_INVALID_PROTO); }
+ const TCHAR* getMetaProtoT() const { return(m_szMetaProto ? m_tszMetaProto : C_INVALID_PROTO_T); }
+ const char* getActiveProto() const { return(m_isMeta ? (m_szMetaProto ? m_szMetaProto : m_szProto) : m_szProto); }
+ const TCHAR* getActiveProtoT() const { return(m_isMeta ? (m_szMetaProto ? m_tszMetaProto : m_tszProto) : m_tszProto); }
+ bool isMeta() const { return(m_isMeta); }
+ bool isSubContact() const { return(m_isSubcontact); }
+ bool isFavorite() const { return(m_isFavorite); }
+ bool isRecent() const { return(m_isRecent); }
+ const TCHAR* getRealAccount() const { return(m_szAccount ? m_szAccount : C_INVALID_ACCOUNT); }
+ const TCHAR* getUIN() const { return(m_szUIN); }
+ const TCHAR* getStatusMsg() const { return(m_szStatusMsg); }
+ const TCHAR* getXStatusMsg() const { return(m_xStatusMsg); }
+ const TCHAR* getListeningInfo() const { return(m_ListeningInfo); }
+ BYTE getXStatusId() const { return(m_xStatus); }
+ const HWND getWindowData(TWindowData*& dat) const { dat = m_dat; return(m_hwnd); }
+ const HWND getHwnd() const { return(m_hwnd); }
+ int getMaxMessageLength();
+
+ TWindowData* getDat() const { return(m_dat); }
+
+ void updateStats(int iType, size_t value = 0);
+ const DWORD getSessionStart() const { return(m_stats->started); }
+ const int getSessionMsgCount() const { return((int)m_stats->messageCount) ; }
+
+ ////////////////////////////////////////////////////////////////////////////
+
+ void updateState();
+ bool updateStatus();
+ bool updateNick();
+ void updateMeta(bool fForce = false);
+ bool updateUIN();
+ void updateStatusMsg(const char *szKey = 0);
+ void setWindowData(const HWND hwnd = 0, TWindowData *dat = 0);
+ void resetMeta();
+ void closeWindow();
+ void deletedHandler();
+ void updateFavorite();
+ TCHAR* getNormalizedStatusMsg(const TCHAR *src, bool fStripAll = false);
+ HICON getIcon(int& iSize) const;
/*
* input history
*/
- void saveHistory (WPARAM wParam, LPARAM lParam);
- void inputHistoryEvent (WPARAM wParam);
-
- HANDLE m_hContact;
- CContactCache* m_next;
+ void saveHistory(WPARAM wParam, LPARAM lParam);
+ void inputHistoryEvent(WPARAM wParam);
- static CContactCache* m_cCache;
- static CContactCache* getContactCache(const HANDLE hContact);
-
-private:
- void allocStats ();
- void initPhaseTwo ();
- void allocHistory ();
- void releaseAlloced ();
+ static CContactCache* getContactCache(HANDLE hContact);
+ static void cacheUpdateMetaChanged();
private:
- size_t m_accessCount;
- HANDLE m_hSubContact;
- WORD m_wStatus, m_wMetaStatus;
- WORD m_wOldStatus;
- char* m_szProto, *m_szMetaProto;
- TCHAR* m_tszProto, m_tszMetaProto[40];
- TCHAR* m_szAccount;
- TCHAR m_szNick[80], m_szUIN[80];
- TCHAR* m_szStatusMsg, *m_xStatusMsg, *m_ListeningInfo;
- BYTE m_xStatus;
- DWORD m_idleTS;
- bool m_isMeta, m_isSubcontact;
- bool m_Valid;
- bool m_isFavorite;
- bool m_isRecent;
- HWND m_hwnd;
- int m_nMax;
- int m_iHistoryCurrent, m_iHistoryTop, m_iHistorySize;
- TWindowData* m_dat;
- TSessionStats* m_stats;
- TInputHistory* m_history;
+ void allocStats();
+ void initPhaseTwo();
+ void allocHistory();
+ void releaseAlloced();
+
+ HANDLE m_hContact;
+ HANDLE m_hSubContact;
+ WORD m_wStatus, m_wMetaStatus;
+ WORD m_wOldStatus;
+ char* m_szProto, *m_szMetaProto;
+ TCHAR* m_tszProto, m_tszMetaProto[40];
+ TCHAR* m_szAccount;
+ TCHAR m_szNick[80], m_szUIN[80];
+ TCHAR* m_szStatusMsg, *m_xStatusMsg, *m_ListeningInfo;
+ BYTE m_xStatus;
+ DWORD m_idleTS;
+ bool m_isMeta, m_isSubcontact;
+ bool m_Valid;
+ bool m_isFavorite;
+ bool m_isRecent;
+ HWND m_hwnd;
+ int m_nMax;
+ int m_iHistoryCurrent, m_iHistoryTop, m_iHistorySize;
+
+ TWindowData *m_dat;
+ TSessionStats *m_stats;
+ TInputHistory *m_history;
};
#endif /* __CONTACTCACHE_H */
|