Blame examples/wheelbarrow/wheelbarrow.c

Packit Service fb6fa5
Packit Service fb6fa5
#include "config.h"
Packit Service fb6fa5
#include <gtk/gtk.h>
Packit Service fb6fa5
Packit Service fb6fa5
/* XPM */
Packit Service fb6fa5
static char * WheelbarrowFull_xpm[] = {
Packit Service fb6fa5
"48 48 64 1",
Packit Service fb6fa5
"       c None",
Packit Service fb6fa5
".      c #DF7DCF3CC71B",
Packit Service fb6fa5
"X      c #965875D669A6",
Packit Service fb6fa5
"o      c #71C671C671C6",
Packit Service fb6fa5
"O      c #A699A289A699",
Packit Service fb6fa5
"+      c #965892489658",
Packit Service fb6fa5
"@      c #8E38410330C2",
Packit Service fb6fa5
"#      c #D75C7DF769A6",
Packit Service fb6fa5
"$      c #F7DECF3CC71B",
Packit Service fb6fa5
"%      c #96588A288E38",
Packit Service fb6fa5
"&      c #A69992489E79",
Packit Service fb6fa5
"*      c #8E3886178E38",
Packit Service fb6fa5
"=      c #104008200820",
Packit Service fb6fa5
"-      c #596510401040",
Packit Service fb6fa5
";      c #C71B30C230C2",
Packit Service fb6fa5
":      c #C71B9A699658",
Packit Service fb6fa5
">      c #618561856185",
Packit Service fb6fa5
",      c #20811C712081",
Packit Service fb6fa5
"<      c #104000000000",
Packit Service fb6fa5
"1      c #861720812081",
Packit Service fb6fa5
"2      c #DF7D4D344103",
Packit Service fb6fa5
"3      c #79E769A671C6",
Packit Service fb6fa5
"4      c #861782078617",
Packit Service fb6fa5
"5      c #41033CF34103",
Packit Service fb6fa5
"6      c #000000000000",
Packit Service fb6fa5
"7      c #49241C711040",
Packit Service fb6fa5
"8      c #492445144924",
Packit Service fb6fa5
"9      c #082008200820",
Packit Service fb6fa5
"0      c #69A618611861",
Packit Service fb6fa5
"q      c #B6DA71C65144",
Packit Service fb6fa5
"w      c #410330C238E3",
Packit Service fb6fa5
"e      c #CF3CBAEAB6DA",
Packit Service fb6fa5
"r      c #71C6451430C2",
Packit Service fb6fa5
"t      c #EFBEDB6CD75C",
Packit Service fb6fa5
"y      c #28A208200820",
Packit Service fb6fa5
"u      c #186110401040",
Packit Service fb6fa5
"i      c #596528A21861",
Packit Service fb6fa5
"p      c #71C661855965",
Packit Service fb6fa5
"a      c #A69996589658",
Packit Service fb6fa5
"s      c #30C228A230C2",
Packit Service fb6fa5
"d      c #BEFBA289AEBA",
Packit Service fb6fa5
"f      c #596545145144",
Packit Service fb6fa5
"g      c #30C230C230C2",
Packit Service fb6fa5
"h      c #8E3882078617",
Packit Service fb6fa5
"j      c #208118612081",
Packit Service fb6fa5
"k      c #38E30C300820",
Packit Service fb6fa5
"l      c #30C2208128A2",
Packit Service fb6fa5
"z      c #38E328A238E3",
Packit Service fb6fa5
"x      c #514438E34924",
Packit Service fb6fa5
"c      c #618555555965",
Packit Service fb6fa5
"v      c #30C2208130C2",
Packit Service fb6fa5
"b      c #38E328A230C2",
Packit Service fb6fa5
"n      c #28A228A228A2",
Packit Service fb6fa5
"m      c #41032CB228A2",
Packit Service fb6fa5
"M      c #104010401040",
Packit Service fb6fa5
"N      c #492438E34103",
Packit Service fb6fa5
"B      c #28A2208128A2",
Packit Service fb6fa5
"V      c #A699596538E3",
Packit Service fb6fa5
"C      c #30C21C711040",
Packit Service fb6fa5
"Z      c #30C218611040",
Packit Service fb6fa5
"A      c #965865955965",
Packit Service fb6fa5
"S      c #618534D32081",
Packit Service fb6fa5
"D      c #38E31C711040",
Packit Service fb6fa5
"F      c #082000000820",
Packit Service fb6fa5
"                                                ",
Packit Service fb6fa5
"          .XoO                                  ",
Packit Service fb6fa5
"         +@#$%o&                                ",
Packit Service fb6fa5
"         *=-;#::o+                              ",
Packit Service fb6fa5
"           >,<12#:34                            ",
Packit Service fb6fa5
"             45671#:X3                          ",
Packit Service fb6fa5
"               +89<02qwo                        ",
Packit Service fb6fa5
"e*                >,67;ro                       ",
Packit Service fb6fa5
"ty>                 459@>+&&                    ",
Packit Service fb6fa5
"$2u+                  >
Packit Service fb6fa5
"%$;=*                *3:.Xa.dfg>                ",
Packit Service fb6fa5
"Oh$;ya             *3d.a8j,Xe.d3g8+             ",
Packit Service fb6fa5
" Oh$;ka          *3d$a8lz,,xxc:.e3g54           ",
Packit Service fb6fa5
"  Oh$;kO       *pd$%svbzz,sxxxxfX..&wn>         ",
Packit Service fb6fa5
"   Oh$@mO    *3dthwlsslszjzxxxxxxx3:td8M4       ",
Packit Service fb6fa5
"    Oh$@g& *3d$XNlvvvlllm,mNwxxxxxxxfa.:,B*     ",
Packit Service fb6fa5
"     Oh$@,Od.czlllllzlmmqV@V#V@fxxxxxxxf:%j5&   ",
Packit Service fb6fa5
"      Oh$1hd5lllslllCCZrV#r#:#2AxxxxxxxxxcdwM*  ",
Packit Service fb6fa5
"       OXq6c.%8vvvllZZiqqApA:mq:Xxcpcxxxxxfdc9* ",
Packit Service fb6fa5
"        2r<6gde3bllZZrVi7S@SV77A::qApxxxxxxfdcM ",
Packit Service fb6fa5
"        :,q-6MN.dfmZZrrSS:#riirDSAX@Af5xxxxxfevo",
Packit Service fb6fa5
"         +A26jguXtAZZZC7iDiCCrVVii7Cmmmxxxxxx%3g",
Packit Service fb6fa5
"          *#16jszN..3DZZZZrCVSA2rZrV7Dmmwxxxx&en",
Packit Service fb6fa5
"           p2yFvzssXe:fCZZCiiD7iiZDiDSSZwwxx8e*>",
Packit Service fb6fa5
"           OA1
Packit Service fb6fa5
"            3206Bwxxszx%et.eaAp77m77mmmf3&eeeg* ",
Packit Service fb6fa5
"             @26MvzxNzvlbwfpdettttttttttt.c,n&  ",
Packit Service fb6fa5
"             *;16=lsNwwNwgsvslbwwvccc3pcfu
Packit Service fb6fa5
"              p;<69BvwwsszslllbBlllllllu<5+     ",
Packit Service fb6fa5
"              OS0y6FBlvvvzvzss,u=Blllj=54       ",
Packit Service fb6fa5
"               c1-699Blvlllllu7k96MMMg4         ",
Packit Service fb6fa5
"               *10y8n6FjvllllB<166668           ",
Packit Service fb6fa5
"                S-kg+>666
Packit Service fb6fa5
"                p71=4 m69996kD8Z-66698&&        ",
Packit Service fb6fa5
"                &i0ycm6n4 ogk17,0<6666g         ",
Packit Service fb6fa5
"                 N-k-<>     >=01-kuu666>        ",
Packit Service fb6fa5
"                 ,6ky&      &46-10ul,66,        ",
Packit Service fb6fa5
"                 Ou0<>       o66y
Packit Service fb6fa5
"                  *kk5       >66By7=xu664       ",
Packit Service fb6fa5
"                   <
Packit Service fb6fa5
"                   *>>       +66uv,zN666*       ",
Packit Service fb6fa5
"                              566,xxj669        ",
Packit Service fb6fa5
"                              4666FF666>        ",
Packit Service fb6fa5
"                               >966666M         ",
Packit Service fb6fa5
"                                oM6668+         ",
Packit Service fb6fa5
"                                  *4            ",
Packit Service fb6fa5
"                                                ",
Packit Service fb6fa5
"                                                "};
Packit Service fb6fa5
Packit Service fb6fa5
Packit Service fb6fa5
/* When invoked (via signal delete_event), terminates the application */
Packit Service fb6fa5
gint close_application( GtkWidget *widget,
Packit Service fb6fa5
                        GdkEvent  *event,
Packit Service fb6fa5
                        gpointer   data )
