71 lines
1.5 KiB
C
71 lines
1.5 KiB
C
|
// 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_ */
|
||
|
|