Home | History | Annotate | Download | only in skin
      1 /* Copyright (C) 2007-2008 The Android Open Source Project
      2 **
      3 ** This software is licensed under the terms of the GNU General Public
      4 ** License version 2, as published by the Free Software Foundation, and
      5 ** may be copied, distributed, and modified under those terms.
      6 **
      7 ** This program is distributed in the hope that it will be useful,
      8 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
      9 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     10 ** GNU General Public License for more details.
     11 */
     12 #ifndef _ANDROID_SKIN_TRACKBALL_H
     13 #define _ANDROID_SKIN_TRACKBALL_H
     14 
     15 #include <SDL.h>
     16 #include "android/skin/rect.h"
     17 
     18 typedef struct SkinTrackBall  SkinTrackBall;
     19 
     20 typedef struct SkinTrackBallParameters
     21 {
     22     int       diameter;
     23     int       ring;
     24     unsigned  ball_color;
     25     unsigned  dot_color;
     26     unsigned  ring_color;
     27 }
     28 SkinTrackBallParameters;
     29 
     30 
     31 extern SkinTrackBall*  skin_trackball_create  ( SkinTrackBallParameters*  params );
     32 extern void            skin_trackball_rect    ( SkinTrackBall*  ball, SDL_Rect*  rect );
     33 extern int             skin_trackball_contains( SkinTrackBall*  ball, int  x, int  y );
     34 extern int             skin_trackball_move    ( SkinTrackBall*  ball, int  dx, int  dy );
     35 extern void            skin_trackball_refresh ( SkinTrackBall*  ball );
     36 extern void            skin_trackball_draw    ( SkinTrackBall*  ball, int  x, int  y, SDL_Surface*  dst );
     37 extern void            skin_trackball_destroy ( SkinTrackBall*  ball );
     38 
     39 /* this sets the rotation that will be applied to mouse events sent to the system */
     40 extern void            skin_trackball_set_rotation( SkinTrackBall*  ball, SkinRotation  rotation);
     41 
     42 #endif /* END */
     43 
     44