Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
// $Header: /cvsroot/html2ps/css.text-decoration.inc.php,v 1.10 2006/09/07 18:38:14 Konstantin Exp $
3
 
4
/**
5
 * TODO: correct inheritance
6
 *
7
 * This property describes decorations that are added to the text of
8
 * an element using the element's color. When specified on an inline
9
 * element, it affects all the  boxes generated by that element; for
10
 * all  other  elements,  the   decorations  are  propagated  to  an
11
 * anonymous inline  box that wraps all the  in-flow inline children
12
 * of the element, and to any block-level in-flow descendants. It is
13
 * not,  however,  further  propagated  to floating  and  absolutely
14
 * positioned descendants, nor to the contents of 'inline-table' and
15
 * 'inline-block' descendants.
16
 */
17
 
18
class CSSTextDecoration extends CSSPropertyHandler {
19
  function CSSTextDecoration() {
20
    $this->CSSPropertyHandler(true, true);
21
  }
22
 
23
  function default_value() {
24
    return array("U"=>false,
25
                 "O"=>false,
26
                 "T"=>false);
27
  }
28
 
29
  function parse($value) {
30
    if ($value === 'inherit') {
31
      return CSS_PROPERTY_INHERIT;
32
    };
33
 
34
    $parsed = $this->default_value();
35
    if (strstr($value,"overline")     !== false) { $parsed['O'] = true; };
36
    if (strstr($value,"underline")    !== false) { $parsed['U'] = true; };
37
    if (strstr($value,"line-through") !== false) { $parsed['T'] = true; };
38
    return $parsed;
39
  }
40
 
41
  function get_property_code() {
42
    return CSS_TEXT_DECORATION;
43
  }
44
 
45
  function get_property_name() {
46
    return 'text-decoration';
47
  }
48
}
49
 
50
CSS::register_css_property(new CSSTextDecoration);
51
 
52
?>