aboutsummaryrefslogtreecommitdiffstats
path: root/skins/skin_trackball.h
blob: 3ea6d2d4a9210658efd37fc2c322a29e4e9f83ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* Copyright (C) 2007-2008 The Android Open Source Project
**
** This software is licensed under the terms of the GNU General Public
** License version 2, as published by the Free Software Foundation, and
** may be copied, distributed, and modified under those terms.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
** GNU General Public License for more details.
*/
#ifndef _ANDROID_SKIN_TRACKBALL_H
#define _ANDROID_SKIN_TRACKBALL_H

#include <SDL.h>

typedef struct SkinTrackBall  SkinTrackBall;

typedef struct SkinTrackBallParameters
{
    int       diameter;
    int       ring;
    unsigned  ball_color;
    unsigned  dot_color;
    unsigned  ring_color;
}
SkinTrackBallParameters;


extern SkinTrackBall*  skin_trackball_create  ( SkinTrackBallParameters*  params );
extern void            skin_trackball_rect    ( SkinTrackBall*  ball, SDL_Rect*  rect );
extern int             skin_trackball_contains( SkinTrackBall*  ball, int  x, int  y );
extern int             skin_trackball_move    ( SkinTrackBall*  ball, int  dx, int  dy );
extern void            skin_trackball_refresh ( SkinTrackBall*  ball );
extern void            skin_trackball_draw    ( SkinTrackBall*  ball, int  x, int  y, SDL_Surface*  dst );
extern void            skin_trackball_destroy ( SkinTrackBall*  ball );

#endif /* END */