]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/groupdialog.h
Merge branch 'optional_q3map2_type' into 'master'
[xonotic/netradiant.git] / radiant / groupdialog.h
index 349802b17b7696d6ff790ba5d890c82fb7c8f374..63f36a02526df4d1c48c601da9a7dc4aec3add5b 100644 (file)
 #if !defined( INCLUDED_GROUPDIALOG_H )
 #define INCLUDED_GROUPDIALOG_H
 
+#include <uilib/uilib.h>
+#include "property.h"
 #include "generic/callback.h"
 
-typedef struct _GtkWidget GtkWidget;
-typedef struct _GtkWindow GtkWindow;
-
 void GroupDialog_Construct();
+
 void GroupDialog_Destroy();
 
-void GroupDialog_constructWindow( GtkWindow* main_window );
+void GroupDialog_constructWindow(ui::Window main_window);
+
 void GroupDialog_destroyWindow();
-GtkWindow* GroupDialog_getWindow();
+
+ui::Window GroupDialog_getWindow();
+
 void GroupDialog_show();
 
-inline void RawStringExport( const char* string, const StringImportCallback& importer ){
-       importer( string );
+inline void RawStringExport(const char *string, const Callback<void(const char *)> &importer)
+{
+    importer(string);
 }
-typedef ConstPointerCaller1<char, const StringImportCallback&, RawStringExport> RawStringExportCaller;
-GtkWidget* GroupDialog_addPage( const char* tabLabel, GtkWidget* widget, const StringExportCallback& title );
 
-void GroupDialog_showPage( GtkWidget* page );
-void GroupDialog_updatePageTitle( GtkWidget* page );
+typedef ConstPointerCaller<char, void(const Callback<void(const char *)> &), RawStringExport> RawStringExportCaller;
+
+ui::Widget GroupDialog_addPage(const char *tabLabel, ui::Widget widget,
+                               const Callback<void(const Callback<void(const char *)> &)> &title);
+
+void GroupDialog_showPage(ui::Widget page);
+
+void GroupDialog_updatePageTitle(ui::Widget page);
+
 bool GroupDialog_isShown();
-GtkWidget* GroupDialog_getPage();
+
+ui::Widget GroupDialog_getPage();
 
 #endif