<?xml version="1.0" encoding="utf-8"?>
<html>
  <head>
    <meta charset="UTF-8"/>
    <title>Pluie.OutputFormatter &ndash; pluie-echo-0.1 &ndash; Vala Binding Reference</title>
    <link href="../style.css" rel="stylesheet" type="text/css"/><script src="../scripts.js" type="text/javascript">
    </script>
  </head>
  <body>
    <div class="site_header">Pluie.OutputFormatter &ndash; pluie-echo-0.1 Reference Manual</div>
    <div class="site_body">
      <div class="site_navigation">
        <ul class="navi_main">
          <li class="package_index"><a href="../index.html">Packages</a></li>
        </ul>
        <hr class="navi_hr"/>
        <ul class="navi_main">
          <li class="package"><a href="index.htm">pluie-echo-0.1</a></li>
        </ul>
        <hr class="navi_hr"/>
        <ul class="navi_main">
          <li class="namespace"><a href="Pluie.html">Pluie</a></li>
        </ul>
        <hr class="navi_hr"/>
        <ul class="navi_main">
          <li class="class">OutputFormatter</li>
        </ul>
        <hr class="navi_hr"/>
        <ul class="navi_main">
          <li class="creation_method"><a href="Pluie.OutputFormatter.OutputFormatter.html">OutputFormatter</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.action.html">action</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.c.html">c</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.echo.html">echo</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.echo_up.html">echo_up</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.error.html">error</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.keyval.html">keyval</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.move_down.html">move_down</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.move_up.html">move_up</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.rs.html">rs</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.s_indent.html">s_indent</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.state.html">state</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.test.html">test</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.title.html">title</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.title_sep.html">title_sep</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.usage_option.html">usage_option</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.warn.html">warn</a></li>
          <li class="method"><a href="Pluie.OutputFormatter.wordwrap.html">wordwrap</a></li>
          <li class="field"><a href="Pluie.OutputFormatter.conf.html">conf</a></li>
          <li class="field"><a href="Pluie.OutputFormatter.indent.html">indent</a></li>
          <li class="field"><a href="Pluie.OutputFormatter.term_width.html">term_width</a></li>
        </ul>
      </div>
      <div class="site_content">
        <h1 class="main_title">OutputFormatter</h1>
        <hr class="main_hr"/>
        <h2 class="main_title">Object Hierarchy:</h2>
        <img class="main_diagram" usemap="#Pluie.OutputFormatter" alt="Object hierarchy for OutputFormatter" src="img/Pluie.OutputFormatter.png"/>

      <map id="Pluie.OutputFormatter" name="Pluie.OutputFormatter">
