ShowTaskBarIcon.cpp 562 B

1234567891011121314151617181920212223
  1. #include "stdafx.h"
  2. #include "ShowTaskBarIcon.h"
  3. #include "CP_Main.h"
  4. volatile long CShowTaskBarIcon::m_refCount = 0;
  5. CShowTaskBarIcon::CShowTaskBarIcon(void)
  6. {
  7. theApp.m_pMainFrame->m_trayIcon.MaximiseFromTray(theApp.m_pMainFrame);
  8. m_hWnd = theApp.m_pMainFrame->GetSafeHwnd();
  9. ::InterlockedIncrement(&m_refCount);
  10. }
  11. CShowTaskBarIcon::~CShowTaskBarIcon(void)
  12. {
  13. ::InterlockedDecrement(&m_refCount);
  14. if(m_hWnd && ::IsWindow(m_hWnd) && m_refCount == 0)
  15. {
  16. theApp.m_pMainFrame->m_trayIcon.MinimiseToTray(theApp.m_pMainFrame);
  17. }
  18. }