4 * PCB, interactive printed circuit board design
5 * Copyright (C) 2009 PCB Contributors (see ChangeLog for details)
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 * Contact addresses for paper mail and Email:
22 * Thomas Nau, Schlehenweg 15, 88471 Baustetten, Germany
23 * Thomas.Nau@rz.uni-ulm.de
27 #ifndef __GHID_TRACKBALL_H__
28 #define __GHID_TRACKBALL_H__
31 #define GHID_TYPE_TRACKBALL (ghid_trackball_get_type())
32 #define GHID_TRACKBALL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GHID_TYPE_TRACKBALL, GhidTrackball))
33 #define GHID_TRACKBALL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GHID_TYPE_TRACKBALL, GhidTrackballClass))
34 #define GHID_IS_TRACKBALL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GHID_TYPE_TRACKBALL))
35 #define GHID_TRACKBALL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GHID_TYPE_TRACKBALL, GhidTrackballClass))
37 typedef struct _GhidTrackballClass GhidTrackballClass
;
38 typedef struct _GhidTrackball GhidTrackball
;
41 struct _GhidTrackballClass
43 GtkVBoxClass parent_class
;
45 void (*rotation_changed
) (GhidTrackball
*ball
, gpointer rotation
, gpointer user_data
);
46 void (*view_2d_changed
) (GhidTrackball
*ball
, gboolean view_2d
, gpointer user_data
);
51 GtkVBox parent_instance
;
53 GtkWidget
*drawing_area
;
64 GType
ghid_trackball_get_type (void);
66 GtkWidget
*ghid_trackball_new (void);
68 #endif /* __GHID_TRACKBALL_H__ */