diff --git a/konaclient-gtk/glade/#previewWidget.glade# b/konaclient-gtk/glade/#previewWidget.glade#
new file mode 100644
index 0000000..471eca4
--- /dev/null
+++ b/konaclient-gtk/glade/#previewWidget.glade#
@@ -0,0 +1,53 @@
+
+
+
+
+
+
diff --git a/konaclient-gtk/main.c b/konaclient-gtk/main.c
index 9c49560..3623eab 100644
--- a/konaclient-gtk/main.c
+++ b/konaclient-gtk/main.c
@@ -14,6 +14,8 @@ int buildWindow() {
GtkWidget *previewContainer;
GtkWidget *temp;
+ KonaImage *ki;
+
builder = gtk_builder_new();
gtk_builder_add_from_file(builder, "glade/mainWindow.glade", NULL);
@@ -26,7 +28,9 @@ int buildWindow() {
gtk_flow_box_set_max_children_per_line(GTK_FLOW_BOX(previewLayout), 200);
for (int i = 0; i < 100; ++i) {
// CUSTOM!!!!!
- temp = PreviewWidget_new();
+ ki = kona_image_new();
+
+ temp = PreviewWidget_new(ki);
gtk_flow_box_insert(GTK_FLOW_BOX(previewLayout),temp,0);
gtk_widget_show(temp);
// -------------------
@@ -48,7 +52,6 @@ int buildWindow() {
GValue val = G_VALUE_INIT;
GValue sval = G_VALUE_INIT;
- KonaImage *ki;
kona_image_meta meta;
ki = kona_image_new();
g_value_init(&val, G_TYPE_POINTER);
diff --git a/konaclient-gtk/previewwidget.c b/konaclient-gtk/previewwidget.c
index 68edfd2..766f49b 100644
--- a/konaclient-gtk/previewwidget.c
+++ b/konaclient-gtk/previewwidget.c
@@ -1,23 +1,30 @@
#include "previewwidget.h"
+
G_DEFINE_TYPE(PreviewWidget, PreviewWidget, GTK_TYPE_BIN)
void kona_download_image( GtkWidget *widget, gpointer data )
{
- PreviewWidget_set_image(data, ""); // DEBUG ONLY!
+ PreviewWidget_set_image(data, "/home/kurisu/Pictures/a.xpm"); // DEBUG ONLY!
}
void PreviewWidget_set_image(PreviewWidget *widget, gchar *url) {
- GtkWidget *spinner;
+ GtkWidget *w;
GList *widgets;
widgets = gtk_container_get_children(GTK_CONTAINER(widget));
- spinner = widgets->data;
- gtk_widget_set_visible(spinner, TRUE);
+ w = widgets->data; // Grab GtkImage
- spinner = g_list_next(widgets)->data;
- gtk_widget_set_visible(spinner, FALSE);
+ GdkPixbuf *p;
+ p = gdk_pixbuf_new_from_file(url, NULL);
+ p = gdk_pixbuf_scale_simple(p, 200, 150, GDK_INTERP_BILINEAR);
+ gtk_image_set_from_pixbuf(GTK_IMAGE(w), p);
+
+ gtk_widget_set_visible(w, TRUE);
+
+ w = g_list_next(widgets)->data; // Grab Spinner
+ gtk_widget_set_visible(w, FALSE);
}
@@ -47,7 +54,7 @@ void PreviewWidget_init(PreviewWidget *klass)
g_object_unref(G_OBJECT(builder));
}
-GtkWidget *PreviewWidget_new()
+GtkWidget *PreviewWidget_new(KonaImage* ki)
{
return g_object_new (TYPE_PREVIEWWIDGET, NULL);
}
diff --git a/konaclient-gtk/previewwidget.h b/konaclient-gtk/previewwidget.h
index 308bb5e..556e0af 100644
--- a/konaclient-gtk/previewwidget.h
+++ b/konaclient-gtk/previewwidget.h
@@ -2,9 +2,10 @@
#define PREVIEWWIDGET_H
#include
-
#include
+#include "konaimage.h"
+
G_BEGIN_DECLS
#define TYPE_PREVIEWWIDGET (PreviewWidget_get_type ())
@@ -25,7 +26,7 @@ struct _PreviewWidgetClass {
};
GType PreviewWidget_get_type (void) G_GNUC_CONST;
-GtkWidget* PreviewWidget_new (void);
+GtkWidget* PreviewWidget_new (KonaImage* ki);
void PreviewWidget_set_image(PreviewWidget *widget, gchar *url);