aboutsummaryrefslogtreecommitdiff
path: root/src/objects.c
diff options
context:
space:
mode:
authorThomas White <taw@bitwiz.org.uk>2011-11-09 00:19:04 +0100
committerThomas White <taw@bitwiz.org.uk>2011-11-09 00:19:04 +0100
commit9c4933dfe7306080056beaaff99c27991a7c473d (patch)
tree407c1f093503617309664df827f0276ac53a8351 /src/objects.c
parente64a4eb72eb99f4995e6b48b06389fbb45ce00e8 (diff)
Fix and rationalise update/redraw logic
Diffstat (limited to 'src/objects.c')
-rw-r--r--src/objects.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/objects.c b/src/objects.c
index 263c7b2..36e7419 100644
--- a/src/objects.c
+++ b/src/objects.c
@@ -173,7 +173,6 @@ void notify_style_update(struct presentation *p, struct style *sty)
s->objects[j]->update_object(s->objects[j]);
if ( p->cur_edit_slide == s ) changed = 1;
- break;
}
@@ -192,6 +191,27 @@ void delete_object(struct object *o)
}
+void realise_everything(struct presentation *p)
+{
+ int i;
+
+ p->text_tool->realise(p->text_tool, p->drawingarea);
+
+ for ( i=0; i<p->num_slides; i++ ) {
+
+ int j;
+ struct slide *s;
+
+ s = p->slides[i];
+
+ for ( j=0; j<p->slides[i]->num_objects; j++ ) {
+ s->objects[j]->update_object(s->objects[j]);
+ }
+
+ }
+}
+
+
enum corner which_corner(double xp, double yp, struct object *o)
{
double x, y; /* Relative to object position */