On 11/8/2012 11:06 AM, Marco Patzer wrote:
2012-11-08 Wolfgang Schuster:
Hi Wolfgang!
\startsetups [headlist]
\framed[align=normal, frame=off]
{\placelist [chapter] [alternative=highlight, criterium=all]}
\stopsetups
\definelistalternative
[highlight]
[renderingsetup=list:highlight]
I like the flexibility of renderingsetups for \defineheadalternative,
but frankly, I didn't know they can be used for lists as well and
I was clueless about the best place to hook into.
\startsetups [list:highlight]
\par
\startlinealignment[middle]
\doifelse{\fetchmark[chapter][first]}{\currentlistentrytitle}
%\doifelse{\fetchmark[chapter][first]}{\ctxcommand{listtitle("\currentlist",\currentlistindex)}}
{\color[red] {\currentlistentrytitle}}
{\color[blue]{\currentlistentrytitle}}
\stoplinealignment
\par
\stopsetups
That's a neat and clean solution. Thanks Wolfgang.
Wolfgang:
Say that we have:
\installcorenamespace{internalreference}
\def\structureheadlocation#1%
{\csname\??internalreference\ifcsname\??internalreference#1\endcsname#1\else\s!default\fi\endcsname}
\letvalue{\??internalreference\s!default}\!!zerocount
\def\storeinternalreference#1#2%
{\setxvalue{\??internalreference\currentstructurename}{#2}}
and in \strc_sectioning_register add:
\storeinternalreference\currentstructurename\nextinternalreference
then we can say:
\startsetups [list:highlight]
\par
\startlinealignment[middle]
\doifelse\currentlistentrylocation{\structureheadlocation{chapter}}
{\color[red] {\currentlistentrytitle}}
{\color[blue]{\currentlistentrytitle}}
\stoplinealignment
\par
\stopsetups
which is just comparing numbers (so one can also say:
\startsetups [list:highlight]
\par
\startlinealignment[middle]
\ifnum\currentlistentrylocation=\structureheadlocation{chapter}\relax
\color[red] {\currentlistentrytitle}
\else
\color[blue]{\currentlistentrytitle}
\fi
\stoplinealignment
\par
\stopsetups
but that's for low level coders)
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
| www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________