Ignore:
Timestamp:
Jan 9, 2000, 4:56:06 PM (26 years ago)
Author:
sandervl
Message:

win32 look update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/win32wbase.cpp

    r2383 r2384  
    1 /* $Id: win32wbase.cpp,v 1.135 2000-01-09 14:37:11 sandervl Exp $ */
     1/* $Id: win32wbase.cpp,v 1.136 2000-01-09 15:56:04 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    4747#define INCL_TIMERWIN32
    4848#include "timer.h"
     49#include "initterm.h"
    4950
    5051#define HAS_DLGFRAME(style,exStyle) \
     
    164165  OS2HwndFrame     = 0;
    165166  OS2HwndMenu      = 0;
     167  OS2SysMenu       = 0;
    166168  Win32Hwnd        = 0;
    167169
     
    241243        dprintf(("Destroying window %x %s", getWindowHandle(), windowNameA));
    242244        setParent(NULL);  //or else we'll crash in the dtor of the ChildWindow class
     245    }
     246
     247    if(OS2SysMenu) {
     248        DestroyMenu(OS2SysMenu);
     249        OS2SysMenu = 0;
    243250    }
    244251
     
    12321239  return rc;
    12331240}
    1234 /***********************************************************************
    1235  *           NC_HandleSysCommand
    1236  *
    1237  * Handle a WM_SYSCOMMAND message. Called from DefWindowProc().
    1238  *
    1239  * TODO: Not done (see #if 0)
    1240  */
    1241 LONG Win32BaseWindow::HandleSysCommand(WPARAM wParam, POINT *pt32)
    1242 {
    1243     UINT uCommand = wParam & 0xFFF0;
    1244 
    1245     if ((getStyle() & WS_CHILD) && (uCommand != SC_KEYMENU))
    1246         ScreenToClient(getParent()->getWindowHandle(), pt32 );
    1247 
    1248     switch (uCommand)
    1249     {
    1250 
    1251     case SC_SIZE:
    1252     {
    1253       DWORD flags = 0;
    1254 
    1255       switch ((wParam & 0xF)+2)
    1256       {
    1257         case HTLEFT:
    1258           flags = TFOS_LEFT;
    1259           break;
    1260 
    1261         case HTRIGHT:
    1262           flags = TFOS_RIGHT;
    1263           break;
    1264 
    1265         case HTTOP:
    1266           flags = TFOS_TOP;
    1267           break;
    1268 
    1269         case HTTOPLEFT:
    1270           flags = TFOS_TOP | TFOS_LEFT;
    1271           break;
    1272 
    1273         case HTTOPRIGHT:
    1274           flags = TFOS_TOP | TFOS_RIGHT;
    1275           break;
    1276 
    1277         case HTBOTTOM:
    1278           flags = TFOS_BOTTOM;
    1279           break;
    1280 
    1281         case HTBOTTOMLEFT:
    1282           flags = TFOS_BOTTOM | TFOS_LEFT;
    1283           break;
    1284 
    1285         case HTBOTTOMRIGHT:
    1286           flags = TFOS_BOTTOM | TFOS_RIGHT;
    1287           break;
    1288       }
    1289       if (flags) FrameTrackFrame(this,flags);
    1290       break;
    1291     }
    1292 
    1293     case SC_MOVE:
    1294       FrameTrackFrame(this,TFOS_MOVE);
    1295       break;
    1296 
    1297     case SC_MINIMIZE:
    1298         ShowWindow(SW_MINIMIZE);
    1299         break;
    1300 
    1301     case SC_MAXIMIZE:
    1302         ShowWindow(SW_MAXIMIZE);
    1303         break;
    1304 
    1305     case SC_RESTORE:
    1306         ShowWindow(SW_RESTORE);
    1307         break;
    1308 
    1309     case SC_CLOSE:
    1310         return SendInternalMessageA(WM_CLOSE, 0, 0);
    1311 
    1312 #if 0
    1313     case SC_VSCROLL:
    1314     case SC_HSCROLL:
    1315         NC_TrackScrollBar( hwnd, wParam, pt32 );
    1316         break;
    1317 
    1318     case SC_MOUSEMENU:
    1319         MENU_TrackMouseMenuBar( wndPtr, wParam & 0x000F, pt32 );
    1320         break;
    1321 
    1322     case SC_KEYMENU:
    1323         MENU_TrackKbdMenuBar( wndPtr , wParam , pt.x );
    1324         break;
    1325 
    1326     case SC_TASKLIST:
    1327         WinExec( "taskman.exe", SW_SHOWNORMAL );
    1328         break;
    1329 
    1330     case SC_SCREENSAVE:
    1331         if (wParam == SC_ABOUTWINE)
    1332             ShellAboutA(hwnd, "Odin", WINE_RELEASE_INFO, 0);
    1333         else
    1334         if (wParam == SC_PUTMARK)
    1335             dprintf(("Mark requested by user\n"));
    1336         break;
    1337 
    1338     case SC_HOTKEY:
    1339     case SC_ARRANGE:
    1340     case SC_NEXTWINDOW:
    1341     case SC_PREVWINDOW:
    1342         break;
    1343 #endif
    1344     }
    1345     return 0;
    1346 }
    13471241//******************************************************************************
    13481242//******************************************************************************
     
    21062000        window = parentwindow;
    21072001   }
     2002}
     2003//******************************************************************************
     2004//******************************************************************************
     2005HMENU Win32BaseWindow::GetSystemMenu(BOOL fRevert)
     2006{
     2007    if(!fOS2Look) {
     2008        if(fRevert == FALSE) {
     2009            OS2SysMenu = LoadMenuA(hInstanceUser32, (LPCSTR)"SYSMENU");
     2010            return OS2SysMenu;
     2011        }
     2012        else {//revert back to default system menu
     2013            if(OS2SysMenu) {
     2014                DestroyMenu(OS2SysMenu);
     2015                OS2SysMenu = 0;
     2016            }
     2017            return 0;
     2018        }
     2019    }
     2020    else return O32_GetSystemMenu(getOS2FrameWindowHandle(), fRevert);
    21082021}
    21092022//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.