Packit Service fb6fa5
{
Packit Service fb6fa5
    gtk_main_quit();
Packit Service fb6fa5
    return(FALSE);
Packit Service fb6fa5
}
Packit Service fb6fa5
Packit Service fb6fa5
int main (int argc,
Packit Service fb6fa5
          char *argv[] )
Packit Service fb6fa5
{
Packit Service fb6fa5
    /* GtkWidget is the storage type for widgets */
Packit Service fb6fa5
    GtkWidget *window, *pixmap, *fixed;
Packit Service fb6fa5
    GdkPixmap *gdk_pixmap;
Packit Service fb6fa5
    GdkBitmap *mask;
Packit Service fb6fa5
    GtkStyle *style;
Packit Service fb6fa5
    GdkGC *gc;
Packit Service fb6fa5
    
Packit Service fb6fa5
    /* Create the main window, and attach delete_event signal to terminate
Packit Service fb6fa5
     * the application.  Note that the main window will not have a titlebar
Packit Service fb6fa5
     * since we're making it a popup. */
Packit Service fb6fa5
    gtk_init (&argc, &argv);
Packit Service fb6fa5
    window = gtk_window_new (GTK_WINDOW_POPUP);
Packit Service fb6fa5
    g_signal_connect (G_OBJECT (window), "delete_event",
Packit Service fb6fa5
                      G_CALLBACK (close_application), NULL);
Packit Service fb6fa5
    gtk_widget_show (window);
Packit Service fb6fa5
Packit Service fb6fa5
    /* Now for the pixmap and the pixmap widget */
Packit Service fb6fa5
    style = gtk_widget_get_default_style();
Packit Service fb6fa5
    gc = style->black_gc;
Packit Service fb6fa5
    gdk_pixmap = gdk_pixmap_create_from_xpm_d (window->window, &mask,
Packit Service fb6fa5
                                               &style->bg[GTK_STATE_NORMAL],
Packit Service fb6fa5
                                               WheelbarrowFull_xpm);
Packit Service fb6fa5
    pixmap = gtk_image_new_from_pixmap (gdk_pixmap, mask);
Packit Service fb6fa5
    gtk_widget_show (pixmap);
Packit Service fb6fa5
Packit Service fb6fa5
    /* To display the pixmap, we use a fixed widget to place the pixmap */
Packit Service fb6fa5
    fixed = gtk_fixed_new ();
Packit Service fb6fa5
    gtk_widget_set_size_request (fixed, 200, 200);
Packit Service fb6fa5
    gtk_fixed_put (GTK_FIXED (fixed), pixmap, 0, 0);
Packit Service fb6fa5
    gtk_container_add (GTK_CONTAINER (window), fixed);
Packit Service fb6fa5
    gtk_widget_show (fixed);
Packit Service fb6fa5
Packit Service fb6fa5
    /* This masks out everything except for the image itself */
Packit Service fb6fa5
    gtk_widget_shape_combine_mask (window, mask, 0, 0);
Packit Service fb6fa5
    
Packit Service fb6fa5
    /* show the window */
Packit Service fb6fa5
    gtk_widget_show (window);
Packit Service fb6fa5
    gtk_main ();
Packit Service fb6fa5
          
Packit Service fb6fa5
    return 0;
Packit Service fb6fa5
}