mirror of
https://github.com/ArthurSonzogni/FTXUI.git
synced 2025-12-16 01:48:56 +08:00
deploy: deae56888a
This commit is contained in:
334
examples_2dom_2canvas_8cpp-example.html
Normal file
334
examples_2dom_2canvas_8cpp-example.html
Normal file
@@ -0,0 +1,334 @@
|
||||
<!-- HTML header for doxygen 1.9.8-->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
||||
<meta name="generator" content="Doxygen 1.12.0"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>FTXUI: examples/dom/canvas.cpp</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<script type="text/javascript" src="doxygen-awesome-fragment-copy-button.js"></script>
|
||||
<script type="text/javascript" src="doxygen-awesome-paragraph-link.js"></script>
|
||||
<script type="text/javascript" src="doxygen-awesome-interactive-toc.js"></script>
|
||||
<script type="text/javascript" src="doxygen-awesome-tabs.js"></script>
|
||||
<script type="text/javascript">
|
||||
DoxygenAwesomeFragmentCopyButton.init()
|
||||
DoxygenAwesomeParagraphLink.init()
|
||||
DoxygenAwesomeInteractiveToc.init()
|
||||
DoxygenAwesomeTabs.init()
|
||||
</script>
|
||||
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="navtreedata.js"></script>
|
||||
<script type="text/javascript" src="navtree.js"></script>
|
||||
<script type="text/javascript" src="resize.js"></script>
|
||||
<script type="text/javascript" src="cookie.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr id="projectrow">
|
||||
<td id="projectalign">
|
||||
<div id="projectname">FTXUI<span id="projectnumber"> 6.1.9</span>
|
||||
</div>
|
||||
<div id="projectbrief">C++ functional terminal UI.</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.12.0 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(function() { codefold.init(0); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search',true);
|
||||
$(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||
<div id="nav-tree">
|
||||
<div id="nav-tree-contents">
|
||||
<div id="nav-sync" class="sync"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="splitbar" style="-moz-user-select:none;"
|
||||
class="ui-resizable-handle">
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
||||
$(function(){initNavTree('examples_2dom_2canvas_8cpp-example.html',''); initResizable(true); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
<div id="doc-content">
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<div id="MSearchResults">
|
||||
<div class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div id="SRResults"></div>
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle"><div class="title">examples/dom/canvas.cpp</div></div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<h1><a class="anchor" id="autotoc_md215"></a>
|
||||
color_gallery</h1>
|
||||
<div class="fragment"><div class="line"><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
|
||||
<div class="line"><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
|
||||
<div class="line"><span class="comment">// the LICENSE file.</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <<a class="code" href="color__info_8hpp.html">ftxui/screen/color_info.hpp</a>></span> <span class="comment">// for ColorInfo</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>></span> <span class="comment">// for Full, Screen</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <<a class="code" href="terminal_8hpp.html">ftxui/screen/terminal.hpp</a>></span> <span class="comment">// for ColorSupport, Color, Palette16, Palette256, TrueColor</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <memory></span> <span class="comment">// for allocator, shared_ptr</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <utility></span> <span class="comment">// for move</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <vector></span> <span class="comment">// for vector</span></div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>"</span> <span class="comment">// for text, bgcolor, color, vbox, hbox, separator, operator|, Elements, Element, Fit, border</span></div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>"</span> <span class="comment">// for Render</span></div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="color_8hpp.html">ftxui/screen/color.hpp</a>"</span> <span class="comment">// for Color, Color::Black, Color::Blue, Color::BlueLight, Color::Cyan, Color::CyanLight, Color::Default, Color::GrayDark, Color::GrayLight, Color::Green, Color::GreenLight, Color::Magenta, Color::MagentaLight, Color::Red, Color::RedLight, Color::White, Color::Yellow, Color::YellowLight, Color::Palette256, ftxui</span></div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"><span class="keyword">using namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a>;</div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="color__info__sorted__2d_8ipp.html">./color_info_sorted_2d.ipp</a>"</span> <span class="comment">// for ColorInfoSorted2D</span></div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"><span class="keywordtype">int</span> <a id="a0" name="a0"></a><a class="code hl_function" href="examples_2component_2button_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
|
||||
<div class="line"> <span class="comment">// clang-format off</span></div>
|
||||
<div class="line"> <span class="keyword">auto</span> basic_color_display =</div>
|
||||
<div class="line"> vbox(</div>
|
||||
<div class="line"> text(<span class="stringliteral">"16 color palette:"</span>),</div>
|
||||
<div class="line"> separator(),</div>
|
||||
<div class="line"> hbox(</div>
|
||||
<div class="line"> vbox(</div>
|
||||
<div class="line"> color(Color::Default, text(<span class="stringliteral">"Default"</span>)),</div>
|
||||
<div class="line"> color(Color::Black, text(<span class="stringliteral">"Black"</span>)),</div>
|
||||
<div class="line"> color(Color::GrayDark, text(<span class="stringliteral">"GrayDark"</span>)),</div>
|
||||
<div class="line"> color(Color::GrayLight, text(<span class="stringliteral">"GrayLight"</span>)),</div>
|
||||
<div class="line"> color(Color::White, text(<span class="stringliteral">"White"</span>)),</div>
|
||||
<div class="line"> color(Color::Blue, text(<span class="stringliteral">"Blue"</span>)),</div>
|
||||
<div class="line"> color(Color::BlueLight, text(<span class="stringliteral">"BlueLight"</span>)),</div>
|
||||
<div class="line"> color(Color::Cyan, text(<span class="stringliteral">"Cyan"</span>)),</div>
|
||||
<div class="line"> color(Color::CyanLight, text(<span class="stringliteral">"CyanLight"</span>)),</div>
|
||||
<div class="line"> color(Color::Green, text(<span class="stringliteral">"Green"</span>)),</div>
|
||||
<div class="line"> color(Color::GreenLight, text(<span class="stringliteral">"GreenLight"</span>)),</div>
|
||||
<div class="line"> color(Color::Magenta, text(<span class="stringliteral">"Magenta"</span>)),</div>
|
||||
<div class="line"> color(Color::MagentaLight, text(<span class="stringliteral">"MagentaLight"</span>)),</div>
|
||||
<div class="line"> color(Color::Red, text(<span class="stringliteral">"Red"</span>)),</div>
|
||||
<div class="line"> color(Color::RedLight, text(<span class="stringliteral">"RedLight"</span>)),</div>
|
||||
<div class="line"> color(Color::Yellow, text(<span class="stringliteral">"Yellow"</span>)),</div>
|
||||
<div class="line"> color(Color::YellowLight, text(<span class="stringliteral">"YellowLight"</span>))</div>
|
||||
<div class="line"> ),</div>
|
||||
<div class="line"> vbox(</div>
|
||||
<div class="line"> bgcolor(Color::Default, text(<span class="stringliteral">"Default"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Black, text(<span class="stringliteral">"Black"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::GrayDark, text(<span class="stringliteral">"GrayDark"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::GrayLight, text(<span class="stringliteral">"GrayLight"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::White, text(<span class="stringliteral">"White"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Blue, text(<span class="stringliteral">"Blue"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::BlueLight, text(<span class="stringliteral">"BlueLight"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Cyan, text(<span class="stringliteral">"Cyan"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::CyanLight, text(<span class="stringliteral">"CyanLight"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Green, text(<span class="stringliteral">"Green"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::GreenLight, text(<span class="stringliteral">"GreenLight"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Magenta, text(<span class="stringliteral">"Magenta"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::MagentaLight, text(<span class="stringliteral">"MagentaLight"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Red, text(<span class="stringliteral">"Red"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::RedLight, text(<span class="stringliteral">"RedLight"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::Yellow, text(<span class="stringliteral">"Yellow"</span>)),</div>
|
||||
<div class="line"> bgcolor(Color::YellowLight, text(<span class="stringliteral">"YellowLight"</span>))</div>
|
||||
<div class="line"> )</div>
|
||||
<div class="line"> )</div>
|
||||
<div class="line"> );</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="comment">// clang-format on</span></div>
|
||||
<div class="line"> <span class="keyword">auto</span> palette_256_color_display = text(<span class="stringliteral">"256 colors palette:"</span>);</div>
|
||||
<div class="line"> {</div>
|
||||
<div class="line"> std::vector<std::vector<ColorInfo>> info_columns = <a id="a1" name="a1"></a><a class="code hl_function" href="color__info__sorted__2d_8ipp.html#a0f08918d6064cd2a0e56cb9ec74033ca">ColorInfoSorted2D</a>();</div>
|
||||
<div class="line"> <a class="code hl_typedef" href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">Elements</a> columns;</div>
|
||||
<div class="line"> <span class="keywordflow">for</span> (<span class="keyword">auto</span>& column : info_columns) {</div>
|
||||
<div class="line"> <a class="code hl_typedef" href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">Elements</a> column_elements;</div>
|
||||
<div class="line"> <span class="keywordflow">for</span> (<span class="keyword">auto</span>& it : column) {</div>
|
||||
<div class="line"> column_elements.push_back(</div>
|
||||
<div class="line"> text(<span class="stringliteral">" "</span>) | bgcolor(<a id="_a2" name="_a2"></a><a class="code hl_class" href="classftxui_1_1Color.html">Color</a>(<a class="code hl_enumeration" href="classftxui_1_1Color.html#abd07c48f62cc507fafa2486a43130fcf">Color::Palette256</a>(it.index_256))));</div>
|
||||
<div class="line"> }</div>
|
||||
<div class="line"> columns.push_back(hbox(std::move(column_elements)));</div>
|
||||
<div class="line"> }</div>
|
||||
<div class="line"> palette_256_color_display = vbox({</div>
|
||||
<div class="line"> palette_256_color_display,</div>
|
||||
<div class="line"> separator(),</div>
|
||||
<div class="line"> vbox(columns),</div>
|
||||
<div class="line"> });</div>
|
||||
<div class="line"> }</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="comment">// True color display.</span></div>
|
||||
<div class="line"> <span class="keyword">auto</span> true_color_display = text(<span class="stringliteral">"TrueColors: 24bits:"</span>);</div>
|
||||
<div class="line"> {</div>
|
||||
<div class="line"> <span class="keyword">const</span> <span class="keywordtype">int</span> max_value = 255;</div>
|
||||
<div class="line"> <span class="keyword">const</span> <span class="keywordtype">int</span> value_increment = 8;</div>
|
||||
<div class="line"> <span class="keyword">const</span> <span class="keywordtype">int</span> hue_increment = 6;</div>
|
||||
<div class="line"> <span class="keywordtype">int</span> saturation = max_value;</div>
|
||||
<div class="line"> <a class="code hl_typedef" href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">Elements</a> array;</div>
|
||||
<div class="line"> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> value = 0; value < max_value; value += 2 * value_increment) {</div>
|
||||
<div class="line"> <a class="code hl_typedef" href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">Elements</a> line;</div>
|
||||
<div class="line"> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> hue = 0; hue < max_value; hue += hue_increment) {</div>
|
||||
<div class="line"> line.push_back(</div>
|
||||
<div class="line"> text(<span class="stringliteral">"▀"</span>) <span class="comment">//</span></div>
|
||||
<div class="line"> | color(Color::HSV(hue, saturation, value)) <span class="comment">//</span></div>
|
||||
<div class="line"> | bgcolor(Color::HSV(hue, saturation, value + value_increment)));</div>
|
||||
<div class="line"> }</div>
|
||||
<div class="line"> array.push_back(hbox(std::move(line)));</div>
|
||||
<div class="line"> }</div>
|
||||
<div class="line"> true_color_display = vbox({</div>
|
||||
<div class="line"> true_color_display,</div>
|
||||
<div class="line"> separator(),</div>
|
||||
<div class="line"> vbox(std::move(array)),</div>
|
||||
<div class="line"> });</div>
|
||||
<div class="line"> }</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keyword">auto</span> terminal_info =</div>
|
||||
<div class="line"> vbox({</div>
|
||||
<div class="line"> Terminal::ColorSupport() >= Terminal::Color::Palette16</div>
|
||||
<div class="line"> ? text(<span class="stringliteral">" 16 color palette support : Yes"</span>)</div>
|
||||
<div class="line"> : text(<span class="stringliteral">" 16 color palette support : No"</span>),</div>
|
||||
<div class="line"> Terminal::ColorSupport() >= Terminal::Color::Palette256</div>
|
||||
<div class="line"> ? text(<span class="stringliteral">"256 color palette support : Yes"</span>)</div>
|
||||
<div class="line"> : text(<span class="stringliteral">"256 color palette support : No"</span>),</div>
|
||||
<div class="line"> Terminal::ColorSupport() >= Terminal::Color::TrueColor</div>
|
||||
<div class="line"> ? text(<span class="stringliteral">" True color support : Yes"</span>)</div>
|
||||
<div class="line"> : text(<span class="stringliteral">" True color support : No"</span>),</div>
|
||||
<div class="line"> }) |</div>
|
||||
<div class="line"> border;</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keyword">auto</span> document = vbox({hbox({</div>
|
||||
<div class="line"> basic_color_display,</div>
|
||||
<div class="line"> text(<span class="stringliteral">" "</span>),</div>
|
||||
<div class="line"> palette_256_color_display,</div>
|
||||
<div class="line"> text(<span class="stringliteral">" "</span>),</div>
|
||||
<div class="line"> true_color_display,</div>
|
||||
<div class="line"> }),</div>
|
||||
<div class="line"> terminal_info});</div>
|
||||
<div class="line"> <span class="comment">// clang-format on</span></div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keyword">auto</span> screen = Screen::Create(Dimension::Full(), Dimension::Fit(document));</div>
|
||||
<div class="line"> Render(screen, document);</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> screen.Print();</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line">}</div>
|
||||
<div class="ttc" id="aclassftxui_1_1Color_html"><div class="ttname"><a href="classftxui_1_1Color.html">ftxui::Color</a></div><div class="ttdoc">A class representing terminal colors.</div><div class="ttdef"><b>Definition</b> <a href="color_8hpp_source.html#l00020">color.hpp:20</a></div></div>
|
||||
<div class="ttc" id="aclassftxui_1_1Color_html_abd07c48f62cc507fafa2486a43130fcf"><div class="ttname"><a href="classftxui_1_1Color.html#abd07c48f62cc507fafa2486a43130fcf">ftxui::Color::Palette256</a></div><div class="ttdeci">Palette256</div><div class="ttdef"><b>Definition</b> <a href="color_8hpp_source.html#l00070">color.hpp:70</a></div></div>
|
||||
<div class="ttc" id="acolor_8hpp_html"><div class="ttname"><a href="color_8hpp.html">color.hpp</a></div></div>
|
||||
<div class="ttc" id="acolor__info_8hpp_html"><div class="ttname"><a href="color__info_8hpp.html">color_info.hpp</a></div></div>
|
||||
<div class="ttc" id="acolor__info__sorted__2d_8ipp_html"><div class="ttname"><a href="color__info__sorted__2d_8ipp.html">color_info_sorted_2d.ipp</a></div></div>
|
||||
<div class="ttc" id="acolor__info__sorted__2d_8ipp_html_a0f08918d6064cd2a0e56cb9ec74033ca"><div class="ttname"><a href="color__info__sorted__2d_8ipp.html#a0f08918d6064cd2a0e56cb9ec74033ca">ColorInfoSorted2D</a></div><div class="ttdeci">std::vector< std::vector< ftxui::ColorInfo > > ColorInfoSorted2D()</div><div class="ttdef"><b>Definition</b> <a href="color__info__sorted__2d_8ipp_source.html#l00005">color_info_sorted_2d.ipp:5</a></div></div>
|
||||
<div class="ttc" id="aelements_8hpp_html"><div class="ttname"><a href="elements_8hpp.html">elements.hpp</a></div></div>
|
||||
<div class="ttc" id="aexamples_2component_2button_8cpp_html_ae66f6b31b5ad750f1fe042a706a4e3d4"><div class="ttname"><a href="examples_2component_2button_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a></div><div class="ttdeci">int main()</div><div class="ttdef"><b>Definition</b> <a href="examples_2component_2button_8cpp_source.html#l00004">examples/component/button.cpp:4</a></div></div>
|
||||
<div class="ttc" id="anamespaceftxui_html"><div class="ttname"><a href="namespaceftxui.html">ftxui</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00010">animation.hpp:10</a></div></div>
|
||||
<div class="ttc" id="anamespaceftxui_html_a5d4aa06ca6cc6a72e981bd5386f93f0a"><div class="ttname"><a href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">ftxui::Elements</a></div><div class="ttdeci">std::vector< Element > Elements</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00023">elements.hpp:23</a></div></div>
|
||||
<div class="ttc" id="anode_8hpp_html"><div class="ttname"><a href="node_8hpp.html">node.hpp</a></div></div>
|
||||
<div class="ttc" id="ascreen_8hpp_html"><div class="ttname"><a href="screen_8hpp.html">screen.hpp</a></div></div>
|
||||
<div class="ttc" id="aterminal_8hpp_html"><div class="ttname"><a href="terminal_8hpp.html">terminal.hpp</a></div></div>
|
||||
</div><!-- fragment --><div class="fragment"><div class="line"><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
|
||||
<div class="line"><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
|
||||
<div class="line"><span class="comment">// the LICENSE file.</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <stdio.h></span> <span class="comment">// for getchar</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <cmath></span> <span class="comment">// for cos</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>></span> <span class="comment">// for Fit, canvas, operator|, border, Element</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>></span> <span class="comment">// for Pixel, Screen</span></div>
|
||||
<div class="line"><span class="preprocessor">#include <vector></span> <span class="comment">// for vector, allocator</span></div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="canvas_8hpp.html">ftxui/dom/canvas.hpp</a>"</span> <span class="comment">// for Canvas</span></div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>"</span> <span class="comment">// for Render</span></div>
|
||||
<div class="line"><span class="preprocessor">#include "<a class="code" href="color_8hpp.html">ftxui/screen/color.hpp</a>"</span> <span class="comment">// for Color, Color::Red, Color::Blue, Color::Green, ftxui</span></div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"><span class="keywordtype">int</span> <a class="code hl_function" href="examples_2component_2button_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a>() {</div>
|
||||
<div class="line"> <span class="keyword">using namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a>;</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keyword">auto</span> c = <a id="_a3" name="_a3"></a><a class="code hl_struct" href="structftxui_1_1Canvas.html">Canvas</a>(100, 100);</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> c.DrawText(0, 0, <span class="stringliteral">"This is a canvas"</span>, [](<a id="_a4" name="_a4"></a><a class="code hl_struct" href="structftxui_1_1Pixel.html">Pixel</a>& p) {</div>
|
||||
<div class="line"> p.<a id="a5" name="a5"></a><a class="code hl_variable" href="structftxui_1_1Pixel.html#a2ce82adc1d02baf22df658b903dcb351">foreground_color</a> = Color::Red;</div>
|
||||
<div class="line"> p.<a id="a6" name="a6"></a><a class="code hl_variable" href="structftxui_1_1Pixel.html#a7c8849e8321ea248cd4991ea8ef198eb">underlined</a> = <span class="keyword">true</span>;</div>
|
||||
<div class="line"> });</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="comment">// Triangle:</span></div>
|
||||
<div class="line"> c.DrawPointLine(10, 10, 80, 10, Color::Red);</div>
|
||||
<div class="line"> c.DrawPointLine(80, 10, 80, 40, Color::Blue);</div>
|
||||
<div class="line"> c.DrawPointLine(80, 40, 10, 10, Color::Green);</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="comment">// Circle, not filled and filled:</span></div>
|
||||
<div class="line"> c.DrawPointCircle(30, 50, 20);</div>
|
||||
<div class="line"> c.DrawPointCircleFilled(40, 40, 10);</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="comment">// Plot a function:</span></div>
|
||||
<div class="line"> std::vector<int> ys(100);</div>
|
||||
<div class="line"> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = 0; x < 100; x++)</div>
|
||||
<div class="line"> ys[x] = <span class="keywordtype">int</span>(80 + 20 * cos(x * 0.2));</div>
|
||||
<div class="line"> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = 0; x < 99; x++)</div>
|
||||
<div class="line"> c.DrawPointLine(x, ys[x], x + 1, ys[x + 1], Color::Red);</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keyword">auto</span> document = canvas(&c) | border;</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keyword">auto</span> screen = Screen::Create(Dimension::Fit(document));</div>
|
||||
<div class="line"> Render(screen, document);</div>
|
||||
<div class="line"> screen.Print();</div>
|
||||
<div class="line"> getchar();</div>
|
||||
<div class="line"> </div>
|
||||
<div class="line"> <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line">}</div>
|
||||
<div class="ttc" id="acanvas_8hpp_html"><div class="ttname"><a href="canvas_8hpp.html">canvas.hpp</a></div></div>
|
||||
<div class="ttc" id="astructftxui_1_1Canvas_html"><div class="ttname"><a href="structftxui_1_1Canvas.html">ftxui::Canvas</a></div><div class="ttdef"><b>Definition</b> <a href="canvas_8hpp_source.html#l00023">canvas.hpp:23</a></div></div>
|
||||
<div class="ttc" id="astructftxui_1_1Pixel_html"><div class="ttname"><a href="structftxui_1_1Pixel.html">ftxui::Pixel</a></div><div class="ttdoc">A Unicode character and its associated style.</div><div class="ttdef"><b>Definition</b> <a href="pixel_8hpp_source.html#l00015">pixel.hpp:15</a></div></div>
|
||||
<div class="ttc" id="astructftxui_1_1Pixel_html_a2ce82adc1d02baf22df658b903dcb351"><div class="ttname"><a href="structftxui_1_1Pixel.html#a2ce82adc1d02baf22df658b903dcb351">ftxui::Pixel::foreground_color</a></div><div class="ttdeci">Color foreground_color</div><div class="ttdef"><b>Definition</b> <a href="pixel_8hpp_source.html#l00049">pixel.hpp:49</a></div></div>
|
||||
<div class="ttc" id="astructftxui_1_1Pixel_html_a7c8849e8321ea248cd4991ea8ef198eb"><div class="ttname"><a href="structftxui_1_1Pixel.html#a7c8849e8321ea248cd4991ea8ef198eb">ftxui::Pixel::underlined</a></div><div class="ttdeci">bool underlined</div><div class="ttdef"><b>Definition</b> <a href="pixel_8hpp_source.html#l00033">pixel.hpp:33</a></div></div>
|
||||
</div><!-- fragment --> </div><!-- contents -->
|
||||
</div><!-- doc-content -->
|
||||
<!-- HTML footer for doxygen 1.9.8-->
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user