plover-gtk/packagestore.c
changeset 25 e10f418d8e1d
parent 12 1d18b9c34d26
child 30 3ee18a3a0f58
     1.1 --- a/plover-gtk/packagestore.c	Thu Nov 10 11:00:49 2011 +0000
     1.2 +++ b/plover-gtk/packagestore.c	Sat Nov 15 19:10:51 2014 +0000
     1.3 @@ -24,7 +24,7 @@
     1.4  #include <gtk/gtk.h>
     1.5  #include <razor.h>
     1.6  #include "plover/plover.h"
     1.7 -#include "plover-gtk/package.h"
     1.8 +#include "plover/package.h"
     1.9  #include "plover-gtk/packagestore.h"
    1.10  
    1.11  #define VALID_ITER(iter,store) ((iter) && (iter)->user_data && \
    1.12 @@ -139,6 +139,8 @@
    1.13      char *s;
    1.14      PloverPackageStore *store=(PloverPackageStore *)tree_model;
    1.15      PloverPackage *package;
    1.16 +    GInputStream *stream;
    1.17 +    GdkPixbuf *icon;
    1.18      g_return_if_fail(column>=0 && column<PLOVER_PACKAGE_STORE_NO_COLUMNS);
    1.19      g_return_if_fail(VALID_ITER(iter,store));
    1.20      package=PLOVER_PACKAGE(g_sequence_get(iter->user_data));
    1.21 @@ -151,7 +153,15 @@
    1.22  	case PLOVER_PACKAGE_STORE_INSTALLED_COLUMN:
    1.23  	    break;
    1.24  	case PLOVER_PACKAGE_STORE_ICON_COLUMN:
    1.25 -	    g_value_set_object(value,plover_package_get_icon(package));
    1.26 +	    stream=plover_package_read_icon(package,NULL);
    1.27 +	    if (stream)
    1.28 +	    {
    1.29 +		icon=gdk_pixbuf_new_from_stream(stream,NULL,NULL);
    1.30 +		g_object_unref(stream);
    1.31 +	    }
    1.32 +	    else
    1.33 +		icon=NULL;
    1.34 +	    g_value_set_object(value,icon);
    1.35  	    break;
    1.36  	case PLOVER_PACKAGE_STORE_NAME_COLUMN:
    1.37  	    g_value_set_string(value,plover_package_get_name(package));