diff options
author | Thomas White <taw@bitwiz.org.uk> | 2012-04-17 09:56:27 +0200 |
---|---|---|
committer | Thomas White <taw@bitwiz.org.uk> | 2012-04-17 09:56:27 +0200 |
commit | 3e101100a1e64d4ef1ac60f448f12dc9de8dcfbf (patch) | |
tree | f02ca1ccb57b840705079973f1f65e74388c5a41 /src/presentation.h | |
parent | ee108f180c8c199a18ce375114ee3f1553d61d79 (diff) |
Start cleaning out...
Diffstat (limited to 'src/presentation.h')
-rw-r--r-- | src/presentation.h | 67 |
1 files changed, 14 insertions, 53 deletions
diff --git a/src/presentation.h b/src/presentation.h index 5bfc0a5..c28dfe2 100644 --- a/src/presentation.h +++ b/src/presentation.h @@ -67,43 +67,6 @@ enum drag_status }; -struct toolinfo -{ - GtkWidget *tbox; - - void (*click_select)(struct presentation *p, struct toolinfo *tip, - double x, double y, GdkEventButton *event, - enum drag_status *drag_status, - enum drag_reason *drag_reason); - void (*create_default)(struct presentation *p, struct style *sty, - struct slide *s, struct toolinfo *tip); - void (*select)(struct object *o, struct toolinfo *tip); - int (*deselect)(struct object *o, struct toolinfo *tip); - void (*drag)(struct toolinfo *tip, struct presentation *p, - struct object *o, double x, double y); - void (*end_drag)(struct toolinfo *tip, struct presentation *p, - struct object *o, double x, double y); - - void (*create_region)(struct toolinfo *tip, struct presentation *p, - double x1, double y1, double x2, double y2); - - void (*draw_editing_overlay)(struct toolinfo *tip, cairo_t *cr, - struct object *o); - void (*key_pressed)(struct object *o, guint keyval, - struct toolinfo *tip); - void (*im_commit)(struct object *o, gchar *str, struct toolinfo *tip); - - int (*valid_object)(struct object *o); - - void (*realise)(struct toolinfo *tip, GtkWidget *w, - struct presentation *p); - - struct object *(*deserialize)(struct presentation *p, - struct ds_node *root, - struct toolinfo *tip); -}; - - struct prefs { int b_splits; @@ -120,17 +83,11 @@ struct presentation struct prefs *prefs; - struct toolinfo *select_tool; - struct toolinfo *text_tool; - struct toolinfo *image_tool; - GtkWidget *window; GtkWidget *drawingarea; GtkUIManager *ui; GtkActionGroup *action_group; GtkIMContext *im_context; - GtkWidget *tbox; - GtkWidget *cur_tbox; struct notes *notes; /* Pointers to the current "editing" and "projection" slides */ @@ -154,12 +111,10 @@ struct presentation double border_offs_x; double border_offs_y; - /* FIXME: Might have more than one object selected at a time. */ - struct object *editing_object; + struct frame *cur_frame; /* Stylesheet */ StyleSheet *ss; - struct style *default_style; /* Dialogue boxes */ StylesheetWindow *stylesheetwindow; @@ -171,9 +126,6 @@ struct presentation int ss_blank; char ss_geom[256]; - /* Tool status */ - struct toolinfo *cur_tool; - /* Rubber band boxes and related stuff */ double start_corner_x; double start_corner_y; @@ -198,6 +150,17 @@ struct presentation }; +struct frame +{ + struct frame_class *cl; + + struct frame **children; + int n_children; + + char *sc; /* Storycode */ +}; + + extern struct presentation *new_presentation(void); extern void free_presentation(struct presentation *p); @@ -208,10 +171,8 @@ extern void free_slide(struct slide *s); extern void get_titlebar_string(struct presentation *p); -extern int add_object_to_slide(struct slide *s, struct object *o); -extern void remove_object_from_slide(struct slide *s, struct object *o); -extern struct object *find_object_at_position(struct slide *s, - double x, double y); +extern struct frame *find_frame_at_position(struct slide *s, + double x, double y); extern int slide_number(struct presentation *p, struct slide *s); |