<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>Wt examples: /home/koen/project/wt/public-git/wt/examples/wt-homepage/ExampleSourceViewer.C File Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">Wt examples  <span id="projectnumber">3.2.3</span> </div> </td> </tr> </tbody> </table> </div> <!-- Generated by Doxygen 1.7.5.1 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">/home/koen/project/wt/public-git/wt/examples/wt-homepage/ExampleSourceViewer.C File Reference</div> </div> </div> <div class="contents"> <div class="textblock"><code>#include <iostream></code><br/> <code>#include <stdlib.h></code><br/> <code>#include <algorithm></code><br/> <code>#include <Wt/WApplication></code><br/> <code>#include <Wt/WContainerWidget></code><br/> <code>#include <Wt/WEnvironment></code><br/> <code>#include <Wt/WLineEdit></code><br/> <code>#include <Wt/WGridLayout></code><br/> <code>#include <Wt/WHBoxLayout></code><br/> <code>#include <Wt/WPushButton></code><br/> <code>#include <Wt/WTable></code><br/> <code>#include <Wt/WText></code><br/> <code>#include <Wt/WTreeView></code><br/> <code>#include <Wt/WVBoxLayout></code><br/> <code>#include <Wt/WViewWidget></code><br/> <code>#include <boost/filesystem/operations.hpp></code><br/> <code>#include <boost/filesystem/exception.hpp></code><br/> <code>#include <boost/filesystem/convenience.hpp></code><br/> <code>#include <boost/algorithm/string.hpp></code><br/> <code>#include "<a class="el" href="ExampleSourceViewer_8h_source.html">ExampleSourceViewer.h</a>"</code><br/> <code>#include "<a class="el" href="FileItem_8h_source.html">FileItem.h</a>"</code><br/> </div> <p><a href="ExampleSourceViewer_8C_source.html">Go to the source code of this file.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="func-members"></a> Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="ExampleSourceViewer_8C.html#a90d62aee81b34c117b8f494a54bee4d4">filename</a> (const fs::path &p)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="ExampleSourceViewer_8C.html#a2fb90126657b786f14062b06f995583c">stem</a> (const fs::path &p)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">fs::path </td><td class="memItemRight" valign="bottom"><a class="el" href="ExampleSourceViewer_8C.html#ae19c9a4a8bd0a5e02a00d6e17707a342">parent_path</a> (const fs::path &p)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static bool </td><td class="memItemRight" valign="bottom"><a class="el" href="ExampleSourceViewer_8C.html#acb92ccbf2405b113c0b8b66cec63aaae">comparePaths</a> (const fs::path &p1, const fs::path &p2)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">static fs::path </td><td class="memItemRight" valign="bottom"><a class="el" href="ExampleSourceViewer_8C.html#a0c61a4a8c171f6b23a9fc3872c2e9e5d">getCompanion</a> (const fs::path &path)</td></tr> </table> <hr/><h2>Function Documentation</h2> <a class="anchor" id="acb92ccbf2405b113c0b8b66cec63aaae"></a><!-- doxytag: member="ExampleSourceViewer.C::comparePaths" ref="acb92ccbf2405b113c0b8b66cec63aaae" args="(const fs::path &p1, const fs::path &p2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static bool comparePaths </td> <td>(</td> <td class="paramtype">const fs::path & </td> <td class="paramname"><em>p1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const fs::path & </td> <td class="paramname"><em>p2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="ExampleSourceViewer_8C_source.html#l00066">66</a> of file <a class="el" href="ExampleSourceViewer_8C_source.html">ExampleSourceViewer.C</a>.</p> <div class="fragment"><pre class="fragment">{ <span class="keywordflow">return</span> <a class="code" href="ExampleSourceViewer_8C.html#a90d62aee81b34c117b8f494a54bee4d4">filename</a>(p1) > <a class="code" href="ExampleSourceViewer_8C.html#a90d62aee81b34c117b8f494a54bee4d4">filename</a>(p2); } </pre></div> </div> </div> <a class="anchor" id="a90d62aee81b34c117b8f494a54bee4d4"></a><!-- doxytag: member="ExampleSourceViewer.C::filename" ref="a90d62aee81b34c117b8f494a54bee4d4" args="(const fs::path &p)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static std::string filename </td> <td>(</td> <td class="paramtype">const fs::path & </td> <td class="paramname"><em>p</em></td><td>)</td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="ExampleSourceViewer_8C_source.html#l00036">36</a> of file <a class="el" href="ExampleSourceViewer_8C_source.html">ExampleSourceViewer.C</a>.</p> <div class="fragment"><pre class="fragment">{ <span class="preprocessor">#if BOOST_FILESYSTEM_VERSION < 3</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> p.empty() ? std::string() : *--p.end(); <span class="preprocessor">#else</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> p.empty() ? std::string() : (*--p.end()).string(); <span class="preprocessor">#endif</span> <span class="preprocessor"></span>} </pre></div> </div> </div> <a class="anchor" id="a0c61a4a8c171f6b23a9fc3872c2e9e5d"></a><!-- doxytag: member="ExampleSourceViewer.C::getCompanion" ref="a0c61a4a8c171f6b23a9fc3872c2e9e5d" args="(const fs::path &path)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static fs::path getCompanion </td> <td>(</td> <td class="paramtype">const fs::path & </td> <td class="paramname"><em>path</em></td><td>)</td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="ExampleSourceViewer_8C_source.html#l00182">182</a> of file <a class="el" href="ExampleSourceViewer_8C_source.html">ExampleSourceViewer.C</a>.</p> <div class="fragment"><pre class="fragment">{ std::string ext = fs::extension(path); <span class="keywordflow">if</span> (ext == <span class="stringliteral">".h"</span>) <span class="keywordflow">return</span> <a class="code" href="ExampleSourceViewer_8C.html#ae19c9a4a8bd0a5e02a00d6e17707a342">parent_path</a>(path) / (<a class="code" href="ExampleSourceViewer_8C.html#a2fb90126657b786f14062b06f995583c">stem</a>(path) + <span class="stringliteral">".C"</span>); <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ext == <span class="stringliteral">".C"</span> || ext == <span class="stringliteral">".cpp"</span>) <span class="keywordflow">return</span> <a class="code" href="ExampleSourceViewer_8C.html#ae19c9a4a8bd0a5e02a00d6e17707a342">parent_path</a>(path) / (<a class="code" href="ExampleSourceViewer_8C.html#a2fb90126657b786f14062b06f995583c">stem</a>(path) + <span class="stringliteral">".h"</span>); <span class="keywordflow">else</span> <span class="keywordflow">return</span> fs::path(); } </pre></div> </div> </div> <a class="anchor" id="ae19c9a4a8bd0a5e02a00d6e17707a342"></a><!-- doxytag: member="ExampleSourceViewer.C::parent_path" ref="ae19c9a4a8bd0a5e02a00d6e17707a342" args="(const fs::path &p)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">fs::path parent_path </td> <td>(</td> <td class="paramtype">const fs::path & </td> <td class="paramname"><em>p</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="ExampleSourceViewer_8C_source.html#l00058">58</a> of file <a class="el" href="ExampleSourceViewer_8C_source.html">ExampleSourceViewer.C</a>.</p> <div class="fragment"><pre class="fragment">{ std::string fn = <a class="code" href="ExampleSourceViewer_8C.html#a90d62aee81b34c117b8f494a54bee4d4">filename</a>(p); std::string path = p.string(); <span class="keywordflow">return</span> path.substr(0, path.length() - fn.length() - 1); } </pre></div> </div> </div> <a class="anchor" id="a2fb90126657b786f14062b06f995583c"></a><!-- doxytag: member="ExampleSourceViewer.C::stem" ref="a2fb90126657b786f14062b06f995583c" args="(const fs::path &p)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">static std::string stem </td> <td>(</td> <td class="paramtype">const fs::path & </td> <td class="paramname"><em>p</em></td><td>)</td> <td><code> [static]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="ExampleSourceViewer_8C_source.html#l00046">46</a> of file <a class="el" href="ExampleSourceViewer_8C_source.html">ExampleSourceViewer.C</a>.</p> <div class="fragment"><pre class="fragment">{ std::string fn = <a class="code" href="ExampleSourceViewer_8C.html#a90d62aee81b34c117b8f494a54bee4d4">filename</a>(p); std::size_t pos = fn.find(<span class="charliteral">'.'</span>); <span class="keywordflow">if</span> (pos == std::string::npos) <span class="keywordflow">return</span> fn; <span class="keywordflow">else</span> <span class="keywordflow">return</span> fn.substr(0, pos); } </pre></div> </div> </div> </div> <hr size="1"><address style="text-align: right; margin: 3px"><small> Generated on Thu Nov 1 2012 for <a href="http://www.webtoolkit.eu/wt">the C++ Web Toolkit (Wt)</a> by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" border="0" style="vertical-align: middle; display: inline-block; height: 2em"></a> 1.7.5.1</small></address> </body> </html>