OSDN Git Service

Initial commit
[kp123/kp123.git] / src / padarea.h
1
2 #ifndef __KP_PADAREA_H__
3 #define __KP_PADAREA_H__
4
5 #include "defs.h"
6
7 G_BEGIN_DECLS
8
9 #define KP_TYPE_PADAREA (kp_padarea_get_type ())
10 #define KP_PADAREA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), KP_TYPE_PADAREA, KpPadArea))
11 #define KP_PADAREA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), KP_TYPE_PADAREA, KpPadAreaClass))
12 #define KP_IS_PADAREA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), KP_TYPE_PADAREA))
13 #define KP_IS_PADAREA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), KP_TYPE_PADAREA))
14 #define KP_PADAREA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), KP_TYPE_PADAREA, KpPadAreaClass))
15
16 typedef struct _KpPadArea KpPadArea;
17 typedef struct _KpPadAreaClass KpPadAreaClass;
18
19 struct _KpPadArea {
20     GtkDrawingArea     parent_instance;
21     gboolean annotate;
22     GList   *strokes;
23     GList   *curstroke;
24     gint    instroke, line_width, sig_id_stroke_added, signal;
25 };
26
27 struct _KpPadAreaClass {
28     GtkDrawingAreaClass    parent_class;
29     void (*stroke_added)(KpPadArea *self, gpointer ptr);
30 };
31
32 void    kp_padarea_clear(KpPadArea *self);
33 void    kp_padarea_undo(KpPadArea *self);
34 void    kp_padarea_annotate(KpPadArea *self, gboolean annotate);
35 void    kp_padarea_changed_cb(KpPadArea *self);
36
37 GType   kp_padarea_get_type(void);
38
39 G_END_DECLS
40
41 #endif