You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.6 KiB
70 lines
1.6 KiB
// File: history.h
|
|
|
|
#ifndef _HISTORY_H_
|
|
#define _HISTORY_H_
|
|
|
|
#include "calv.h"
|
|
|
|
|
|
// The header for a record in the call log file
|
|
typedef struct _tagLogHdr {
|
|
DWORD dwSize; // size of this entire record
|
|
DWORD dwCLEF; // CallLogEntry Flags (CLEF_*)
|
|
DWORD dwPF; // Participant flags (PF_*)
|
|
DWORD cbName; // size of szName, in bytes, including NULL
|
|
DWORD cbData; // size of rgData, in bytes
|
|
DWORD cbCert; // size of certificate, in bytes
|
|
SYSTEMTIME sysTime; // date/time of record creation
|
|
// WCHAR szName; // null terminated display name (in UNICODE)
|
|
// BYTE ri[]; // Roster Information
|
|
} LOGHDR;
|
|
|
|
|
|
class CHISTORY : public CALV
|
|
{
|
|
private:
|
|
HANDLE m_hFile;
|
|
LPTSTR m_pszFile;
|
|
|
|
int
|
|
Compare
|
|
(
|
|
LPARAM param1,
|
|
LPARAM param2
|
|
);
|
|
static
|
|
int
|
|
CALLBACK
|
|
StaticCompare
|
|
(
|
|
LPARAM param1,
|
|
LPARAM param2,
|
|
LPARAM pThis
|
|
);
|
|
|
|
public:
|
|
CHISTORY();
|
|
~CHISTORY();
|
|
|
|
VOID CmdDelete(void);
|
|
VOID CmdProperties(void);
|
|
|
|
// CALV methods
|
|
VOID ShowItems(HWND hwnd);
|
|
VOID ClearItems(void);
|
|
VOID OnCommand(WPARAM wParam, LPARAM lParam);
|
|
|
|
//
|
|
HANDLE OpenLogFile(VOID);
|
|
BOOL FSetFilePos(DWORD dwOffset);
|
|
BOOL FReadData(PVOID pv, UINT cb);
|
|
HRESULT ReadEntry(DWORD dwOffset, LOGHDR * pLogHdr, LPTSTR * ppszName, LPTSTR * ppszAddress);
|
|
VOID LoadFileData(HWND hwnd);
|
|
HRESULT WriteData(LPDWORD pdwOffset, PVOID pv, DWORD cb);
|
|
HRESULT DeleteEntry(DWORD dwOffset);
|
|
|
|
UINT GetStatusString(DWORD dwCLEF);
|
|
};
|
|
|
|
#endif /* _HISTORY_H_ */
|
|
|