%D \module
%D   [       file=setups-overview, % x-set-12,
%D        version=2016.04.05, % 2004.10.31,
%D         remark=setupx.tex: 1998.07.20 and later,
%D          title=\CONTEXT\ Setup Definitions,
%D       subtitle=Macro Definitions,
%D         author={Hans Hagen & Wolfgang Schuster},
%D           date=\currentdate,
%D      copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
%C
%C This module is part of the \CONTEXT\ macro||package and is
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.

% context --interface=en --global --result=setup-en         x-setups-overview.mkiv --mode=setups:save
% context --interface=en --global --result=setup-mapping-en x-setups-overview.mkiv --mode=setups:mapping

% \enablemode[setups:save]

% \enablemode[setups:mapping]

\usemodule[setups-basics]

\unprotect

\definecolor[TitleColor][r=.375,g=.125,b=.125]
\definecolor[TitleColor][r=.125,g=.375,b=.125]
\definecolor[TitleColor][r=.125,g=.125,b=.375]
\definecolor[TitleColor][r=.375,g=.375,b=.125]
\definecolor[TitleColor][r=.375,g=.125,b=.375]
\definecolor[TitleColor][r=.125,g=.375,b=.375]

\definecolor[TitleColor][r=.25,g=.20,b=.15]
\definecolor[TitleColor][r=.25,g=.15,b=.20]
\definecolor[TitleColor][r=.20,g=.15,b=.25]
\definecolor[TitleColor][r=.20,g=.25,b=.15]
\definecolor[TitleColor][r=.15,g=.20,b=.25]
\definecolor[TitleColor][r=.15,g=.25,b=.20]

\doifelsemode {setups:traditional} {

    \startinterface english  \loadsetups[cont-en.xml] \stopinterface
    \startinterface dutch    \loadsetups[cont-nl.xml] \stopinterface
    \startinterface german   \loadsetups[cont-de.xml] \stopinterface
    \startinterface french   \loadsetups[cont-fr.xml] \stopinterface
    \startinterface italian  \loadsetups[cont-it.xml] \stopinterface
    \startinterface czech    \loadsetups[cont-cs.xml] \stopinterface
    \startinterface romanian \loadsetups[cont-ro.xml] \stopinterface

} {

    \loadsetups[i-context.xml]

}

\startinterface english  \definecolor[LocalColor][r=.25,g=.75,b=.25]    \stopinterface
\startinterface dutch    \definecolor[LocalColor][r=.75,g=.25,b=.25]    \stopinterface
\startinterface german   \definecolor[LocalColor][r=.25,g=.25,b=.75]    \stopinterface
\startinterface french   \definecolor[LocalColor][r=.75,g=.75,b=.25]    \stopinterface
\startinterface italian  \definecolor[LocalColor][r=.25,g=.75,b=.75]    \stopinterface
\startinterface czech    \definecolor[LocalColor][r=.75,g=.25,b=.75]    \stopinterface
\startinterface romanian \definecolor[LocalColor][r=.5,g=.4,b=.3]       \stopinterface
\startinterface persian  \definecolor[LocalColor][r=.5,g=.3,b=.4]       \stopinterface
%                        \definecolor[LocalColor][r=.4,g=.3,b=.5]
%                        \definecolor[LocalColor][r=.4,g=.5,b=.3]
%                        \definecolor[LocalColor][r=.3,g=.4,b=.5]
%                        \definecolor[LocalColor][r=.3,g=.5,b=.4]

\startinterface english  \definecolor[TitleColor][r=.375,g=.125,b=.125] \stopinterface
\startinterface dutch    \definecolor[TitleColor][r=.125,g=.375,b=.125] \stopinterface
\startinterface german   \definecolor[TitleColor][r=.125,g=.125,b=.375] \stopinterface
\startinterface french   \definecolor[TitleColor][r=.375,g=.375,b=.125] \stopinterface
\startinterface italian  \definecolor[TitleColor][r=.375,g=.125,b=.375] \stopinterface
\startinterface czech    \definecolor[TitleColor][r=.125,g=.375,b=.375] \stopinterface
\startinterface romanian \definecolor[TitleColor][r=.25,g=.20,b=.15]    \stopinterface
\startinterface persian  \definecolor[TitleColor][r=.25,g=.15,b=.20]    \stopinterface
%                        \definecolor[TitleColor][r=.20,g=.15,b=.25]
%                        \definecolor[TitleColor][r=.20,g=.25,b=.15]
%                        \definecolor[TitleColor][r=.15,g=.20,b=.25]
%                        \definecolor[TitleColor][r=.15,g=.25,b=.20]

% \setupdirections[method=unicode,bidi=global]

\definecolor [lightgray] [s=.9]
\definecolor [darkgray]  [s=.1]

\usetypescriptfile[texgyre]
\usetypescriptfile[almfixed]

\definetypeface [pagella] [rm] [serif] [pagella]  [default]
\definetypeface [pagella] [ss] [sans]  [modern]   [default] [rscale=1.075]
\definetypeface [pagella] [tt] [mono]  [almfixed] [default] [rscale=1.075]
\definetypeface [pagella] [mm] [math]  [pagella]  [default]

\doifelsemode {setups:mapping} {
    \setupbodyfont[pagella,8pt]
} {
    \setupbodyfont[pagella,9pt]
}

\startinterface persian
    \setupdirections[\c!bidi=\v!global,\c!method=\v!unicode,\c!fences=\v!no]
\stopinterface

\defineoverlay
  [cover]
  [\hbox to \paperwidth{\hss\reuseMPgraphic{cover+back}}]

\defineoverlay
  [back]
  [\hbox to \paperwidth{\reuseMPgraphic{cover+back}\hss}]

\startreusableMPgraphic{cover+back}
    numeric h, w; boolean mapping ; path p, q, r ; color f, d , c ; pair s ;
    h := OverlayHeight ; w := 2*OverlayWidth ;
    r := unitsquare xyscaled (w,h) ;
    fill r withcolor resolvedcolor("lightgray") ;
  % mapping := lua.mp.processingmode("setups:mapping") ;
    mapping := lua.mp("processingmode","setups:mapping") ;
    if mapping :
        set_grid(w,h,w/8,w/160) ;
        pickup pensquare yscaled (w/80) ;
    else :
        set_grid(w,h,w/8,w/16) ;
        pickup pencircle scaled (w/100) ;
    fi ;
    forever :
        s := center r randomized (w,h) ;
        if new_on_grid(xpart s, ypart s) :
            c := resolvedcolor("lightgray") ;
            d := .5[resolvedcolor("LocalColor"),c] randomized (.5,.9) ;
            f := c randomized (.5,.9) ;
            s := (dx,dy) ;
            if mapping :
                p := (-w/4,0) -- (w/4,0) ;
                p := (-w/4,0) -- origin ;
                q := origin -- ( w/4,0) ;
                draw p shifted s withcolor d ;
                draw q shifted s withcolor f ;
            else :
                p := fullsquare xyscaled(w/4,w/8) ;
                q := (-4w,ypart ulcorner p) -- .5[ulcorner p, urcorner p] -- (4w,ypart urcorner p) ;
                q := q shifted (0,-w/24) ;
                p := p randomized (w/40,w/40) ;
                q := q randomized (0,w/100) ;
                q := q cutafter  (p cutafter  point 3 of p) ;
                q := q cutbefore (p cutbefore point 3 of p) ;
                fill p shifted s withcolor f ;
                draw p shifted s withcolor d ;
                draw q shifted s withcolor d ;
            fi ;
        fi ;
        exitif grid_full ;
    endfor ;

    setbounds currentpicture to r ;
\stopreusableMPgraphic

\definelayout
  [titlepage]
  [\c!backspace=1cm,
   \c!topspace=1cm,
   \c!width=\v!middle,
   \c!height=\v!middle,
   \c!header=0pt,
   \c!footer=0pt]

\setuplayout
  [\c!backspace=2cm,
   \c!topspace=1.5cm,
   \c!bottomspace=0.5cm,
   \c!header=0cm,
   \c!footer=1cm,
   \c!width=\v!middle,
   \c!height=\v!middle]

\doifmode {setups:mapping} {
    \setuplayout
      [\c!backspace=1cm]
}

\setuppagenumbering
  [\c!location=\v!footer,
   \c!alternative=\v!doublesided]

\setupsetup
  [\c!criterium=\v!all]

\setupframedtexts
  [setuptext]
  [\c!before=\blank,
   \c!after=\blank,
   \c!frame=\v!on,
   \c!rulethickness=1pt,
   \c!framecolor=TitleColor]

\setupunderbar
  [\c!rulethickness=1pt,
   \c!rulecolor=TitleColor]

\dontcomplain

\starttext

\setupbackgrounds
  [\v!rightpage]
  [\c!background=cover]

\setuplayout
  [titlepage]

\startsetups text:commands
    \startinterface dutch    \strut commando's \par \stopinterface
    \startinterface english  \strut commands   \par \stopinterface
    \startinterface german   \strut befehle    \par \stopinterface
    \startinterface french   \strut commandes  \par \stopinterface
    \startinterface czech    \strut přikazy    \par \stopinterface
    \startinterface italian  \strut comandi    \par \stopinterface
    \startinterface romanian \strut comenzile  \par \stopinterface
    \startinterface persian  \strut commands   \par \stopinterface % todo
\stopsetups

\startsetups text:uppercase
    \startinterface dutch    NL\stopinterface
    \startinterface english  EN\stopinterface
    \startinterface german   DE\stopinterface
    \startinterface french   FR\stopinterface
    \startinterface czech    CS\stopinterface
    \startinterface italian  IT\stopinterface
    \startinterface romanian RO\stopinterface
    \startinterface persian  PE\stopinterface
\stopsetups

\startsetups text:lowercase
    \startinterface dutch    \strut nl / nederlands \par \stopinterface
    \startinterface english  \strut en / english    \par \stopinterface
    \startinterface german   \strut de / deutsch    \par \stopinterface
    \startinterface french   \strut fr / français   \par \stopinterface
    \startinterface czech    \strut cs / český      \par \stopinterface
    \startinterface italian  \strut it / italiano   \par \stopinterface
    \startinterface romanian \strut ro / română     \par \stopinterface
    \startinterface persian  \strut pe / persian    \par \stopinterface
\stopsetups

\startmakeup[\v!standard]
    \dontcomplain
    \setupalign[\v!left]
    \startcolor[TitleColor]
    \definedfont[RegularBold at 100pt]\setstrut
    \strut Con\TeX t \par
    \definedfont[RegularBold at 50pt]\setstrut
    \setups[text:commands]
    \vfill
    \definedfont[RegularBold at 150pt]\setstrut
    \setups[text:uppercase]
    \stopcolor
\stopmakeup

\setuplayout % needed ?

\setupbackgrounds
  [\v!rightpage]
  [\c!background=]

\startmakeup[\v!standard]
    \dontcomplain
    \startcolor[TitleColor]
        \definedfont[RegularBold at 100pt]\setstrut
        \setupalign[\v!flushright]
        \strut Con\TeX t \par
        \definedfont[RegularBold at 50pt]\setstrut
        \setups[text:commands]
    \stopcolor
    \vfill
    \start
        \switchtobodyfont[15pt]
        \setuptabulate[before=,after=]
        \dontleavehmode \hfill \hbox \bgroup
            \starttabulate[|l|l|]
                \BC language   \EQ \setups[text:lowercase] \NC \NR
                \BC version    \EQ \currentdate \NC \NR
                \BC maintainer \EQ Wolfgang Schuster \NC\NR
                \BC comments   \EQ \tt ntg-context@ntg.nl \NC \NR
            \stoptabulate
        \egroup
    \stop
\stopmakeup

\protect

\doifelsemode {setups:mapping} {
    \placeeverysetupname
} {
    \placeeverysetup
}

\unprotect

\page[\v!yes,\v!blank,\v!right,\v!left]

\setuplayout
  [titlepage]

\setupbackgrounds
  [\v!leftpage]
  [\c!background=back]

\startmakeup[\v!standard][\c!page=]
    \dontcomplain
    \startcolor[TitleColor]
    \definedfont[RegularBold at 24pt]\setupinterlinespace
    \setupalign[\v!left]
    \vfill
    www.pragma-ade.nl      \par
    wiki.contextgarden.net \par
    www.tug.org            \par
    \stopcolor
\stopmakeup

\protect

\stoptext
