+ wxMenuItem* item = FindMenuItemById( id );
+ if (item) return item->IsEnabled();
+ return FALSE;
+}
+
+wxString wxMenuBar::GetLabel( int id ) const
+{
+ wxMenuItem* item = FindMenuItemById( id );
+
+ if (item) return item->GetText();
+
+ return "";
+}
+
+void wxMenuBar::SetLabel( int id, const wxString &label )
+{
+ wxMenuItem* item = FindMenuItemById( id );
+
+ if (item) item->SetText( label );
+}
+
+void wxMenuBar::EnableTop( int pos, bool flag )
+{
+ wxNode *node = m_menus.Nth( pos );
+
+ wxCHECK_RET( node, "menu not found" );
+
+ wxMenu* menu = (wxMenu*)node->Data();
+
+ if (menu->m_owner) gtk_widget_set_sensitive( menu->m_owner, flag );
+}
+
+wxString wxMenuBar::GetLabelTop( int pos ) const
+{
+ wxNode *node = m_menus.Nth( pos );
+
+ wxCHECK_MSG( node, "invalid", "menu not found" );
+
+ wxMenu* menu = (wxMenu*)node->Data();
+
+ return menu->GetTitle();
+}
+
+void wxMenuBar::SetLabelTop( int pos, const wxString& label )
+{
+ wxNode *node = m_menus.Nth( pos );
+
+ wxCHECK_RET( node, "menu not found" );
+
+ wxMenu* menu = (wxMenu*)node->Data();
+
+ menu->SetTitle( label );