summaryrefslogtreecommitdiff
path: root/tex/context/base/prop-ini.tex
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2003-07-21 00:00:00 +0200
committerHans Hagen <pragma@wxs.nl>2003-07-21 00:00:00 +0200
commit91f5bdb707b063e6e7acc31073db4cc17bd66593 (patch)
tree56f7dd7e967287dd8e0897c6ed3e013bbd7b7a58 /tex/context/base/prop-ini.tex
parent11bb0fd566ba8f601ead37cb5e05e9b8ad04b96a (diff)
downloadcontext-91f5bdb707b063e6e7acc31073db4cc17bd66593.tar.gz
stable 2003.07.21
Diffstat (limited to 'tex/context/base/prop-ini.tex')
-rw-r--r--tex/context/base/prop-ini.tex48
1 files changed, 48 insertions, 0 deletions
diff --git a/tex/context/base/prop-ini.tex b/tex/context/base/prop-ini.tex
new file mode 100644
index 000000000..3c077564f
--- /dev/null
+++ b/tex/context/base/prop-ini.tex
@@ -0,0 +1,48 @@
+%D \module
+%D [ file=prop-ini,
+%D version=2003.04.20,
+%D title=\CONTEXT\ Property Macros,
+%D subtitle=Initialization,
+%D author=Hans Hagen,
+%D date=\currentdate,
+%D copyright={PRAGMA / Hans Hagen \& Ton Otten}]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+\writestatus{loading}{Context Property Macros / initialization}
+
+%D Experimental module.
+
+%D local or not? like colors? cross pages? needed?
+
+%D combine with newfont.tex
+
+\unprotect
+
+\def\defineproperty
+ {\dotripleempty\dodefineproperty}
+
+\def\dodefineproperty[#1][#2][#3]% todo : global def
+ {\ifundefined{\??py#1\c!titel}%
+ \getgparameters[\??py#1][\c!titel=#1,#3]%
+ \setgvalue{\e!start#1}{\getvalue{init#2property}{#1}{#2}}%
+ \setgvalue{\e!stop #1}{\getvalue{stop#2property}}%
+ \fi}
+
+\unexpanded\def\startproperty[#1]%
+ {\bgroup\edef\currentproperty{#1}%
+ \csname\e!start\currentproperty\endcsname}
+
+\unexpanded\def\stopproperty
+ {\csname\e!stop \currentproperty\endcsname
+ \egroup}
+
+\unexpanded\def\property[#1]%
+ {\groupedcommand
+ {\edef\currentproperty{#1}%
+ \csname\e!start\currentproperty\endcsname}
+ {\csname\e!stop \currentproperty\endcsname}}
+
+\protect \endinput