#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include <gtkextra/gtksheet.h>

static void doSomething(GtkWidget * widget, gpointer data)
{
	g_print("hello world\n");
}

static void activate (GtkApplication* app, gpointer userdata)
{
	GtkWidget * window;
	GtkWidget * button;
	GtkWidget * button_box;
	
	window = gtk_application_window_new(app);
	gtk_window_set_title( GTK_WINDOW(window), "Nyan Editor");
	gtk_window_set_default_size( GTK_WINDOW(window), 250, 250);

	button_box = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL);
	gtk_container_add( GTK_CONTAINER(window), button_box );

	button = gtk_button_new_with_label("Hi world!");
	g_signal_connect(button, "clicked", G_CALLBACK( doSomething ), NULL);
	g_signal_connect_swapped(button, "clicked", G_CALLBACK(gtk_widget_destroy), window);
	gtk_container_add( GTK_CONTAINER(button_box), button);

	gtk_widget_show_all(window);	
}	


int main(int argc, char **argv)
{
	char * bob;
	if( NULL == (bob = malloc( 3 * sizeof(bob) )))
		printf("fail to allocate");
	
	bob[0] = 'a';
	bob[1] = 'b';
	bob[2] = 'c';

	int i;
	for( i=2 ; i>=-10; i--)
		printf("%i %i\n", i, bob[i]);
	printf("size of lung %lu\n", sizeof(long));


	GtkApplication *app;
	int status; 

	app = gtk_application_new("org.github.nabulator.nyanEditor", G_APPLICATION_FLAGS_NONE);
	g_signal_connect(app, "activate", G_CALLBACK( activate ) , NULL);
	status = g_application_run( G_APPLICATION(app), argc, argv);
	g_object_unref(app);

	printf("status %i\n", status);
	return status;
}
	
