ReactOS 0.4.16-dev-319-g6cf4263
traydeskbtn.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Explorer
3 * LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
4 * PURPOSE: Show Desktop tray button header file
5 * COPYRIGHT: Copyright 2006-2007 Thomas Weidenmueller <w3seek@reactos.org>
6 * Copyright 2018-2022 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
7 * Copyright 2023 Ethan Rodensky <splitwirez@gmail.com>
8 */
9
10#pragma once
11
12// This window class name is CONFIRMED on Win10 by WinHier.
13static const WCHAR szTrayShowDesktopButton[] = L"TrayShowDesktopButtonWClass";
14#define TSDB_CLICK (WM_USER + 100)
15
16// The 'Show Desktop' button at the end of the taskbar
18 public CWindowImpl<CTrayShowDesktopButton, CWindow, CControlWinTraits>
19{
32
33public:
36
38
45 MESSAGE_HANDLER(WM_THEMECHANGED, OnThemeChanged)
54
58 VOID Click();
63
64private:
65 // This function is called from OnPaint and parent.
67 LRESULT OnClick(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
71 VOID EnsureWindowTheme(BOOL setTheme);
72 LRESULT OnPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
75 LRESULT OnTimer(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
77};
LRESULT OnLButtonUp(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
VOID EnsureWindowTheme(BOOL setTheme)
LRESULT OnClick(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnWindowPosChanged(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnLButtonDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
BOOL PtInButton(LPPOINT pt) const
HRESULT DoCreate(HWND hwndParent)
Definition: traydeskbtn.cpp:62
LRESULT OnTimer(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnMouseMove(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnPrintClient(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
BOOL m_drawWithDedicatedBackground
Definition: traydeskbtn.h:28
VOID OnDraw(HDC hdc, LPRECT prc)
LRESULT OnThemeChanged(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnSettingChanged(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
INT WidthOrHeight() const
Definition: traydeskbtn.cpp:33
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
static HWND hwndParent
Definition: cryptui.c:300
#define pt(x, y)
Definition: drawing.c:79
unsigned int BOOL
Definition: ntddk_ex.h:94
#define MESSAGE_HANDLER(msg, func)
Definition: atlwin.h:1926
#define BEGIN_MSG_MAP(theClass)
Definition: atlwin.h:1898
#define END_MSG_MAP()
Definition: atlwin.h:1917
#define DECLARE_WND_CLASS_EX(WndClassName, style, bkgnd)
Definition: atlwin.h:2004
HDC hdc
Definition: main.c:9
static HDC
Definition: imagelist.c:88
static HICON
Definition: imagelist.c:80
static HTHEME(WINAPI *pOpenThemeDataEx)(HWND
unsigned int UINT
Definition: ndis.h:50
_Out_ LPRECT prc
Definition: ntgdi.h:1658
#define L(x)
Definition: ntvdm.h:50
long LONG
Definition: pedump.c:60
#define WM_PRINTCLIENT
Definition: richedit.h:70
Definition: misc.c:279
#define TSDB_CLICK
Definition: traydeskbtn.h:14
static const WCHAR szTrayShowDesktopButton[]
Definition: traydeskbtn.h:13
int32_t INT
Definition: typedefs.h:58
LONG_PTR LPARAM
Definition: windef.h:208
LONG_PTR LRESULT
Definition: windef.h:209
UINT_PTR WPARAM
Definition: windef.h:207
#define WM_PAINT
Definition: winuser.h:1623
#define CS_VREDRAW
Definition: winuser.h:658
#define CS_HREDRAW
Definition: winuser.h:653
#define WM_MOUSEMOVE
Definition: winuser.h:1778
#define WM_LBUTTONDOWN
Definition: winuser.h:1779
#define WM_SETTINGCHANGE
Definition: winuser.h:1632
#define WM_TIMER
Definition: winuser.h:1745
#define WM_LBUTTONUP
Definition: winuser.h:1780
#define WM_NCLBUTTONUP
Definition: winuser.h:1696
#define WM_DESTROY
Definition: winuser.h:1612
#define WM_WINDOWPOSCHANGED
Definition: winuser.h:1665
#define WM_NCLBUTTONDOWN
Definition: winuser.h:1695
#define COLOR_3DFACE
Definition: winuser.h:932
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define const
Definition: zconf.h:233