Wrap more GTK
[xonotic/netradiant.git] / libs / uilib / uilib.cpp
index 4832d92..d3cd197 100644 (file)
@@ -97,11 +97,25 @@ namespace ui {
         return gtk_widget_get_visible(this) != 0;
     }
 
+    void IWidget::visible(bool shown)
+    {
+        if (shown) {
+            this.show();
+        } else {
+            this.hide();
+        }
+    }
+
     void IWidget::show()
     {
         gtk_widget_show(this);
     }
 
+    void IWidget::hide()
+    {
+        gtk_widget_hide(this);
+    }
+
     Dimensions IWidget::dimensions()
     {
         GtkAllocation allocation;
@@ -114,6 +128,11 @@ namespace ui {
         gtk_widget_set_size_request(this, width, height);
     }
 
+    void IWidget::destroy()
+    {
+        gtk_widget_destroy(this);
+    }
+
     IMPL(Container, GTK_CONTAINER);
 
     void IContainer::add(Widget widget)