summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/page-lay.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv/page-lay.mkiv')
-rw-r--r--tex/context/base/mkiv/page-lay.mkiv56
1 files changed, 42 insertions, 14 deletions
diff --git a/tex/context/base/mkiv/page-lay.mkiv b/tex/context/base/mkiv/page-lay.mkiv
index f94517144..bde86e8b1 100644
--- a/tex/context/base/mkiv/page-lay.mkiv
+++ b/tex/context/base/mkiv/page-lay.mkiv
@@ -363,20 +363,35 @@
\unexpanded\def\definepapersize
{\dotripleempty\page_paper_define_size}
+% \def\page_paper_define_size[#1][#2][#3]%
+% {\edef\currentlayouttarget{#1}%
+% \ifx\currentlayouttarget\empty
+% % invalid target
+% \else
+% \doifelseassignment{#2}
+% {\definelayouttarget[#1][#2]}
+% {\setevalue{\??layoutpaper#1}{#2}%
+% \ifthirdargument
+% \setevalue{\??layoutprint#1}{#3}%
+% \else
+% \setevalue{\??layoutprint#1}{#2}%
+% \fi}%
+% \fi}
+
\def\page_paper_define_size[#1][#2][#3]%
{\edef\currentlayouttarget{#1}%
\ifx\currentlayouttarget\empty
% invalid target
+ \else\ifcondition\validassignment{#2}%
+ \definelayouttarget[#1][#2]%
\else
- \doifelseassignment{#2}
- {\definelayouttarget[#1][#2]}
- {\setevalue{\??layoutpaper#1}{#2}%
- \ifthirdargument
- \setevalue{\??layoutprint#1}{#3}%
- \else
- \setevalue{\??layoutprint#1}{#2}%
- \fi}%
- \fi}
+ \setevalue{\??layoutpaper#1}{#2}%
+ \ifthirdargument
+ \setevalue{\??layoutprint#1}{#3}%
+ \else
+ \setevalue{\??layoutprint#1}{#2}%
+ \fi
+ \fi\fi}
\appendtoks
\letvalue{\??layoutcurrent\currentlayouttarget}\relax
@@ -398,13 +413,26 @@
\unexpanded\def\setuppapersize
{\dodoubleempty\page_paper_setup_size}
+% \unexpanded\def\page_paper_setup_size[#1][#2]%
+% {\iffirstargument
+% \doifelseassignment{#1}
+% {\page_paper_setup_size_settings[#1]}
+% {\doifelseassignment{#2}
+% {\page_paper_setup_size_settings_by_name[#1][#2]}
+% {\page_paper_setup_size_change_size[#1][#2]}}%
+% \else
+% \page_paper_restore
+% \fi}
+
\unexpanded\def\page_paper_setup_size[#1][#2]%
{\iffirstargument
- \doifelseassignment{#1}
- {\page_paper_setup_size_settings[#1]}
- {\doifelseassignment{#2}
- {\page_paper_setup_size_settings_by_name[#1][#2]}
- {\page_paper_setup_size_change_size[#1][#2]}}%
+ \ifcondition\validassignment{#1}%
+ \page_paper_setup_size_settings[#1]%
+ \else\ifcondition\validassignment{#2}%
+ \page_paper_setup_size_settings_by_name[#1][#2]%
+ \else
+ \page_paper_setup_size_change_size[#1][#2]%
+ \fi\fi
\else
\page_paper_restore
\fi}