--- np2/win9x/np2.cpp 2003/10/28 22:05:46 1.15 +++ np2/win9x/np2.cpp 2003/10/31 04:11:40 1.20 @@ -28,6 +28,7 @@ #ifdef USE_ROMEO #include "juliet.h" #endif +#include "np2class.h" #include "dialog.h" #include "memory.h" #include "pccore.h" @@ -75,7 +76,6 @@ static char szClassName[] = "NP2-MainWi char fddfolder[MAX_PATH]; char hddfolder[MAX_PATH]; char bmpfilefolder[MAX_PATH]; - char mimpideffile[MAX_PATH]; char modulefile[MAX_PATH]; static UINT framecnt = 0; @@ -86,12 +86,26 @@ static BYTE np2stopemulate = 0; static int np2opening = 1; static int np2quitmsg = 0; HMENU hStat = NULL; +static BYTE scrnmode; + WINLOC wl; static const char np2help[] = "np2.hlp"; static const char np2resume[] = "sav"; -static BYTE scrnmode; + + +static void winuienter(void) { + + soundmng_disable(SNDPROC_MAIN); + scrnmng_topwinui(); +} + +static void winuileave(void) { + + scrnmng_clearwinui(); + soundmng_enable(SNDPROC_MAIN); +} static void changescreen(BYTE newmode) { @@ -110,6 +124,9 @@ static void changescreen(BYTE newmode) { if (renewal & SCRNMODE_FULLSCREEN) { toolwin_close(); } + else if (renewal & SCRNMODE_ROTATEMASK) { + toolwin_movingstart(); + } soundmng_stop(); mouse_running(MOUSE_STOP); keydisp_destroy(); @@ -128,6 +145,9 @@ static void changescreen(BYTE newmode) { (!scrnmng_isfullscreen()) && (np2oscfg.toolwin)) { toolwin_open(); } + else if (renewal & SCRNMODE_ROTATEMASK) { + toolwin_movingend(); + } mouse_running(MOUSE_CONT); soundmng_play(); } @@ -161,7 +181,7 @@ void np2active_renewal(void) { / if (np2break & (~NP2BREAK_MAIN)) { np2stopemulate = 2; - soundmng_disable(); + soundmng_disable(SNDPROC_MASTER); } else if (np2break & NP2BREAK_MAIN) { if (np2oscfg.background & 1) { @@ -171,15 +191,15 @@ void np2active_renewal(void) { / np2stopemulate = 0; } if (np2oscfg.background) { - soundmng_disable(); + soundmng_disable(SNDPROC_MASTER); } else { - soundmng_enable(); + soundmng_enable(SNDPROC_MASTER); } } else { np2stopemulate = 0; - soundmng_enable(); + soundmng_enable(SNDPROC_MASTER); } } @@ -222,8 +242,7 @@ static int flagload(const char *ext, con char buf[1024]; getstatfilename(path, ext, sizeof(path)); - soundmng_stop(); - scrnmng_topwinui(); + winuienter(); id = IDYES; ret = statsave_check(path, buf, sizeof(buf)); if (ret & (~NP2FLAG_DISKCHG)) { @@ -243,26 +262,13 @@ static int flagload(const char *ext, con } sysmng_workclockreset(); sysmng_updatecaption(1); - scrnmng_clearwinui(); - soundmng_play(); + winuileave(); return(id); } // ---- proc -static void winuienter(void) { - - soundmng_stop(); - scrnmng_topwinui(); -} - -static void winuileave(void) { - - scrnmng_clearwinui(); - soundmng_play(); -} - LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { PAINTSTRUCT ps; @@ -547,19 +553,31 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT case IDM_F12MOUSE: xmenu_setf12copy(0); - keystat_resetcopyhelp(); + winkbd_resetf12(); update |= SYS_UPDATECFG; break; case IDM_F12COPY: xmenu_setf12copy(1); - keystat_resetcopyhelp(); + winkbd_resetf12(); update |= SYS_UPDATECFG; break; case IDM_F12STOP: xmenu_setf12copy(2); - keystat_resetcopyhelp(); + winkbd_resetf12(); + update |= SYS_UPDATECFG; + break; + + case IDM_F12EQU: + xmenu_setf12copy(3); + winkbd_resetf12(); + update |= SYS_UPDATECFG; + break; + + case IDM_F12COMMA: + xmenu_setf12copy(4); + winkbd_resetf12(); update |= SYS_UPDATECFG; break; @@ -903,21 +921,21 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT break; case WM_ENTERSIZEMOVE: - soundmng_stop(); + soundmng_disable(SNDPROC_MAIN); mouse_running(MOUSE_STOP); - winloc_movingstart(); + winloc_movingstart(&wl); toolwin_movingstart(); break; case WM_EXITSIZEMOVE: toolwin_movingend(); mouse_running(MOUSE_CONT); - soundmng_play(); + soundmng_enable(SNDPROC_MAIN); break; case WM_MOVING: if (np2oscfg.WINSNAP) { - winloc_movingproc((RECT *)lParam); + winloc_movingproc(&wl, (RECT *)lParam); } break; @@ -932,7 +950,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT sysmng_update(SYS_UPDATECFG); } else { - winkeydown106(wParam, lParam); + winkbd_keydown(wParam, lParam); } break; @@ -941,7 +959,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT return(DefWindowProc(hWnd, WM_SYSKEYUP, VK_F10, lParam)); } if ((wParam != VK_F12) || (np2oscfg.F12COPY)) { - winkeyup106(wParam, lParam); + winkbd_keyup(wParam, lParam); } break; @@ -956,11 +974,11 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT break; } } - winkeydown106(wParam, lParam); + winkbd_keydown(wParam, lParam); break; case WM_SYSKEYUP: - winkeyup106(wParam, lParam); + winkbd_keyup(wParam, lParam); break; case WM_MOUSEMOVE: @@ -1174,6 +1192,7 @@ int WINAPI WinMain(HINSTANCE hInstance, } keystat_reset(); + np2class_initialize(hInstance); if (!hPreInst) { np2.style = CS_BYTEALIGNCLIENT | CS_HREDRAW | CS_VREDRAW; np2.lpfnWndProc = WndProc; @@ -1188,12 +1207,12 @@ int WINAPI WinMain(HINSTANCE hInstance, if (!RegisterClass(&np2)) { return(FALSE); } - toolwin_initapp(hInstance); } + toolwin_initapp(hInstance); keydisp_initialize(hPreInst); viewer_init(hPreInst); // ver0.30 - hWndMain = CreateWindowEx(0, szClassName, np2oscfg.titles, + hWndMain = CreateWindow(szClassName, np2oscfg.titles, WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION | WS_MINIMIZEBOX, np2oscfg.winx, np2oscfg.winy, 640, 400,