Beispiel #1
0
void sprite_update(sprite *s){
	ACCELERATE(x);
	ACCELERATE(y);
	DRAG(x);
	DRAG(y);
	s->user_update(s);
}
int getRotateParams(	void )
{

  int 		ret;

	ret=0;
	dialog=create_dialog1();
       GTK_ADJUSTMENT(adj_angle)->value= par.angle ;
    	gtk_widget_set_usize(WIDG(drawingarea1), par.width, par.height);

	// add callback for redraw & value changed

 	 gtk_signal_connect(GTK_OBJECT(WIDG(drawingarea1)), "expose_event",
		       GTK_SIGNAL_FUNC(gui_draw),
		       NULL);

	#define DRAG(x)   gtk_signal_connect(GTK_OBJECT(WIDG(hscale1)), #x, \
		       GTK_SIGNAL_FUNC(gui_update), NULL);

	DRAG(drag_data_received);
	DRAG(drag_motion);
	DRAG(drag_data_get);
	DRAG(drag_begin);
	DRAG(value_changed);

	//
	if(gtk_dialog_run(GTK_DIALOG(dialog))==GTK_RESPONSE_OK)
	{
			  par.angle = GTK_ADJUSTMENT(adj_angle)->value;
			//printf("\n Angle : %3.2f\n", par.angle);
				ret=1;
	}

	gtk_widget_destroy(dialog);

	return ret;

}