2025-11-27 16:46:48 +09:00

52 lines
1.2 KiB
C++

#include "stdafx.h"
#include "CaptureTaskbarIcon.h"
#include "resource.h" // main symbols
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCaptureTaskbarIcon
BEGIN_MESSAGE_MAP(CCaptureTaskbarIcon, COXTaskbarIcon)
//{{AFX_MSG_MAP(CCaptureTaskbarIcon)
ON_WM_LBUTTONDBLCLK()
ON_WM_RBUTTONDOWN()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
void CCaptureTaskbarIcon::OnRButtonDown(UINT nFlags, CPoint point)
{
UNREFERENCED_PARAMETER(nFlags);
UNREFERENCED_PARAMETER(point);
// on right click show menu
DoPopupMenu();
}
void CCaptureTaskbarIcon::OnLButtonDblClk(UINT nFlags, CPoint point)
{
UNREFERENCED_PARAMETER(nFlags);
UNREFERENCED_PARAMETER(point);
// on double click restore the position of window on screen
::PostMessage(m_pPopupOwner->m_hWnd, WM_COMMAND, ID_OPEN, (LPARAM)m_hWnd);
}
void CCaptureTaskbarIcon::DoPopupMenu()
{
CMenu popMenu;
VERIFY(popMenu.LoadMenu(IDR_POPUPMENU));
CPoint posMouse;
GetCursorPos(&posMouse);
// show menu
popMenu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON,
posMouse.x, posMouse.y, m_pPopupOwner);
}