bool wxAuiMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) { #if wxUSE_MENUS // this style can be used to prevent a window from having the standard MDI // "Window" menu if (!(style & wxFRAME_NO_WINDOW_MENU)) { m_pWindowMenu = new wxMenu; m_pWindowMenu->Append(wxWINDOWCLOSE, _("Cl&ose")); m_pWindowMenu->Append(wxWINDOWCLOSEALL, _("Close All")); m_pWindowMenu->AppendSeparator(); m_pWindowMenu->Append(wxWINDOWNEXT, _("&Next")); m_pWindowMenu->Append(wxWINDOWPREV, _("&Previous")); } #endif // wxUSE_MENUS if ( !wxFrame::Create(parent, id, title, pos, size, style, name) ) return false; m_pClientWindow = OnCreateClient(); return m_pClientWindow != NULL; }
bool wxMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) { m_clientWindow = (wxMDIClientWindow*) NULL; m_activeChild = (wxMDIChildFrame*) NULL; m_activeMenuBar = (wxMenuBar*) NULL; bool success = wxFrame::Create(parent, id, title, pos, size, style, name); if (success) { // TODO: app cannot override OnCreateClient since // wxMDIParentFrame::OnCreateClient will still be called // (we're in the constructor). How to resolve? m_clientWindow = OnCreateClient(); // Uses own style for client style m_clientWindow->CreateClient(this, GetWindowStyleFlag()); int w, h; GetClientSize(& w, & h); m_clientWindow->SetSize(0, 0, w, h); return true; } else return false; }
bool wxMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) { // this style can be used to prevent a window from having the standard MDI // "Window" menu if ( style & wxFRAME_NO_WINDOW_MENU ) { m_windowMenu = (wxMenu *)NULL; style -= wxFRAME_NO_WINDOW_MENU ; } else // normal case: we have the window menu, so construct it { m_windowMenu = new wxMenu; m_windowMenu->Append(IDM_WINDOWCASCADE, wxT("&Cascade")); m_windowMenu->Append(IDM_WINDOWTILEHOR, wxT("Tile &Horizontally")); m_windowMenu->Append(IDM_WINDOWTILEVERT, wxT("Tile &Vertically")); m_windowMenu->AppendSeparator(); m_windowMenu->Append(IDM_WINDOWICONS, wxT("&Arrange Icons")); m_windowMenu->Append(IDM_WINDOWNEXT, wxT("&Next")); } wxFrame::Create( parent , id , title , pos , size , style , name ) ; m_parentFrameActive = true; OnCreateClient(); return true; }
WXLRESULT wxMDIParentFrame::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam) { WXLRESULT rc = 0; bool processed = false; switch ( message ) { case WM_ACTIVATE: { WXWORD state, minimized; WXHWND hwnd; UnpackActivate(wParam, lParam, &state, &minimized, &hwnd); processed = HandleActivate(state, minimized != 0, hwnd); } break; case WM_COMMAND: // system messages such as SC_CLOSE are sent as WM_COMMANDs to the // parent MDI frame and we must let the DefFrameProc() have them // for these commands to work (without it, closing the maximized // MDI children doesn't work, for example) { WXWORD id, cmd; WXHWND hwnd; UnpackCommand(wParam, lParam, &id, &hwnd, &cmd); if ( id == wxID_MDI_MORE_WINDOWS || (cmd == 0 /* menu */ && id >= SC_SIZE /* first system menu command */) ) { MSWDefWindowProc(message, wParam, lParam); processed = true; } } break; case WM_CREATE: m_clientWindow = OnCreateClient(); // Uses own style for client style if ( !m_clientWindow->CreateClient(this, GetWindowStyleFlag()) ) { wxLogMessage(_("Failed to create MDI parent frame.")); rc = -1; } processed = true; break; } if ( !processed ) rc = wxFrame::MSWWindowProc(message, wParam, lParam); return rc; }
int CFrameWnd::OnCreate(LPCREATESTRUCT lpcs) { if (CTargetWnd::OnCreate(lpcs)==-1) return -1; AddDebugMenuItems(*this); if (OnCreateClient(lpcs)) return 0; return -1; }
bool wxMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) { wxFrame::Create( parent, id, title, pos, size, style, name ); OnCreateClient(); return true; }
bool wxMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) { if ( !wxFrame::Create( parent, id, title, pos, size, style, name ) ) return false; m_clientWindow = OnCreateClient(); if ( !m_clientWindow->CreateClient(this, GetWindowStyleFlag()) ) return false; return true; }
nuiTCPClient* nuiTCPServer::Accept() { int n = 1; int s = accept(mSocket, NULL, NULL); mAcceptedCount++; if (s >= 0) { //printf("%x accept %d\n", this, s); UpdateIdle(); nuiTCPClient* pClient = OnCreateClient(s); return pClient; } return NULL; }
int CMDIChildWnd::OnCreate( LPCREATESTRUCT lpCreateStruct ) /*********************************************************/ { // Don't call CFrameWnd::OnCreate! It doesn't handle the MDICREATESTRUCT passed // to MDI child windows. if( CWnd::OnCreate( lpCreateStruct ) == -1 ) { return( -1 ); } MDICREATESTRUCT *lpmcs = (MDICREATESTRUCT *)lpCreateStruct->lpCreateParams; ASSERT( lpmcs != NULL ); if( !OnCreateClient( lpCreateStruct, (CCreateContext *)lpmcs->lParam ) ) { return( -1 ); } RecalcLayout(); return( 0 ); }
int CFrameWnd::OnCreate( LPCREATESTRUCT lpCreateStruct ) /******************************************************/ { if( CWnd::OnCreate( lpCreateStruct ) == -1 ) { return( -1 ); } if( !OnCreateClient( lpCreateStruct, (CCreateContext *)lpCreateStruct->lpCreateParams ) ) { return( -1 ); } RecalcLayout(); // Post (don't send) the message to set the status bar text so that it will be // processed after creation is complete. ::PostMessage( m_hWnd, WM_SETMESSAGESTRING, AFX_IDS_IDLEMESSAGE, 0L ); return( 0 ); }
bool wxMDIParentFrame::Create(wxWindow *parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name) { m_qtWindow = new wxQtMDIParentFrame( parent, this ); if (!wxFrameBase::Create( parent, id, title, pos, size, style, name )) return false; wxMDIClientWindow *client = OnCreateClient(); m_clientWindow = client; if ( !m_clientWindow->CreateClient(this, GetWindowStyleFlag()) ) return false; GetHandle()->setCentralWidget( client->GetHandle() ); PostCreation(); return true; }
WXLRESULT wxMDIParentFrame::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam) { WXLRESULT rc = 0; bool processed = false; switch ( message ) { case WM_ACTIVATE: { WXWORD state, minimized; WXHWND hwnd; UnpackActivate(wParam, lParam, &state, &minimized, &hwnd); processed = HandleActivate(state, minimized != 0, hwnd); } break; case WM_COMMAND: { WXWORD id, cmd; WXHWND hwnd; UnpackCommand(wParam, lParam, &id, &hwnd, &cmd); (void)HandleCommand(id, cmd, hwnd); // even if the frame didn't process it, there is no need to try it // once again (i.e. call wxFrame::HandleCommand()) - we just did it, // so pretend we processed the message anyhow processed = true; } // always pass this message DefFrameProc(), otherwise MDI menu // commands (and sys commands - more surprisingly!) won't work MSWDefWindowProc(message, wParam, lParam); break; case WM_CREATE: m_clientWindow = OnCreateClient(); // Uses own style for client style if ( !m_clientWindow->CreateClient(this, GetWindowStyleFlag()) ) { wxLogMessage(_("Failed to create MDI parent frame.")); rc = -1; } processed = true; break; case WM_ERASEBKGND: processed = true; // we erase background ourselves rc = true; break; case WM_MENUSELECT: { WXWORD item, flags; WXHMENU hmenu; UnpackMenuSelect(wParam, lParam, &item, &flags, &hmenu); if ( m_parentFrameActive ) { processed = HandleMenuSelect(item, flags, hmenu); } else if (m_currentChild) { processed = m_currentChild-> HandleMenuSelect(item, flags, hmenu); } } break; case WM_SIZE: // though we don't (usually) resize the MDI client to exactly fit the // client area we need to pass this one to DefFrameProc to allow the children to show break; } if ( !processed ) rc = wxFrame::MSWWindowProc(message, wParam, lParam); return rc; }