86 lines
2.4 KiB
C++
86 lines
2.4 KiB
C++
// MainTray.h : interface of the CMainTray class
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_MainTray_H__C5F08365_270A_4EF7_9ABF_D8AAB5D87788__INCLUDED_)
|
|
#define AFX_MainTrayM_H__C5F08365_270A_4EF7_9ABF_D8AAB5D87788__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include "BCMenu.h"
|
|
|
|
#define WM_TRAY_ICON_NOTIFY_MESSAGE (WM_APP + 1)
|
|
|
|
class CMainTray : public CFrameWnd
|
|
{
|
|
|
|
protected: // create from serialization only
|
|
CMainTray();
|
|
DECLARE_DYNCREATE(CMainTray)
|
|
|
|
private:
|
|
BOOL m_bMinimizeToTray;
|
|
BOOL m_bTrayIconVisible;
|
|
NOTIFYICONDATA m_nidIconData;
|
|
BCMenu m_mnuTrayMenu;
|
|
UINT m_nDefaultMenuItem;
|
|
// Construction
|
|
public:
|
|
void TraySetMinimizeToTray(BOOL bMinimizeToTray = TRUE);
|
|
BOOL TraySetMenu(UINT nResourceID, UINT nToolbarID, UINT nDefaultPos=0);
|
|
BOOL TrayUpdate();
|
|
BOOL TrayShow();
|
|
BOOL TrayHide();
|
|
void TraySetToolTip(LPCTSTR lpszToolTip);
|
|
void TraySetIcon(HICON hIcon);
|
|
void TraySetIcon(UINT nResourceID);
|
|
void TraySetMenuCaption(UINT nID, LPCTSTR sz);
|
|
void TrayShowMainWindow();
|
|
|
|
BOOL TrayIsVisible();
|
|
|
|
void OnTrayLButtonDown(CPoint pt);
|
|
void OnTrayLButtonDblClk(CPoint pt);
|
|
|
|
void OnTrayRButtonDown(CPoint pt);
|
|
void OnTrayRButtonDblClk(CPoint pt);
|
|
|
|
void OnTrayMouseMove(CPoint pt);
|
|
|
|
// Overrides
|
|
// ClassWizard generated virtual function overrides
|
|
//{{AFX_VIRTUAL(CMainTray)
|
|
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
|
|
//}}AFX_VIRTUAL
|
|
|
|
// Implementation
|
|
public:
|
|
virtual ~CMainTray();
|
|
#ifdef _DEBUG
|
|
virtual void AssertValid() const;
|
|
virtual void Dump(CDumpContext& dc) const;
|
|
#endif
|
|
|
|
protected: // control bar embedded members
|
|
|
|
// Generated message map functions
|
|
protected:
|
|
//{{AFX_MSG(CMainTray)
|
|
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
|
|
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
|
|
afx_msg void OnDestroy();
|
|
//}}AFX_MSG
|
|
afx_msg void OnTrayNotify(WPARAM wParam, LPARAM lParam);
|
|
afx_msg void OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct);
|
|
DECLARE_MESSAGE_MAP()
|
|
};
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
//{{AFX_INSERT_LOCATION}}
|
|
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
|
|
|
#endif // !defined(AFX_MainTray_H__C5F08365_270A_4EF7_9ABF_D8AAB5D87788__INCLUDED_)
|