home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / boot / i386 / root / usr / share / YaST2 / modules / HTML.ycp < prev    next >
Text File  |  2006-11-29  |  5KB  |  224 lines

  1. /**
  2.  * File:    modules/HTML.ycp
  3.  * Package:    yast2
  4.  * Summary:    Generic HTML formatting
  5.  * Authors:    Stefan Hundhammer <sh@suse.de>
  6.  * Flags:    Stable
  7.  *
  8.  * $Id: HTML.ycp 31242 2006-06-01 12:59:16Z locilka $
  9.  *
  10.  * Note: Inline doc uses [tag]...[/tag]
  11.  * instead of <tag>...</tag> to avoid confusing "ycpdoc".
  12.  *
  13.  */
  14.  
  15. {
  16.  
  17.     module "HTML";
  18.     textdomain "base";
  19.  
  20.     /**
  21.      * Make a HTML paragraph from a text
  22.      *
  23.      * i.e. embed a text into * [p]...[/p]
  24.      *
  25.      * @param text plain text or HTML fragment
  26.      * @return HTML code
  27.      **/
  28.     global define string Para( string text ) ``{
  29.     return "<p>" + text + "</p>";
  30.     }
  31.  
  32.  
  33.     /**
  34.      * Make a HTML heading from a text
  35.      *
  36.      * i.e. embed a text into [h3]...[/h3]
  37.      *
  38.      * Note: There is only one heading level here since we don't have any more
  39.      * fonts anyway.
  40.      *
  41.      * @param text plain text or HTML fragment
  42.      * @return HTML code
  43.      **/
  44.     global define string Heading( string text ) ``{
  45.     return "<h3>" + text + "</h3>";
  46.     }
  47.  
  48.  
  49.     /**
  50.      * Make a HTML link
  51.      *
  52.      * For example  [a href="..."]...[/a]
  53.      *
  54.      * You still need to embed that into a paragraph or heading etc.!
  55.      *
  56.      * @param text (translated) text the user will see
  57.      * @param link_id internal ID of that link returned by UserInput()
  58.      * @return HTML code
  59.      **/
  60.     global define string Link( string text, string link_id ) ``{
  61.     return sformat( "<a href=\"%1\">%2</a>", link_id, text );
  62.     }
  63.  
  64.  
  65.     /**
  66.      * Start a HTML (unsorted) list
  67.      *
  68.      * For example [ul]
  69.      *
  70.      * You might consider using HTML::list() instead which takes a list of
  71.      * items and does all the rest by itself.
  72.      *
  73.      * @return HTML code
  74.      **/
  75.     global define string ListStart() ``{
  76.     return "<ul>";
  77.     }
  78.  
  79.  
  80.     /**
  81.      * End a HTML (unsorted) list
  82.      *
  83.      * For example [/ul]
  84.      *
  85.      * You might consider using HTML::list() instead which takes a list of
  86.      * items and does all the rest by itself.
  87.      *
  88.      * @return HTML code
  89.      **/
  90.     global define string ListEnd() ``{
  91.     return "</ul>";
  92.     }
  93.  
  94.  
  95.     /**
  96.      * Make a HTML list item
  97.      *
  98.      * For example  embed a text into [li][p]...[/p][/li]
  99.      *
  100.      * You might consider using HTML::list() instead which takes a list of
  101.      * items and does all the rest by itself.
  102.      *
  103.      * @param text plain text or HTML fragment
  104.      * @return HTML code
  105.      **/
  106.     global define string ListItem( string text ) ``{
  107.     return "<li><p>" + text + "</p></li>";
  108.     }
  109.  
  110.  
  111.     /**
  112.      * Make a HTML (unsorted) list from a list of strings
  113.      *
  114.      *
  115.      * [ul]
  116.      *     [li]...[/li]
  117.      *     [li]...[/li]
  118.      *     ...
  119.      * [/ul]
  120.      *
  121.      * @param items list of strings for items
  122.      * @return HTML code
  123.      **/
  124.     global define string List( list<string> items ) ``{
  125.     string html = "<ul>";
  126.  
  127.     foreach( string item, items, ``{
  128.         html = html + "<li>" + item + "</li>";
  129.     });
  130.  
  131.     html = html + "</ul>";
  132.  
  133.     return html;
  134.     }
  135.  
  136.  
  137.     /**
  138.      * Make a HTML (unsorted) colored list from a list of strings
  139.      *
  140.      * [ul]
  141.      *     [li][font color="..."]...[/font][/li]
  142.      *     [li][font color="..."]...[/font][/li]
  143.      *     ...
  144.      * [/ul]
  145.      *
  146.      * @param items list of strings for items
  147.      * @param color item color
  148.      * @return HTML code
  149.      **/
  150.     global define string ColoredList( list<string> items, string color ) ``{
  151.     string html = "<ul>";
  152.  
  153.     foreach( string item, items, ``{
  154.         html = html + sformat ("<li><font color=\"%1\">%2</font></li>",
  155.                    color, item );
  156.     });
  157.  
  158.     html = html + "</ul>";
  159.  
  160.     return html;
  161.     }
  162.  
  163.  
  164.     /**
  165.      * Colorize a piece of HTML code
  166.      *
  167.      * i.e. embed it into [font color="..."]...[/font]
  168.      *
  169.      * You still need to embed that into a paragraph or heading etc.!
  170.      *
  171.      * @param text text to colorize
  172.      * @param color item color
  173.      * @return HTML code
  174.      **/
  175.     global define string Colorize( string text, string color ) ``{
  176.     return sformat ("<font color=\"%1\">%2</font>", color, text );
  177.     }
  178.  
  179.  
  180.     /**
  181.      * Make a piece of HTML code bold
  182.      *
  183.      * i.e. embed it into [b]...[/b]
  184.      *
  185.      * You still need to embed that into a paragraph or heading etc.!
  186.      *
  187.      * @param text text to make bold
  188.      * @return HTML code
  189.      **/
  190.     global define string Bold( string text ) ``{
  191.     return "<b>" + text + "</b>";
  192.     }
  193.  
  194.  
  195.     /**
  196.      * Make a forced HTML line break
  197.      *
  198.      * @return HTML code
  199.      **/
  200.     global define string Newline() ``{
  201.     return "<br>";
  202.     }
  203.  
  204.  
  205.     /**
  206.      * Make a number of forced HTML line breaks
  207.      *
  208.      * @param count how many of them
  209.      * @return HTML code
  210.      **/
  211.     global define string Newlines( integer count ) ``{
  212.     string html = "";
  213.  
  214.     while ( count > 0 )
  215.     {
  216.         html = html + "<br>";
  217.         count = count - 1;
  218.     }
  219.     return html;
  220.     }
  221.  
  222. /* EOF */
  223. }
  224.