konaclient-gtk/konaclient-gtk/main.c

88 lines
1.9 KiB
C
Raw Normal View History

2015-09-26 14:01:51 +02:00
// USE: libsoup (http), json-glib
2015-09-07 18:37:29 +02:00
#include <gtk/gtk.h>
#include "previewwidget.h"
2016-06-04 18:33:45 +02:00
#include "konaimage.h"
2015-09-07 18:37:29 +02:00
int buildWindow();
int buildWindow() {
GtkWindow *mainWindow;
GtkBuilder *builder;
GtkWidget *previewLayout;
GtkWidget *previewContainer;
GtkWidget *temp;
builder = gtk_builder_new();
gtk_builder_add_from_file(builder, "glade/mainWindow.glade", NULL);
2016-06-04 18:33:45 +02:00
mainWindow = GTK_WINDOW(gtk_builder_get_object(GTK_BUILDER(builder), "mainWindow"));
2015-09-07 18:37:29 +02:00
gtk_builder_connect_signals(builder, NULL);
2016-06-04 18:33:45 +02:00
previewContainer = GTK_WIDGET(gtk_builder_get_object(GTK_BUILDER(builder), "viewportPreview"));
2015-09-07 18:37:29 +02:00
previewLayout = gtk_flow_box_new();
gtk_flow_box_set_max_children_per_line(GTK_FLOW_BOX(previewLayout), 200);
for (int i = 0; i < 100; ++i) {
// CUSTOM!!!!!
temp = PreviewWidget_new();
gtk_flow_box_insert(GTK_FLOW_BOX(previewLayout),temp,0);
gtk_widget_show(temp);
// -------------------
}
gtk_widget_show(previewLayout);
gtk_container_add(GTK_CONTAINER(previewContainer), previewLayout);
g_object_unref(G_OBJECT(builder));
gtk_widget_show(GTK_WIDGET(mainWindow));
2015-09-26 14:01:51 +02:00
2016-06-04 18:33:45 +02:00
/*** TESTING LIB ***/
GValue val = G_VALUE_INIT;
KonaImage *ki;
kona_image_meta meta;
ki = kona_image_new();
g_value_init(&val, G_TYPE_POINTER);
2015-09-26 14:01:51 +02:00
2016-06-04 18:33:45 +02:00
meta.height = 100;
meta.width = 200;
meta.image_url = "MEOWMEOWMEOW";
g_value_set_pointer(&val, (gpointer) &meta);
g_object_set_property((GObject*) ki, "meta", &val);
g_value_reset(&val);
meta.height = 0;
meta.width = 1;
// Read back
g_object_get_property((GObject*) ki, "meta", &val);
kona_image_meta *metret;
metret = g_value_get_pointer(&val);
printf("WIDTH=%i\n", metret->width);
printf("HEIGHT=%i\n", metret->height);
2015-09-07 18:37:29 +02:00
}
int main(int argc, char **argv)
{
gtk_init(&argc, &argv);
buildWindow();
gtk_main();
return 0;
}
// REMEBER THIS FUNCTION: g_clear_object ()