]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/menu.cpp
New makefile updates.
[wxWidgets.git] / src / gtk1 / menu.cpp
index 34d188bfb1bd57dbecbe59bb9b4b05dce1cd7aa2..1fec1d74fceef939057aa57e78d4060ebbf0cc30 100644 (file)
@@ -39,7 +39,12 @@ wxMenuBar::wxMenuBar( long style )
     m_needParent = FALSE;
     m_style = style;
 
-    PreCreation( (wxWindow *) NULL, -1, wxDefaultPosition, wxDefaultSize, style, "menu" );
+    if (!PreCreation( (wxWindow*) NULL, wxDefaultPosition, wxDefaultSize ) ||
+        !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, style, wxDefaultValidator, _T("menubar") ))
+    {
+        wxFAIL_MSG( _T("wxMenuBar creation failed") );
+       return;
+    }
 
     m_menus.DeleteContents( TRUE );
 
@@ -72,8 +77,13 @@ wxMenuBar::wxMenuBar()
     m_needParent = FALSE;
     m_style = 0;
 
-    PreCreation( (wxWindow *) NULL, -1, wxDefaultPosition, wxDefaultSize, 0, "menu" );
-
+    if (!PreCreation( (wxWindow*) NULL, wxDefaultPosition, wxDefaultSize ) ||
+        !CreateBase( (wxWindow*) NULL, -1, wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator, _T("menubar") ))
+    {
+        wxFAIL_MSG( _T("wxMenuBar creation failed") );
+       return;
+    }
+    
     m_menus.DeleteContents( TRUE );
 
     /* GTK 1.2.0 doesn't have gtk_item_factory_get_item(), but GTK 1.2.1 has. */
@@ -626,23 +636,11 @@ bool wxMenuItem::IsChecked() const
 
 IMPLEMENT_DYNAMIC_CLASS(wxMenu,wxEvtHandler)
 
-wxMenu::wxMenu( const wxString& title, const wxFunction func, long style )
-{
-   Init(title, func, style);
-}
-
-wxMenu::wxMenu(long style)
-{
-   Init(wxEmptyString, (wxFunction) NULL, style);
-}
-
 void
 wxMenu::Init( const wxString& title,
               long style,
-#ifdef WXWIN_COMPATIBILITY
-              , const wxFunction func
-#endif
-              )
+             const wxFunction func
+             )
 {
     m_title = title;
     m_items.DeleteContents( TRUE );
@@ -657,9 +655,7 @@ wxMenu::Init( const wxString& title,
     m_menu = gtk_menu_new();  // Do not show!
 #endif
 
-#ifdef WXWIN_COMPATIBILITY
     m_callback = func;
-#endif
 
     m_eventHandler = this;
     m_clientData = (void*) NULL;
@@ -693,7 +689,9 @@ wxMenu::Init( const wxString& title,
 
 wxMenu::~wxMenu()
 {
-    /* how do we delete an item-factory ? */
+   /* how do we delete an item-factory ? */
+   gtk_widget_destroy( m_menu );
+
 }
 
 void wxMenu::SetTitle( const wxString& title )