diff options
author | Thomas White <taw@bitwiz.me.uk> | 2019-03-05 23:34:59 +0100 |
---|---|---|
committer | Thomas White <taw@bitwiz.me.uk> | 2019-03-06 00:02:49 +0100 |
commit | b147d7a36768dc5789ff47a77fd149034ee87d69 (patch) | |
tree | a2f8e91cc11fea809de6ee0804f6165ee86f09b2 /libstorycode/narrative_render_cairo.c | |
parent | c0d175a8e1eadbbc32c66dd36915dfe8ba43f23d (diff) |
Cursor movement and basic text editing
Diffstat (limited to 'libstorycode/narrative_render_cairo.c')
-rw-r--r-- | libstorycode/narrative_render_cairo.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/libstorycode/narrative_render_cairo.c b/libstorycode/narrative_render_cairo.c index 744822d..6293c44 100644 --- a/libstorycode/narrative_render_cairo.c +++ b/libstorycode/narrative_render_cairo.c @@ -189,8 +189,9 @@ static void wrap_slide(struct narrative_item *item, Stylesheet *ss, ImageStore * } -int narrative_wrap(Narrative *n, Stylesheet *stylesheet, PangoLanguage *lang, - PangoContext *pc, double w, ImageStore *is) +int narrative_wrap_range(Narrative *n, Stylesheet *stylesheet, PangoLanguage *lang, + PangoContext *pc, double w, ImageStore *is, + int min, int max) { int i; struct length pad[4]; @@ -204,7 +205,7 @@ int narrative_wrap(Narrative *n, Stylesheet *stylesheet, PangoLanguage *lang, n->w = w; w -= n->space_l + n->space_r; - for ( i=0; i<n->n_items; i++ ) { + for ( i=min; i<=max; i++ ) { switch ( n->items[i].type ) { @@ -237,6 +238,14 @@ int narrative_wrap(Narrative *n, Stylesheet *stylesheet, PangoLanguage *lang, } +int narrative_wrap(Narrative *n, Stylesheet *stylesheet, PangoLanguage *lang, + PangoContext *pc, double w, ImageStore *is) +{ + return narrative_wrap_range(n, stylesheet, lang, pc, w, is, + 0, n->n_items-1); +} + + double narrative_get_height(Narrative *n) { int i; |