rendered paste body#include <stdio.h>#include <string.h>#include <errno.h>#include "pz.h"static PzModule *circle;int x, y, tmp_x, tmp_y;static PzWidget *wid;int circle_dir;int started;void draw_circle (PzWidget *wid, ttk_surface srf) {ttk_fillellipse(srf, x, y, 6, 6, ttk_makecol(255,0,0));}int event_circle (PzEvent *ev) { if(started) { switch(ev->arg) { case PZ_BUTTON_MENU: circle_dir = 0; case PZ_BUTTON_PLAY: circle_dir = 1; case PZ_BUTTON_PREVIOUS: circle_dir = 1; case PZ_BUTTON_NEXT: circle_dir = 1; case PZ_BUTTON_ACTION: if(!started) started = 1; default: move_circle(); }}int move_circle (){switch (circle_dir){ case 0: y+=5; wid->dirty++; break; case 1: y-=5; wid->dirty++; break; case 2: x-=5; wid->dirty++; break; case 3: x+=5; wid->dirty++; break;}}PzWindow *new_circle_window(){ PzWindow *ret; ret = pz_new_window ("Circle", PZ_WINDOW_NORMAL); wid = pz_add_widget (ret, draw_circle, event_circle); return pz_finish_window (ret);}void cleanup_circle() { printf ("Bye-bye now...\n");}void init_circle() { circle = pz_register_module ("circle", cleanup_circle); pz_menu_add_action ("/Extras/Games/Circle", new_circle_window);}PZ_MOD_INIT (init_circle)