]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - libs/gtkutil/image.cpp
Wrap gtkutil/image
[xonotic/netradiant.git] / libs / gtkutil / image.cpp
index 961d2e73651db9808e2f9d0cc480b1e2bb6e9150..4164f0318cca55a6436e5a6e21c80a871790aff0 100644 (file)
@@ -50,35 +50,31 @@ GdkPixbuf* pixbuf_new_from_file_with_mask( const char* filename ){
        }
 }
 
-GtkImage* image_new_from_file_with_mask( const char* filename ){
+ui::Image image_new_from_file_with_mask( const char* filename ){
        GdkPixbuf* rgba = pixbuf_new_from_file_with_mask( filename );
        if ( rgba == 0 ) {
-               return 0;
+               return ui::Image(0);
        }
        else
        {
-               GtkImage* image = GTK_IMAGE( gtk_image_new_from_pixbuf( rgba ) );
+               auto image = ui::Image(GTK_IMAGE( gtk_image_new_from_pixbuf( rgba ) ));
                g_object_unref( rgba );
                return image;
        }
 }
 
-GtkImage* image_new_missing(){
-       return GTK_IMAGE( gtk_image_new_from_stock( GTK_STOCK_MISSING_IMAGE, GTK_ICON_SIZE_SMALL_TOOLBAR ) );
+ui::Image image_new_missing(){
+       return ui::Image(GTK_IMAGE( gtk_image_new_from_stock( GTK_STOCK_MISSING_IMAGE, GTK_ICON_SIZE_SMALL_TOOLBAR ) ));
 }
 
-GtkImage* new_image( const char* filename ){
-       {
-               GtkImage* image = image_new_from_file_with_mask( filename );
-               if ( image != 0 ) {
-                       return image;
-               }
+ui::Image new_image( const char* filename ){
+       if ( auto image = image_new_from_file_with_mask( filename ) ) {
+               return image;
        }
-
        return image_new_missing();
 }
 
-GtkImage* new_local_image( const char* filename ){
+ui::Image new_local_image( const char* filename ){
        StringOutputStream fullPath( 256 );
        fullPath << g_bitmapsPath.c_str() << filename;
        return new_image( fullPath.c_str() );