Re: [NTG-context] Symmetrical layer positioning?

2007-07-17 Thread Wolfgang Schuster
2007/7/17, Giuseppe Bilotta [EMAIL PROTECTED]:
 Monday, July 16, 2007 Giuseppe Bilotta wrote:

  Monday, July 16, 2007 Aditya Mahajan wrote:

  On Mon, 16 Jul 2007, Giuseppe Bilotta wrote:

  Hello all,
 
  is there a secret power switch to tell ConTeXt that a
  particular layer has different positioning depending on
  wether it's on a left or right page?

  You can possible use setups and use \doifoddpageelse to set the
  layers. See

  http://archive.contextgarden.net/thread/20061102.171506.2fa793e2.en.html

  Thanks a lot. I don't know if using presets is actually
  going to reduce the coding, though.

  In the mean time, I've found that layers have a doublesided
  option. This apparently allows you to override the
  left/right settings of a layer, so I tried

  \definelayer[title][
x=\dimexpr\backspace+\wdall-\wdtit,
y=\topspace,
width=\wdtit,
height=\httit,
state=repeat,
doublesided=true,
  ]

  \setuplayer[lefttitle][
x=\backspace,
  ]

  \definelayer[desc][
x=\backspace,
y=\topspace,
width=\wddesc,
height=\htdesc,
state=repeat,
doublesided=true,
  ]

  \setuplayer[leftdesc][
x=\dimexpr\backspace+\wdall-\wddesc,
  ]

  \definelayer[figs][
x=\dimexpr\backspace+\wdall-\wdfig,
y=\dimexpr\topspace+\makeupheight-\htfig,
width=\wdfig,
height=\htfig,
  ]

  \setuplayer[leftfigs][
x=\backspace,
  ]

  \setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight]


  However, the 'main' setup is always used, the left one is
  never used. Am I doing something wrong?

 Apparently, I mistook what the doublesided option does for
 layers. I've currently solved the problem in the following
 way:

\definelayer[test][doublesided=yes]

\setlayer[test][odd][..,..=..,..]{content}

\setlayer[test][even][..,..=..,..]{content}

Wolfgang

 \unexpanded\def\titlexpos{%
   \ifodd\realpageno\dimexpr\wdinside+\wdall-\wdtit\else\wdinside\fi
 }

 \definelayer[title][
   x=\titlexpos,
   y=\topspace,
   width=\wdtit,
   height=\httit,
 ]

 \unexpanded\def\descxpos{%
   \ifodd\realpageno\wdinside\else\dimexpr\wdinside+\wdall-\wddesc\fi
 }

 \definelayer[desc][
   x=\descxpos,
   y=\topspace,
   width=\wddesc,
   height=\htdesc,
 ]

 \unexpanded\def\figsxpos{%
   \ifodd\realpageno\dimexpr\backspace+\wdall-\wdfig\else\wdinside\fi
 }

 \definelayer[figs][
   x=\figsxpos,
   y=\dimexpr\topspace+\makeupheight-\htfig,
   width=\wdfig,
   height=\htfig,
 ]

 \setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight]


 However, this solution doesn't strike me as particularly
 elegant. I've seen in page-lyr.tex that support for
 left/right layers is currently in progress, but if I read
 the code correctly it just creates three layers (name,
 leftname, rightname) and they have to be filled
 individually. It would be nice to have a simpler interface
 to repeated layers with position recalculated on each page.

 --
 Giuseppe Oblomov Bilotta

 ___
 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  : https://foundry.supelec.fr/projects/contextrev/
 wiki : http://contextgarden.net
 ___

___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Symmetrical layer positioning?

2007-07-17 Thread Giuseppe Bilotta
Tuesday, July 17, 2007 Wolfgang Schuster wrote:

 2007/7/17, Giuseppe Bilotta [EMAIL PROTECTED]:

 Apparently, I mistook what the doublesided option does for
 layers. I've currently solved the problem in the following
 way:

 \definelayer[test][doublesided=yes]

 \setlayer[test][odd][..,..=..,..]{content}

 \setlayer[test][even][..,..=..,..]{content}

Indeed, but if I want both sides to always have the same
content, I need to double-code every content insertion, or
write a macro to do that for me. It just moves the trickery
somewhere else :)

My expectation was that when \setlayer is used without
specification on a doublesided layer, it would set the
content for both sides. Alternatively, a way to specify
(even via presets) a position which is page-parity dependent
would be a good thing.

-- 
Giuseppe Oblomov Bilotta

___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


[NTG-context] Symmetrical layer positioning?

2007-07-16 Thread Giuseppe Bilotta
Hello all,

is there a secret power switch to tell ConTeXt that a
particular layer has different positioning depending on
wether it's on a left or right page?

I can of course do it manually, either by changing the layer
position on each page or by using two layers instead of one,
but I wanted to know if there was a more straightforward way
that I was missing.

-- 
Giuseppe Oblomov Bilotta

___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Symmetrical layer positioning?

2007-07-16 Thread Aditya Mahajan
On Mon, 16 Jul 2007, Giuseppe Bilotta wrote:

 Hello all,

 is there a secret power switch to tell ConTeXt that a
 particular layer has different positioning depending on
 wether it's on a left or right page?

You can possible use setups and use \doifoddpageelse to set the 
layers. See

