]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/texwindow.h
Group import/export callbacks
[xonotic/netradiant.git] / radiant / texwindow.h
index edc67b221f7c217004d0716dab2f373e5a9956a7..31cd4d413bcf277fea2ec4b745f6d3da91b6ae27 100644 (file)
 #if !defined( INCLUDED_TEXWINDOW_H )
 #define INCLUDED_TEXWINDOW_H
 
+#include <uilib/uilib.h>
 #include "math/vector.h"
-#include "generic/callbackfwd.h"
+#include "generic/callback.h"
 #include "signal/signalfwd.h"
 #include "xml/xmltextags.h"
 
-typedef struct _GtkWidget GtkWidget;
-
 class TextureBrowser;
 TextureBrowser& GlobalTextureBrowser();
 
-typedef struct _GtkWindow GtkWindow;
-GtkWidget* TextureBrowser_constructWindow( GtkWindow* toplevel );
+ui::Widget TextureBrowser_constructWindow( ui::Window toplevel );
 void TextureBrowser_destroyWindow();
 
 
@@ -45,13 +43,9 @@ const char* TextureBrowser_GetSelectedShader( TextureBrowser& textureBrower );
 void TextureBrowser_Construct();
 void TextureBrowser_Destroy();
 
-typedef Callback1<const char*> StringImportCallback;
-template<typename FirstArgument, void( *func ) (FirstArgument)>
-class FreeCaller1;
-
-extern GtkWidget* g_page_textures;
-void TextureBrowser_exportTitle( const StringImportCallback& importer );
-typedef FreeCaller1<const StringImportCallback&, TextureBrowser_exportTitle> TextureBrowserExportTitleCaller;
+extern ui::Widget g_page_textures;
+void TextureBrowser_exportTitle( const ImportExportCallback<const char *>::Import_t& importer );
+typedef FreeCaller<void(const ImportExportCallback<const char *>::Import_t&), TextureBrowser_exportTitle> TextureBrowserExportTitleCaller;
 
 const Vector3& TextureBrowser_getBackgroundColour( TextureBrowser& textureBrowser );
 void TextureBrowser_setBackgroundColour( TextureBrowser& textureBrowser, const Vector3& colour );