From a1487b3fc0313408525cd5b2f3bc4a462df351f7 Mon Sep 17 00:00:00 2001 From: Michael Krelin Date: Mon, 05 Jul 2004 01:53:09 +0000 Subject: initial commit into svn repository git-svn-id: http://svn.klever.net/kin/klog/trunk@1 fe716a7a-6dde-0310-88d9-d003556173a8 --- (limited to 'KLogDlg.h') diff --git a/KLogDlg.h b/KLogDlg.h new file mode 100644 index 0000000..f6fed53 --- a/dev/null +++ b/KLogDlg.h @@ -0,0 +1,198 @@ +// KLogDlg.h : header file +// + +///////////////////////////////////////////////////////////////////////////// +// CKLogDlg dialog + +class CKLogDlg; +class CKLogSocket : public CSyslogSocket { +public: + CKLogDlg* m_Daddy; + virtual void Log(UINT pri,UINT fac,LPCTSTR line,SOCKADDR_IN *sin); +}; + +class CHostMask : public CObject{ +public: + virtual void Serialize(CArchive& ar); + DWORD m_Host; + DWORD m_Mask; + BOOL IsThis(DWORD host) { return (host&m_Mask)==(m_Host&m_Mask); } + CHostMask() : m_Host(0), m_Mask(0) {} + CHostMask(DWORD host,DWORD mask) : m_Host(host), m_Mask(mask) {} + CString String(); + + DECLARE_SERIAL( CHostMask ) +}; +class CLogEntry : public CObject { +public: + CLogEntry(CLogEntry& src); + CLogEntry& operator=(CLogEntry& src); + CTime m_Time; + CString m_Source; + CString m_Data; + UINT m_Priority; + UINT m_Facility; + DECLARE_SERIAL( CLogEntry ) +public: + CLogEntry(); +}; + +typedef CTypedPtrList CAccessList; +typedef CList CLog; + +class CLogger : public CObject { +public: + void LookupHost(CKLogDlg *daddy); + void LogLine(CKLogDlg *dad,UINT pri,UINT fac,LPCTSTR line,SOCKADDR_IN *sin); + BOOL IsHostFine(DWORD saddr); + virtual void Serialize(CArchive& ar); + virtual ~CLogger(); + void PlayWave(); + CLogger(BOOL bAll=FALSE); + CString m_Desc; + enum { + logToFile=0, logToHost=1, logToNone=2, + }; + int m_LogTo; + CString m_LogToName; + SOCKADDR_IN m_LogToHost; + BOOL m_LogPattern[CSyslogSocket::totalFacilities][CSyslogSocket::totalPriorities]; + CAccessList m_Hosts; + CString m_Sound; + CLog m_Log; + DECLARE_SERIAL( CLogger ) +}; + +typedef CMap CLoggers; + +class CTrayer; +class CKLogDlg : public CDialog +{ +// Construction +public: + BOOL m_bDontWarn; + BOOL m_bWarnBlocking; + CSyslogSocket m_SLS; + virtual ~CKLogDlg(); + void SaveSettings(); + void LoadSettings(); + BOOL m_bExiting; + BOOL m_bShown; + CTrayer* m_Trayer; + virtual BOOL PreTranslateMessage(MSG* pMsg); + void AddLogLine(CLogEntry *le); + void LogMessage(UINT pri,UINT fac,LPCTSTR line,SOCKADDR_IN *sin); + CKLogSocket m_KLS; + virtual void Serialize(CArchive& ar); + void TotalCleanUp(); + BITMAP m_bitmapBack; + CBitmap m_bmpBack; + void UpdateLogLength(BOOL bSave=TRUE,BOOL update=FALSE); + int m_LogItems; + void UpdateLogto(BOOL bSave=TRUE,BOOL update=TRUE); + void UpdatePriface(BOOL bSave=TRUE,BOOL update=TRUE); + static UINT m_PriorityCtls[CSyslogSocket::totalPriorities]; + CLogger* m_Logger; + void SetTab(CLogger* l); + int m_iTriggered; + int m_iNormal; + CImageList m_Images; + CLoggers m_Logs; + CKLogDlg(CWnd* pParent = NULL); // standard constructor + + DECLARE_SERIAL( CKLogDlg ) + +// Dialog Data + //{{AFX_DATA(CKLogDlg) + enum { IDD = IDD_KLOG_DIALOG }; + CButton m_LogPatternCtl; + CButton m_FilesCtl; + CSpinButtonCtrl m_LogLenSpinCtl; + CStatic m_LogLengthCtl; + CButton m_PriInvertCtl; + CButton m_LogtoFileCtl; + CButton m_LogtoHostCtl; + CButton m_LogtoNoneCtl; + CStatic m_HFNameCaptionCtl; + CListBox m_hlCtl; + CButton m_BrowseSoundCtl; + CButton m_PriNoneCtl; + CButton m_hlRemoveCtl; + CEdit m_hlMaskCtl; + CEdit m_hlIPCtl; + CButton m_hlAddCtl; + CButton m_PriAllCtl; + CComboBox m_SoundCtl; + CButton m_RemoveCtl; + CButton m_PlaySoundCtl; + CListBox m_Log; + CEdit m_HFNameCtl; + CComboBox m_FacilityCtl; + CButton m_BrowseCtl; + CEdit m_DescCtl; + CTabCtrl m_Tabs; + int m_Logto; + CString m_Desc; + CString m_Facility; + CString m_HFName; + CString m_HFNameCaption; + CString m_hlIP; + CString m_hlMask; + CString m_Sound; + //}}AFX_DATA + + // ClassWizard generated virtual function overrides + //{{AFX_VIRTUAL(CKLogDlg) + protected: + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support + //}}AFX_VIRTUAL + +// Implementation +protected: + CToolTipCtrl m_tooltip; + HICON m_hIcon; + + // Generated message map functions + //{{AFX_MSG(CKLogDlg) + virtual BOOL OnInitDialog(); + afx_msg void OnSysCommand(UINT nID, LPARAM lParam); + afx_msg void OnDestroy(); + afx_msg void OnPaint(); + afx_msg HCURSOR OnQueryDragIcon(); + afx_msg void OnAdd(); + afx_msg void OnSelchangeTabs(NMHDR* pNMHDR, LRESULT* pResult); + afx_msg void OnSelchangeFacility(); + afx_msg void OnPriority(); + afx_msg void OnLogto(); + afx_msg void OnPriAll(); + afx_msg void OnPriNone(); + afx_msg void OnChangeDesc(); + afx_msg void OnPriInvert(); + afx_msg void OnHlAdd(); + afx_msg void OnSelchangeHosts(); + afx_msg void OnHlRemove(); + afx_msg void OnRemove(); + afx_msg void OnPlaysound(); + afx_msg void OnEditchangeSound(); + afx_msg void OnKillfocusSound(); + afx_msg void OnDeltaposLoglenspin(NMHDR* pNMHDR, LRESULT* pResult); + afx_msg void OnExit(); + afx_msg void OnFiles(); + afx_msg void OnFilesExport(); + afx_msg void OnFilesImport(); + afx_msg void OnBrowsesound(); + afx_msg void OnKillfocusHostfile(); + virtual void OnOK(); + afx_msg void OnBrowse(); + afx_msg void OnFilesReset(); + afx_msg void OnSelchangeLog(); + afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); + afx_msg void OnClose(); + afx_msg void OnTrayAboutklog(); + afx_msg void OnTrayExit(); + afx_msg void OnTrayShowklogwindow(); + afx_msg void OnWindowPosChanging(WINDOWPOS FAR* lpwndpos); + afx_msg void OnLogpattern(); + //}}AFX_MSG + DECLARE_MESSAGE_MAP() +}; -- cgit v0.9.0.2