summaryrefslogtreecommitdiff
path: root/tex/context/base/page-ins.mkiv
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2012-07-17 16:42:00 +0200
committerHans Hagen <pragma@wxs.nl>2012-07-17 16:42:00 +0200
commitb118ddb35b0a15f0a1f4868e93ca5833d833f371 (patch)
tree3551c2c7d70394b2e49b97bb598a932e05268e15 /tex/context/base/page-ins.mkiv
parentcc4b51097349dc33a2364d2ee87ec9b6b87fdcac (diff)
downloadcontext-b118ddb35b0a15f0a1f4868e93ca5833d833f371.tar.gz
beta 2012.07.17 16:42
Diffstat (limited to 'tex/context/base/page-ins.mkiv')
-rw-r--r--tex/context/base/page-ins.mkiv43
1 files changed, 24 insertions, 19 deletions
diff --git a/tex/context/base/page-ins.mkiv b/tex/context/base/page-ins.mkiv
index cb952e6e7..11b025ee0 100644
--- a/tex/context/base/page-ins.mkiv
+++ b/tex/context/base/page-ins.mkiv
@@ -31,6 +31,13 @@
\installcommandhandler \??insertion {insertion} \??insertion
+\setupinsertion
+ [%c!n=\plusone,
+ %c!distance=\zeropoint,
+ %c!maxheight=\maxdimen,
+ %c!factor=\plusthousand,
+ \c!location=\v!page]
+
\newcount\currentinsertionnumber % This is a count and not a macro !
\newtoks\t_page_inserts_list
@@ -48,22 +55,17 @@
\unexpanded\def\page_inserts_synchronize_registers
{\currentinsertionnumber\csname\??insertionnumber\currentinsertion\endcsname}
+% for practical reasone we still set these elsewhere but that might chaneg in the future
+%
+% \global\count\currentinsertionnumber\numexpr\insertionparameter\c!factor/\insertionparameter\c!n\relax
+% \global\skip \currentinsertionnumber\insertionparameter\c!distance \relax
+% \global\dimen\currentinsertionnumber\insertionparameter\c!maxheight\relax}
+
\appendtoks
\page_inserts_synchronize_registers
\to \everysetupinsertion
-% \setupinsertion
-% [\c!distance=\zeropoint,
-% \c!maxheight=\maxdimen,
-% \c!factor=\plusthousand]
-%
-% \unexpanded\def\page_inserts_synchronize_registers
-% {\currentinsertionnumber\csname\??insertionnumber\currentinsertion\endcsname
-% \global\count\currentinsertionnumber\insertionparameter\c!factor \relax
-% \global\skip \currentinsertionnumber\insertionparameter\c!distance \relax
-% \global\dimen\currentinsertionnumber\insertionparameter\c!maxheight\relax}
-
-\unexpanded\def\page_inserts_process#1%
+\unexpanded\def\page_inserts_process#1% beware, this addapts currentinsertion !
{\edef\currentinsertion{#1}%
\currentinsertionnumber\csname\??insertionnumber\currentinsertion\endcsname
\doprocessinsert\currentinsertionnumber} % old method
@@ -105,13 +107,7 @@
\else
\expandafter\newinsert\csname\??insertionnumber\currentinsertion\endcsname
\page_inserts_synchronize_registers
- \ctxcommand{defineinsertion
- {
- name = "\currentinsertion",
- number = \number\currentinsertionnumber,
- }
- }%
- %
+ \ctxcommand{defineinsertion("\currentinsertion",{ number = \number\currentinsertionnumber })}%
\t_page_inserts_list\expandafter\expandafter\expandafter
{\expandafter\the\expandafter\t_page_inserts_list
\expandafter\page_inserts_process\csname\??insertionnumber\currentinsertion\endcsname}%
@@ -121,6 +117,15 @@
\fi
\to \everydefineinsertion
+\appendtoks
+ \ctxcommand{setupinsertion("\currentinsertion",{
+ location = "\insertionparameter\c!location",
+ })}%
+\to \everysetupinsertion
+
+\unexpanded\def\page_inserts_set_location#1#2% fast one
+ {\ctxcommand{setinsertionlocation("#1","#2")}}
+
%D Auxiliary macros:
\def\page_insert_insertion_height#1%