BGGradient & minize solution

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@2258 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2003-03-09 19:49:19 +00:00
parent d92a0d06f6
commit de557f6037
4 changed files with 25 additions and 7 deletions

View file

@ -226,7 +226,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInst,LPSTR lpszCmdParam,
hwnd=CreateDialogParam( hwnd=CreateDialogParam(
g_hInstance, g_hInstance,
MAKEINTRESOURCE(IDD_VERIFY), MAKEINTRESOURCE(IDD_VERIFY),
GetDesktopWindow(), 0,
verProc, verProc,
(LPARAM)_LANG_VERIFYINGINST (LPARAM)_LANG_VERIFYINGINST
); );

View file

@ -370,7 +370,7 @@ int NSISCALL ui_doinstall(void)
#endif//NSIS_CONFIG_SILENT_SUPPORT #endif//NSIS_CONFIG_SILENT_SUPPORT
{ {
g_hIcon=LoadImage(g_hInstance,MAKEINTRESOURCE(IDI_ICON2),IMAGE_ICON,0,0,LR_DEFAULTSIZE|LR_SHARED); g_hIcon=LoadImage(g_hInstance,MAKEINTRESOURCE(IDI_ICON2),IMAGE_ICON,0,0,LR_DEFAULTSIZE|LR_SHARED);
m_bgwnd=GetDesktopWindow(); m_bgwnd=0;
#ifdef NSIS_SUPPORT_BGBG #ifdef NSIS_SUPPORT_BGBG
if (g_inst_cmnheader->bg_color1 != -1) if (g_inst_cmnheader->bg_color1 != -1)
{ {
@ -392,8 +392,8 @@ int NSISCALL ui_doinstall(void)
SystemParametersInfo(SPI_GETWORKAREA, 0, &vp, 0); SystemParametersInfo(SPI_GETWORKAREA, 0, &vp, 0);
m_bgwnd = CreateWindow("_Nb","",WS_OVERLAPPED|WS_THICKFRAME|WS_CAPTION|WS_SYSMENU|WS_MAXIMIZEBOX|WS_MINIMIZEBOX, m_bgwnd = CreateWindowEx(WS_EX_TOOLWINDOW,"_Nb",0,WS_POPUP,
vp.left,vp.top,vp.right-vp.left,vp.bottom-vp.top,GetDesktopWindow(),NULL,g_hInstance,NULL); vp.left,vp.top,vp.right-vp.left,vp.bottom-vp.top,0,NULL,g_hInstance,NULL);
} }
#endif//NSIS_SUPPORT_BGBG #endif//NSIS_SUPPORT_BGBG
#ifdef NSIS_SUPPORT_CODECALLBACKS #ifdef NSIS_SUPPORT_CODECALLBACKS
@ -428,7 +428,7 @@ int NSISCALL ui_doinstall(void)
} }
#endif #endif
return DialogBox(g_hInstance,MAKEINTRESOURCE(IDD_INST),m_bgwnd,DialogProc); return DialogBox(g_hInstance,MAKEINTRESOURCE(IDD_INST),0,DialogProc);
} }
#endif//NSIS_CONFIG_VISIBLE_SUPPORT #endif//NSIS_CONFIG_VISIBLE_SUPPORT
#ifdef NSIS_CONFIG_SILENT_SUPPORT #ifdef NSIS_CONFIG_SILENT_SUPPORT
@ -593,6 +593,17 @@ nextPage:
} }
} }
} }
#ifdef NSIS_SUPPORT_BGBG
if (uMsg == WM_WINDOWPOSCHANGED)
{
SetWindowPos(m_bgwnd, hwndDlg, 0, 0, 0, 0, SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
}
if (uMsg == WM_SIZE) {
ShowWindow(m_bgwnd, wParam == SIZE_MINIMIZED ? SW_HIDE : SW_SHOW);
}
#endif //NSIS_SUPPORT_BGBG
if (uMsg == WM_NOTIFY_CUSTOM_READY) { if (uMsg == WM_NOTIFY_CUSTOM_READY) {
DestroyWindow(m_curwnd); DestroyWindow(m_curwnd);
} }
@ -642,7 +653,7 @@ nextPage:
} }
#ifdef NSIS_CONFIG_LICENSEPAGE #ifdef NSIS_CONFIG_LICENSEPAGE
// Changed by Amir Szekely 27th July 2002
#define _RICHEDIT_VER 0x0200 #define _RICHEDIT_VER 0x0200
#include <RichEdit.h> #include <RichEdit.h>
#undef _RICHEDIT_VER #undef _RICHEDIT_VER

View file

@ -14,6 +14,13 @@ LRESULT CALLBACK BG_WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{ {
switch (uMsg) switch (uMsg)
{ {
case WM_WINDOWPOSCHANGING:
{
LPWINDOWPOS wp = (LPWINDOWPOS) lParam;
wp->flags |= SWP_NOACTIVATE;
wp->hwndInsertAfter = g_hwnd;
break;
}
case WM_PAINT: case WM_PAINT:
{ {
static PAINTSTRUCT ps; static PAINTSTRUCT ps;

View file

@ -266,7 +266,7 @@ static int NSISCALL __ensuredata(int amount)
hwnd=CreateDialogParam( hwnd=CreateDialogParam(
g_hInstance, g_hInstance,
MAKEINTRESOURCE(IDD_VERIFY), MAKEINTRESOURCE(IDD_VERIFY),
GetDesktopWindow(), 0,
verProc, verProc,
(LPARAM)_LANG_UNPACKING (LPARAM)_LANG_UNPACKING
); );