<area shape="rect" id="node1" href="Pluie.OutputFormatter.html" title="Pluie.OutputFormatter" alt="" coords="5,5,192,53"/>
</map>

        <h2 class="main_title">Description:</h2>
        <div class="main_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">class</span> <b><span class="class">OutputFormatter</span></b>
        </div>
        <div class="description">
          <p>A class managing display on stdout &amp; stderror with <a href="Pluie.Color.html" class="class">Color</a> styles defined by specifiyed 
            <a href="Pluie.ColorConf.html" class="class">ColorConf</a></p>
          <p><pre class="main_source"><code><span class="main_keyword">using</span> GLib;<br/><span class="main_keyword">using</span> Pluie;<br/><br/><span class="main_keyword">errordomain</span> MyError {<br/>    CODE<br/>}<br/><br/><span class="main_basic_type">int</span> main (<span class="main_basic_type">string</span>[] args)<br/>{<br/>    <span class="main_keyword">var</span> of = Echo.init (<span class="main_literal">true</span>, <span class="main_literal">"resources/echo.ini"</span>);<br/>    Dbg.<span class="main_keyword">in</span> (Log.METHOD, <span class="main_literal">null</span>, Log.LINE, Log.FILE);<br/><br/>    of.title (<span class="main_literal">"MyApp"</span>, <span class="main_literal">"0.2.2"</span>, <span class="main_literal">"a-sansara"</span>);<br/><br/>    of.echo (<span class="main_literal">"sample echo</span><span class="main_escape">\n</span><span class="main_literal">"</span>);<br/><br/>    of.keyval (<span class="main_literal">"path"</span>, <span class="main_literal">"/tmp/blob"</span>);<br/>    of.keyval (<span class="main_literal">"otherlongoption"</span>, <span class="main_literal">"other value"</span>);<br/><br/>    of.echo (<span class="main_literal">"</span><span class="main_escape">\n</span><span class="main_literal">sample echo</span><span class="main_escape">\n</span><span class="main_literal">on multiple</span><span class="main_escape">\n</span><span class="main_literal">line"</span>, <span class="main_literal">true</span>, <span class="main_literal">true</span>);<br/><br/>    of.action (<span class="main_literal">"reading config"</span>, <span class="main_literal">"toto.conf"</span>);<br/><br/>    of.state (<span class="main_literal">false</span>);<br/><br/>    of.warn (<span class="main_literal">"boloss warning"</span>);<br/>    of.echo ();<br/><br/>    <span class="main_keyword">var</span> cmd = <span class="main_keyword">new</span> Sys.Cmd (<span class="main_literal">"ls -la"</span>);<br/><br/>    <span class="main_basic_type">int</span> status = cmd.run();<br/>    of.action (<span class="main_literal">"running cmd"</span>, cmd.name);<br/>    of.echo (<span class="main_literal">"</span><span class="main_escape">\n</span><span class="main_literal"></span><span class="main_escape">%s</span><span class="main_literal">"</span>.printf (cmd.output), <span class="main_literal">true</span>, <span class="main_literal">true</span>);<br/><br/>    of.state (status == <span class="main_literal">0</span>);<br/><br/>    <span class="main_keyword">try</span> {<br/>        <span class="main_keyword">throw</span> <span class="main_keyword">new</span> MyError.CODE(<span class="main_literal">"this is the error message"</span>);<br/>    }<br/>    <span class="main_keyword">catch</span> (MyError e) {<br/>        of.error (e.message);<br/>    }<br/>    of.rs (<span class="main_literal">true</span>);<br/>    of.rs (<span class="main_literal">true</span>, <span class="main_literal">"ok"</span>);<br/>    of.rs (<span class="main_literal">false</span>, <span class="main_literal">""</span>, <span class="main_literal">"exit"</span>);<br/><br/>    of.echo();<br/><br/>    <span class="main_basic_type">string</span> com   = <span class="main_literal">"Vala is syntactically similar to C# and includes several features such as: anonymous functions, signals, properties, generics, assisted memory management, exception handling, type inference, and foreach statements.[3] Its developers Jürg Billeter and Raffaele Sandrini aim to bring these features to the plain C runtime with little overhead and no special runtime support by targeting the GObject object system"</span>;<br/>    <span class="main_basic_type">string</span> mycom = of.wordwrap (com, of.term_width-<span class="main_literal">44</span>);<br/>    <span class="main_basic_type">int</span>    line  = mycom.split(<span class="main_literal">"</span><span class="main_escape">\n</span><span class="main_literal">"</span>).length;<br/>    of.echo (mycom, <span class="main_literal">true</span>, <span class="main_literal">true</span>, ECHO.COMMENT, <span class="main_literal">40</span>);<br/><br/>    of.usage_option (<span class="main_literal">"quiet"</span>, <span class="main_literal">"q"</span>, <span class="main_literal">"SHUTUP"</span>, <span class="main_literal">false</span>, line);<br/>    of.echo();<br/><br/>    of.echo (mycom, <span class="main_literal">true</span>, <span class="main_literal">true</span>, ECHO.COMMENT, <span class="main_literal">40</span>);<br/>    of.usage_option (<span class="main_literal">"record-desktop"</span>, <span class="main_literal">"r"</span>, <span class="main_literal">"TIME"</span>, <span class="main_literal">false</span>, line);<br/><br/>    of.echo();<br/>    Dbg.<span class="main_keyword">out</span> (Log.METHOD, <span class="main_literal">null</span>, Log.LINE, Log.FILE);<br/>    <span class="main_keyword">return</span> <span class="main_literal">0</span>;<br/>}</code></pre>
             valac --pkg pluie-echo-0.1 outputFormatter.vala</p>
        </div><br/>
        <div class="namespace_note"><b>Namespace:</b> <a href="Pluie.html">Pluie</a>
        </div>
        <div class="package_note"><b>Package:</b> <a href="index.htm">pluie-echo-0.1</a>
        </div>
        <h2 class="main_title">Content:</h2>
        <h3 class="main_title">Creation methods:</h3>
        <ul class="navi_inline">
          <li class="creation_method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <b><a href="Pluie.OutputFormatter.OutputFormatter.html" class="creation_method">OutputFormatter</a></b> (<span class="main_type"><a href="Pluie.ColorConf.html" class="class">ColorConf</a></span> conf)
            </span>
            <div class="leaf_brief_description">
            </div></li>
        </ul>
        <h3 class="main_title">Methods:</h3>
        <ul class="navi_inline">
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">weak</span> <span class="main_type"><a href="Pluie.Color.html" class="class">Color</a></span> <b><a href="Pluie.OutputFormatter.c.html" class="method">c</a></b> (<span class="main_type"><a href="Pluie.ECHO.html" class="enum">ECHO</a></span> name)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">get Color instance corresponding to ECHO color</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_basic_type"><span class="class">string</span></span> <b><a href="Pluie.OutputFormatter.move_up.html" class="method">move_up</a></b> (<span class="main_basic_type"><span class="struct">int</span></span> line)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">get ansi escape sequence moving up lines</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_basic_type"><span class="class">string</span></span> <b><a href="Pluie.OutputFormatter.move_down.html" class="method">move_down</a></b> (<span class="main_basic_type"><span class="struct">int</span></span> line)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">get ansi escape sequence moving down lines</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">protected</span> <span class="main_type"><a href="Pluie.Color.html" class="class">Color</a></span> <b><a href="Pluie.OutputFormatter.test.html" class="method">test</a></b> (<span class="main_basic_type"><span class="struct">bool</span></span> exp, <span class="main_basic_type"><span class="struct">bool</span></span> error = <span class="main_literal">false</span>)
            </span>
            <div class="leaf_brief_description">
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_basic_type"><span class="class">string</span></span> <b><a href="Pluie.OutputFormatter.s_indent.html" class="method">s_indent</a></b> (<span class="main_basic_type"><span class="struct">int8</span></span> adjust = <span class="main_literal">0</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">get an indentation only string</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">protected</span> <span class="main_basic_type"><span class="class">string</span></span> <b><a href="Pluie.OutputFormatter.title_sep.html" class="method">title_sep</a></b> ()
            </span>
            <div class="leaf_brief_description">
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.title.html" class="method">title</a></b> (<span class="main_basic_type"><span class="class">string</span></span> label, <span class="main_basic_type"><span class="class">string</span></span>? version = <span class="main_literal">null</span>, <span class="main_basic_type"><span class="class">string</span></span>? author = <span class="main_literal">null</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display a title</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.action.html" class="method">action</a></b> (<span class="main_basic_type"><span class="class">string</span></span> name, <span class="main_basic_type"><span class="class">string</span></span>? val = <span class="main_literal">""</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display an action</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.warn.html" class="method">warn</a></b> (<span class="main_basic_type"><span class="class">string</span></span> label)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display a warning</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.error.html" class="method">error</a></b> (<span class="main_basic_type"><span class="class">string</span></span> label, <span class="main_basic_type"><span class="struct">bool</span></span> warn = <span class="main_literal">false</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display an error</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.rs.html" class="method">rs</a></b> (<span class="main_basic_type"><span class="struct">bool</span></span> test, <span class="main_basic_type"><span class="class">string</span></span> done = <span class="main_literal">"done"</span>, <span class="main_basic_type"><span class="class">string</span></span> fail = <span class="main_literal">"fail"</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display a test result</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.echo_up.html" class="method">echo_up</a></b> (<span class="main_basic_type"><span class="struct">int</span></span> line, <span class="main_basic_type"><span class="class">string</span></span> s)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display a message up tp x lines</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.echo.html" class="method">echo</a></b> (<span class="main_basic_type"><span class="class">string</span></span>? data = <span class="main_literal">""</span>, <span class="main_basic_type"><span class="struct">bool</span></span> lf = <span class="main_literal">true</span>, <span class="main_basic_type"><span class="struct">bool</span></span> indent_all = <span class="main_literal">false</span>, <span class="main_type"><a href="Pluie.ECHO.html" class="enum">ECHO</a></span> color = <b><a href="Pluie.ECHO.DEFAULT.html" class="enumvalue">DEFAULT</a></b>, <span class="main_basic_type"><span class="struct">int8</span></span> indent_adjust = <span class="main_literal">0</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">generic method to display messages</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.state.html" class="method">state</a></b> (<span class="main_basic_type"><span class="struct">bool</span></span> test)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display a state for specifiyed test</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_basic_type"><span class="class">string</span></span> <b><a href="Pluie.OutputFormatter.wordwrap.html" class="method">wordwrap</a></b> (<span class="main_basic_type"><span class="class">string</span></span> str, <span class="main_basic_type"><span class="struct">int</span></span> width, <span class="main_basic_type"><span class="struct">bool</span></span> cut = <span class="main_literal">false</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">wordwrap paragraph</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.usage_option.html" class="method">usage_option</a></b> (<span class="main_basic_type"><span class="class">string</span></span>? name = <span class="main_literal">null</span>, <span class="main_basic_type"><span class="class">string</span></span>? shortname = <span class="main_literal">null</span>, <span class="main_basic_type"><span class="class">string</span></span>? argname = <span class="main_literal">null</span>, <span class="main_basic_type"><span class="struct">bool</span></span> val = <span class="main_literal">false</span>, <span class="main_basic_type"><span class="struct">int</span></span> echo_up = <span class="main_literal">0</span>)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display usage option</span>
            </div></li>
          <li class="method"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_keyword">void</span> <b><a href="Pluie.OutputFormatter.keyval.html" class="method">keyval</a></b> (<span class="main_basic_type"><span class="class">string</span></span> key, <span class="main_basic_type"><span class="class">string</span></span> val)
            </span>
            <div class="leaf_brief_description"><span class="brief_description">display a key value message</span>
            </div></li>
        </ul>
        <h3 class="main_title">Fields:</h3>
        <ul class="navi_inline">
          <li class="field"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_basic_type"><span class="struct">int</span></span> <b><a href="Pluie.OutputFormatter.indent.html" class="field">indent</a></b>
            </span>
            <div class="leaf_brief_description"><span class="brief_description">number of space defining default indentation</span>
            </div></li>
          <li class="field"><span class="leaf_code_definition"><span class="main_keyword">public</span> <span class="main_basic_type"><span class="struct">int</span></span> <b><a href="Pluie.OutputFormatter.term_width.html" class="field">term_width</a></b>
            </span>
            <div class="leaf_brief_description"><span class="brief_description">max terminal with to considerate when printing messages</span>
            </div></li>
          <li class="field"><span class="leaf_code_definition"><span class="main_keyword">protected</span> <span class="main_type"><a href="Pluie.ColorConf.html" class="class">ColorConf</a></span> <b><a href="Pluie.OutputFormatter.conf.html" class="field">conf</a></b>
            </span>
            <div class="leaf_brief_description">
            </div></li>
        </ul>
      </div>
    </div><br/>
    <div class="site_footer">Generated by <a href="http://www.valadoc.org/">Valadoc</a>
    </div>
  </body>
</html>