#include "stdinc.h" #include "FusionTrace.h" #include "hostframe.h" void CSxApwHostFrame::AddMenu() { HMENU hMenu = CreateMenu(); HMENU hPopupMenu = CreateMenu(); AppendMenu( hPopupMenu, MF_STRING, IDM_APP_EXIT, L"E&xit" ); AppendMenu( hMenu, MF_POPUP, (UINT_PTR)hPopupMenu, L"&File"); hPopupMenu = CreateMenu(); AppendMenu( hPopupMenu, MF_STRING, IDM_CASCADE, L"&Cascade" ); AppendMenu( hPopupMenu, MF_STRING, IDM_HORTILE, L"Tile &Horizontal" ); AppendMenu( hPopupMenu, MF_STRING, IDM_VERTILE, L"Tile &Vertical" ); AppendMenu( hMenu, MF_POPUP, (UINT_PTR)hPopupMenu, L"&Windows"); BOOL bResult = SetMenu(hMenu); DrawMenuBar(); } LRESULT CSxApwHostFrame::OnSize( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled ) { RECT rc; GetClientRect ( &rc ); // ::SetWindowPos(m_hClient, rc.left, rc.top, ( // ::RedrawWindow(m_hClient, NULL, NULL, RDW_ERASE | RDW_INVALIDATE | RDW_UPDATENOW | RDW_ALLCHILDREN); CWindow fooWin; fooWin.Attach( m_hClient ); fooWin.ResizeClient( (rc.right - rc.left), (rc.bottom - rc.top), TRUE); fooWin.Detach(); return 0; } LRESULT CSxApwHostFrame::OnTileCascade( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled ) { ::SendMessageW( m_hClient, WM_MDICASCADE, MDITILE_ZORDER, 0 ); return 0; } LRESULT CSxApwHostFrame::OnTileHorizontal( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled ) { ::SendMessageW( m_hClient, WM_MDITILE, MDITILE_HORIZONTAL, 0 ); return 0; } LRESULT CSxApwHostFrame::OnTileVertical( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled ) { ::SendMessageW( m_hClient, WM_MDITILE, MDITILE_VERTICAL, 0 ); return 0; } LRESULT CSxApwHostFrame::OnAppExit( WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled ) { PostMessageW ( WM_QUIT, 0, 0 ); return 0; }