*/
+#include <gtk/gtk.h>
#include <stdio.h>
#include <glib.h>
#include <udns.h>
return TRUE;
}
-int
-main (int argc, char **argv)
+GtkWidget *entry1;
+GtkWidget *entry2;
+GtkWidget *entry3;
+
+static void
+connect_clicked (GtkWidget *button, gpointer data)
{
- GMainLoop *loop;
GIOChannel *channel;
+ hc_xmpp_t *xmpp;
char *server;
char *user;
char *password;
- hc_xmpp_t *xmpp;
- if (argc < 4)
- {
- printf ("tictactoe server user password\n");
- return 1;
- }
- server = argv[1];
- user = argv[2];
- password = argv[3];
- dns_init (NULL, 1);
+ server = (char *) gtk_entry_get_text (GTK_ENTRY (entry1));
+ user = (char *) gtk_entry_get_text (GTK_ENTRY (entry2));
+ password = (char *) gtk_entry_get_text (GTK_ENTRY (entry3));
xmpp = hc_xmpp_new (hc_xmpp_hook, server, user, password);
hc_xmpp_send_stream (xmpp);
channel = g_io_channel_unix_new (hc_xmpp_fd (xmpp));
- loop = g_main_loop_new (g_main_context_default (), TRUE);
g_io_add_watch (channel, G_IO_IN, rploop, xmpp);
+}
+
+static void
+ui (void)
+{
+ GtkWidget *window;
+ GtkWidget *vbox;
+ GtkWidget *button;
+ window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ vbox = gtk_vbox_new (TRUE, 5);
+ entry1 = gtk_entry_new ();
+ entry2 = gtk_entry_new ();
+ entry3 = gtk_entry_new ();
+ gtk_entry_set_visibility (GTK_ENTRY (entry3), FALSE);
+ button = gtk_button_new_with_label ("Connect");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (connect_clicked), NULL);
+ gtk_container_add (GTK_CONTAINER (window), vbox);
+ gtk_container_add (GTK_CONTAINER (vbox), entry1);
+ gtk_container_add (GTK_CONTAINER (vbox), entry2);
+ gtk_container_add (GTK_CONTAINER (vbox), entry3);
+ gtk_container_add (GTK_CONTAINER (vbox), button);
+ gtk_widget_show_all (window);
+}
+
+int
+main (int argc, char **argv)
+{
+ GMainLoop *loop;
+ gtk_init (&argc, &argv);
+ dns_init (NULL, 1);
+ loop = g_main_loop_new (g_main_context_default (), TRUE);
+ ui ();
g_main_loop_run (loop);
return 0;
}