123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- #include "Main.h"
- #include "wa_dlg.h"
- #include "./api.h"
- int Main_OnDestroy(HWND hwnd)
- {
- if (NULL != WASABI_API_APP) WASABI_API_APP->app_unregisterGlobalWindow(hwnd);
- if (g_main_created)
- {
- SetPriorityClass(GetCurrentProcess(),NORMAL_PRIORITY_CLASS);
- Main_OnEndSession(NULL,TRUE);
- PostQuitMessage(0);
- }
- return 1;
- }
- int Main_OnClose(HWND hwnd)
- {
- if (g_exit_disabled)
- {
- if (NULL != WASABI_API_APP)
- WASABI_API_APP->main_cancelShutdown();
- return 0;
- }
- ReleaseCapture();
- if (!SendMessageW(hwnd,WM_WA_IPC,0,IPC_HOOK_OKTOQUIT))
- {
- if (NULL != WASABI_API_APP)
- WASABI_API_APP->main_cancelShutdown();
- return 0;
- }
- if (playing) StopPlaying(1);
- sa_setthread(-1);
- vis_stop();
- dsp_quit();
- if (pTaskbar3 != NULL)
- pTaskbar3->Release();
- pTaskbar3=0;
-
- if (toolbarIcons)
- ImageList_Destroy(toolbarIcons);
- toolbarIcons = 0;
- DestroyWindow(hwnd);
- return 0;
- }
- void Main_OnEndSession(HWND hwnd, BOOL fEnding)
- {
-
- if (fEnding)
- {
- EndFullscreenAppMonitor();
- if (playing) StopPlaying(1);
- sa_setthread(-1);
- vis_stop();
- dsp_quit();
- if (!hwnd && systray_intray) systray_restore();
- hEQWindow=hPLWindow=hVideoWindow=0;
- hVisWindow=0;
- hPLVisWindow=0;
- draw_kill();
- draw_finalquit();
- WADlg_close();
- Skin_CleanupZip();
-
-
- if (prefs_hwnd)
- {
- prefs_hwnd = 0;
- config_write(2);
- }
- else config_write(1);
- stats_write();
- PlayList_destroy();
- PlayList_randpos(-666);
- DestroyMenu(top_menu);
- if (hwnd) unload_genplugins();
- out_deinit();
- in_deinit();
- Lang_EndLangSupport();
- Lang_CleanupZip();
-
- if(config_langpack2[0]){
-
- if(config_langpack2[0] == '<') config_langpack2[0] = 0;
- lstrcpynW(config_langpack,config_langpack2,MAX_PATH);
- config_save_langpack_var();
- }
- }
- }
|