#include <gtk/gtk.h>
+#if wxUSE_LIBHILDON
+ #include <hildon-widgets/hildon-window.h>
+#endif // wxUSE_LIBHILDON
+
// ----------------------------------------------------------------------------
// event tables
// ----------------------------------------------------------------------------
wxFrame::~wxFrame()
{
- m_isBeingDeleted = true;
+ SendDestroyEvent();
+
DeleteAllBars();
}
*height = 0;
}
-#if wxUSE_MENUS
+#if wxUSE_MENUS && wxUSE_ACCEL
// Helper for wxCreateAcceleratorTableForMenuBar
static void wxAddAccelerators(wxList& accelEntries, wxMenu* menu)
{
return table;
}
-#endif
+#endif // wxUSE_MENUS && wxUSE_ACCEL
bool wxFrame::ShowFullScreen(bool show, long style)
{
if (!wxFrameBase::ShowFullScreen(show, style))
return false;
-#if wxUSE_MENUS
+#if wxUSE_MENUS && wxUSE_ACCEL
if (show && GetMenuBar())
{
wxAcceleratorTable table(wxCreateAcceleratorTableForMenuBar(GetMenuBar()));
if (table.IsOk())
SetAcceleratorTable(table);
}
-#endif
+#endif // wxUSE_MENUS && wxUSE_ACCEL
wxWindow* const bar[] = {
#if wxUSE_MENUS
if ( m_frameMenuBar )
{
+#if wxUSE_LIBHILDON
+ hildon_window_set_menu(HILDON_WINDOW(m_widget), NULL);
+#else // !wxUSE_LIBHILDON
m_frameMenuBar->UnsetInvokingWindow( this );
gtk_widget_ref( m_frameMenuBar->m_widget );
gtk_container_remove( GTK_CONTAINER(m_mainWidget), m_frameMenuBar->m_widget );
+#endif // wxUSE_LIBHILDON/!wxUSE_LIBHILDON
}
wxFrameBase::DetachMenuBar();
if (m_frameMenuBar)
{
+#if wxUSE_LIBHILDON
+ hildon_window_set_menu(HILDON_WINDOW(m_widget),
+ GTK_MENU(m_frameMenuBar->m_menubar));
+#else // !wxUSE_LIBHILDON
m_frameMenuBar->SetInvokingWindow( this );
m_frameMenuBar->SetParent(this);
gtk_widget_set_size_request(menuBar->m_widget, -1, -1);
gtk_widget_show( m_frameMenuBar->m_widget );
+#endif // wxUSE_LIBHILDON/!wxUSE_LIBHILDON
}
// make sure next size_allocate causes a wxSizeEvent
m_oldClientWidth = 0;