]> git.saurik.com Git - wxWidgets.git/blobdiff - src/motif/frame.cpp
Implement undo and redo for the ie and gtk webkit backends. Extend the sample to...
[wxWidgets.git] / src / motif / frame.cpp
index c4555bb1500fc20fa595fe633ac9bf07b73e7201..51755c4a1e318c9bf8d9da15ef331ffcbe68ecdc 100644 (file)
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
-#ifdef __VMS
-#define XtDisplay XTDISPLAY
-#define XtWindow XTWINDOW
-#define XtScreen XTSCREEN
-#endif
-
 #include "wx/frame.h"
 
 #ifndef WX_PRECOMP
 #include "wx/frame.h"
 
 #ifndef WX_PRECOMP
@@ -97,8 +91,6 @@ BEGIN_EVENT_TABLE(wxFrame, wxFrameBase)
     EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged)
 END_EVENT_TABLE()
 
     EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged)
 END_EVENT_TABLE()
 
-IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow)
-
 // ============================================================================
 // implementation
 // ============================================================================
 // ============================================================================
 // implementation
 // ============================================================================
@@ -182,7 +174,7 @@ bool wxFrame::Create(wxWindow *parent,
     wxSizeEvent sizeEvent(newSize, GetId());
     sizeEvent.SetEventObject(this);
 
     wxSizeEvent sizeEvent(newSize, GetId());
     sizeEvent.SetEventObject(this);
 
-    GetEventHandler()->ProcessEvent(sizeEvent);
+    HandleWindowEvent(sizeEvent);
 
     return true;
 }
 
     return true;
 }
@@ -259,7 +251,7 @@ bool wxFrame::XmDoCreateTLW(wxWindow* WXUNUSED(parent),
 
 wxFrame::~wxFrame()
 {
 
 wxFrame::~wxFrame()
 {
-    m_isBeingDeleted = true;
+    SendDestroyEvent();
 
     if (m_clientArea)
     {
 
     if (m_clientArea)
     {
@@ -273,15 +265,10 @@ wxFrame::~wxFrame()
     if (m_frameMenuBar)
     {
         m_frameMenuBar->DestroyMenuBar();
     if (m_frameMenuBar)
     {
         m_frameMenuBar->DestroyMenuBar();
-        delete m_frameMenuBar;
-        m_frameMenuBar = NULL;
+        wxDELETE(m_frameMenuBar);
     }
 
     }
 
-    if (m_frameStatusBar)
-    {
-        delete m_frameStatusBar;
-        m_frameStatusBar = NULL;
-    }
+    wxDELETE(m_frameStatusBar);
 
     PreDestroy();
 
 
     PreDestroy();
 
@@ -384,7 +371,7 @@ void wxFrame::DoSetClientSize(int width, int height)
     wxSizeEvent sizeEvent(newSize, GetId());
     sizeEvent.SetEventObject(this);
 
     wxSizeEvent sizeEvent(newSize, GetId());
     sizeEvent.SetEventObject(this);
 
-    GetEventHandler()->ProcessEvent(sizeEvent);
+    HandleWindowEvent(sizeEvent);
 
 }
 
 
 }
 
@@ -452,8 +439,8 @@ void wxFrame::SetTitle(const wxString& title)
 
     if( !title.empty() )
         XtVaSetValues( (Widget)m_frameShell,
 
     if( !title.empty() )
         XtVaSetValues( (Widget)m_frameShell,
-                       XmNtitle, title.mb_str(),
-                       XmNiconName, title.mb_str(),
+                       XmNtitle, (const char*)title.mb_str(),
+                       XmNiconName, (const char*)title.mb_str(),
                        NULL );
 }
 
                        NULL );
 }
 
@@ -514,7 +501,7 @@ void wxFrame::SetMenuBar(wxMenuBar *menuBar)
     }
 
     // Currently can't set it twice
     }
 
     // Currently can't set it twice
-    //    wxASSERT_MSG( (m_frameMenuBar == (wxMenuBar*) NULL), "Cannot set the menubar more than once");
+    //    wxASSERT_MSG( (m_frameMenuBar == NULL), "Cannot set the menubar more than once");
 
     if (m_frameMenuBar)
     {
 
     if (m_frameMenuBar)
     {
@@ -536,7 +523,7 @@ void wxFrame::OnSysColourChanged(wxSysColourChangedEvent& event)
     {
         wxSysColourChangedEvent event2;
         event2.SetEventObject( m_frameStatusBar );
     {
         wxSysColourChangedEvent event2;
         event2.SetEventObject( m_frameStatusBar );
-        m_frameStatusBar->ProcessEvent(event2);
+        m_frameStatusBar->HandleWindowEvent(event2);
     }
 
     // Propagate the event to the non-top-level children
     }
 
     // Propagate the event to the non-top-level children
@@ -563,13 +550,6 @@ void wxFrame::OnActivate(wxActivateEvent& event)
     }
 }
 
     }
 }
 
-void wxFrame::SendSizeEvent()
-{
-    wxSizeEvent event(GetSize(), GetId());
-    event.SetEventObject(this);
-    GetEventHandler()->AddPendingEvent(event);
-}
-
 #if wxUSE_TOOLBAR
 
 wxToolBar* wxFrame::CreateToolBar(long style,
 #if wxUSE_TOOLBAR
 
 wxToolBar* wxFrame::CreateToolBar(long style,