示例#1
0
文件: tray.c 项目: pecarter-work/jwm
/** Show all trays. */
void ShowAllTrays(void)
{

   TrayType *tp;

   if(shouldExit) {
      return;
   }

   for(tp = trays; tp; tp = tp->next) {
      ShowTray(tp);
   }

}
示例#2
0
void CTeenSpiritDlg::OnSysCommand(UINT nID, LPARAM lParam)
{
	PrgAPI* pAPI = PRGAPI();
	int nnID = nID & 0xFFF0;
	//static LONG s_normalStyle = 0;
	switch (nnID)
	{
	case IDM_SHOWMINIPLAYER:
		pAPI->GetMiniPlayerDlg(TRUE)->Show();
		break;
	case IDM_ABOUTBOX:
		pAPI->GetActionManager()->ShowAboutDlg(this);
		break;
	case SC_MINIMIZE:
		CDialog::OnSysCommand(nID, lParam);
		if (pAPI->GetOption(OPT_GEN_MinimizeToTray))
		{
			ShowTray();
			ShowWindow(SW_HIDE);
		}
		if (pAPI->GetOption(OPT_MINIPLR_Automatic) == 1)//Automatic
			pAPI->GetMiniPlayerDlg(TRUE)->Show();
		break;
	case SC_MAXIMIZE:
		{
			CRect rc;
			GetWindowRect(&rc);
			MaximizeWindow(rc);
			if (pAPI->GetOption(OPT_MINIPLR_Automatic) == 1)//Automatic
			{
				CMiniPlayerDlg* pMPDlg = pAPI->GetMiniPlayerDlg(FALSE);
				if (pMPDlg != NULL)
					pMPDlg->Hide();
			}
		}
		break;
	case SC_RESTORE:
		{
			DWORD style = GetWindowLong(GetSafeHwnd(), GWL_STYLE);
			if ((style & WS_VISIBLE) == WS_VISIBLE)
			{
				ModifyStyle(0, WS_OVERLAPPEDWINDOW, 0);
				CDialog::OnSysCommand(nID, lParam);
			}
			else
			{
				HideTray();
				WINDOWPLACEMENT wp;
				GetWindowPlacement(&wp);
				if ((wp.flags & WPF_RESTORETOMAXIMIZED) == WPF_RESTORETOMAXIMIZED)
					MaximizeWindow(wp.rcNormalPosition);
				else
					ShowWindow(SW_RESTORE);
				if (pAPI->GetOption(OPT_MINIPLR_Automatic) == 1)//Automatic
				{
					CMiniPlayerDlg* pMPDlg = pAPI->GetMiniPlayerDlg(FALSE);
					if (pMPDlg != NULL)
						pMPDlg->Hide();
				}
			}
			SetForegroundWindow();
			UpdateWindow();
			Invalidate(TRUE);
			if (pAPI->GetOption(OPT_MINIPLR_Automatic) == 1)//Automatic
			{
				CMiniPlayerDlg* pMPDlg = pAPI->GetMiniPlayerDlg(FALSE);
				if (pMPDlg != NULL)
					pMPDlg->Hide();
			}

		}
		break;
	default:
		//if (nID == MENU_ToggleMiniPlayer)
		//	pAPI->GetActionManager()->ShowMiniPlayer(!pAPI->GetActionManager()->IsMiniPlayerVisible());
		//else
			CDialog::OnSysCommand(nID, lParam);
	}
}
示例#3
0
文件: tray.c 项目: Nehamkin/jwm
/** Handle a tray enter notify (for autohide). */
void HandleTrayEnterNotify(TrayType *tp, const XCrossingEvent *event)
{
   ShowTray(tp);
}