#include <Xmt/Xmt.h>
#include <Xmt/Pixmap.h>
#include <Xmt/Xpm.h>
#include <Xmt/Icon.h>
#include <Xm/PushB.h>

/* XPM */
static char *clock_image [] = {
"48 48 6 1",
"  	m None",
"X	s background m white",
":	s foreground m black",
".	s top_shadow m black",
"#	s bottom_shadow m black",
"o	s select m black",
"                       .                        ",
"                 .............                  ",
"              .........X.........               ",
"            .....XXXXXXXXXXXXX#####             ",
"           ...XXXXXXX####XXXXXXXX###            ",
"         ...XXXXXXXXX#oo.XXXXXXXXXX###          ",
"        ...XXXXXXXXXX#oo.XXXXXXXXXXX###         ",
"       ...XXX####XXXX#...XXXXXX####XX####       ",
"      ...XXXX#oo.XXXXXXXXXXXXXX#oo.XXXX##       ",
"     ...XXXXX#oo.XXXXXXXXXXXXXX#oo.XXXX###      ",
"     ..XXXXXX#...XXXXX..XXXXXXX#...XXXXX##      ",
"    ..XXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXX##     ",
"   ..XXXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXX##    ",
"   ..XX####XXXXXXXXXX.::#XXXXXXXXXXX####XX##    ",
"  ..XXX#oo.XXXXXXXXXX.::#XXXXXXXXXXX#oo.XXX##   ",
"  ..XXX#oo.XXXXXXXXXX.::#XXXXXXXXXXX#oo.XXX##   ",
"  ..XXX#...XXXXXXXXXX.::#XXXXXXXXXXX#...XXX##   ",
" ..XXXXXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXX##  ",
" ..X####XXXXXXXXXXXXX.::#.......XXXXXXX####X##  ",
"..XX#oo.XXXXXXXXXXXXX.::::::::::#XXXXXX#oo.XX## ",
" ..X#oo.XXXXXXXXXXXXX:::::::::::#XXXXXX#oo.X##  ",
" ..X#...XXXXXXXXXXX.::##########XXXXXXX#...X##  ",
" ..XXXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXXXXXXX##  ",
" ..XXXXXXXXXXXX.::#XXXXXXXXXXXXXXXXXXXXXXXXX##  ",
"  ..XXX####XXX.::#XXXXXXXXXXXXXXXXXX####XXX##   ",
"  ..XXX#oo.XX.::#XXXXXXXXXXXXXXXXXXX#oo.XXX##   ",
"  ..XXX#oo.X.::#XXXXXXXXXXXXXXXXXXXX#oo.XXX##   ",
"   ..XX#...XX:#XXXXXXXXXXXXXXXXXXXXX#...XX##    ",
"   ..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX##    ",
"    ..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX##     ",
"     ..XXXXXX####XXXXXXXXXXXXX####XXXXXX##      ",
"     ...XXXXX#oo.XXXXXXXXXXXXX#oo.XXXXX###      ",
"      ..XXXXX#oo.XXXXXXXXXXXXX#oo.XXXX###       ",
"       ...XXX#...XXXXX####XXXX#...XXX###        ",
"       ....XXXXXXXXXXX#oo.XXXXXXXXXX###         ",
"         ...XXXXXXXXXX#oo.XXXXXXXXX###          ",
"           ...XXXXXXXX#...XXXXXXX###            ",
"            .....XXXXXXXXXXXXX#####             ",
"              ...######X#########               ",
"                 .############                  ",
"                       #                        ",
"                                                "};


void main(int argc, char **argv)
{
    XtAppContext app;
    Widget toplevel;
    XmtImage *image;
    Pixmap icon, mask;

    toplevel = XtAppInitialize (&app, "Test", NULL, 0,
				&argc, argv, NULL, NULL, 0);

    XtManageChild(XmCreatePushButton(toplevel, "Hello, World", NULL, 0));

    image = XmtParseXpmData(clock_image);
    XmtRegisterImage("clock", image);
    icon = XmtLookupWidgetPixmap(toplevel, "clock");
    mask = XmtLookupBitmask(toplevel, "clock");
    XmtCreatePixmapIcon(toplevel, icon, mask);

    XtRealizeWidget(toplevel);
    XtAppMainLoop(app);
}
