aboutsummaryrefslogtreecommitdiff
path: root/src/frame.c
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2018-01-18 22:52:46 +0100
committerThomas White <taw@physics.org>2018-01-18 22:52:46 +0100
commit53830f66ca3cd8573340b4f43945aeedf60e5f5f (patch)
treeac9cf4a26b81a2af1c9a3152f4c9ed7c4c452607 /src/frame.c
parente5caed8842c52b6cb1abfa4e9567174d8a920e75 (diff)
Store macro contents block in text run
We need it in order to find where to delete from, e.g. when paragraphs get united inside a slide title
Diffstat (limited to 'src/frame.c')
-rw-r--r--src/frame.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/frame.c b/src/frame.c
index d5ec137..1bc21bc 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -40,6 +40,7 @@ struct text_run
{
SCBlock *scblock;
SCBlock *macro_real_block;
+ SCBlock *macro_contents;
size_t scblock_offs_bytes; /* Offset from start of SCBlock */
size_t para_offs_bytes; /* Offset from start of paragraph */
size_t len_bytes;
@@ -376,7 +377,8 @@ void set_newline_at_end(Paragraph *para, SCBlock *bl)
}
-void add_run(Paragraph *para, SCBlock *scblock, SCBlock *macro_real,
+void add_run(Paragraph *para, SCBlock *scblock,
+ SCBlock *macro_real, SCBlock *contents_top,
size_t offs_bytes, size_t len_bytes, PangoFontDescription *fdesc,
double col[4])
{
@@ -397,6 +399,7 @@ void add_run(Paragraph *para, SCBlock *scblock, SCBlock *macro_real,
para->runs = runs_new;
para->runs[para->n_runs].scblock = scblock;
para->runs[para->n_runs].macro_real_block = macro_real;
+ para->runs[para->n_runs].macro_contents = contents_top;
para->runs[para->n_runs].scblock_offs_bytes = offs_bytes;
para->runs[para->n_runs].para_offs_bytes = para->offset_last;
para->offset_last += len_bytes;