- wxSizeEvent event( wxSize(m_width,m_height), GetId() );
- event.SetEventObject( this );
- GetEventHandler()->ProcessEvent( event );
-}
-
-void wxDialog::Centre( int direction )
-{
- wxASSERT_MSG( (m_widget != NULL), "invalid dialog" );
-
- int x = 0;
- int y = 0;
-
- if ((direction & wxHORIZONTAL) == wxHORIZONTAL) x = (gdk_screen_width () - m_width) / 2;
- if ((direction & wxVERTICAL) == wxVERTICAL) y = (gdk_screen_height () - m_height) / 2;
-
- Move( x, y );
-}
-
-void wxDialog::OnInternalIdle()
-{
- if (!m_sizeSet)
- GtkOnSize( m_x, m_y, m_width, m_height );
-}
-
-bool wxDialog::Show( bool show )
-{
- if (!show && IsModal())
- {
- EndModal( wxID_CANCEL );
- }
-
- if (show && !m_sizeSet)
- {
- /* by calling GtkOnSize here, we don't have to call
- either after showing the frame, which would entail
- much ugly flicker nor from within the size_allocate
- handler, because GTK 1.1.X forbids that. */
-
- GtkOnSize( m_x, m_y, m_width, m_height );
- }
-
- wxWindow::Show( show );
-
- if (show) InitDialog();
-
- return TRUE;
-}
-
-bool wxDialog::IsModal() const
-{
- return m_modalShowing;
-}
-
-void wxDialog::SetModal( bool WXUNUSED(flag) )
-{
-/*
- if (flag)
- m_windowStyle |= wxDIALOG_MODAL;
- else
- if (m_windowStyle & wxDIALOG_MODAL) m_windowStyle -= wxDIALOG_MODAL;
-*/
- wxFAIL_MSG( "wxDialog:SetModal obsolete now" );
-}
-
-int wxDialog::ShowModal()
-{
- if (IsModal())
- {
- wxFAIL_MSG( "wxDialog:ShowModal called twice" );
- return GetReturnCode();
- }
-
- Show( TRUE );
-
- m_modalShowing = TRUE;
-
- gtk_grab_add( m_widget );
- gtk_main();
- gtk_grab_remove( m_widget );