void ShutdownJA2(void) { UINT32 uiIndex; // Clear screen.... ColorFillVideoSurfaceArea( FRAME_BUFFER, 0, 0, 640, 480, Get16BPPColor( FROMRGB( 0, 0, 0 ) ) ); InvalidateScreen( ); // Remove cursor.... SetCurrentCursorFromDatabase( VIDEO_NO_CURSOR ); RefreshScreen( NULL ); ShutdownStrategicLayer(); // remove temp files built by laptop ClearOutTempLaptopFiles( ); // Shutdown queue system ShutdownDialogueControl(); // Shutdown Screens for (uiIndex = 0; uiIndex < MAX_SCREENS; uiIndex++) { (*(GameScreens[uiIndex].ShutdownScreen))(); } // Shutdown animation system DeInitAnimationSystem( ); ShutdownLightingSystem(); CursorDatabaseClear(); ShutdownTacticalEngine( ); // Shutdown Overhead ShutdownOverhead( ); DeinitializeWorld( ); DeleteTileCache( ); ShutdownJA2Clock( ); ShutdownFonts(); ShutdownJA2Sound( ); ShutdownEventManager( ); ShutdownBaseDirtyRectQueue( ); // Unload any text box images! RemoveTextMercPopupImages( ); ClearOutVehicleList(); }
/** Shutdown the various JWM components. * This is called before the X connection is closed. */ void Shutdown(void) { /* This order is important. */ ShutdownSwallow(); # ifndef DISABLE_CONFIRM ShutdownDialogs(); # endif ShutdownPopup(); ShutdownKeys(); ShutdownPager(); ShutdownRootMenu(); ShutdownDock(); ShutdownTray(); ShutdownTrayButtons(); ShutdownTaskBar(); ShutdownClock(); ShutdownBorders(); ShutdownClients(); ShutdownBackgrounds(); ShutdownIcons(); ShutdownCursors(); ShutdownFonts(); ShutdownColors(); ShutdownGroups(); ShutdownDesktops(); ShutdownPlacement(); ShutdownHints(); ShutdownScreens(); ShutdownSettings(); ShutdownCommands(); }