Institut de Robòtica i Informàtica Industrial
KRD Group

The CuikSuite Project

cuikplay_interface.c

Go to the documentation of this file.
00001 
00012 #include <sys/types.h>
00013 #include <sys/stat.h>
00014 #include <unistd.h>
00015 #include <string.h>
00016 #include <stdio.h>
00017 
00018 #include <gdk/gdkkeysyms.h>
00019 #include <gtk/gtk.h>
00020 
00021 #include "cuikplay_callbacks.h"
00022 #include "cuikplay_interface.h"
00023 #include "cuikplay_support.h"
00024 
00025 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
00026   g_object_set_data_full (G_OBJECT (component), name, \
00027     gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
00028 
00029 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
00030   g_object_set_data (G_OBJECT (component), name, widget)
00031 
00032 GtkWidget*create_window1 (gpointer status,unsigned int ms)
00033 {
00034   GtkWidget *window1;
00035   GtkWidget *hbox3;
00036   GtkWidget *Play;
00037   GtkWidget *alignment4;
00038   GtkWidget *hbox4;
00039   GtkWidget *image2;
00040   GtkWidget *label2;
00041   GtkWidget *Pause;
00042   GtkWidget *alignment5;
00043   GtkWidget *hbox5;
00044   GtkWidget *image3;
00045   GtkWidget *label3;
00046   GtkWidget *hscale1;
00047   GtkWidget *Quit;
00048   GtkWidget *alignment6;
00049   GtkWidget *hbox6;
00050   GtkWidget *image4;
00051   GtkWidget *label4;
00052 
00053   window1 = gtk_window_new (GTK_WINDOW_TOPLEVEL);
00054   gtk_widget_set_size_request (window1, 500, 30);
00055   gtk_window_set_title (GTK_WINDOW (window1), _("CuikAnimation"));
00056   gtk_window_set_resizable (GTK_WINDOW (window1), FALSE);
00057 
00058   hbox3 = gtk_hbox_new (FALSE, 3);
00059   gtk_widget_show (hbox3);
00060   gtk_container_add (GTK_CONTAINER (window1), hbox3);
00061 
00062   Play = gtk_button_new ();
00063   gtk_widget_show (Play);
00064   gtk_box_pack_start (GTK_BOX (hbox3), Play, FALSE, FALSE, 0);
00065   gtk_widget_set_size_request (Play, 70, 30);
00066 
00067   alignment4 = gtk_alignment_new (0.5, 0.5, 0, 0);
00068   gtk_widget_show (alignment4);
00069   gtk_container_add (GTK_CONTAINER (Play), alignment4);
00070 
00071   hbox4 = gtk_hbox_new (FALSE, 2);
00072   gtk_widget_show (hbox4);
00073   gtk_container_add (GTK_CONTAINER (alignment4), hbox4);
00074 
00075   image2 = gtk_image_new_from_stock ("gtk-media-play", GTK_ICON_SIZE_BUTTON);
00076   gtk_widget_show (image2);
00077   gtk_box_pack_start (GTK_BOX (hbox4), image2, FALSE, FALSE, 0);
00078 
00079   label2 = gtk_label_new_with_mnemonic (_("Play"));
00080   gtk_widget_show (label2);
00081   gtk_box_pack_start (GTK_BOX (hbox4), label2, FALSE, FALSE, 0);
00082 
00083   Pause = gtk_button_new ();
00084   gtk_widget_show (Pause);
00085   gtk_box_pack_start (GTK_BOX (hbox3), Pause, FALSE, FALSE, 0);
00086   gtk_widget_set_size_request (Pause, 70, 30);
00087 
00088   alignment5 = gtk_alignment_new (0.5, 0.5, 0, 0);
00089   gtk_widget_show (alignment5);
00090   gtk_container_add (GTK_CONTAINER (Pause), alignment5);
00091 
00092   hbox5 = gtk_hbox_new (FALSE, 2);
00093   gtk_widget_show (hbox5);
00094   gtk_container_add (GTK_CONTAINER (alignment5), hbox5);
00095 
00096   image3 = gtk_image_new_from_stock ("gtk-media-pause", GTK_ICON_SIZE_BUTTON);
00097   gtk_widget_show (image3);
00098   gtk_box_pack_start (GTK_BOX (hbox5), image3, FALSE, FALSE, 0);
00099 
00100   label3 = gtk_label_new_with_mnemonic (_("Pause"));
00101   gtk_widget_show (label3);
00102   gtk_box_pack_start (GTK_BOX (hbox5), label3, FALSE, FALSE, 0);
00103 
00104   hscale1 = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, ms, 1, 1, 1)));
00105   gtk_widget_show (hscale1);
00106   gtk_box_pack_start (GTK_BOX (hbox3), hscale1, FALSE, FALSE, 0);
00107   gtk_widget_set_size_request (hscale1, 280, 20);
00108   gtk_scale_set_draw_value (GTK_SCALE (hscale1), FALSE);
00109   gtk_scale_set_digits (GTK_SCALE (hscale1), 0);
00110 
00111   Quit = gtk_button_new ();
00112   gtk_widget_show (Quit);
00113   gtk_box_pack_start (GTK_BOX (hbox3), Quit, FALSE, FALSE, 0);
00114   gtk_widget_set_size_request (Quit, 70, 30);
00115 
00116   alignment6 = gtk_alignment_new (0.5, 0.5, 0, 0);
00117   gtk_widget_show (alignment6);
00118   gtk_container_add (GTK_CONTAINER (Quit), alignment6);
00119 
00120   hbox6 = gtk_hbox_new (FALSE, 2);
00121   gtk_widget_show (hbox6);
00122   gtk_container_add (GTK_CONTAINER (alignment6), hbox6);
00123 
00124   image4 = gtk_image_new_from_stock ("gtk-quit", GTK_ICON_SIZE_BUTTON);
00125   gtk_widget_show (image4);
00126   gtk_box_pack_start (GTK_BOX (hbox6), image4, FALSE, FALSE, 0);
00127 
00128   label4 = gtk_label_new_with_mnemonic (_("Quit"));
00129   gtk_widget_show (label4);
00130   gtk_box_pack_start (GTK_BOX (hbox6), label4, FALSE, FALSE, 0);
00131 
00132   g_signal_connect ((gpointer) Play, "clicked",
00133                     G_CALLBACK (on_button3_clicked),
00134                     status);
00135   g_signal_connect ((gpointer) Pause, "clicked",
00136                     G_CALLBACK (on_button4_clicked),
00137                     status);
00138   g_signal_connect ((gpointer) hscale1, "value_changed",
00139                     G_CALLBACK (on_hscale1_value_changed),
00140                     status);
00141   g_signal_connect ((gpointer) Quit, "clicked",
00142                     G_CALLBACK (on_quit),
00143                     status);
00144 
00145   /* Store pointers to all widgets, for use by lookup_widget(). */
00146   GLADE_HOOKUP_OBJECT_NO_REF (window1, window1, "window1");
00147   GLADE_HOOKUP_OBJECT (window1, hbox3, "hbox3");
00148   GLADE_HOOKUP_OBJECT (window1, Play, "Play");
00149   GLADE_HOOKUP_OBJECT (window1, alignment4, "alignment4");
00150   GLADE_HOOKUP_OBJECT (window1, hbox4, "hbox4");
00151   GLADE_HOOKUP_OBJECT (window1, image2, "image2");
00152   GLADE_HOOKUP_OBJECT (window1, label2, "label2");
00153   GLADE_HOOKUP_OBJECT (window1, Pause, "Pause");
00154   GLADE_HOOKUP_OBJECT (window1, alignment5, "alignment5");
00155   GLADE_HOOKUP_OBJECT (window1, hbox5, "hbox5");
00156   GLADE_HOOKUP_OBJECT (window1, image3, "image3");
00157   GLADE_HOOKUP_OBJECT (window1, label3, "label3");
00158   GLADE_HOOKUP_OBJECT (window1, hscale1, "hscale1");
00159   GLADE_HOOKUP_OBJECT (window1, Quit, "Quit");
00160   GLADE_HOOKUP_OBJECT (window1, alignment6, "alignment6");
00161   GLADE_HOOKUP_OBJECT (window1, hbox6, "hbox6");
00162   GLADE_HOOKUP_OBJECT (window1, image4, "image4");
00163   GLADE_HOOKUP_OBJECT (window1, label4, "label4");
00164 
00165   return window1;
00166 }
00167