All pastes #145511 Raw Edit

Mine

public c v1 · immutable
#145511 ·published 2006-08-23 01:34 UTC
rendered paste body
#include <stdio.h>#include <dirent.h>#include <ttk.h>#include "izilla.h"#include "desktop.h"//Function Prototypesint global_event_handler(int ev, int earg, int time);extern int ttk_mouse_down(TWidget * wid, int btn);extern int ttk_mouse_scroll(TWidget * wid, int dir);TWidget * get_widget_under_mouse(void);//Global Event Handlerint global_event_handler(int ev, int earg, int time){	int ret = -1;	TWidget * wid;	switch(ev)	{		case TTK_BUTTON_DOWN:			switch (earg)			{				case TTK_BUTTON_ACTION:					//nothing for now					break;				case TTK_BUTTON_HOLD:					//nothing for now					break;				default:					wid = get_widget_under_mouse();					if(wid!=NULL) wid->dirty++;					ret = ttk_mouse_down(mouse, earg);					break;			}			break;		case TTK_BUTTON_UP:			//nothing for now			break;		case TTK_SCROLL:			wid = get_widget_under_mouse();			if(wid!=NULL) wid->dirty++;			ret = ttk_mouse_scroll(mouse, earg);			break;	}	if(ret >= 0)	{		return ret;	}	else	{		return TTK_EV_UNUSED;	}}TWidget * get_widget_under_mouse(){        TWidget * ret = NULL;        TWidgetList * twl = win->widgets;        while (ret==NULL && twl!=NULL) {                if(strcmp(twl->v->name, "mouse"))                        if((mouse->x > twl->v->x) && (mouse->x < (twl->v->x + twl->v->w)))                                if((mouse->y > twl->v->y) && (mouse->y < (twl->v->y + twl->v->h)))                                        ret = twl->v;                twl = twl->next;		}        return ret;}