http://archive.contextgarden.net/thread/20061102.171506.2fa793e2.en.html

 I can of course do it manually, either by changing the layer
 position on each page or by using two layers instead of one,
 but I wanted to know if there was a more straightforward way
 that I was missing.

Here is an example of using two different layers:

http://wiki.contextgarden.net/Alternating_backgrounds_and_repeating_layers

Aditya
___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Symmetrical layer positioning?

2007-07-16 Thread Giuseppe Bilotta
Monday, July 16, 2007 Aditya Mahajan wrote:

 On Mon, 16 Jul 2007, Giuseppe Bilotta wrote:

 Hello all,

 is there a secret power switch to tell ConTeXt that a
 particular layer has different positioning depending on
 wether it's on a left or right page?

 You can possible use setups and use \doifoddpageelse to set the
 layers. See

 http://archive.contextgarden.net/thread/20061102.171506.2fa793e2.en.html

Thanks a lot. I don't know if using presets is actually
going to reduce the coding, though.

In the mean time, I've found that layers have a doublesided
option. This apparently allows you to override the
left/right settings of a layer, so I tried

\definelayer[title][
  x=\dimexpr\backspace+\wdall-\wdtit,
  y=\topspace,
  width=\wdtit,
  height=\httit,
  state=repeat,
  doublesided=true,
]

\setuplayer[lefttitle][
  x=\backspace,
]

\definelayer[desc][
  x=\backspace,
  y=\topspace,
  width=\wddesc,
  height=\htdesc,
  state=repeat,
  doublesided=true,
]

\setuplayer[leftdesc][
  x=\dimexpr\backspace+\wdall-\wddesc,
]

\definelayer[figs][
  x=\dimexpr\backspace+\wdall-\wdfig,
  y=\dimexpr\topspace+\makeupheight-\htfig,
  width=\wdfig,
  height=\htfig,
]

\setuplayer[leftfigs][
  x=\backspace,
]

\setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight]


However, the 'main' setup is always used, the left one is
never used. Am I doing something wrong?

-- 
Giuseppe Oblomov Bilotta

___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___


Re: [NTG-context] Symmetrical layer positioning?

2007-07-16 Thread Giuseppe Bilotta
Monday, July 16, 2007 Giuseppe Bilotta wrote:

 Monday, July 16, 2007 Aditya Mahajan wrote:

 On Mon, 16 Jul 2007, Giuseppe Bilotta wrote:

 Hello all,

 is there a secret power switch to tell ConTeXt that a
 particular layer has different positioning depending on
 wether it's on a left or right page?

 You can possible use setups and use \doifoddpageelse to set the
 layers. See

 http://archive.contextgarden.net/thread/20061102.171506.2fa793e2.en.html

 Thanks a lot. I don't know if using presets is actually
 going to reduce the coding, though.

 In the mean time, I've found that layers have a doublesided
 option. This apparently allows you to override the
 left/right settings of a layer, so I tried

 \definelayer[title][
   x=\dimexpr\backspace+\wdall-\wdtit,
   y=\topspace,
   width=\wdtit,
   height=\httit,
   state=repeat,
   doublesided=true,
 ]

 \setuplayer[lefttitle][
   x=\backspace,
 ]

 \definelayer[desc][
   x=\backspace,
   y=\topspace,
   width=\wddesc,
   height=\htdesc,
   state=repeat,
   doublesided=true,
 ]

 \setuplayer[leftdesc][
   x=\dimexpr\backspace+\wdall-\wddesc,
 ]

 \definelayer[figs][
   x=\dimexpr\backspace+\wdall-\wdfig,
   y=\dimexpr\topspace+\makeupheight-\htfig,
   width=\wdfig,
   height=\htfig,
 ]

 \setuplayer[leftfigs][
   x=\backspace,
 ]

 \setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight]


 However, the 'main' setup is always used, the left one is
 never used. Am I doing something wrong?

Apparently, I mistook what the doublesided option does for
layers. I've currently solved the problem in the following
way:

\unexpanded\def\titlexpos{%
  \ifodd\realpageno\dimexpr\wdinside+\wdall-\wdtit\else\wdinside\fi
}

\definelayer[title][
  x=\titlexpos,
  y=\topspace,
  width=\wdtit,
  height=\httit,
]

\unexpanded\def\descxpos{%
  \ifodd\realpageno\wdinside\else\dimexpr\wdinside+\wdall-\wddesc\fi
}

\definelayer[desc][
  x=\descxpos,
  y=\topspace,
  width=\wddesc,
  height=\htdesc,
]

\unexpanded\def\figsxpos{%
  \ifodd\realpageno\dimexpr\backspace+\wdall-\wdfig\else\wdinside\fi
}

\definelayer[figs][
  x=\figsxpos,
  y=\dimexpr\topspace+\makeupheight-\htfig,
  width=\wdfig,
  height=\htfig,
]

\setupbackgrounds[page][background={color,title,desc,figs},backgroundcolor=elux-ultralight]


However, this solution doesn't strike me as particularly
elegant. I've seen in page-lyr.tex that support for
left/right layers is currently in progress, but if I read
the code correctly it just creates three layers (name,
leftname, rightname) and they have to be filled
individually. It would be nice to have a simpler interface
to repeated layers with position recalculated on each page.

-- 
Giuseppe Oblomov Bilotta

___
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  : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___