diff --git a/appshell.exe.manifest b/appshell.exe.manifest index d36f084b6..979226c1b 100644 --- a/appshell.exe.manifest +++ b/appshell.exe.manifest @@ -1,5 +1,5 @@ - + @@ -17,4 +17,10 @@ + + + true + + + diff --git a/appshell/cef_dark_window.cpp b/appshell/cef_dark_window.cpp index d406294f1..8779bc3be 100644 --- a/appshell/cef_dark_window.cpp +++ b/appshell/cef_dark_window.cpp @@ -30,6 +30,46 @@ #define OS_WIN #include "config.h" +//win HiDPI - Macro for loading button resources for scale factors start +#define BUTTON_RESOURCES(scale)\ + if (mSysCloseButton == NULL) {\ + mSysCloseButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_CLOSE_BUTTON_ ## scale));\ + }\ + if (mSysMaximizeButton == NULL) {\ + mSysMaximizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MAX_BUTTON_ ## scale));\ + }\ + if (mSysMinimizeButton == NULL) {\ + mSysMinimizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MIN_BUTTON_ ## scale));\ + }\ + if (mSysRestoreButton == NULL) {\ + mSysRestoreButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_RESTORE_BUTTON_ ## scale));\ + }\ + if (mHoverSysCloseButton == NULL) {\ + mHoverSysCloseButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_CLOSE_HOVER_BUTTON_ ## scale));\ + }\ + if (mHoverSysRestoreButton == NULL) {\ + mHoverSysRestoreButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_RESTORE_HOVER_BUTTON_ ## scale));\ + }\ + if (mHoverSysMinimizeButton == NULL) {\ + mHoverSysMinimizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MIN_HOVER_BUTTON_ ## scale));\ + }\ + if (mHoverSysMaximizeButton == NULL) {\ + mHoverSysMaximizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MAX_HOVER_BUTTON_ ## scale));\ + }\ + if (mPressedSysCloseButton == NULL) {\ + mPressedSysCloseButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_CLOSE_PRESSED_BUTTON_ ## scale));\ + }\ + if (mPressedSysRestoreButton == NULL) {\ + mPressedSysRestoreButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_RESTORE_PRESSED_BUTTON_ ## scale));\ + }\ + if (mPressedSysMinimizeButton == NULL) {\ + mPressedSysMinimizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MIN_PRESSED_BUTTON_ ## scale));\ + }\ + if (mPressedSysMaximizeButton == NULL) {\ + mPressedSysMaximizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MAX_PRESSED_BUTTON_ ## scale));\ + } +//Macro for loading button resources end + // Libraries #pragma comment(lib, "gdiplus") #pragma comment(lib, "UxTheme") @@ -190,41 +230,27 @@ void cef_dark_window::InitMenuFont() */ void cef_dark_window::LoadSysButtonImages() { - if (mSysCloseButton == NULL) { - mSysCloseButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_CLOSE_BUTTON)); - } - if (mSysMaximizeButton == NULL) { - mSysMaximizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MAX_BUTTON)); - } - if (mSysMinimizeButton == NULL) { - mSysMinimizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MIN_BUTTON)); - } - if (mSysRestoreButton == NULL) { - mSysRestoreButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_RESTORE_BUTTON)); - } - if (mHoverSysCloseButton == NULL) { - mHoverSysCloseButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_CLOSE_HOVER_BUTTON)); - } - if (mHoverSysRestoreButton == NULL) { - mHoverSysRestoreButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_RESTORE_HOVER_BUTTON)); - } - if (mHoverSysMinimizeButton == NULL) { - mHoverSysMinimizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MIN_HOVER_BUTTON)); - } - if (mHoverSysMaximizeButton == NULL) { - mHoverSysMaximizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MAX_HOVER_BUTTON)); + UINT scaleFactor = GetDPIScalingX(); + + if(scaleFactor>=250) + { + BUTTON_RESOURCES(2_5X) } - if (mPressedSysCloseButton == NULL) { - mPressedSysCloseButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_CLOSE_PRESSED_BUTTON)); + else if(scaleFactor>=200) + { + BUTTON_RESOURCES(2X) } - if (mPressedSysRestoreButton == NULL) { - mPressedSysRestoreButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_RESTORE_PRESSED_BUTTON)); + else if(scaleFactor>=150) + { + BUTTON_RESOURCES(1_5X) } - if (mPressedSysMinimizeButton == NULL) { - mPressedSysMinimizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MIN_PRESSED_BUTTON)); + else if(scaleFactor>=125) + { + BUTTON_RESOURCES(1_25X) } - if (mPressedSysMaximizeButton == NULL) { - mPressedSysMaximizeButton = ResourceImage::FromResource(MAKEINTRESOURCE(IDB_MAX_PRESSED_BUTTON)); + else + { + BUTTON_RESOURCES(1X) } } diff --git a/appshell/cef_window.cpp b/appshell/cef_window.cpp index 41db38be0..88139d748 100644 --- a/appshell/cef_window.cpp +++ b/appshell/cef_window.cpp @@ -21,6 +21,10 @@ */ #include "cef_window.h" +//DEFINES +//HiDPI The default logical DPI when scaling is applied in windows. see. https://msdn.microsoft.com/en-us/library/ms701681(v=vs.85).aspx +#define DEFAULT_WINDOWS_DPI 96 + // Externals extern HINSTANCE hInst; @@ -347,3 +351,13 @@ BOOL cef_window::TrackNonClientMouseEvents(bool track/*=true*/) return ::TrackMouseEvent (&tme); } + +//Get the Horizontal DPI scaling factor. +UINT cef_window::GetDPIScalingX() const +{ + HDC dc = GetDC(); + float lpx = dc ? GetDeviceCaps(dc,LOGPIXELSX):DEFAULT_WINDOWS_DPI ; + //scale factor as it would look in a default(96dpi) screen. the default will be always 96 logical DPI when scaling is applied in windows. + //see. https://msdn.microsoft.com/en-us/library/ms701681(v=vs.85).aspx + return (lpx/DEFAULT_WINDOWS_DPI)*100; +} \ No newline at end of file diff --git a/appshell/cef_window.h b/appshell/cef_window.h index 2d71970de..cf6f3a9e8 100644 --- a/appshell/cef_window.h +++ b/appshell/cef_window.h @@ -74,6 +74,7 @@ static __inline int RectHeight(const RECT &rIn) #define DCX_USESTYLE 0x00010000 #endif + // cef_window is a basic HWND wrapper // that can be used to wrap any HWND class cef_window @@ -169,7 +170,7 @@ class cef_window HDC GetWindowDC() { return ::GetWindowDC(mWnd); } - HDC GetDC() + HDC GetDC() const { return ::GetDC(mWnd); } int ReleaseDC(HDC dc) @@ -229,6 +230,8 @@ class cef_window HWND GetWindow(UINT uCmd) { return ::GetWindow(mWnd, uCmd); } + UINT GetDPIScalingX() const; + protected: // Attributes - Protected Members HWND mWnd; diff --git a/appshell/cefclient.rc b/appshell/cefclient.rc index f59eae034..70c3d19d2 100644 --- a/appshell/cefclient.rc +++ b/appshell/cefclient.rc @@ -46,19 +46,70 @@ IDI_CEFCLIENT ICON "res\\appshell.ico" // // PNG // -IDB_CLOSE_BUTTON PNG "res\\close.png" -IDB_CLOSE_HOVER_BUTTON PNG "res\\close-hover.png" -IDB_CLOSE_PRESSED_BUTTON PNG "res\\close-pressed.png" -IDB_MAX_BUTTON PNG "res\\max.png" -IDB_MAX_HOVER_BUTTON PNG "res\\max-hover.png" -IDB_MAX_PRESSED_BUTTON PNG "res\\max-pressed.png" -IDB_MIN_BUTTON PNG "res\\min.png" -IDB_MIN_HOVER_BUTTON PNG "res\\min-hover.png" -IDB_MIN_PRESSED_BUTTON PNG "res\\min-pressed.png" -IDB_RESTORE_BUTTON PNG "res\\restore.png" -IDB_RESTORE_HOVER_BUTTON PNG "res\\restore-hover.png" -IDB_RESTORE_PRESSED_BUTTON PNG "res\\restore-pressed.png" - +IDB_CLOSE_BUTTON_1X PNG "res\\close.png" +IDB_CLOSE_HOVER_BUTTON_1X PNG "res\\close-hover.png" +IDB_CLOSE_PRESSED_BUTTON_1X PNG "res\\close-pressed.png" +IDB_MAX_BUTTON_1X PNG "res\\max.png" +IDB_MAX_HOVER_BUTTON_1X PNG "res\\max-hover.png" +IDB_MAX_PRESSED_BUTTON_1X PNG "res\\max-pressed.png" +IDB_MIN_BUTTON_1X PNG "res\\min.png" +IDB_MIN_HOVER_BUTTON_1X PNG "res\\min-hover.png" +IDB_MIN_PRESSED_BUTTON_1X PNG "res\\min-pressed.png" +IDB_RESTORE_BUTTON_1X PNG "res\\restore.png" +IDB_RESTORE_HOVER_BUTTON_1X PNG "res\\restore-hover.png" +IDB_RESTORE_PRESSED_BUTTON_1X PNG "res\\restore-pressed.png" + +IDB_CLOSE_BUTTON_1_25X PNG "res\\1.25x\\close.png" +IDB_CLOSE_HOVER_BUTTON_1_25X PNG "res\\1.25x\\close-hover.png" +IDB_CLOSE_PRESSED_BUTTON_1_25X PNG "res\\1.25x\\close-pressed.png" +IDB_MAX_BUTTON_1_25X PNG "res\\1.25x\\max.png" +IDB_MAX_HOVER_BUTTON_1_25X PNG "res\\1.25x\\max-hover.png" +IDB_MAX_PRESSED_BUTTON_1_25X PNG "res\\1.25x\\max-pressed.png" +IDB_MIN_BUTTON_1_25X PNG "res\\1.25x\\min.png" +IDB_MIN_HOVER_BUTTON_1_25X PNG "res\\1.25x\\min-hover.png" +IDB_MIN_PRESSED_BUTTON_1_25X PNG "res\\1.25x\\min-pressed.png" +IDB_RESTORE_BUTTON_1_25X PNG "res\\1.25x\\restore.png" +IDB_RESTORE_HOVER_BUTTON_1_25X PNG "res\\1.25x\\restore-hover.png" +IDB_RESTORE_PRESSED_BUTTON_1_25X PNG "res\\1.25x\\restore-pressed.png" + +IDB_CLOSE_BUTTON_1_5X PNG "res\\1.5x\\close.png" +IDB_CLOSE_HOVER_BUTTON_1_5X PNG "res\\1.5x\\close-hover.png" +IDB_CLOSE_PRESSED_BUTTON_1_5X PNG "res\\1.5x\\close-pressed.png" +IDB_MAX_BUTTON_1_5X PNG "res\\1.5x\\max.png" +IDB_MAX_HOVER_BUTTON_1_5X PNG "res\\1.5x\\max-hover.png" +IDB_MAX_PRESSED_BUTTON_1_5X PNG "res\\1.5x\\max-pressed.png" +IDB_MIN_BUTTON_1_5X PNG "res\\1.5x\\min.png" +IDB_MIN_HOVER_BUTTON_1_5X PNG "res\\1.5x\\min-hover.png" +IDB_MIN_PRESSED_BUTTON_1_5X PNG "res\\1.5x\\min-pressed.png" +IDB_RESTORE_BUTTON_1_5X PNG "res\\1.5x\\restore.png" +IDB_RESTORE_HOVER_BUTTON_1_5X PNG "res\\1.5x\\restore-hover.png" +IDB_RESTORE_PRESSED_BUTTON_1_5X PNG "res\\1.5x\\restore-pressed.png" + +IDB_CLOSE_BUTTON_2X PNG "res\\2x\\close.png" +IDB_CLOSE_HOVER_BUTTON_2X PNG "res\\2x\\close-hover.png" +IDB_CLOSE_PRESSED_BUTTON_2X PNG "res\\2x\\close-pressed.png" +IDB_MAX_BUTTON_2X PNG "res\\2x\\max.png" +IDB_MAX_HOVER_BUTTON_2X PNG "res\\2x\\max-hover.png" +IDB_MAX_PRESSED_BUTTON_2X PNG "res\\2x\\max-pressed.png" +IDB_MIN_BUTTON_2X PNG "res\\2x\\min.png" +IDB_MIN_HOVER_BUTTON_2X PNG "res\\2x\\min-hover.png" +IDB_MIN_PRESSED_BUTTON_2X PNG "res\\2x\\min-pressed.png" +IDB_RESTORE_BUTTON_2X PNG "res\\2x\\restore.png" +IDB_RESTORE_HOVER_BUTTON_2X PNG "res\\2x\\restore-hover.png" +IDB_RESTORE_PRESSED_BUTTON_2X PNG "res\\2x\\restore-pressed.png" + +IDB_CLOSE_BUTTON_2_5X PNG "res\\2.5x\\close.png" +IDB_CLOSE_HOVER_BUTTON_2_5X PNG "res\\2.5x\\close-hover.png" +IDB_CLOSE_PRESSED_BUTTON_2_5X PNG "res\\2.5x\\close-pressed.png" +IDB_MAX_BUTTON_2_5X PNG "res\\2.5x\\max.png" +IDB_MAX_HOVER_BUTTON_2_5X PNG "res\\2.5x\\max-hover.png" +IDB_MAX_PRESSED_BUTTON_2_5X PNG "res\\2.5x\\max-pressed.png" +IDB_MIN_BUTTON_2_5X PNG "res\\2.5x\\min.png" +IDB_MIN_HOVER_BUTTON_2_5X PNG "res\\2.5x\\min-hover.png" +IDB_MIN_PRESSED_BUTTON_2_5X PNG "res\\2.5x\\min-pressed.png" +IDB_RESTORE_BUTTON_2_5X PNG "res\\2.5x\\restore.png" +IDB_RESTORE_HOVER_BUTTON_2_5X PNG "res\\2.5x\\restore-hover.png" +IDB_RESTORE_PRESSED_BUTTON_2_5X PNG "res\\2.5x\\restore-pressed.png" #ifdef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// diff --git a/appshell/res/1.25x/close-hover.png b/appshell/res/1.25x/close-hover.png new file mode 100644 index 000000000..c66293a10 Binary files /dev/null and b/appshell/res/1.25x/close-hover.png differ diff --git a/appshell/res/1.25x/close-pressed.png b/appshell/res/1.25x/close-pressed.png new file mode 100644 index 000000000..e75b50ece Binary files /dev/null and b/appshell/res/1.25x/close-pressed.png differ diff --git a/appshell/res/1.25x/close.png b/appshell/res/1.25x/close.png new file mode 100644 index 000000000..b7fe2f180 Binary files /dev/null and b/appshell/res/1.25x/close.png differ diff --git a/appshell/res/1.25x/max-hover.png b/appshell/res/1.25x/max-hover.png new file mode 100644 index 000000000..747105523 Binary files /dev/null and b/appshell/res/1.25x/max-hover.png differ diff --git a/appshell/res/1.25x/max-pressed.png b/appshell/res/1.25x/max-pressed.png new file mode 100644 index 000000000..6dd38963e Binary files /dev/null and b/appshell/res/1.25x/max-pressed.png differ diff --git a/appshell/res/1.25x/max.png b/appshell/res/1.25x/max.png new file mode 100644 index 000000000..f641868e0 Binary files /dev/null and b/appshell/res/1.25x/max.png differ diff --git a/appshell/res/1.25x/min-hover.png b/appshell/res/1.25x/min-hover.png new file mode 100644 index 000000000..9fbcb31e7 Binary files /dev/null and b/appshell/res/1.25x/min-hover.png differ diff --git a/appshell/res/1.25x/min-pressed.png b/appshell/res/1.25x/min-pressed.png new file mode 100644 index 000000000..f1f84b05c Binary files /dev/null and b/appshell/res/1.25x/min-pressed.png differ diff --git a/appshell/res/1.25x/min.png b/appshell/res/1.25x/min.png new file mode 100644 index 000000000..c19f50912 Binary files /dev/null and b/appshell/res/1.25x/min.png differ diff --git a/appshell/res/1.25x/restore-hover.png b/appshell/res/1.25x/restore-hover.png new file mode 100644 index 000000000..7b9d9b1bf Binary files /dev/null and b/appshell/res/1.25x/restore-hover.png differ diff --git a/appshell/res/1.25x/restore-pressed.png b/appshell/res/1.25x/restore-pressed.png new file mode 100644 index 000000000..3a437c1fd Binary files /dev/null and b/appshell/res/1.25x/restore-pressed.png differ diff --git a/appshell/res/1.25x/restore.png b/appshell/res/1.25x/restore.png new file mode 100644 index 000000000..f67fff789 Binary files /dev/null and b/appshell/res/1.25x/restore.png differ diff --git a/appshell/res/1.5x/close-hover.png b/appshell/res/1.5x/close-hover.png new file mode 100644 index 000000000..01dc4e8de Binary files /dev/null and b/appshell/res/1.5x/close-hover.png differ diff --git a/appshell/res/1.5x/close-pressed.png b/appshell/res/1.5x/close-pressed.png new file mode 100644 index 000000000..7d4e877f8 Binary files /dev/null and b/appshell/res/1.5x/close-pressed.png differ diff --git a/appshell/res/1.5x/close.png b/appshell/res/1.5x/close.png new file mode 100644 index 000000000..106a6edae Binary files /dev/null and b/appshell/res/1.5x/close.png differ diff --git a/appshell/res/1.5x/max-hover.png b/appshell/res/1.5x/max-hover.png new file mode 100644 index 000000000..39d58c6ff Binary files /dev/null and b/appshell/res/1.5x/max-hover.png differ diff --git a/appshell/res/1.5x/max-pressed.png b/appshell/res/1.5x/max-pressed.png new file mode 100644 index 000000000..b940e88dc Binary files /dev/null and b/appshell/res/1.5x/max-pressed.png differ diff --git a/appshell/res/1.5x/max.png b/appshell/res/1.5x/max.png new file mode 100644 index 000000000..4bfa5895e Binary files /dev/null and b/appshell/res/1.5x/max.png differ diff --git a/appshell/res/1.5x/min-hover.png b/appshell/res/1.5x/min-hover.png new file mode 100644 index 000000000..8539b52b0 Binary files /dev/null and b/appshell/res/1.5x/min-hover.png differ diff --git a/appshell/res/1.5x/min-pressed.png b/appshell/res/1.5x/min-pressed.png new file mode 100644 index 000000000..cd39b837d Binary files /dev/null and b/appshell/res/1.5x/min-pressed.png differ diff --git a/appshell/res/1.5x/min.png b/appshell/res/1.5x/min.png new file mode 100644 index 000000000..39761b7ac Binary files /dev/null and b/appshell/res/1.5x/min.png differ diff --git a/appshell/res/1.5x/restore-hover.png b/appshell/res/1.5x/restore-hover.png new file mode 100644 index 000000000..5268725ea Binary files /dev/null and b/appshell/res/1.5x/restore-hover.png differ diff --git a/appshell/res/1.5x/restore-pressed.png b/appshell/res/1.5x/restore-pressed.png new file mode 100644 index 000000000..d64254710 Binary files /dev/null and b/appshell/res/1.5x/restore-pressed.png differ diff --git a/appshell/res/1.5x/restore.png b/appshell/res/1.5x/restore.png new file mode 100644 index 000000000..5561ac01d Binary files /dev/null and b/appshell/res/1.5x/restore.png differ diff --git a/appshell/res/2.5x/close-hover.png b/appshell/res/2.5x/close-hover.png new file mode 100644 index 000000000..acbc76740 Binary files /dev/null and b/appshell/res/2.5x/close-hover.png differ diff --git a/appshell/res/2.5x/close-pressed.png b/appshell/res/2.5x/close-pressed.png new file mode 100644 index 000000000..607b853b8 Binary files /dev/null and b/appshell/res/2.5x/close-pressed.png differ diff --git a/appshell/res/2.5x/close.png b/appshell/res/2.5x/close.png new file mode 100644 index 000000000..f1a3790ef Binary files /dev/null and b/appshell/res/2.5x/close.png differ diff --git a/appshell/res/2.5x/max-hover.png b/appshell/res/2.5x/max-hover.png new file mode 100644 index 000000000..d999cdd02 Binary files /dev/null and b/appshell/res/2.5x/max-hover.png differ diff --git a/appshell/res/2.5x/max-pressed.png b/appshell/res/2.5x/max-pressed.png new file mode 100644 index 000000000..b1647aa50 Binary files /dev/null and b/appshell/res/2.5x/max-pressed.png differ diff --git a/appshell/res/2.5x/max.png b/appshell/res/2.5x/max.png new file mode 100644 index 000000000..b5688b406 Binary files /dev/null and b/appshell/res/2.5x/max.png differ diff --git a/appshell/res/2.5x/min-hover.png b/appshell/res/2.5x/min-hover.png new file mode 100644 index 000000000..312d1ab9f Binary files /dev/null and b/appshell/res/2.5x/min-hover.png differ diff --git a/appshell/res/2.5x/min-pressed.png b/appshell/res/2.5x/min-pressed.png new file mode 100644 index 000000000..f5671553c Binary files /dev/null and b/appshell/res/2.5x/min-pressed.png differ diff --git a/appshell/res/2.5x/min.png b/appshell/res/2.5x/min.png new file mode 100644 index 000000000..89e6de854 Binary files /dev/null and b/appshell/res/2.5x/min.png differ diff --git a/appshell/res/2.5x/restore-hover.png b/appshell/res/2.5x/restore-hover.png new file mode 100644 index 000000000..372f38f2b Binary files /dev/null and b/appshell/res/2.5x/restore-hover.png differ diff --git a/appshell/res/2.5x/restore-pressed.png b/appshell/res/2.5x/restore-pressed.png new file mode 100644 index 000000000..6fdb82734 Binary files /dev/null and b/appshell/res/2.5x/restore-pressed.png differ diff --git a/appshell/res/2.5x/restore.png b/appshell/res/2.5x/restore.png new file mode 100644 index 000000000..cb8d83b8b Binary files /dev/null and b/appshell/res/2.5x/restore.png differ diff --git a/appshell/res/2x/close-hover.png b/appshell/res/2x/close-hover.png new file mode 100644 index 000000000..05c2a9ef0 Binary files /dev/null and b/appshell/res/2x/close-hover.png differ diff --git a/appshell/res/2x/close-pressed.png b/appshell/res/2x/close-pressed.png new file mode 100644 index 000000000..b1b167c4e Binary files /dev/null and b/appshell/res/2x/close-pressed.png differ diff --git a/appshell/res/2x/close.png b/appshell/res/2x/close.png new file mode 100644 index 000000000..f46c7d66e Binary files /dev/null and b/appshell/res/2x/close.png differ diff --git a/appshell/res/2x/max-hover.png b/appshell/res/2x/max-hover.png new file mode 100644 index 000000000..4e1a32bb9 Binary files /dev/null and b/appshell/res/2x/max-hover.png differ diff --git a/appshell/res/2x/max-pressed.png b/appshell/res/2x/max-pressed.png new file mode 100644 index 000000000..f0b907d93 Binary files /dev/null and b/appshell/res/2x/max-pressed.png differ diff --git a/appshell/res/2x/max.png b/appshell/res/2x/max.png new file mode 100644 index 000000000..21951cd9a Binary files /dev/null and b/appshell/res/2x/max.png differ diff --git a/appshell/res/2x/min-hover.png b/appshell/res/2x/min-hover.png new file mode 100644 index 000000000..6d5c335f2 Binary files /dev/null and b/appshell/res/2x/min-hover.png differ diff --git a/appshell/res/2x/min-pressed.png b/appshell/res/2x/min-pressed.png new file mode 100644 index 000000000..f800c5a74 Binary files /dev/null and b/appshell/res/2x/min-pressed.png differ diff --git a/appshell/res/2x/min.png b/appshell/res/2x/min.png new file mode 100644 index 000000000..a0660ee97 Binary files /dev/null and b/appshell/res/2x/min.png differ diff --git a/appshell/res/2x/restore-hover.png b/appshell/res/2x/restore-hover.png new file mode 100644 index 000000000..10757ee14 Binary files /dev/null and b/appshell/res/2x/restore-hover.png differ diff --git a/appshell/res/2x/restore-pressed.png b/appshell/res/2x/restore-pressed.png new file mode 100644 index 000000000..bd1299331 Binary files /dev/null and b/appshell/res/2x/restore-pressed.png differ diff --git a/appshell/res/2x/restore.png b/appshell/res/2x/restore.png new file mode 100644 index 000000000..ec6976153 Binary files /dev/null and b/appshell/res/2x/restore.png differ diff --git a/appshell/res/close-hover.png b/appshell/res/close-hover.png index 531b4f93b..4768a3638 100644 Binary files a/appshell/res/close-hover.png and b/appshell/res/close-hover.png differ diff --git a/appshell/res/max.png b/appshell/res/max.png index a5d8d5c6a..bf79d1c37 100644 Binary files a/appshell/res/max.png and b/appshell/res/max.png differ diff --git a/appshell/resource.h b/appshell/resource.h index 3ca08166a..fddad4ac7 100644 --- a/appshell/resource.h +++ b/appshell/resource.h @@ -25,18 +25,70 @@ #define IDC_NAV_RELOAD 202 #define IDC_NAV_STOP 203 -#define IDB_CLOSE_BUTTON 300 -#define IDB_CLOSE_HOVER_BUTTON 301 -#define IDB_CLOSE_PRESSED_BUTTON 302 -#define IDB_MAX_BUTTON 303 -#define IDB_MAX_HOVER_BUTTON 304 -#define IDB_MAX_PRESSED_BUTTON 305 -#define IDB_MIN_BUTTON 306 -#define IDB_MIN_HOVER_BUTTON 307 -#define IDB_MIN_PRESSED_BUTTON 308 -#define IDB_RESTORE_BUTTON 309 -#define IDB_RESTORE_HOVER_BUTTON 310 -#define IDB_RESTORE_PRESSED_BUTTON 311 +#define IDB_CLOSE_BUTTON_1X 300 +#define IDB_CLOSE_HOVER_BUTTON_1X 301 +#define IDB_CLOSE_PRESSED_BUTTON_1X 302 +#define IDB_MAX_BUTTON_1X 303 +#define IDB_MAX_HOVER_BUTTON_1X 304 +#define IDB_MAX_PRESSED_BUTTON_1X 305 +#define IDB_MIN_BUTTON_1X 306 +#define IDB_MIN_HOVER_BUTTON_1X 307 +#define IDB_MIN_PRESSED_BUTTON_1X 308 +#define IDB_RESTORE_BUTTON_1X 309 +#define IDB_RESTORE_HOVER_BUTTON_1X 310 +#define IDB_RESTORE_PRESSED_BUTTON_1X 311 + +#define IDB_CLOSE_BUTTON_1_25X 312 +#define IDB_CLOSE_HOVER_BUTTON_1_25X 313 +#define IDB_CLOSE_PRESSED_BUTTON_1_25X 314 +#define IDB_MAX_BUTTON_1_25X 315 +#define IDB_MAX_HOVER_BUTTON_1_25X 316 +#define IDB_MAX_PRESSED_BUTTON_1_25X 317 +#define IDB_MIN_BUTTON_1_25X 318 +#define IDB_MIN_HOVER_BUTTON_1_25X 319 +#define IDB_MIN_PRESSED_BUTTON_1_25X 320 +#define IDB_RESTORE_BUTTON_1_25X 321 +#define IDB_RESTORE_HOVER_BUTTON_1_25X 322 +#define IDB_RESTORE_PRESSED_BUTTON_1_25X 323 + +#define IDB_CLOSE_BUTTON_1_5X 324 +#define IDB_CLOSE_HOVER_BUTTON_1_5X 325 +#define IDB_CLOSE_PRESSED_BUTTON_1_5X 326 +#define IDB_MAX_BUTTON_1_5X 327 +#define IDB_MAX_HOVER_BUTTON_1_5X 328 +#define IDB_MAX_PRESSED_BUTTON_1_5X 329 +#define IDB_MIN_BUTTON_1_5X 330 +#define IDB_MIN_HOVER_BUTTON_1_5X 331 +#define IDB_MIN_PRESSED_BUTTON_1_5X 332 +#define IDB_RESTORE_BUTTON_1_5X 333 +#define IDB_RESTORE_HOVER_BUTTON_1_5X 334 +#define IDB_RESTORE_PRESSED_BUTTON_1_5X 335 + +#define IDB_CLOSE_BUTTON_2X 336 +#define IDB_CLOSE_HOVER_BUTTON_2X 337 +#define IDB_CLOSE_PRESSED_BUTTON_2X 338 +#define IDB_MAX_BUTTON_2X 339 +#define IDB_MAX_PRESSED_BUTTON_2X 340 +#define IDB_MIN_BUTTON_2X 341 +#define IDB_MIN_HOVER_BUTTON_2X 342 +#define IDB_MIN_PRESSED_BUTTON_2X 343 +#define IDB_RESTORE_BUTTON_2X 344 +#define IDB_RESTORE_HOVER_BUTTON_2X 345 +#define IDB_RESTORE_PRESSED_BUTTON_2X 346 +#define IDB_MAX_HOVER_BUTTON_2X 347 + +#define IDB_CLOSE_BUTTON_2_5X 348 +#define IDB_CLOSE_HOVER_BUTTON_2_5X 349 +#define IDB_CLOSE_PRESSED_BUTTON_2_5X 350 +#define IDB_MAX_BUTTON_2_5X 351 +#define IDB_MAX_HOVER_BUTTON_2_5X 352 +#define IDB_MAX_PRESSED_BUTTON_2_5X 353 +#define IDB_MIN_BUTTON_2_5X 354 +#define IDB_MIN_HOVER_BUTTON_2_5X 355 +#define IDB_MIN_PRESSED_BUTTON_2_5X 356 +#define IDB_RESTORE_BUTTON_2_5X 357 +#define IDB_RESTORE_HOVER_BUTTON_2_5X 358 +#define IDB_RESTORE_PRESSED_BUTTON_2_5X 359 #define IDS_BINDING 1000 #define IDS_DIALOGS 1001