This commit is contained in:
ArthurSonzogni
2025-11-12 12:56:59 +00:00
commit 4aab714d3f
26539 changed files with 3573034 additions and 0 deletions

View File

@@ -0,0 +1,248 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/animation.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('animation_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">animation.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="animation_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation.html">ftxui::animation</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html">ftxui::animation::easing</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a39923c8d62cdaacdc179c2ece3ee16b4" id="r_a39923c8d62cdaacdc179c2ece3ee16b4"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">Linear</a> (float p)</td></tr>
<tr class="separator:a39923c8d62cdaacdc179c2ece3ee16b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0b9303e7f956c36960e601f158e488f" id="r_ab0b9303e7f956c36960e601f158e488f"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f">QuadraticIn</a> (float p)</td></tr>
<tr class="separator:ab0b9303e7f956c36960e601f158e488f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1618a8f59ae7bae191d0ab36bf90e66" id="r_aa1618a8f59ae7bae191d0ab36bf90e66"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66">QuadraticOut</a> (float p)</td></tr>
<tr class="separator:aa1618a8f59ae7bae191d0ab36bf90e66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8155757f48a6e85e27da99c0a93f7e8d" id="r_a8155757f48a6e85e27da99c0a93f7e8d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d">QuadraticInOut</a> (float p)</td></tr>
<tr class="separator:a8155757f48a6e85e27da99c0a93f7e8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2288ba740a847ea0e565017cb16c24f2" id="r_a2288ba740a847ea0e565017cb16c24f2"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2">CubicIn</a> (float p)</td></tr>
<tr class="separator:a2288ba740a847ea0e565017cb16c24f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd3c619812de25f3613b36735a5cdc91" id="r_acd3c619812de25f3613b36735a5cdc91"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91">CubicOut</a> (float p)</td></tr>
<tr class="separator:acd3c619812de25f3613b36735a5cdc91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aa1d45766fe10c3b16b7dd4f65db859" id="r_a2aa1d45766fe10c3b16b7dd4f65db859"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859">CubicInOut</a> (float p)</td></tr>
<tr class="separator:a2aa1d45766fe10c3b16b7dd4f65db859"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af60268bac4059d32b3f7680042dba350" id="r_af60268bac4059d32b3f7680042dba350"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350">QuarticIn</a> (float p)</td></tr>
<tr class="separator:af60268bac4059d32b3f7680042dba350"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8878f359f37551ae64eb183af3ca93b8" id="r_a8878f359f37551ae64eb183af3ca93b8"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8">QuarticOut</a> (float p)</td></tr>
<tr class="separator:a8878f359f37551ae64eb183af3ca93b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72dd2cb5c7ffddfe3a3d8b455f68d37e" id="r_a72dd2cb5c7ffddfe3a3d8b455f68d37e"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e">QuarticInOut</a> (float p)</td></tr>
<tr class="separator:a72dd2cb5c7ffddfe3a3d8b455f68d37e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4eae8c5808cc6ab161037659e761a50" id="r_ab4eae8c5808cc6ab161037659e761a50"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50">QuinticIn</a> (float p)</td></tr>
<tr class="separator:ab4eae8c5808cc6ab161037659e761a50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae2598b1aa6a2fc944f52edbf0453fd5" id="r_aae2598b1aa6a2fc944f52edbf0453fd5"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5">QuinticOut</a> (float p)</td></tr>
<tr class="separator:aae2598b1aa6a2fc944f52edbf0453fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcbc9e6b461fe3418a59faf4a5f9284d" id="r_afcbc9e6b461fe3418a59faf4a5f9284d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d">QuinticInOut</a> (float p)</td></tr>
<tr class="separator:afcbc9e6b461fe3418a59faf4a5f9284d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af48c179e363c6656e904045b33756aeb" id="r_af48c179e363c6656e904045b33756aeb"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb">SineIn</a> (float p)</td></tr>
<tr class="separator:af48c179e363c6656e904045b33756aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92e397623fa5a607f64ba58d5c3dc56a" id="r_a92e397623fa5a607f64ba58d5c3dc56a"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a">SineOut</a> (float p)</td></tr>
<tr class="separator:a92e397623fa5a607f64ba58d5c3dc56a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0eddac1c5f32c9f874ed1c6687a3c830" id="r_a0eddac1c5f32c9f874ed1c6687a3c830"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830">SineInOut</a> (float p)</td></tr>
<tr class="separator:a0eddac1c5f32c9f874ed1c6687a3c830"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9af9e9dc6ba657b5ab681eb8be39ddb5" id="r_a9af9e9dc6ba657b5ab681eb8be39ddb5"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5">CircularIn</a> (float p)</td></tr>
<tr class="separator:a9af9e9dc6ba657b5ab681eb8be39ddb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4188d3f98b876d0e0f181f9fd707f476" id="r_a4188d3f98b876d0e0f181f9fd707f476"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476">CircularOut</a> (float p)</td></tr>
<tr class="separator:a4188d3f98b876d0e0f181f9fd707f476"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d1df50c1810db4a8b16416b62ac7db0" id="r_a0d1df50c1810db4a8b16416b62ac7db0"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0">CircularInOut</a> (float p)</td></tr>
<tr class="separator:a0d1df50c1810db4a8b16416b62ac7db0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0ca381749febbe74887c9fff0522434" id="r_ab0ca381749febbe74887c9fff0522434"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434">ExponentialIn</a> (float p)</td></tr>
<tr class="separator:ab0ca381749febbe74887c9fff0522434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9de59af8a36489121dace3f2a996f029" id="r_a9de59af8a36489121dace3f2a996f029"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029">ExponentialOut</a> (float p)</td></tr>
<tr class="separator:a9de59af8a36489121dace3f2a996f029"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a502f9e65e97d295f46c6a6435a84464d" id="r_a502f9e65e97d295f46c6a6435a84464d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d">ExponentialInOut</a> (float p)</td></tr>
<tr class="separator:a502f9e65e97d295f46c6a6435a84464d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cc4cc8d40617d7b21dea78f71917bbc" id="r_a0cc4cc8d40617d7b21dea78f71917bbc"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc">ElasticIn</a> (float p)</td></tr>
<tr class="separator:a0cc4cc8d40617d7b21dea78f71917bbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad771aec6f0170cb9039446699d1d2295" id="r_ad771aec6f0170cb9039446699d1d2295"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295">ElasticOut</a> (float p)</td></tr>
<tr class="separator:ad771aec6f0170cb9039446699d1d2295"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a537ce88e07af5658175f95eb70369fb9" id="r_a537ce88e07af5658175f95eb70369fb9"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9">ElasticInOut</a> (float p)</td></tr>
<tr class="separator:a537ce88e07af5658175f95eb70369fb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9cca3240dd9f14a807364e322bbdf79" id="r_ae9cca3240dd9f14a807364e322bbdf79"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79">BackIn</a> (float p)</td></tr>
<tr class="separator:ae9cca3240dd9f14a807364e322bbdf79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a440085789f25b7f3ffa1391f09e154f3" id="r_a440085789f25b7f3ffa1391f09e154f3"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3">BackOut</a> (float p)</td></tr>
<tr class="separator:a440085789f25b7f3ffa1391f09e154f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dfa1e95971ff8e4d0f7539f2e8ae577" id="r_a4dfa1e95971ff8e4d0f7539f2e8ae577"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577">BackInOut</a> (float p)</td></tr>
<tr class="separator:a4dfa1e95971ff8e4d0f7539f2e8ae577"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a136fc5aedb4e99e08e5bea138463cb" id="r_a3a136fc5aedb4e99e08e5bea138463cb"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">BounceIn</a> (float p)</td></tr>
<tr class="separator:a3a136fc5aedb4e99e08e5bea138463cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba7f60496f13f39385d9a47349e97c09" id="r_aba7f60496f13f39385d9a47349e97c09"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">BounceOut</a> (float p)</td></tr>
<tr class="separator:aba7f60496f13f39385d9a47349e97c09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a048fdae839f9493331cf1745767519" id="r_a1a048fdae839f9493331cf1745767519"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519">BounceInOut</a> (float p)</td></tr>
<tr class="separator:a1a048fdae839f9493331cf1745767519"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,34 @@
var animation_8cpp =
[
[ "Linear", "animation_8cpp.html#a39923c8d62cdaacdc179c2ece3ee16b4", null ],
[ "QuadraticIn", "animation_8cpp.html#ab0b9303e7f956c36960e601f158e488f", null ],
[ "QuadraticOut", "animation_8cpp.html#aa1618a8f59ae7bae191d0ab36bf90e66", null ],
[ "QuadraticInOut", "animation_8cpp.html#a8155757f48a6e85e27da99c0a93f7e8d", null ],
[ "CubicIn", "animation_8cpp.html#a2288ba740a847ea0e565017cb16c24f2", null ],
[ "CubicOut", "animation_8cpp.html#acd3c619812de25f3613b36735a5cdc91", null ],
[ "CubicInOut", "animation_8cpp.html#a2aa1d45766fe10c3b16b7dd4f65db859", null ],
[ "QuarticIn", "animation_8cpp.html#af60268bac4059d32b3f7680042dba350", null ],
[ "QuarticOut", "animation_8cpp.html#a8878f359f37551ae64eb183af3ca93b8", null ],
[ "QuarticInOut", "animation_8cpp.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e", null ],
[ "QuinticIn", "animation_8cpp.html#ab4eae8c5808cc6ab161037659e761a50", null ],
[ "QuinticOut", "animation_8cpp.html#aae2598b1aa6a2fc944f52edbf0453fd5", null ],
[ "QuinticInOut", "animation_8cpp.html#afcbc9e6b461fe3418a59faf4a5f9284d", null ],
[ "SineIn", "animation_8cpp.html#af48c179e363c6656e904045b33756aeb", null ],
[ "SineOut", "animation_8cpp.html#a92e397623fa5a607f64ba58d5c3dc56a", null ],
[ "SineInOut", "animation_8cpp.html#a0eddac1c5f32c9f874ed1c6687a3c830", null ],
[ "CircularIn", "animation_8cpp.html#a9af9e9dc6ba657b5ab681eb8be39ddb5", null ],
[ "CircularOut", "animation_8cpp.html#a4188d3f98b876d0e0f181f9fd707f476", null ],
[ "CircularInOut", "animation_8cpp.html#a0d1df50c1810db4a8b16416b62ac7db0", null ],
[ "ExponentialIn", "animation_8cpp.html#ab0ca381749febbe74887c9fff0522434", null ],
[ "ExponentialOut", "animation_8cpp.html#a9de59af8a36489121dace3f2a996f029", null ],
[ "ExponentialInOut", "animation_8cpp.html#a502f9e65e97d295f46c6a6435a84464d", null ],
[ "ElasticIn", "animation_8cpp.html#a0cc4cc8d40617d7b21dea78f71917bbc", null ],
[ "ElasticOut", "animation_8cpp.html#ad771aec6f0170cb9039446699d1d2295", null ],
[ "ElasticInOut", "animation_8cpp.html#a537ce88e07af5658175f95eb70369fb9", null ],
[ "BackIn", "animation_8cpp.html#ae9cca3240dd9f14a807364e322bbdf79", null ],
[ "BackOut", "animation_8cpp.html#a440085789f25b7f3ffa1391f09e154f3", null ],
[ "BackInOut", "animation_8cpp.html#a4dfa1e95971ff8e4d0f7539f2e8ae577", null ],
[ "BounceIn", "animation_8cpp.html#a3a136fc5aedb4e99e08e5bea138463cb", null ],
[ "BounceOut", "animation_8cpp.html#aba7f60496f13f39385d9a47349e97c09", null ],
[ "BounceInOut", "animation_8cpp.html#a1a048fdae839f9493331cf1745767519", null ]
];

View File

@@ -0,0 +1,567 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/animation.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('animation_8cpp_source.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">animation.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="animation_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;cmath&gt;</span> <span class="comment">// for sin, pow, sqrt, cos</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;ratio&gt;</span> <span class="comment">// for ratio</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="animation_8hpp.html">ftxui/component/animation.hpp</a>&quot;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui_1_1animation.html">ftxui::animation</a> {</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="keyword">namespace </span>easing {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="keyword">namespace </span>{</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">constexpr</span> <span class="keywordtype">float</span> kPi = 3.14159265358979323846F;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="keyword">constexpr</span> <span class="keywordtype">float</span> kPi2 = kPi / 2.F;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span>} <span class="comment">// namespace</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">// Easing function have been taken out of:</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment">// https://github.com/warrenm/AHEasing/blob/master/AHEasing/easing.c</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment">//</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment">// Corresponding license:</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment">// Copyright (c) 2011, Auerhaus Development, LLC</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment">//</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment">// This program is free software. It comes without any warranty, to</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment">// the extent permitted by applicable law. You can redistribute it</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment">// and/or modify it under the terms of the Do What The Fuck You Want</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment">// To Public License, Version 2, as published by Sam Hocevar. See</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment">// http://sam.zoy.org/wtfpl/COPYING for more details.</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment">// Modeled after the line y = x</span></div>
<div class="foldopen" id="foldopen00029" data-start="{" data-end="}">
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4"> 29</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">Linear</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">return</span> p;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>}</div>
</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="comment">// Modeled after the parabola y = x^2</span></div>
<div class="foldopen" id="foldopen00034" data-start="{" data-end="}">
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f"> 34</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f">QuadraticIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">return</span> p * p;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span>}</div>
</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">// Modeled after the parabola y = -x^2 + 2x</span></div>
<div class="foldopen" id="foldopen00039" data-start="{" data-end="}">
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66"> 39</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66">QuadraticOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">return</span> -(p * (p - 2));</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span>}</div>
</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="comment">// Modeled after the piecewise quadratic</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="comment">// y = (1/2)((2x)^2) ; [0, 0.5)</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment">// y = -(1/2)((2x-1)*(2x-3) - 1) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00046" data-start="{" data-end="}">
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d"> 46</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d">QuadraticInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">return</span> 2 * p * p;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">return</span> (-2 * p * p) + (4 * p) - 1;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> }</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>}</div>
</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="comment">// Modeled after the cubic y = x^3</span></div>
<div class="foldopen" id="foldopen00055" data-start="{" data-end="}">
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2"> 55</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2">CubicIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">return</span> p * p * p;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>}</div>
</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="comment">// Modeled after the cubic y = (x - 1)^3 + 1</span></div>
<div class="foldopen" id="foldopen00060" data-start="{" data-end="}">
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91"> 60</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91">CubicOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = (p - 1);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">return</span> f * f * f + 1;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>}</div>
</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="comment">// Modeled after the piecewise cubic</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span><span class="comment">// y = (1/2)((2x)^3) ; [0, 0.5)</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="comment">// y = (1/2)((2x-2)^3 + 2) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00068" data-start="{" data-end="}">
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859"> 68</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859">CubicInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">return</span> 4 * p * p * p;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = ((2 * p) - 2);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">return</span> 0.5F * f * f * f + 1; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> }</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>}</div>
</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="comment">// Modeled after the quartic x^4</span></div>
<div class="foldopen" id="foldopen00078" data-start="{" data-end="}">
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350"> 78</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350">QuarticIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">return</span> p * p * p * p;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span>}</div>
</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="comment">// Modeled after the quartic y = 1 - (x - 1)^4</span></div>
<div class="foldopen" id="foldopen00083" data-start="{" data-end="}">
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8"> 83</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8">QuarticOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = (p - 1);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> f * f * f * (1 - p) + 1;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>}</div>
</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span><span class="comment">// Modeled after the piecewise quartic</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span><span class="comment">// y = (1/2)((2x)^4) ; [0, 0.5)</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><span class="comment">// y = -(1/2)((2x-2)^4 - 2) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00091" data-start="{" data-end="}">
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e"> 91</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e">QuarticInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">return</span> 8 * p * p * p * p; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = (p - 1);</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">return</span> -8 * f * f * f * f + 1; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> }</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span>}</div>
</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span><span class="comment">// Modeled after the quintic y = x^5</span></div>
<div class="foldopen" id="foldopen00101" data-start="{" data-end="}">
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50"> 101</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50">QuinticIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">return</span> p * p * p * p * p;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span>}</div>
</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span><span class="comment">// Modeled after the quintic y = (x - 1)^5 + 1</span></div>
<div class="foldopen" id="foldopen00106" data-start="{" data-end="}">
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5"> 106</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5">QuinticOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = (p - 1);</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">return</span> f * f * f * f * f + 1;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span>}</div>
</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span><span class="comment">// Modeled after the piecewise quintic</span></div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span><span class="comment">// y = (1/2)((2x)^5) ; [0, 0.5)</span></div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span><span class="comment">// y = (1/2)((2x-2)^5 + 2) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00114" data-start="{" data-end="}">
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d"> 114</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d">QuinticInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">return</span> 16 * p * p * p * p * p; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> } <span class="keywordflow">else</span> { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">float</span> f = ((2 * p) - 2); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">return</span> 0.5 * f * f * f * f * f + 1; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> }</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span>}</div>
</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span><span class="comment">// Modeled after quarter-cycle of sine wave</span></div>
<div class="foldopen" id="foldopen00124" data-start="{" data-end="}">
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb"> 124</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb">SineIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">return</span> std::sin((p - 1) * kPi2) + 1;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span>}</div>
</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span><span class="comment">// Modeled after quarter-cycle of sine wave (different phase)</span></div>
<div class="foldopen" id="foldopen00129" data-start="{" data-end="}">
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a"> 129</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a">SineOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">return</span> std::sin(p * kPi2);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span>}</div>
</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span><span class="comment">// Modeled after half sine wave</span></div>
<div class="foldopen" id="foldopen00134" data-start="{" data-end="}">
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830"> 134</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830">SineInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">return</span> 0.5F * (1 - std::cos(p * kPi)); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span>}</div>
</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> </div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span><span class="comment">// Modeled after shifted quadrant IV of unit circle</span></div>
<div class="foldopen" id="foldopen00139" data-start="{" data-end="}">
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5"> 139</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5">CircularIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">return</span> 1 - std::sqrt(1 - (p * p));</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span>}</div>
</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span><span class="comment">// Modeled after shifted quadrant II of unit circle</span></div>
<div class="foldopen" id="foldopen00144" data-start="{" data-end="}">
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476"> 144</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476">CircularOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">return</span> std::sqrt((2 - p) * p);</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span>}</div>
</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span><span class="comment">// Modeled after the piecewise circular function</span></div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span><span class="comment">// y = (1/2)(1 - sqrt(1 - 4x^2)) ; [0, 0.5)</span></div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span><span class="comment">// y = (1/2)(sqrt(-(2x - 3)*(2x - 1)) + 1) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00151" data-start="{" data-end="}">
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0"> 151</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0">CircularInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">return</span> 0.5F * (1 - std::sqrt(1 - 4 * (p * p))); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">return</span> 0.5F * (std::sqrt(-((2 * p) - 3) * ((2 * p) - 1)) + 1); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> }</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span>}</div>
</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span><span class="comment">// Modeled after the exponential function y = 2^(10(x - 1))</span></div>
<div class="foldopen" id="foldopen00160" data-start="{" data-end="}">
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434"> 160</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434">ExponentialIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">return</span> (p == 0.0) ? p : std::pow(2, 10 * (p - 1)); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span>}</div>
</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> </div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span><span class="comment">// Modeled after the exponential function y = -2^(-10x) + 1</span></div>
<div class="foldopen" id="foldopen00165" data-start="{" data-end="}">
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029"> 165</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029">ExponentialOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">return</span> (p == 1.0) ? p : 1 - std::pow(2, -10 * p); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span>}</div>
</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> </div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span><span class="comment">// Modeled after the piecewise exponential</span></div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span><span class="comment">// y = (1/2)2^(10(2x - 1)) ; [0,0.5)</span></div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span><span class="comment">// y = -(1/2)*2^(-10(2x - 1))) + 1 ; [0.5,1]</span></div>
<div class="foldopen" id="foldopen00172" data-start="{" data-end="}">
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d"> 172</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d">ExponentialInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">if</span> (p == 0.0 || p == 1.F) {</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">return</span> p;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> }</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> </div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">return</span> 0.5 * std::pow(2, (20 * p) - 10); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> } <span class="keywordflow">else</span> { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">return</span> -0.5 * std::pow(2, (-20 * p) + 10) + 1; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> }</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span>}</div>
</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> </div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span><span class="comment">// Modeled after the damped sine wave y = sin(13pi/2*x)*pow(2, 10 * (x - 1))</span></div>
<div class="foldopen" id="foldopen00185" data-start="{" data-end="}">
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc"> 185</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc">ElasticIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">return</span> std::sin(13.F * kPi2 * p) * std::pow(2.F, 10.F * (p - 1)); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span>}</div>
</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span><span class="comment">// Modeled after the damped sine wave y = sin(-13pi/2*(x + 1))*pow(2, -10x) +</span></div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span><span class="comment">// 1</span></div>
<div class="foldopen" id="foldopen00191" data-start="{" data-end="}">
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295"> 191</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295">ElasticOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="comment">// NOLINTNEXTLINE</span></div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">return</span> std::sin(-13.F * kPi2 * (p + 1)) * std::pow(2.F, -10.F * p) + 1;</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span>}</div>
</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span><span class="comment">// Modeled after the piecewise exponentially-damped sine wave:</span></div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span><span class="comment">// y = (1/2)*sin(13pi/2*(2*x))*pow(2, 10 * ((2*x) - 1)) ; [0,0.5)</span></div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span><span class="comment">// y = (1/2)*(sin(-13pi/2*((2x-1)+1))*pow(2,-10(2*x-1)) + 2) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00199" data-start="{" data-end="}">
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9"> 199</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9">ElasticInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">return</span> 0.5 * std::sin(13.F * kPi2 * (2 * p)) * <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> std::pow(2, 10 * ((2 * p) - 1)); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> } <span class="keywordflow">else</span> { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">return</span> 0.5 * (std::sin(-13.F * kPi2 * ((2 * p - 1) + 1)) * <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> std::pow(2, -10 * (2 * p - 1)) + <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> 2); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> }</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span>}</div>
</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span><span class="comment">// Modeled after the overshooting cubic y = x^3-x*sin(x*pi)</span></div>
<div class="foldopen" id="foldopen00211" data-start="{" data-end="}">
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79"> 211</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79">BackIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">return</span> p * p * p - p * std::sin(p * kPi);</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span>}</div>
</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> </div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span><span class="comment">// Modeled after overshooting cubic y = 1-((1-x)^3-(1-x)*sin((1-x)*pi))</span></div>
<div class="foldopen" id="foldopen00216" data-start="{" data-end="}">
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3"> 216</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3">BackOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = (1 - p);</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">return</span> 1 - (f * f * f - f * std::sin(f * kPi));</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span>}</div>
</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> </div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span><span class="comment">// Modeled after the piecewise overshooting cubic function:</span></div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span><span class="comment">// y = (1/2)*((2x)^3-(2x)*sin(2*x*pi)) ; [0, 0.5)</span></div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span><span class="comment">// y = (1/2)*(1-((1-x)^3-(1-x)*sin((1-x)*pi))+1) ; [0.5, 1]</span></div>
<div class="foldopen" id="foldopen00224" data-start="{" data-end="}">
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577"> 224</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577">BackInOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> <span class="keyword">const</span> <span class="keywordtype">float</span> f = 2 * p;</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">return</span> 0.5F * (f * f * f - f * std::sin(f * kPi)); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">float</span> f = (1 - (2 * p - 1)); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">return</span> 0.5F * (1 - (f * f * f - f * std::sin(f * kPi))) + 0.5; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> }</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span>}</div>
</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> </div>
<div class="foldopen" id="foldopen00234" data-start="{" data-end="}">
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb"> 234</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">BounceIn</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">return</span> 1 - <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">BounceOut</a>(1 - p);</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span>}</div>
</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> </div>
<div class="foldopen" id="foldopen00238" data-start="{" data-end="}">
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09"> 238</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">BounceOut</a>(<span class="keywordtype">float</span> p) {</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">if</span> (p &lt; 4 / 11.0) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">return</span> (121 * p * p) / 16.0; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p &lt; 8 / 11.0) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">return</span> (363 / 40.0 * p * p) - (99 / 10.0 * p) + 17 / 5.0; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p &lt; 9 / 10.0) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">return</span> (4356 / 361.0 * p * p) - (35442 / 1805.0 * p) + <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> 16061 / 1805.0; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> } <span class="keywordflow">else</span> { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> <span class="keywordflow">return</span> (54 / 5.0 * p * p) - (513 / 25.0 * p) + 268 / 25.0; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> }</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span>}</div>
</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> </div>
<div class="foldopen" id="foldopen00251" data-start="{" data-end="}">
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519"> 251</a></span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519">BounceInOut</a>(<span class="keywordtype">float</span> p) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">if</span> (p &lt; 0.5F) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">return</span> 0.5F * <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">BounceIn</a>(p * 2); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> } <span class="keywordflow">else</span> { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">return</span> 0.5F * <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">BounceOut</a>(p * 2 - 1) + 0.5F; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> }</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span>}</div>
</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> </div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span>} <span class="comment">// namespace easing</span></div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> </div>
<div class="foldopen" id="foldopen00261" data-start="{" data-end="}">
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Animator.html#a03909a0243b559e18e21996ccacdc8b6"> 261</a></span><a class="code hl_function" href="classftxui_1_1animation_1_1Animator.html#a03909a0243b559e18e21996ccacdc8b6">Animator::Animator</a>(<span class="keywordtype">float</span>* from,</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> <span class="keywordtype">float</span> to,</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> duration,</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">easing::Function</a> easing_function,</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> delay)</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> : value_(from),</div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> from_(*from),</div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> to_(to),</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> duration_(duration),</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> easing_function_(std::move(easing_function)),</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> current_(-delay) {</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <a class="code hl_function" href="namespaceftxui_1_1animation.html#ad94d3d42aba3359550759aae5bcffbe9">RequestAnimationFrame</a>();</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span>}</div>
</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> </div>
<div class="foldopen" id="foldopen00275" data-start="{" data-end="}">
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Animator.html#ac956aa7c105ad418392f69219711117d"> 275</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="classftxui_1_1animation_1_1Animator.html#ac956aa7c105ad418392f69219711117d">Animator::OnAnimation</a>(<a class="code hl_class" href="classftxui_1_1animation_1_1Params.html">Params</a>&amp; params) {</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> current_ += params.<a class="code hl_function" href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50">duration</a>();</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> </div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">if</span> (current_ &gt;= duration_) {</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> *value_ = to_;</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> }</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> </div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">if</span> (current_ &lt;= <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a>()) {</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> *value_ = from_;</div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> *value_ = from_ +</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> (to_ - from_) * easing_function_(current_ / duration_); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> }</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> </div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> <a class="code hl_function" href="namespaceftxui_1_1animation.html#ad94d3d42aba3359550759aae5bcffbe9">RequestAnimationFrame</a>();</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span>}</div>
</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> </div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span>} <span class="comment">// namespace ftxui::animation</span></div>
<div class="ttc" id="aanimation_8hpp_html"><div class="ttname"><a href="animation_8hpp.html">animation.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html_a03909a0243b559e18e21996ccacdc8b6"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html#a03909a0243b559e18e21996ccacdc8b6">ftxui::animation::Animator::Animator</a></div><div class="ttdeci">Animator(float *from, float to=0.f, Duration duration=std::chrono::milliseconds(250), easing::Function easing_function=easing::Linear, Duration delay=std::chrono::milliseconds(0))</div><div class="ttdef"><b>Definition</b> <a href="#l00261">animation.cpp:261</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html_ac956aa7c105ad418392f69219711117d"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html#ac956aa7c105ad418392f69219711117d">ftxui::animation::Animator::OnAnimation</a></div><div class="ttdeci">void OnAnimation(Params &amp;)</div><div class="ttdef"><b>Definition</b> <a href="#l00275">animation.cpp:275</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Params_html"><div class="ttname"><a href="classftxui_1_1animation_1_1Params.html">ftxui::animation::Params</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00024">animation.hpp:24</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Params_html_a2cf2e0a4288915aee8f100d2f0ee3e50"><div class="ttname"><a href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50">ftxui::animation::Params::duration</a></div><div class="ttdeci">Duration duration() const</div><div class="ttdoc">The duration this animation step represents.</div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00029">animation.hpp:29</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a0cc4cc8d40617d7b21dea78f71917bbc"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc">ftxui::animation::easing::ElasticIn</a></div><div class="ttdeci">float ElasticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00185">animation.cpp:185</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a0d1df50c1810db4a8b16416b62ac7db0"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0">ftxui::animation::easing::CircularInOut</a></div><div class="ttdeci">float CircularInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00151">animation.cpp:151</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a0eddac1c5f32c9f874ed1c6687a3c830"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830">ftxui::animation::easing::SineInOut</a></div><div class="ttdeci">float SineInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00134">animation.cpp:134</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a1a048fdae839f9493331cf1745767519"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519">ftxui::animation::easing::BounceInOut</a></div><div class="ttdeci">float BounceInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00251">animation.cpp:251</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a2288ba740a847ea0e565017cb16c24f2"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2">ftxui::animation::easing::CubicIn</a></div><div class="ttdeci">float CubicIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00055">animation.cpp:55</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a2aa1d45766fe10c3b16b7dd4f65db859"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859">ftxui::animation::easing::CubicInOut</a></div><div class="ttdeci">float CubicInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00068">animation.cpp:68</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a39923c8d62cdaacdc179c2ece3ee16b4"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">ftxui::animation::easing::Linear</a></div><div class="ttdeci">float Linear(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00029">animation.cpp:29</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a3a136fc5aedb4e99e08e5bea138463cb"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">ftxui::animation::easing::BounceIn</a></div><div class="ttdeci">float BounceIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00234">animation.cpp:234</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a4188d3f98b876d0e0f181f9fd707f476"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476">ftxui::animation::easing::CircularOut</a></div><div class="ttdeci">float CircularOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00144">animation.cpp:144</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a440085789f25b7f3ffa1391f09e154f3"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3">ftxui::animation::easing::BackOut</a></div><div class="ttdeci">float BackOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00216">animation.cpp:216</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a4dfa1e95971ff8e4d0f7539f2e8ae577"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577">ftxui::animation::easing::BackInOut</a></div><div class="ttdeci">float BackInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00224">animation.cpp:224</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a502f9e65e97d295f46c6a6435a84464d"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d">ftxui::animation::easing::ExponentialInOut</a></div><div class="ttdeci">float ExponentialInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00172">animation.cpp:172</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a537ce88e07af5658175f95eb70369fb9"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9">ftxui::animation::easing::ElasticInOut</a></div><div class="ttdeci">float ElasticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00199">animation.cpp:199</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a72dd2cb5c7ffddfe3a3d8b455f68d37e"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e">ftxui::animation::easing::QuarticInOut</a></div><div class="ttdeci">float QuarticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00091">animation.cpp:91</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a8155757f48a6e85e27da99c0a93f7e8d"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d">ftxui::animation::easing::QuadraticInOut</a></div><div class="ttdeci">float QuadraticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00046">animation.cpp:46</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a8878f359f37551ae64eb183af3ca93b8"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8">ftxui::animation::easing::QuarticOut</a></div><div class="ttdeci">float QuarticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00083">animation.cpp:83</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a92e397623fa5a607f64ba58d5c3dc56a"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a">ftxui::animation::easing::SineOut</a></div><div class="ttdeci">float SineOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00129">animation.cpp:129</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a9af9e9dc6ba657b5ab681eb8be39ddb5"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5">ftxui::animation::easing::CircularIn</a></div><div class="ttdeci">float CircularIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00139">animation.cpp:139</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a9de59af8a36489121dace3f2a996f029"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029">ftxui::animation::easing::ExponentialOut</a></div><div class="ttdeci">float ExponentialOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00165">animation.cpp:165</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_aa1618a8f59ae7bae191d0ab36bf90e66"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66">ftxui::animation::easing::QuadraticOut</a></div><div class="ttdeci">float QuadraticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00039">animation.cpp:39</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_aae2598b1aa6a2fc944f52edbf0453fd5"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5">ftxui::animation::easing::QuinticOut</a></div><div class="ttdeci">float QuinticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00106">animation.cpp:106</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ab0b9303e7f956c36960e601f158e488f"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f">ftxui::animation::easing::QuadraticIn</a></div><div class="ttdeci">float QuadraticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00034">animation.cpp:34</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ab0ca381749febbe74887c9fff0522434"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434">ftxui::animation::easing::ExponentialIn</a></div><div class="ttdeci">float ExponentialIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00160">animation.cpp:160</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ab4eae8c5808cc6ab161037659e761a50"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50">ftxui::animation::easing::QuinticIn</a></div><div class="ttdeci">float QuinticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00101">animation.cpp:101</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_aba7f60496f13f39385d9a47349e97c09"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">ftxui::animation::easing::BounceOut</a></div><div class="ttdeci">float BounceOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00238">animation.cpp:238</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_acd3c619812de25f3613b36735a5cdc91"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91">ftxui::animation::easing::CubicOut</a></div><div class="ttdeci">float CubicOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00060">animation.cpp:60</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ad771aec6f0170cb9039446699d1d2295"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295">ftxui::animation::easing::ElasticOut</a></div><div class="ttdeci">float ElasticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00191">animation.cpp:191</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ad820848234fca6290b7399cc5e07af3a"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">ftxui::animation::easing::Function</a></div><div class="ttdeci">std::function&lt; float(float)&gt; Function</div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00036">animation.hpp:36</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ae9cca3240dd9f14a807364e322bbdf79"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79">ftxui::animation::easing::BackIn</a></div><div class="ttdeci">float BackIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00211">animation.cpp:211</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_af48c179e363c6656e904045b33756aeb"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb">ftxui::animation::easing::SineIn</a></div><div class="ttdeci">float SineIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00124">animation.cpp:124</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_af60268bac4059d32b3f7680042dba350"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350">ftxui::animation::easing::QuarticIn</a></div><div class="ttdeci">float QuarticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00078">animation.cpp:78</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_afcbc9e6b461fe3418a59faf4a5f9284d"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d">ftxui::animation::easing::QuinticInOut</a></div><div class="ttdeci">float QuinticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="#l00114">animation.cpp:114</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html"><div class="ttname"><a href="namespaceftxui_1_1animation.html">ftxui::animation</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00011">animation.hpp:11</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html_a1646872cf994e65d1a5c5d65707f4dec"><div class="ttname"><a href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">ftxui::animation::Duration</a></div><div class="ttdeci">std::chrono::duration&lt; double &gt; Duration</div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00021">animation.hpp:21</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html_ad94d3d42aba3359550759aae5bcffbe9"><div class="ttname"><a href="namespaceftxui_1_1animation.html#ad94d3d42aba3359550759aae5bcffbe9">ftxui::animation::RequestAnimationFrame</a></div><div class="ttdeci">void RequestAnimationFrame()</div><div class="ttdef"><b>Definition</b> <a href="screen__interactive_8cpp_source.html#l00055">screen_interactive.cpp:55</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,349 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/component/animation.hpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('animation_8hpp.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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">animation.hpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="animation_8hpp__dep__incl.png" border="0" usemap="#ainclude_2ftxui_2component_2animation_8hppdep" alt=""/></div>
<map name="ainclude_2ftxui_2component_2animation_8hppdep" id="ainclude_2ftxui_2component_2animation_8hppdep">
<area shape="rect" title=" " alt="" coords="3023,5,3202,45"/>
<area shape="rect" href="component__options_8hpp.html" title=" " alt="" coords="2107,93,2289,133"/>
<area shape="poly" title=" " alt="" coords="3010,39,2290,106,2289,101,3009,34"/>
<area shape="rect" href="button_8cpp.html" title=" " alt="" coords="2996,269,3147,309"/>
<area shape="poly" title=" " alt="" coords="3112,59,3103,134,3090,222,3079,269,3074,268,3085,221,3098,133,3107,59"/>
<area shape="rect" href="menu_8cpp.html" title=" " alt="" coords="3171,269,3321,309"/>
<area shape="poly" title=" " alt="" coords="3126,57,3155,133,3198,220,3232,268,3227,271,3193,223,3150,135,3121,59"/>
<area shape="rect" href="component__options_8cpp.html" title=" " alt="" coords="2894,181,3075,221"/>
<area shape="poly" title=" " alt="" coords="3093,58,3001,183,2996,180,3088,55"/>
<area shape="rect" href="screen__interactive_8hpp.html" title=" " alt="" coords="2590,181,2769,221"/>
<area shape="poly" title=" " alt="" coords="3054,53,2728,184,2726,179,3052,48"/>
<area shape="rect" href="screen__interactive_8cpp.html" title=" " alt="" coords="3346,269,3519,309"/>
<area shape="poly" title=" " alt="" coords="3147,52,3242,131,3411,267,3407,271,3239,135,3144,56"/>
<area shape="rect" href="animation_8cpp.html" title=" " alt="" coords="3252,93,3403,133"/>
<area shape="poly" title=" " alt="" coords="3173,48,3281,91,3279,96,3171,53"/>
<area shape="rect" href="component_8hpp.html" title=" " alt="" coords="1585,181,1763,221"/>
<area shape="poly" title=" " alt="" coords="2093,134,1764,188,1763,183,2092,129"/>
<area shape="poly" title=" " alt="" coords="2303,118,2564,140,2691,157,2742,167,2782,179,2799,188,2811,198,2823,209,2839,219,2907,242,2996,267,2995,272,2905,247,2837,224,2820,213,2808,202,2796,193,2780,184,2741,172,2690,162,2564,145,2303,123"/>
<area shape="rect" href="checkbox_8cpp.html" title=" " alt="" coords="5,269,156,309"/>
<area shape="poly" title=" " alt="" coords="2093,120,1340,141,913,160,736,171,601,184,477,202,354,226,153,272,152,267,353,221,476,197,600,179,735,166,913,155,1340,136,2093,114"/>
<area shape="rect" href="collapsible_8cpp.html" title=" " alt="" coords="180,269,331,309"/>
<area shape="poly" title=" " alt="" coords="2093,119,1877,125,1582,136,1247,155,908,184,748,202,624,220,342,272,331,274,330,269,342,267,623,215,747,197,907,179,1247,150,1582,131,1877,119,2093,114"/>
<area shape="rect" href="dropdown_8cpp.html" title=" " alt="" coords="355,269,505,309"/>
<area shape="poly" title=" " alt="" coords="2093,123,1728,147,1269,184,893,226,517,272,506,274,505,269,516,267,892,220,1268,179,1728,142,2092,118"/>
<area shape="rect" href="input_8cpp.html" title=" " alt="" coords="529,269,680,309"/>
<area shape="poly" title=" " alt="" coords="2093,128,1573,184,1421,205,1269,224,1106,238,980,244,853,252,692,272,681,274,680,269,691,267,853,247,979,239,1106,232,1268,219,1420,199,1572,179,2092,122"/>
<area shape="poly" title=" " alt="" coords="2304,116,2438,124,2589,137,2729,155,2786,166,2830,179,2846,188,2857,199,2868,210,2883,219,2957,244,3018,252,3081,256,3160,267,3171,269,3170,274,3159,272,3080,261,3017,258,2956,249,2881,224,2864,214,2854,203,2843,193,2828,184,2785,171,2729,160,2589,142,2437,129,2303,122"/>
<area shape="rect" href="radiobox_8cpp.html" title=" " alt="" coords="2123,269,2273,309"/>
<area shape="poly" title=" " alt="" coords="2201,147,2201,269,2195,269,2195,147"/>
<area shape="rect" href="slider_8cpp.html" title=" " alt="" coords="2472,269,2623,309"/>
<area shape="poly" title=" " alt="" coords="2249,137,2510,267,2508,271,2247,142"/>
<area shape="poly" title=" " alt="" coords="2303,120,2564,143,2876,179,2894,181,2893,187,2875,184,2563,149,2303,125"/>
<area shape="poly" title=" " alt="" coords="1777,200,1996,202,2297,211,2639,231,2814,247,2985,267,2996,268,2995,274,2984,272,2813,252,2638,237,2296,216,1996,207,1777,205"/>
<area shape="rect" href="catch__event_8cpp.html" title=" " alt="" coords="1948,269,2099,309"/>
<area shape="poly" title=" " alt="" coords="1764,222,1948,267,1947,272,1763,227"/>
<area shape="poly" title=" " alt="" coords="1571,208,861,229,460,248,294,259,168,272,157,274,156,268,167,267,294,254,460,243,861,224,1571,202"/>
<area shape="poly" title=" " alt="" coords="1571,208,944,232,596,250,452,261,342,272,331,274,330,268,342,267,452,255,596,245,944,226,1570,203"/>
<area shape="rect" href="component_8cpp.html" title=" " alt="" coords="2647,269,2797,309"/>
<area shape="poly" title=" " alt="" coords="1777,202,1942,209,2156,220,2394,239,2634,267,2647,269,2646,274,2634,272,2394,244,2155,226,1942,214,1777,208"/>
<area shape="rect" href="component__fuzzer_8cpp.html" title=" " alt="" coords="704,269,876,309"/>
<area shape="poly" title=" " alt="" coords="1571,216,1484,224,1316,236,1185,243,1055,253,888,272,877,274,876,268,887,267,1054,247,1185,238,1315,231,1483,219,1571,210"/>
<area shape="rect" href="container_8cpp.html" title=" " alt="" coords="900,269,1051,309"/>
<area shape="poly" title=" " alt="" coords="1571,216,1062,272,1051,274,1050,269,1062,267,1571,211"/>
<area shape="poly" title=" " alt="" coords="1571,210,984,241,688,258,517,272,506,274,505,268,516,267,688,253,983,235,1571,205"/>
<area shape="rect" href="hoverable_8cpp.html" title=" " alt="" coords="2297,269,2448,309"/>
<area shape="poly" title=" " alt="" coords="1777,208,2010,231,2285,267,2297,269,2296,274,2284,272,2009,236,1776,213"/>
<area shape="poly" title=" " alt="" coords="1571,216,1484,224,1261,237,1087,240,913,248,692,272,681,274,680,268,691,267,913,243,1086,235,1260,231,1483,219,1571,211"/>
<area shape="rect" href="maybe_8cpp.html" title=" " alt="" coords="1075,269,1225,309"/>
<area shape="poly" title=" " alt="" coords="1572,219,1414,242,1237,272,1226,274,1225,269,1236,267,1413,237,1571,214"/>
<area shape="poly" title=" " alt="" coords="1777,202,2477,224,2871,243,3035,254,3160,267,3171,268,3170,274,3159,272,3035,260,2871,248,2477,230,1777,208"/>
<area shape="rect" href="modal_8cpp.html" title=" " alt="" coords="1249,269,1400,309"/>
<area shape="poly" title=" " alt="" coords="1585,227,1401,272,1400,267,1584,222"/>
<area shape="poly" title=" " alt="" coords="1777,214,1934,237,2110,267,2123,269,2122,274,2110,272,1934,243,1776,219"/>
<area shape="rect" href="renderer_8cpp.html" title=" " alt="" coords="1424,269,1575,309"/>
<area shape="poly" title=" " alt="" coords="1625,230,1539,272,1536,267,1622,225"/>
<area shape="rect" href="resizable__split_8cpp.html" title=" " alt="" coords="1599,269,1749,309"/>
<area shape="poly" title=" " alt="" coords="1677,235,1677,269,1671,269,1671,235"/>
<area shape="poly" title=" " alt="" coords="1777,205,2084,225,2272,243,2460,267,2472,269,2471,274,2459,272,2271,248,2083,230,1777,210"/>
<area shape="rect" href="component_2util_8cpp.html" title=" " alt="" coords="1773,269,1924,309"/>
<area shape="poly" title=" " alt="" coords="1726,225,1812,267,1809,272,1723,230"/>
<area shape="poly" title=" " alt="" coords="2779,222,2996,269,2995,274,2778,227"/>
<area shape="poly" title=" " alt="" coords="2697,233,2715,268,2710,270,2692,235"/>
<area shape="poly" title=" " alt="" coords="2600,228,2441,272,2439,267,2598,222"/>
<area shape="poly" title=" " alt="" coords="2576,208,1561,235,1011,253,811,263,692,272,681,274,680,268,691,267,810,258,1011,248,1561,229,2576,202"/>
<area shape="poly" title=" " alt="" coords="2783,212,2959,235,3160,267,3171,269,3170,274,3159,272,2959,241,2782,217"/>
<area shape="poly" title=" " alt="" coords="2577,221,2285,272,2274,274,2273,269,2284,267,2576,216"/>
<area shape="poly" title=" " alt="" coords="2640,231,2578,271,2575,267,2637,227"/>
<area shape="rect" href="loop_8cpp.html" title=" " alt="" coords="2821,269,2972,309"/>
<area shape="poly" title=" " alt="" coords="2741,224,2850,267,2848,272,2739,229"/>
<area shape="poly" title=" " alt="" coords="2783,209,3078,238,3334,267,3346,268,3345,274,3334,272,3078,243,2782,215"/>
</map>
</div>
</div>
<p><a href="animation_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classftxui_1_1animation_1_1Params.html">Params</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classftxui_1_1animation_1_1Animator.html">Animator</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation.html">ftxui::animation</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html">ftxui::animation::easing</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a19bfb27380067c74ae297dd7dad5fb37" id="r_a19bfb27380067c74ae297dd7dad5fb37"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation.html#a19bfb27380067c74ae297dd7dad5fb37">Clock</a> = std::chrono::steady_clock</td></tr>
<tr class="separator:a19bfb27380067c74ae297dd7dad5fb37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97ee0a9619acebafade22a9b7b0de667" id="r_a97ee0a9619acebafade22a9b7b0de667"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation.html#a97ee0a9619acebafade22a9b7b0de667">TimePoint</a> = std::chrono::time_point&lt;<a class="el" href="namespaceftxui_1_1animation.html#a19bfb27380067c74ae297dd7dad5fb37">Clock</a>&gt;</td></tr>
<tr class="separator:a97ee0a9619acebafade22a9b7b0de667"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1646872cf994e65d1a5c5d65707f4dec" id="r_a1646872cf994e65d1a5c5d65707f4dec"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> = std::chrono::duration&lt;double&gt;</td></tr>
<tr class="separator:a1646872cf994e65d1a5c5d65707f4dec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad820848234fca6290b7399cc5e07af3a" id="r_ad820848234fca6290b7399cc5e07af3a"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">Function</a> = std::function&lt;float(float)&gt;</td></tr>
<tr class="separator:ad820848234fca6290b7399cc5e07af3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ad94d3d42aba3359550759aae5bcffbe9" id="r_ad94d3d42aba3359550759aae5bcffbe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation.html#ad94d3d42aba3359550759aae5bcffbe9">RequestAnimationFrame</a> ()</td></tr>
<tr class="separator:ad94d3d42aba3359550759aae5bcffbe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39923c8d62cdaacdc179c2ece3ee16b4" id="r_a39923c8d62cdaacdc179c2ece3ee16b4"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">Linear</a> (float p)</td></tr>
<tr class="separator:a39923c8d62cdaacdc179c2ece3ee16b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0b9303e7f956c36960e601f158e488f" id="r_ab0b9303e7f956c36960e601f158e488f"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f">QuadraticIn</a> (float p)</td></tr>
<tr class="separator:ab0b9303e7f956c36960e601f158e488f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1618a8f59ae7bae191d0ab36bf90e66" id="r_aa1618a8f59ae7bae191d0ab36bf90e66"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66">QuadraticOut</a> (float p)</td></tr>
<tr class="separator:aa1618a8f59ae7bae191d0ab36bf90e66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8155757f48a6e85e27da99c0a93f7e8d" id="r_a8155757f48a6e85e27da99c0a93f7e8d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d">QuadraticInOut</a> (float p)</td></tr>
<tr class="separator:a8155757f48a6e85e27da99c0a93f7e8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2288ba740a847ea0e565017cb16c24f2" id="r_a2288ba740a847ea0e565017cb16c24f2"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2">CubicIn</a> (float p)</td></tr>
<tr class="separator:a2288ba740a847ea0e565017cb16c24f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd3c619812de25f3613b36735a5cdc91" id="r_acd3c619812de25f3613b36735a5cdc91"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91">CubicOut</a> (float p)</td></tr>
<tr class="separator:acd3c619812de25f3613b36735a5cdc91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aa1d45766fe10c3b16b7dd4f65db859" id="r_a2aa1d45766fe10c3b16b7dd4f65db859"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859">CubicInOut</a> (float p)</td></tr>
<tr class="separator:a2aa1d45766fe10c3b16b7dd4f65db859"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af60268bac4059d32b3f7680042dba350" id="r_af60268bac4059d32b3f7680042dba350"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350">QuarticIn</a> (float p)</td></tr>
<tr class="separator:af60268bac4059d32b3f7680042dba350"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8878f359f37551ae64eb183af3ca93b8" id="r_a8878f359f37551ae64eb183af3ca93b8"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8">QuarticOut</a> (float p)</td></tr>
<tr class="separator:a8878f359f37551ae64eb183af3ca93b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72dd2cb5c7ffddfe3a3d8b455f68d37e" id="r_a72dd2cb5c7ffddfe3a3d8b455f68d37e"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e">QuarticInOut</a> (float p)</td></tr>
<tr class="separator:a72dd2cb5c7ffddfe3a3d8b455f68d37e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4eae8c5808cc6ab161037659e761a50" id="r_ab4eae8c5808cc6ab161037659e761a50"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50">QuinticIn</a> (float p)</td></tr>
<tr class="separator:ab4eae8c5808cc6ab161037659e761a50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae2598b1aa6a2fc944f52edbf0453fd5" id="r_aae2598b1aa6a2fc944f52edbf0453fd5"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5">QuinticOut</a> (float p)</td></tr>
<tr class="separator:aae2598b1aa6a2fc944f52edbf0453fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcbc9e6b461fe3418a59faf4a5f9284d" id="r_afcbc9e6b461fe3418a59faf4a5f9284d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d">QuinticInOut</a> (float p)</td></tr>
<tr class="separator:afcbc9e6b461fe3418a59faf4a5f9284d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af48c179e363c6656e904045b33756aeb" id="r_af48c179e363c6656e904045b33756aeb"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb">SineIn</a> (float p)</td></tr>
<tr class="separator:af48c179e363c6656e904045b33756aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92e397623fa5a607f64ba58d5c3dc56a" id="r_a92e397623fa5a607f64ba58d5c3dc56a"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a">SineOut</a> (float p)</td></tr>
<tr class="separator:a92e397623fa5a607f64ba58d5c3dc56a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0eddac1c5f32c9f874ed1c6687a3c830" id="r_a0eddac1c5f32c9f874ed1c6687a3c830"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830">SineInOut</a> (float p)</td></tr>
<tr class="separator:a0eddac1c5f32c9f874ed1c6687a3c830"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9af9e9dc6ba657b5ab681eb8be39ddb5" id="r_a9af9e9dc6ba657b5ab681eb8be39ddb5"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5">CircularIn</a> (float p)</td></tr>
<tr class="separator:a9af9e9dc6ba657b5ab681eb8be39ddb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4188d3f98b876d0e0f181f9fd707f476" id="r_a4188d3f98b876d0e0f181f9fd707f476"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476">CircularOut</a> (float p)</td></tr>
<tr class="separator:a4188d3f98b876d0e0f181f9fd707f476"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d1df50c1810db4a8b16416b62ac7db0" id="r_a0d1df50c1810db4a8b16416b62ac7db0"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0">CircularInOut</a> (float p)</td></tr>
<tr class="separator:a0d1df50c1810db4a8b16416b62ac7db0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0ca381749febbe74887c9fff0522434" id="r_ab0ca381749febbe74887c9fff0522434"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434">ExponentialIn</a> (float p)</td></tr>
<tr class="separator:ab0ca381749febbe74887c9fff0522434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9de59af8a36489121dace3f2a996f029" id="r_a9de59af8a36489121dace3f2a996f029"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029">ExponentialOut</a> (float p)</td></tr>
<tr class="separator:a9de59af8a36489121dace3f2a996f029"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a502f9e65e97d295f46c6a6435a84464d" id="r_a502f9e65e97d295f46c6a6435a84464d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d">ExponentialInOut</a> (float p)</td></tr>
<tr class="separator:a502f9e65e97d295f46c6a6435a84464d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cc4cc8d40617d7b21dea78f71917bbc" id="r_a0cc4cc8d40617d7b21dea78f71917bbc"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc">ElasticIn</a> (float p)</td></tr>
<tr class="separator:a0cc4cc8d40617d7b21dea78f71917bbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad771aec6f0170cb9039446699d1d2295" id="r_ad771aec6f0170cb9039446699d1d2295"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295">ElasticOut</a> (float p)</td></tr>
<tr class="separator:ad771aec6f0170cb9039446699d1d2295"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a537ce88e07af5658175f95eb70369fb9" id="r_a537ce88e07af5658175f95eb70369fb9"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9">ElasticInOut</a> (float p)</td></tr>
<tr class="separator:a537ce88e07af5658175f95eb70369fb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9cca3240dd9f14a807364e322bbdf79" id="r_ae9cca3240dd9f14a807364e322bbdf79"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79">BackIn</a> (float p)</td></tr>
<tr class="separator:ae9cca3240dd9f14a807364e322bbdf79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a440085789f25b7f3ffa1391f09e154f3" id="r_a440085789f25b7f3ffa1391f09e154f3"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3">BackOut</a> (float p)</td></tr>
<tr class="separator:a440085789f25b7f3ffa1391f09e154f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dfa1e95971ff8e4d0f7539f2e8ae577" id="r_a4dfa1e95971ff8e4d0f7539f2e8ae577"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577">BackInOut</a> (float p)</td></tr>
<tr class="separator:a4dfa1e95971ff8e4d0f7539f2e8ae577"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a136fc5aedb4e99e08e5bea138463cb" id="r_a3a136fc5aedb4e99e08e5bea138463cb"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">BounceIn</a> (float p)</td></tr>
<tr class="separator:a3a136fc5aedb4e99e08e5bea138463cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba7f60496f13f39385d9a47349e97c09" id="r_aba7f60496f13f39385d9a47349e97c09"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">BounceOut</a> (float p)</td></tr>
<tr class="separator:aba7f60496f13f39385d9a47349e97c09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a048fdae839f9493331cf1745767519" id="r_a1a048fdae839f9493331cf1745767519"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519">BounceInOut</a> (float p)</td></tr>
<tr class="separator:a1a048fdae839f9493331cf1745767519"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,41 @@
var animation_8hpp =
[
[ "Params", "classftxui_1_1animation_1_1Params.html", null ],
[ "Animator", "classftxui_1_1animation_1_1Animator.html", null ],
[ "Clock", "animation_8hpp.html#a19bfb27380067c74ae297dd7dad5fb37", null ],
[ "TimePoint", "animation_8hpp.html#a97ee0a9619acebafade22a9b7b0de667", null ],
[ "Duration", "animation_8hpp.html#a1646872cf994e65d1a5c5d65707f4dec", null ],
[ "Function", "animation_8hpp.html#ad820848234fca6290b7399cc5e07af3a", null ],
[ "RequestAnimationFrame", "animation_8hpp.html#ad94d3d42aba3359550759aae5bcffbe9", null ],
[ "Linear", "animation_8hpp.html#a39923c8d62cdaacdc179c2ece3ee16b4", null ],
[ "QuadraticIn", "animation_8hpp.html#ab0b9303e7f956c36960e601f158e488f", null ],
[ "QuadraticOut", "animation_8hpp.html#aa1618a8f59ae7bae191d0ab36bf90e66", null ],
[ "QuadraticInOut", "animation_8hpp.html#a8155757f48a6e85e27da99c0a93f7e8d", null ],
[ "CubicIn", "animation_8hpp.html#a2288ba740a847ea0e565017cb16c24f2", null ],
[ "CubicOut", "animation_8hpp.html#acd3c619812de25f3613b36735a5cdc91", null ],
[ "CubicInOut", "animation_8hpp.html#a2aa1d45766fe10c3b16b7dd4f65db859", null ],
[ "QuarticIn", "animation_8hpp.html#af60268bac4059d32b3f7680042dba350", null ],
[ "QuarticOut", "animation_8hpp.html#a8878f359f37551ae64eb183af3ca93b8", null ],
[ "QuarticInOut", "animation_8hpp.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e", null ],
[ "QuinticIn", "animation_8hpp.html#ab4eae8c5808cc6ab161037659e761a50", null ],
[ "QuinticOut", "animation_8hpp.html#aae2598b1aa6a2fc944f52edbf0453fd5", null ],
[ "QuinticInOut", "animation_8hpp.html#afcbc9e6b461fe3418a59faf4a5f9284d", null ],
[ "SineIn", "animation_8hpp.html#af48c179e363c6656e904045b33756aeb", null ],
[ "SineOut", "animation_8hpp.html#a92e397623fa5a607f64ba58d5c3dc56a", null ],
[ "SineInOut", "animation_8hpp.html#a0eddac1c5f32c9f874ed1c6687a3c830", null ],
[ "CircularIn", "animation_8hpp.html#a9af9e9dc6ba657b5ab681eb8be39ddb5", null ],
[ "CircularOut", "animation_8hpp.html#a4188d3f98b876d0e0f181f9fd707f476", null ],
[ "CircularInOut", "animation_8hpp.html#a0d1df50c1810db4a8b16416b62ac7db0", null ],
[ "ExponentialIn", "animation_8hpp.html#ab0ca381749febbe74887c9fff0522434", null ],
[ "ExponentialOut", "animation_8hpp.html#a9de59af8a36489121dace3f2a996f029", null ],
[ "ExponentialInOut", "animation_8hpp.html#a502f9e65e97d295f46c6a6435a84464d", null ],
[ "ElasticIn", "animation_8hpp.html#a0cc4cc8d40617d7b21dea78f71917bbc", null ],
[ "ElasticOut", "animation_8hpp.html#ad771aec6f0170cb9039446699d1d2295", null ],
[ "ElasticInOut", "animation_8hpp.html#a537ce88e07af5658175f95eb70369fb9", null ],
[ "BackIn", "animation_8hpp.html#ae9cca3240dd9f14a807364e322bbdf79", null ],
[ "BackOut", "animation_8hpp.html#a440085789f25b7f3ffa1391f09e154f3", null ],
[ "BackInOut", "animation_8hpp.html#a4dfa1e95971ff8e4d0f7539f2e8ae577", null ],
[ "BounceIn", "animation_8hpp.html#a3a136fc5aedb4e99e08e5bea138463cb", null ],
[ "BounceOut", "animation_8hpp.html#aba7f60496f13f39385d9a47349e97c09", null ],
[ "BounceInOut", "animation_8hpp.html#a1a048fdae839f9493331cf1745767519", null ]
];

View File

@@ -0,0 +1,72 @@
<map id="include/ftxui/component/animation.hpp" name="include/ftxui/component/animation.hpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="3023,5,3202,45"/>
<area shape="rect" id="Node000002" href="$component__options_8hpp.html" title=" " alt="" coords="2107,93,2289,133"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="3010,39,2290,106,2289,101,3009,34"/>
<area shape="rect" id="Node000004" href="$button_8cpp.html" title=" " alt="" coords="2996,269,3147,309"/>
<area shape="poly" id="edge41_Node000001_Node000004" title=" " alt="" coords="3112,59,3103,134,3090,222,3079,269,3074,268,3085,221,3098,133,3107,59"/>
<area shape="rect" id="Node000015" href="$menu_8cpp.html" title=" " alt="" coords="3171,269,3321,309"/>
<area shape="poly" id="edge43_Node000001_Node000015" title=" " alt="" coords="3126,57,3155,133,3198,220,3232,268,3227,271,3193,223,3150,135,3121,59"/>
<area shape="rect" id="Node000022" href="$component__options_8cpp.html" title=" " alt="" coords="2894,181,3075,221"/>
<area shape="poly" id="edge42_Node000001_Node000022" title=" " alt="" coords="3093,58,3001,183,2996,180,3088,55"/>
<area shape="rect" id="Node000023" href="$screen__interactive_8hpp.html" title=" " alt="" coords="2590,181,2769,221"/>
<area shape="poly" id="edge30_Node000001_Node000023" title=" " alt="" coords="3054,53,2728,184,2726,179,3052,48"/>
<area shape="rect" id="Node000025" href="$screen__interactive_8cpp.html" title=" " alt="" coords="3346,269,3519,309"/>
<area shape="poly" id="edge44_Node000001_Node000025" title=" " alt="" coords="3147,52,3242,131,3411,267,3407,271,3239,135,3144,56"/>
<area shape="rect" id="Node000026" href="$animation_8cpp.html" title=" " alt="" coords="3252,93,3403,133"/>
<area shape="poly" id="edge40_Node000001_Node000026" title=" " alt="" coords="3173,48,3281,91,3279,96,3171,53"/>
<area shape="rect" id="Node000003" href="$component_8hpp.html" title=" " alt="" coords="1585,181,1763,221"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="2093,134,1764,188,1763,183,2092,129"/>
<area shape="poly" id="edge21_Node000002_Node000004" title=" " alt="" coords="2303,118,2564,140,2691,157,2742,167,2782,179,2799,188,2811,198,2823,209,2839,219,2907,242,2996,267,2995,272,2905,247,2837,224,2820,213,2808,202,2796,193,2780,184,2741,172,2690,162,2564,145,2303,123"/>
<area shape="rect" id="Node000006" href="$checkbox_8cpp.html" title=" " alt="" coords="5,269,156,309"/>
<area shape="poly" id="edge22_Node000002_Node000006" title=" " alt="" coords="2093,120,1340,141,913,160,736,171,601,184,477,202,354,226,153,272,152,267,353,221,476,197,600,179,735,166,913,155,1340,136,2093,114"/>
<area shape="rect" id="Node000007" href="$collapsible_8cpp.html" title=" " alt="" coords="180,269,331,309"/>
<area shape="poly" id="edge23_Node000002_Node000007" title=" " alt="" coords="2093,119,1877,125,1582,136,1247,155,908,184,748,202,624,220,342,272,331,274,330,269,342,267,623,215,747,197,907,179,1247,150,1582,131,1877,119,2093,114"/>
<area shape="rect" id="Node000011" href="$dropdown_8cpp.html" title=" " alt="" coords="355,269,505,309"/>
<area shape="poly" id="edge25_Node000002_Node000011" title=" " alt="" coords="2093,123,1728,147,1269,184,893,226,517,272,506,274,505,269,516,267,892,220,1268,179,1728,142,2092,118"/>
<area shape="rect" id="Node000013" href="$input_8cpp.html" title=" " alt="" coords="529,269,680,309"/>
<area shape="poly" id="edge26_Node000002_Node000013" title=" " alt="" coords="2093,128,1573,184,1421,205,1269,224,1106,238,980,244,853,252,692,272,681,274,680,269,691,267,853,247,979,239,1106,232,1268,219,1420,199,1572,179,2092,122"/>
<area shape="poly" id="edge27_Node000002_Node000015" title=" " alt="" coords="2304,116,2438,124,2589,137,2729,155,2786,166,2830,179,2846,188,2857,199,2868,210,2883,219,2957,244,3018,252,3081,256,3160,267,3171,269,3170,274,3159,272,3080,261,3017,258,2956,249,2881,224,2864,214,2854,203,2843,193,2828,184,2785,171,2729,160,2589,142,2437,129,2303,122"/>
<area shape="rect" id="Node000017" href="$radiobox_8cpp.html" title=" " alt="" coords="2123,269,2273,309"/>
<area shape="poly" id="edge28_Node000002_Node000017" title=" " alt="" coords="2201,147,2201,269,2195,269,2195,147"/>
<area shape="rect" id="Node000020" href="$slider_8cpp.html" title=" " alt="" coords="2472,269,2623,309"/>
<area shape="poly" id="edge29_Node000002_Node000020" title=" " alt="" coords="2249,137,2510,267,2508,271,2247,142"/>
<area shape="poly" id="edge24_Node000002_Node000022" title=" " alt="" coords="2303,120,2564,143,2876,179,2894,181,2893,187,2875,184,2563,149,2303,125"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="1777,200,1996,202,2297,211,2639,231,2814,247,2985,267,2996,268,2995,274,2984,272,2813,252,2638,237,2296,216,1996,207,1777,205"/>
<area shape="rect" id="Node000005" href="$catch__event_8cpp.html" title=" " alt="" coords="1948,269,2099,309"/>
<area shape="poly" id="edge4_Node000003_Node000005" title=" " alt="" coords="1764,222,1948,267,1947,272,1763,227"/>
<area shape="poly" id="edge5_Node000003_Node000006" title=" " alt="" coords="1571,208,861,229,460,248,294,259,168,272,157,274,156,268,167,267,294,254,460,243,861,224,1571,202"/>
<area shape="poly" id="edge6_Node000003_Node000007" title=" " alt="" coords="1571,208,944,232,596,250,452,261,342,272,331,274,330,268,342,267,452,255,596,245,944,226,1570,203"/>
<area shape="rect" id="Node000008" href="$component_8cpp.html" title=" " alt="" coords="2647,269,2797,309"/>
<area shape="poly" id="edge7_Node000003_Node000008" title=" " alt="" coords="1777,202,1942,209,2156,220,2394,239,2634,267,2647,269,2646,274,2634,272,2394,244,2155,226,1942,214,1777,208"/>
<area shape="rect" id="Node000009" href="$component__fuzzer_8cpp.html" title=" " alt="" coords="704,269,876,309"/>
<area shape="poly" id="edge8_Node000003_Node000009" title=" " alt="" coords="1571,216,1484,224,1316,236,1185,243,1055,253,888,272,877,274,876,268,887,267,1054,247,1185,238,1315,231,1483,219,1571,210"/>
<area shape="rect" id="Node000010" href="$container_8cpp.html" title=" " alt="" coords="900,269,1051,309"/>
<area shape="poly" id="edge9_Node000003_Node000010" title=" " alt="" coords="1571,216,1062,272,1051,274,1050,269,1062,267,1571,211"/>
<area shape="poly" id="edge10_Node000003_Node000011" title=" " alt="" coords="1571,210,984,241,688,258,517,272,506,274,505,268,516,267,688,253,983,235,1571,205"/>
<area shape="rect" id="Node000012" href="$hoverable_8cpp.html" title=" " alt="" coords="2297,269,2448,309"/>
<area shape="poly" id="edge11_Node000003_Node000012" title=" " alt="" coords="1777,208,2010,231,2285,267,2297,269,2296,274,2284,272,2009,236,1776,213"/>
<area shape="poly" id="edge12_Node000003_Node000013" title=" " alt="" coords="1571,216,1484,224,1261,237,1087,240,913,248,692,272,681,274,680,268,691,267,913,243,1086,235,1260,231,1483,219,1571,211"/>
<area shape="rect" id="Node000014" href="$maybe_8cpp.html" title=" " alt="" coords="1075,269,1225,309"/>
<area shape="poly" id="edge13_Node000003_Node000014" title=" " alt="" coords="1572,219,1414,242,1237,272,1226,274,1225,269,1236,267,1413,237,1571,214"/>
<area shape="poly" id="edge14_Node000003_Node000015" title=" " alt="" coords="1777,202,2477,224,2871,243,3035,254,3160,267,3171,268,3170,274,3159,272,3035,260,2871,248,2477,230,1777,208"/>
<area shape="rect" id="Node000016" href="$modal_8cpp.html" title=" " alt="" coords="1249,269,1400,309"/>
<area shape="poly" id="edge15_Node000003_Node000016" title=" " alt="" coords="1585,227,1401,272,1400,267,1584,222"/>
<area shape="poly" id="edge16_Node000003_Node000017" title=" " alt="" coords="1777,214,1934,237,2110,267,2123,269,2122,274,2110,272,1934,243,1776,219"/>
<area shape="rect" id="Node000018" href="$renderer_8cpp.html" title=" " alt="" coords="1424,269,1575,309"/>
<area shape="poly" id="edge17_Node000003_Node000018" title=" " alt="" coords="1625,230,1539,272,1536,267,1622,225"/>
<area shape="rect" id="Node000019" href="$resizable__split_8cpp.html" title=" " alt="" coords="1599,269,1749,309"/>
<area shape="poly" id="edge18_Node000003_Node000019" title=" " alt="" coords="1677,235,1677,269,1671,269,1671,235"/>
<area shape="poly" id="edge19_Node000003_Node000020" title=" " alt="" coords="1777,205,2084,225,2272,243,2460,267,2472,269,2471,274,2459,272,2271,248,2083,230,1777,210"/>
<area shape="rect" id="Node000021" href="$component_2util_8cpp.html" title=" " alt="" coords="1773,269,1924,309"/>
<area shape="poly" id="edge20_Node000003_Node000021" title=" " alt="" coords="1726,225,1812,267,1809,272,1723,230"/>
<area shape="poly" id="edge31_Node000023_Node000004" title=" " alt="" coords="2779,222,2996,269,2995,274,2778,227"/>
<area shape="poly" id="edge32_Node000023_Node000008" title=" " alt="" coords="2697,233,2715,268,2710,270,2692,235"/>
<area shape="poly" id="edge33_Node000023_Node000012" title=" " alt="" coords="2600,228,2441,272,2439,267,2598,222"/>
<area shape="poly" id="edge34_Node000023_Node000013" title=" " alt="" coords="2576,208,1561,235,1011,253,811,263,692,272,681,274,680,268,691,267,810,258,1011,248,1561,229,2576,202"/>
<area shape="poly" id="edge36_Node000023_Node000015" title=" " alt="" coords="2783,212,2959,235,3160,267,3171,269,3170,274,3159,272,2959,241,2782,217"/>
<area shape="poly" id="edge37_Node000023_Node000017" title=" " alt="" coords="2577,221,2285,272,2274,274,2273,269,2284,267,2576,216"/>
<area shape="poly" id="edge39_Node000023_Node000020" title=" " alt="" coords="2640,231,2578,271,2575,267,2637,227"/>
<area shape="rect" id="Node000024" href="$loop_8cpp.html" title=" " alt="" coords="2821,269,2972,309"/>
<area shape="poly" id="edge35_Node000023_Node000024" title=" " alt="" coords="2741,224,2850,267,2848,272,2739,229"/>
<area shape="poly" id="edge38_Node000023_Node000025" title=" " alt="" coords="2783,209,3078,238,3334,267,3346,268,3345,274,3334,272,3078,243,2782,215"/>
</map>

View File

@@ -0,0 +1 @@
56b0cd198cf8dabfb714cb4aa164dea6

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

View File

@@ -0,0 +1,342 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/component/animation.hpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('animation_8hpp_source.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">animation.hpp</div></div>
</div><!--header-->
<div class="contents">
<a href="animation_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef FTXUI_ANIMATION_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define FTXUI_ANIMATION_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;chrono&gt;</span> <span class="comment">// for milliseconds, duration, steady_clock, time_point</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;functional&gt;</span> <span class="comment">// for function</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="event_8hpp.html">ftxui/component/event.hpp</a>&quot;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceftxui.html"> 9</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="foldopen" id="foldopen00011" data-start="{" data-end="}">
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation.html"> 11</a></span><span class="keyword">namespace </span>animation {</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment">// Components who haven&#39;t completed their animation can call this function to</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">// request a new frame to be drawn later.</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment">//</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="comment">// When there is no new events and no animations to complete, no new frame is</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">// drawn.</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceftxui_1_1animation.html#ad94d3d42aba3359550759aae5bcffbe9">RequestAnimationFrame</a>();</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation.html#a19bfb27380067c74ae297dd7dad5fb37"> 19</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a19bfb27380067c74ae297dd7dad5fb37">Clock</a> = std::chrono::steady_clock;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation.html#a97ee0a9619acebafade22a9b7b0de667"> 20</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a97ee0a9619acebafade22a9b7b0de667">TimePoint</a> = std::chrono::time_point&lt;Clock&gt;;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec"> 21</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> = std::chrono::duration&lt;double&gt;;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment">// Parameter of Component::OnAnimation(param).</span></div>
<div class="foldopen" id="foldopen00024" data-start="{" data-end="};">
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Params.html"> 24</a></span><span class="keyword">class </span><a class="code hl_class" href="classftxui_1_1animation_1_1Params.html">Params</a> {</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Params.html#a27854a0925475df9b926b03808cc8d8c"> 26</a></span> <a class="code hl_function" href="classftxui_1_1animation_1_1Params.html#a27854a0925475df9b926b03808cc8d8c">Params</a>(<a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> <a class="code hl_function" href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50">duration</a>) : duration_(<a class="code hl_function" href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50">duration</a>) {}</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"></span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> /// The duration this animation step represents.</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50"> 29</a></span><span class="comment"></span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> <a class="code hl_function" href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50">duration</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> duration_; }</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> duration_;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>};</div>
</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="foldopen" id="foldopen00035" data-start="{" data-end="}">
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html"> 35</a></span><span class="keyword">namespace </span>easing {</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a"> 36</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">Function</a> = std::function&lt;float(<span class="keywordtype">float</span>)&gt;;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment">// Linear interpolation (no easing)</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">Linear</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment">// Quadratic easing; p^2</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f">QuadraticIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66">QuadraticOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d">QuadraticInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment">// Cubic easing; p^3</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2">CubicIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91">CubicOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859">CubicInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="comment">// Quartic easing; p^4</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350">QuarticIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8">QuarticOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e">QuarticInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="comment">// Quintic easing; p^5</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50">QuinticIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5">QuinticOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d">QuinticInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><span class="comment">// Sine wave easing; sin(p * PI/2)</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb">SineIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a">SineOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830">SineInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="comment">// Circular easing; sqrt(1 - p^2)</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5">CircularIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476">CircularOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0">CircularInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="comment">// Exponential easing, base 2</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434">ExponentialIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029">ExponentialOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d">ExponentialInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="comment">// Exponentially-damped sine wave easing</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc">ElasticIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295">ElasticOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9">ElasticInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span><span class="comment">// Overshooting cubic easing;</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79">BackIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3">BackOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577">BackInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> </div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span><span class="comment">// Exponentially-decaying bounce easing</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">BounceIn</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">BounceOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span><span class="keywordtype">float</span> <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519">BounceInOut</a>(<span class="keywordtype">float</span> p);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span>} <span class="comment">// namespace easing</span></div>
</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="foldopen" id="foldopen00091" data-start="{" data-end="};">
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Animator.html"> 91</a></span><span class="keyword">class </span><a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">Animator</a> {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <a class="code hl_function" href="classftxui_1_1animation_1_1Animator.html#a03909a0243b559e18e21996ccacdc8b6">Animator</a>(<span class="keywordtype">float</span>* from,</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">float</span> <a class="code hl_function" href="classftxui_1_1animation_1_1Animator.html#a5d3b8db14f3f21f9169cfbebf247d854">to</a> = 0.f,</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> duration = std::chrono::milliseconds(250),</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">easing::Function</a> easing_function = <a class="code hl_function" href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">easing::Linear</a>,</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> delay = std::chrono::milliseconds(0));</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classftxui_1_1animation_1_1Animator.html#ac956aa7c105ad418392f69219711117d">OnAnimation</a>(<a class="code hl_class" href="classftxui_1_1animation_1_1Params.html">Params</a>&amp;);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> </div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"><a class="line" href="classftxui_1_1animation_1_1Animator.html#a5d3b8db14f3f21f9169cfbebf247d854"> 101</a></span> <span class="keywordtype">float</span> <a class="code hl_function" href="classftxui_1_1animation_1_1Animator.html#a5d3b8db14f3f21f9169cfbebf247d854">to</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> to_; }</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> </div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">float</span>* value_;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">float</span> from_;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">float</span> to_;</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> duration_;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">easing::Function</a> easing_function_;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <a class="code hl_typedef" href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">Duration</a> current_;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span>};</div>
</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span>} <span class="comment">// namespace animation</span></div>
</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span>} <span class="comment">// namespace ftxui</span></div>
</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> </div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span><span class="preprocessor">#endif </span><span class="comment">/* end of include guard: FTXUI_ANIMATION_HPP */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span><span class="comment">// Copyright 2022 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html">ftxui::animation::Animator</a></div><div class="ttdef"><b>Definition</b> <a href="#l00091">animation.hpp:91</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html_a03909a0243b559e18e21996ccacdc8b6"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html#a03909a0243b559e18e21996ccacdc8b6">ftxui::animation::Animator::Animator</a></div><div class="ttdeci">Animator(float *from, float to=0.f, Duration duration=std::chrono::milliseconds(250), easing::Function easing_function=easing::Linear, Duration delay=std::chrono::milliseconds(0))</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00261">animation.cpp:261</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html_a5d3b8db14f3f21f9169cfbebf247d854"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html#a5d3b8db14f3f21f9169cfbebf247d854">ftxui::animation::Animator::to</a></div><div class="ttdeci">float to() const</div><div class="ttdef"><b>Definition</b> <a href="#l00101">animation.hpp:101</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html_ac956aa7c105ad418392f69219711117d"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html#ac956aa7c105ad418392f69219711117d">ftxui::animation::Animator::OnAnimation</a></div><div class="ttdeci">void OnAnimation(Params &amp;)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00275">animation.cpp:275</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Params_html"><div class="ttname"><a href="classftxui_1_1animation_1_1Params.html">ftxui::animation::Params</a></div><div class="ttdef"><b>Definition</b> <a href="#l00024">animation.hpp:24</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Params_html_a27854a0925475df9b926b03808cc8d8c"><div class="ttname"><a href="classftxui_1_1animation_1_1Params.html#a27854a0925475df9b926b03808cc8d8c">ftxui::animation::Params::Params</a></div><div class="ttdeci">Params(Duration duration)</div><div class="ttdef"><b>Definition</b> <a href="#l00026">animation.hpp:26</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Params_html_a2cf2e0a4288915aee8f100d2f0ee3e50"><div class="ttname"><a href="classftxui_1_1animation_1_1Params.html#a2cf2e0a4288915aee8f100d2f0ee3e50">ftxui::animation::Params::duration</a></div><div class="ttdeci">Duration duration() const</div><div class="ttdoc">The duration this animation step represents.</div><div class="ttdef"><b>Definition</b> <a href="#l00029">animation.hpp:29</a></div></div>
<div class="ttc" id="aevent_8hpp_html"><div class="ttname"><a href="event_8hpp.html">event.hpp</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a0cc4cc8d40617d7b21dea78f71917bbc"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a0cc4cc8d40617d7b21dea78f71917bbc">ftxui::animation::easing::ElasticIn</a></div><div class="ttdeci">float ElasticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00185">animation.cpp:185</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a0d1df50c1810db4a8b16416b62ac7db0"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a0d1df50c1810db4a8b16416b62ac7db0">ftxui::animation::easing::CircularInOut</a></div><div class="ttdeci">float CircularInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00151">animation.cpp:151</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a0eddac1c5f32c9f874ed1c6687a3c830"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a0eddac1c5f32c9f874ed1c6687a3c830">ftxui::animation::easing::SineInOut</a></div><div class="ttdeci">float SineInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00134">animation.cpp:134</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a1a048fdae839f9493331cf1745767519"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a1a048fdae839f9493331cf1745767519">ftxui::animation::easing::BounceInOut</a></div><div class="ttdeci">float BounceInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00251">animation.cpp:251</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a2288ba740a847ea0e565017cb16c24f2"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a2288ba740a847ea0e565017cb16c24f2">ftxui::animation::easing::CubicIn</a></div><div class="ttdeci">float CubicIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00055">animation.cpp:55</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a2aa1d45766fe10c3b16b7dd4f65db859"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a2aa1d45766fe10c3b16b7dd4f65db859">ftxui::animation::easing::CubicInOut</a></div><div class="ttdeci">float CubicInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00068">animation.cpp:68</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a39923c8d62cdaacdc179c2ece3ee16b4"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a39923c8d62cdaacdc179c2ece3ee16b4">ftxui::animation::easing::Linear</a></div><div class="ttdeci">float Linear(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00029">animation.cpp:29</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a3a136fc5aedb4e99e08e5bea138463cb"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a3a136fc5aedb4e99e08e5bea138463cb">ftxui::animation::easing::BounceIn</a></div><div class="ttdeci">float BounceIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00234">animation.cpp:234</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a4188d3f98b876d0e0f181f9fd707f476"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a4188d3f98b876d0e0f181f9fd707f476">ftxui::animation::easing::CircularOut</a></div><div class="ttdeci">float CircularOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00144">animation.cpp:144</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a440085789f25b7f3ffa1391f09e154f3"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a440085789f25b7f3ffa1391f09e154f3">ftxui::animation::easing::BackOut</a></div><div class="ttdeci">float BackOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00216">animation.cpp:216</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a4dfa1e95971ff8e4d0f7539f2e8ae577"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a4dfa1e95971ff8e4d0f7539f2e8ae577">ftxui::animation::easing::BackInOut</a></div><div class="ttdeci">float BackInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00224">animation.cpp:224</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a502f9e65e97d295f46c6a6435a84464d"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a502f9e65e97d295f46c6a6435a84464d">ftxui::animation::easing::ExponentialInOut</a></div><div class="ttdeci">float ExponentialInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00172">animation.cpp:172</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a537ce88e07af5658175f95eb70369fb9"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a537ce88e07af5658175f95eb70369fb9">ftxui::animation::easing::ElasticInOut</a></div><div class="ttdeci">float ElasticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00199">animation.cpp:199</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a72dd2cb5c7ffddfe3a3d8b455f68d37e"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a72dd2cb5c7ffddfe3a3d8b455f68d37e">ftxui::animation::easing::QuarticInOut</a></div><div class="ttdeci">float QuarticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00091">animation.cpp:91</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a8155757f48a6e85e27da99c0a93f7e8d"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a8155757f48a6e85e27da99c0a93f7e8d">ftxui::animation::easing::QuadraticInOut</a></div><div class="ttdeci">float QuadraticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00046">animation.cpp:46</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a8878f359f37551ae64eb183af3ca93b8"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a8878f359f37551ae64eb183af3ca93b8">ftxui::animation::easing::QuarticOut</a></div><div class="ttdeci">float QuarticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00083">animation.cpp:83</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a92e397623fa5a607f64ba58d5c3dc56a"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a92e397623fa5a607f64ba58d5c3dc56a">ftxui::animation::easing::SineOut</a></div><div class="ttdeci">float SineOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00129">animation.cpp:129</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a9af9e9dc6ba657b5ab681eb8be39ddb5"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a9af9e9dc6ba657b5ab681eb8be39ddb5">ftxui::animation::easing::CircularIn</a></div><div class="ttdeci">float CircularIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00139">animation.cpp:139</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_a9de59af8a36489121dace3f2a996f029"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#a9de59af8a36489121dace3f2a996f029">ftxui::animation::easing::ExponentialOut</a></div><div class="ttdeci">float ExponentialOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00165">animation.cpp:165</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_aa1618a8f59ae7bae191d0ab36bf90e66"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#aa1618a8f59ae7bae191d0ab36bf90e66">ftxui::animation::easing::QuadraticOut</a></div><div class="ttdeci">float QuadraticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00039">animation.cpp:39</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_aae2598b1aa6a2fc944f52edbf0453fd5"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#aae2598b1aa6a2fc944f52edbf0453fd5">ftxui::animation::easing::QuinticOut</a></div><div class="ttdeci">float QuinticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00106">animation.cpp:106</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ab0b9303e7f956c36960e601f158e488f"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ab0b9303e7f956c36960e601f158e488f">ftxui::animation::easing::QuadraticIn</a></div><div class="ttdeci">float QuadraticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00034">animation.cpp:34</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ab0ca381749febbe74887c9fff0522434"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ab0ca381749febbe74887c9fff0522434">ftxui::animation::easing::ExponentialIn</a></div><div class="ttdeci">float ExponentialIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00160">animation.cpp:160</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ab4eae8c5808cc6ab161037659e761a50"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ab4eae8c5808cc6ab161037659e761a50">ftxui::animation::easing::QuinticIn</a></div><div class="ttdeci">float QuinticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00101">animation.cpp:101</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_aba7f60496f13f39385d9a47349e97c09"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#aba7f60496f13f39385d9a47349e97c09">ftxui::animation::easing::BounceOut</a></div><div class="ttdeci">float BounceOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00238">animation.cpp:238</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_acd3c619812de25f3613b36735a5cdc91"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#acd3c619812de25f3613b36735a5cdc91">ftxui::animation::easing::CubicOut</a></div><div class="ttdeci">float CubicOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00060">animation.cpp:60</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ad771aec6f0170cb9039446699d1d2295"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ad771aec6f0170cb9039446699d1d2295">ftxui::animation::easing::ElasticOut</a></div><div class="ttdeci">float ElasticOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00191">animation.cpp:191</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ad820848234fca6290b7399cc5e07af3a"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ad820848234fca6290b7399cc5e07af3a">ftxui::animation::easing::Function</a></div><div class="ttdeci">std::function&lt; float(float)&gt; Function</div><div class="ttdef"><b>Definition</b> <a href="#l00036">animation.hpp:36</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_ae9cca3240dd9f14a807364e322bbdf79"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#ae9cca3240dd9f14a807364e322bbdf79">ftxui::animation::easing::BackIn</a></div><div class="ttdeci">float BackIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00211">animation.cpp:211</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_af48c179e363c6656e904045b33756aeb"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#af48c179e363c6656e904045b33756aeb">ftxui::animation::easing::SineIn</a></div><div class="ttdeci">float SineIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00124">animation.cpp:124</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_af60268bac4059d32b3f7680042dba350"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#af60268bac4059d32b3f7680042dba350">ftxui::animation::easing::QuarticIn</a></div><div class="ttdeci">float QuarticIn(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00078">animation.cpp:78</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_1_1easing_html_afcbc9e6b461fe3418a59faf4a5f9284d"><div class="ttname"><a href="namespaceftxui_1_1animation_1_1easing.html#afcbc9e6b461fe3418a59faf4a5f9284d">ftxui::animation::easing::QuinticInOut</a></div><div class="ttdeci">float QuinticInOut(float p)</div><div class="ttdef"><b>Definition</b> <a href="animation_8cpp_source.html#l00114">animation.cpp:114</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html_a1646872cf994e65d1a5c5d65707f4dec"><div class="ttname"><a href="namespaceftxui_1_1animation.html#a1646872cf994e65d1a5c5d65707f4dec">ftxui::animation::Duration</a></div><div class="ttdeci">std::chrono::duration&lt; double &gt; Duration</div><div class="ttdef"><b>Definition</b> <a href="#l00021">animation.hpp:21</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html_a19bfb27380067c74ae297dd7dad5fb37"><div class="ttname"><a href="namespaceftxui_1_1animation.html#a19bfb27380067c74ae297dd7dad5fb37">ftxui::animation::Clock</a></div><div class="ttdeci">std::chrono::steady_clock Clock</div><div class="ttdef"><b>Definition</b> <a href="#l00019">animation.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html_a97ee0a9619acebafade22a9b7b0de667"><div class="ttname"><a href="namespaceftxui_1_1animation.html#a97ee0a9619acebafade22a9b7b0de667">ftxui::animation::TimePoint</a></div><div class="ttdeci">std::chrono::time_point&lt; Clock &gt; TimePoint</div><div class="ttdef"><b>Definition</b> <a href="#l00020">animation.hpp:20</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1animation_html_ad94d3d42aba3359550759aae5bcffbe9"><div class="ttname"><a href="namespaceftxui_1_1animation.html#ad94d3d42aba3359550759aae5bcffbe9">ftxui::animation::RequestAnimationFrame</a></div><div class="ttdeci">void RequestAnimationFrame()</div><div class="ttdef"><b>Definition</b> <a href="screen__interactive_8cpp_source.html#l00055">screen_interactive.cpp:55</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="#l00009">animation.hpp:9</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

227
en/v4.1.1/annotated.html Normal file
View File

@@ -0,0 +1,227 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Data Structures</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('annotated.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">Data Structures</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span><span onclick="javascript:dynsection.toggleLevel(3);">3</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceftxui.html" target="_self">ftxui</a></td><td class="desc"></td></tr>
<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceftxui_1_1animation.html" target="_self">animation</a></td><td class="desc"></td></tr>
<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1animation_1_1Animator.html" target="_self">Animator</a></td><td class="desc"></td></tr>
<tr id="row_0_0_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1animation_1_1Params.html" target="_self">Params</a></td><td class="desc"></td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_1_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceftxui_1_1box__helper.html" target="_self">box_helper</a></td><td class="desc"></td></tr>
<tr id="row_0_1_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element" target="_self">Element</a></td><td class="desc"></td></tr>
<tr id="row_0_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_2_" class="arrow" onclick="dynsection.toggleFolder('0_2_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceftxui_1_1flexbox__helper.html" target="_self">flexbox_helper</a></td><td class="desc"></td></tr>
<tr id="row_0_2_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui_1_1flexbox__helper.html#structftxui_1_1flexbox__helper_1_1Block" target="_self">Block</a></td><td class="desc"></td></tr>
<tr id="row_0_2_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui_1_1flexbox__helper.html#structftxui_1_1flexbox__helper_1_1Global" target="_self">Global</a></td><td class="desc"></td></tr>
<tr id="row_0_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1AnimatedColorOption.html" target="_self">AnimatedColorOption</a></td><td class="desc">Option about a potentially animated color </td></tr>
<tr id="row_0_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1AnimatedColorsOption" target="_self">AnimatedColorsOption</a></td><td class="desc"></td></tr>
<tr id="row_0_5_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#classftxui_1_1AnimationTask" target="_self">AnimationTask</a></td><td class="desc"></td></tr>
<tr id="row_0_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1AutoReset.html" target="_self">AutoReset</a></td><td class="desc">Assign a value to a variable, reset its old value when going out of scope </td></tr>
<tr id="row_0_7_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Box.html" target="_self">Box</a></td><td class="desc"></td></tr>
<tr id="row_0_8_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1ButtonOption.html" target="_self">ButtonOption</a></td><td class="desc">Option for the AnimatedButton component </td></tr>
<tr id="row_0_9_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Canvas.html" target="_self">Canvas</a></td><td class="desc"></td></tr>
<tr id="row_0_10_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1CapturedMouseInterface.html" target="_self">CapturedMouseInterface</a></td><td class="desc"></td></tr>
<tr id="row_0_11_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1CheckboxOption.html" target="_self">CheckboxOption</a></td><td class="desc">Option for the Checkbox component </td></tr>
<tr id="row_0_12_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Color.html" target="_self">Color</a></td><td class="desc">A class representing terminal colors </td></tr>
<tr id="row_0_13_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1ColorInfo" target="_self">ColorInfo</a></td><td class="desc"></td></tr>
<tr id="row_0_14_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ComponentBase.html" target="_self">ComponentBase</a></td><td class="desc">It implement rendering itself as <a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a>. It implement keyboard navigation by responding to <a class="el" href="structftxui_1_1Event.html" title="Represent an event. It can be key press event, a terminal resize, or more ...">ftxui::Event</a> </td></tr>
<tr id="row_0_15_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ConstRef.html" target="_self">ConstRef</a></td><td class="desc">An adapter. Own or reference an immutable object </td></tr>
<tr id="row_0_16_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ConstStringListRef.html" target="_self">ConstStringListRef</a></td><td class="desc">An adapter. Reference a list of strings </td></tr>
<tr id="row_0_17_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ConstStringRef.html" target="_self">ConstStringRef</a></td><td class="desc">An adapter. Own or reference a constant string. For convenience, this class convert multiple immutable string toward a shared representation </td></tr>
<tr id="row_0_18_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1Dimensions" target="_self">Dimensions</a></td><td class="desc"></td></tr>
<tr id="row_0_19_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1EntryState" target="_self">EntryState</a></td><td class="desc">Arguments for |ButtonOption::transform|, |CheckboxOption::transform|, |Radiobox::transform|, |MenuEntryOption::transform|, |MenuOption::transform| </td></tr>
<tr id="row_0_20_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Event.html" target="_self">Event</a></td><td class="desc">Represent an event. It can be key press event, a terminal resize, or more .. </td></tr>
<tr id="row_0_21_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1FlexboxConfig.html" target="_self">FlexboxConfig</a></td><td class="desc"></td></tr>
<tr id="row_0_22_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1InputOption" target="_self">InputOption</a></td><td class="desc">Option for the Input component </td></tr>
<tr id="row_0_23_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_23_" class="arrow" onclick="dynsection.toggleFolder('0_23_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1LinearGradient.html" target="_self">LinearGradient</a></td><td class="desc">A class representing the settings for linear-gradient color effect </td></tr>
<tr id="row_0_23_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1LinearGradient.html#structftxui_1_1LinearGradient_1_1Stop" target="_self">Stop</a></td><td class="desc"></td></tr>
<tr id="row_0_24_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Loop.html" target="_self">Loop</a></td><td class="desc"></td></tr>
<tr id="row_0_25_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1MenuEntryOption" target="_self">MenuEntryOption</a></td><td class="desc">Option for the MenuEntry component </td></tr>
<tr id="row_0_26_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1MenuOption.html" target="_self">MenuOption</a></td><td class="desc">Option for the Menu component </td></tr>
<tr id="row_0_27_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Mouse.html" target="_self">Mouse</a></td><td class="desc">A mouse event. It contains the coordinate of the mouse, the button pressed and the modifier (shift, ctrl, meta) </td></tr>
<tr id="row_0_28_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_28_" class="arrow" onclick="dynsection.toggleFolder('0_28_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Node.html" target="_self">Node</a></td><td class="desc"></td></tr>
<tr id="row_0_28_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Node.html#structftxui_1_1Node_1_1Status" target="_self">Status</a></td><td class="desc"></td></tr>
<tr id="row_0_29_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1NodeDecorator.html" target="_self">NodeDecorator</a></td><td class="desc"></td></tr>
<tr id="row_0_30_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Pixel.html" target="_self">Pixel</a></td><td class="desc">A unicode character and its associated style </td></tr>
<tr id="row_0_31_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1RadioboxOption.html" target="_self">RadioboxOption</a></td><td class="desc">Option for the Radiobox component </td></tr>
<tr id="row_0_32_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ReceiverImpl.html" target="_self">ReceiverImpl</a></td><td class="desc"></td></tr>
<tr id="row_0_33_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Ref.html" target="_self">Ref</a></td><td class="desc">An adapter. Own or reference an mutable object </td></tr>
<tr id="row_0_34_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Requirement.html" target="_self">Requirement</a></td><td class="desc"></td></tr>
<tr id="row_0_35_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_35_" class="arrow" onclick="dynsection.toggleFolder('0_35_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Screen.html" target="_self">Screen</a></td><td class="desc">A rectangular grid of <a class="el" href="structftxui_1_1Pixel.html" title="A unicode character and its associated style.">Pixel</a> </td></tr>
<tr id="row_0_35_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1Screen_1_1Cursor.html" target="_self">Cursor</a></td><td class="desc"></td></tr>
<tr id="row_0_36_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_36_" class="arrow" onclick="dynsection.toggleFolder('0_36_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ScreenInteractive.html" target="_self">ScreenInteractive</a></td><td class="desc"></td></tr>
<tr id="row_0_36_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1ScreenInteractive_1_1Private.html" target="_self">Private</a></td><td class="desc"></td></tr>
<tr id="row_0_37_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1SenderImpl.html" target="_self">SenderImpl</a></td><td class="desc"></td></tr>
<tr id="row_0_38_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="namespaceftxui.html#structftxui_1_1SliderOption" target="_self">SliderOption</a></td><td class="desc"></td></tr>
<tr id="row_0_39_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1StringRef.html" target="_self">StringRef</a></td><td class="desc">An adapter. Own or reference a constant string. For convenience, this class convert multiple mutable string toward a shared representation </td></tr>
<tr id="row_0_40_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1Table.html" target="_self">Table</a></td><td class="desc"></td></tr>
<tr id="row_0_41_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1TableSelection.html" target="_self">TableSelection</a></td><td class="desc"></td></tr>
<tr id="row_0_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_42_" class="arrow" onclick="dynsection.toggleFolder('0_42_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1TerminalInputParser.html" target="_self">TerminalInputParser</a></td><td class="desc"></td></tr>
<tr id="row_0_42_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classftxui_1_1TerminalInputParser.html#unionftxui_1_1TerminalInputParser_1_1Output_8____unnamed3____" target="_self">Output.__unnamed3__</a></td><td class="desc"></td></tr>
<tr id="row_0_43_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structftxui_1_1UnderlineOption.html" target="_self">UnderlineOption</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,185 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/automerge.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('automerge_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">automerge.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="automerge_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aca42bd6c44d8d366d5c1014330402086" id="r_aca42bd6c44d8d366d5c1014330402086"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#aca42bd6c44d8d366d5c1014330402086">automerge</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:aca42bd6c44d8d366d5c1014330402086"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable character to be automatically merged with others nearby. <br /></td></tr>
<tr class="separator:aca42bd6c44d8d366d5c1014330402086"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var automerge_8cpp =
[
[ "automerge", "automerge_8cpp.html#aca42bd6c44d8d366d5c1014330402086", null ]
];

View File

@@ -0,0 +1,219 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/automerge.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('automerge_8cpp_source.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">automerge.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="automerge_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for make_shared</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for Element, automerge</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>&quot;</span> <span class="comment">// for Node</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="node__decorator_8hpp.html">ftxui/dom/node_decorator.hpp</a>&quot;</span> <span class="comment">// for NodeDecorator</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>&quot;</span> <span class="comment">// for Pixel, Screen</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment"></span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="comment">/// @brief Enable character to be automatically merged with others nearby.</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">/// @ingroup dom</span></div>
<div class="foldopen" id="foldopen00014" data-start="{" data-end="}">
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"><a class="line" href="namespaceftxui.html#aca42bd6c44d8d366d5c1014330402086"> 14</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#aca42bd6c44d8d366d5c1014330402086">automerge</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">class </span>Impl : <span class="keyword">public</span> <a class="code hl_class" href="classftxui_1_1NodeDecorator.html">NodeDecorator</a> {</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keyword">using </span>NodeDecorator::NodeDecorator;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordtype">void</span> <a class="code hl_function" href="namespaceftxui.html#ad4b8aa9392f56ba41e2b421e046a7d83">Render</a>(<a class="code hl_class" href="classftxui_1_1Screen.html">Screen</a>&amp; screen)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = box_.y_min; y &lt;= box_.y_max; ++y) {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = box_.x_min; x &lt;= box_.x_max; ++x) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> screen.<a class="code hl_function" href="classftxui_1_1Screen.html#a483f8ee1967e200cfc9e277b3ce00174">PixelAt</a>(x, y).<a class="code hl_variable" href="structftxui_1_1Pixel.html#ada8b6dbd466ba5b6c4b240f229bd627f">automerge</a> = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> }</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> }</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> Node::Render(screen);</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> }</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> };</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> </div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">return</span> std::make_shared&lt;Impl&gt;(std::move(child));</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>}</div>
</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1NodeDecorator_html"><div class="ttname"><a href="classftxui_1_1NodeDecorator.html">ftxui::NodeDecorator</a></div><div class="ttdef"><b>Definition</b> <a href="node__decorator_8hpp_source.html#l00013">node_decorator.hpp:13</a></div></div>
<div class="ttc" id="aclassftxui_1_1Screen_html"><div class="ttname"><a href="classftxui_1_1Screen.html">ftxui::Screen</a></div><div class="ttdoc">A rectangular grid of Pixel.</div><div class="ttdef"><b>Definition</b> <a href="screen_8hpp_source.html#l00057">screen.hpp:57</a></div></div>
<div class="ttc" id="aclassftxui_1_1Screen_html_a483f8ee1967e200cfc9e277b3ce00174"><div class="ttname"><a href="classftxui_1_1Screen.html#a483f8ee1967e200cfc9e277b3ce00174">ftxui::Screen::PixelAt</a></div><div class="ttdeci">Pixel &amp; PixelAt(int x, int y)</div><div class="ttdoc">Access a Pixel at a given position.</div><div class="ttdef"><b>Definition</b> <a href="screen_8cpp_source.html#l00470">screen.cpp:470</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="anamespaceftxui_html"><div class="ttname"><a href="namespaceftxui.html">ftxui</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_aca42bd6c44d8d366d5c1014330402086"><div class="ttname"><a href="namespaceftxui.html#aca42bd6c44d8d366d5c1014330402086">ftxui::automerge</a></div><div class="ttdeci">Element automerge(Element child)</div><div class="ttdoc">Enable character to be automatically merged with others nearby.</div><div class="ttdef"><b>Definition</b> <a href="#l00014">automerge.cpp:14</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ad4b8aa9392f56ba41e2b421e046a7d83"><div class="ttname"><a href="namespaceftxui.html#ad4b8aa9392f56ba41e2b421e046a7d83">ftxui::Render</a></div><div class="ttdeci">void Render(Screen &amp;screen, const Element &amp;element)</div><div class="ttdoc">Display an element on a ftxui::Screen.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00044">node.cpp:44</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="anode__decorator_8hpp_html"><div class="ttname"><a href="node__decorator_8hpp.html">node_decorator.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="astructftxui_1_1Pixel_html_ada8b6dbd466ba5b6c4b240f229bd627f"><div class="ttname"><a href="structftxui_1_1Pixel.html#ada8b6dbd466ba5b6c4b240f229bd627f">ftxui::Pixel::automerge</a></div><div class="ttdeci">bool automerge</div><div class="ttdef"><b>Definition</b> <a href="screen_8hpp_source.html#l00035">screen.hpp:35</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,197 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/util/autoreset.hpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('autoreset_8hpp.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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">autoreset.hpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="autoreset_8hpp__dep__incl.png" border="0" usemap="#ainclude_2ftxui_2util_2autoreset_8hppdep" alt=""/></div>
<map name="ainclude_2ftxui_2util_2autoreset_8hppdep" id="ainclude_2ftxui_2util_2autoreset_8hppdep">
<area shape="rect" title=" " alt="" coords="31,5,157,45"/>
<area shape="rect" href="frame_8cpp.html" title=" " alt="" coords="5,93,183,119"/>
<area shape="poly" title=" " alt="" coords="97,59,97,93,91,93,91,59"/>
</map>
</div>
</div>
<p><a href="autoreset_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classftxui_1_1AutoReset.html">AutoReset&lt; T &gt;</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assign a value to a variable, reset its old value when going out of scope. <a href="classftxui_1_1AutoReset.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var autoreset_8hpp =
[
[ "AutoReset< T >", "classftxui_1_1AutoReset.html", null ]
];

View File

@@ -0,0 +1,5 @@
<map id="include/ftxui/util/autoreset.hpp" name="include/ftxui/util/autoreset.hpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="31,5,157,45"/>
<area shape="rect" id="Node000002" href="$frame_8cpp.html" title=" " alt="" coords="5,93,183,119"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="97,59,97,93,91,93,91,59"/>
</map>

View File

@@ -0,0 +1 @@
93c7578ef94de9b30931ee1db9518bf6

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

@@ -0,0 +1,205 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/util/autoreset.hpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('autoreset_8hpp_source.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">autoreset.hpp</div></div>
</div><!--header-->
<div class="contents">
<a href="autoreset_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef FTXUI_UTIL_AUTORESET_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define FTXUI_UTIL_AUTORESET_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;utility&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment"></span> </div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment">/// Assign a value to a variable, reset its old value when going out of scope.</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"></span><span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
<div class="foldopen" id="foldopen00010" data-start="{" data-end="};">
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"><a class="line" href="classftxui_1_1AutoReset.html"> 10</a></span><span class="keyword">class </span><a class="code hl_class" href="classftxui_1_1AutoReset.html">AutoReset</a> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keyword">public</span>:</div>
<div class="foldopen" id="foldopen00012" data-start="{" data-end="}">
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="classftxui_1_1AutoReset.html#ae393855d753027bcb3d4d1e1514e6ad4"> 12</a></span> <a class="code hl_function" href="classftxui_1_1AutoReset.html#ae393855d753027bcb3d4d1e1514e6ad4">AutoReset</a>(T* variable, T new_value)</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> : variable_(variable), previous_value_(std::move(*variable)) {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> *variable_ = std::move(new_value);</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> }</div>
</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"><a class="line" href="classftxui_1_1AutoReset.html#ad7e022164fb38a279cca7c6cf478f379"> 16</a></span> <a class="code hl_function" href="classftxui_1_1AutoReset.html#ad7e022164fb38a279cca7c6cf478f379">~AutoReset</a>() { *variable_ = std::move(previous_value_); }</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> T* variable_;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> T previous_value_;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>};</div>
</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="preprocessor">#endif </span><span class="comment">/* end of include guard: FTXUI_UTIL_AUTORESET_HPP */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="aclassftxui_1_1AutoReset_html"><div class="ttname"><a href="classftxui_1_1AutoReset.html">ftxui::AutoReset</a></div><div class="ttdoc">Assign a value to a variable, reset its old value when going out of scope.</div><div class="ttdef"><b>Definition</b> <a href="#l00010">autoreset.hpp:10</a></div></div>
<div class="ttc" id="aclassftxui_1_1AutoReset_html_ad7e022164fb38a279cca7c6cf478f379"><div class="ttname"><a href="classftxui_1_1AutoReset.html#ad7e022164fb38a279cca7c6cf478f379">ftxui::AutoReset::~AutoReset</a></div><div class="ttdeci">~AutoReset()</div><div class="ttdef"><b>Definition</b> <a href="#l00016">autoreset.hpp:16</a></div></div>
<div class="ttc" id="aclassftxui_1_1AutoReset_html_ae393855d753027bcb3d4d1e1514e6ad4"><div class="ttname"><a href="classftxui_1_1AutoReset.html#ae393855d753027bcb3d4d1e1514e6ad4">ftxui::AutoReset::AutoReset</a></div><div class="ttdeci">AutoReset(T *variable, T new_value)</div><div class="ttdef"><b>Definition</b> <a href="#l00012">autoreset.hpp:12</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#l00009">animation.hpp:9</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

BIN
en/v4.1.1/bc_s.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

BIN
en/v4.1.1/bc_sd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 634 B

185
en/v4.1.1/blink_8cpp.html Normal file
View File

@@ -0,0 +1,185 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/blink.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('blink_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">blink.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="blink_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ad57613de5895e774218d91dea48d074b" id="r_ad57613de5895e774218d91dea48d074b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#ad57613de5895e774218d91dea48d074b">blink</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:ad57613de5895e774218d91dea48d074b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The text drawn alternates in between visible and hidden. <br /></td></tr>
<tr class="separator:ad57613de5895e774218d91dea48d074b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

4
en/v4.1.1/blink_8cpp.js Normal file
View File

@@ -0,0 +1,4 @@
var blink_8cpp =
[
[ "blink", "blink_8cpp.html#ad57613de5895e774218d91dea48d074b", null ]
];

View File

@@ -0,0 +1,221 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/blink.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('blink_8cpp_source.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">blink.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="blink_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for make_shared</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for Element, blink</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>&quot;</span> <span class="comment">// for Node</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="node__decorator_8hpp.html">ftxui/dom/node_decorator.hpp</a>&quot;</span> <span class="comment">// for NodeDecorator</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>&quot;</span> <span class="comment">// for Pixel, Screen</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">class </span>Blink : <span class="keyword">public</span> NodeDecorator {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keyword">using </span><a class="code hl_function" href="classftxui_1_1NodeDecorator.html#a7e9d74ba5d480d87e8bfcaf2df66fbbe">NodeDecorator::NodeDecorator</a>;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordtype">void</span> Render(Screen&amp; screen)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <a class="code hl_function" href="classftxui_1_1Node.html#a7e286fe14880614686ceeec84a9a9702">Node::Render</a>(screen);</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>; y &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>; ++y) {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>; x &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>; ++x) {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> screen.PixelAt(x, y).blink = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> }</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> }</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> }</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>};</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"></span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment">/// @brief The text drawn alternates in between visible and hidden.</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment">/// @ingroup dom</span></div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="}">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="namespaceftxui.html#ad57613de5895e774218d91dea48d074b"> 28</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#ad57613de5895e774218d91dea48d074b">blink</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">return</span> std::make_shared&lt;Blink&gt;(std::move(child));</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>}</div>
</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1NodeDecorator_html_a7e9d74ba5d480d87e8bfcaf2df66fbbe"><div class="ttname"><a href="classftxui_1_1NodeDecorator.html#a7e9d74ba5d480d87e8bfcaf2df66fbbe">ftxui::NodeDecorator::NodeDecorator</a></div><div class="ttdeci">NodeDecorator(Element child)</div><div class="ttdef"><b>Definition</b> <a href="node__decorator_8hpp_source.html#l00015">node_decorator.hpp:15</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a7e286fe14880614686ceeec84a9a9702"><div class="ttname"><a href="classftxui_1_1Node.html#a7e286fe14880614686ceeec84a9a9702">ftxui::Node::Render</a></div><div class="ttdeci">virtual void Render(Screen &amp;screen)</div><div class="ttdoc">Display an element on a ftxui::Screen.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00029">node.cpp:29</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_aa7e7d30102945911407723a5cbcdfabc"><div class="ttname"><a href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">ftxui::Node::box_</a></div><div class="ttdeci">Box box_</div><div class="ttdef"><b>Definition</b> <a href="node_8hpp_source.html#l00055">node.hpp:55</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="anamespaceftxui_html"><div class="ttname"><a href="namespaceftxui.html">ftxui</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ad57613de5895e774218d91dea48d074b"><div class="ttname"><a href="namespaceftxui.html#ad57613de5895e774218d91dea48d074b">ftxui::blink</a></div><div class="ttdeci">Element blink(Element)</div><div class="ttdoc">The text drawn alternates in between visible and hidden.</div><div class="ttdef"><b>Definition</b> <a href="#l00028">blink.cpp:28</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="anode__decorator_8hpp_html"><div class="ttname"><a href="node__decorator_8hpp.html">node_decorator.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="astructftxui_1_1Box_html_a5f0bb6d8a3e66525c3e6264cb8288e43"><div class="ttname"><a href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">ftxui::Box::x_max</a></div><div class="ttdeci">int x_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00008">box.hpp:8</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a7941ddc7e35fffb8864af1e922814401"><div class="ttname"><a href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">ftxui::Box::y_min</a></div><div class="ttdeci">int y_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00009">box.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad033aea530fbbcf5bcd6cd98d882e3a5"><div class="ttname"><a href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">ftxui::Box::y_max</a></div><div class="ttdeci">int y_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00010">box.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ae0951dcafafdc96ac1d8361c672d47e2"><div class="ttname"><a href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">ftxui::Box::x_min</a></div><div class="ttdeci">int x_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00007">box.hpp:7</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

185
en/v4.1.1/bold_8cpp.html Normal file
View File

@@ -0,0 +1,185 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/bold.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('bold_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">bold.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="bold_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a353c769068e25303eb41fa2da565c604" id="r_a353c769068e25303eb41fa2da565c604"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a353c769068e25303eb41fa2da565c604">bold</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:a353c769068e25303eb41fa2da565c604"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use a bold font, for elements with more emphasis. <br /></td></tr>
<tr class="separator:a353c769068e25303eb41fa2da565c604"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

4
en/v4.1.1/bold_8cpp.js Normal file
View File

@@ -0,0 +1,4 @@
var bold_8cpp =
[
[ "bold", "bold_8cpp.html#a353c769068e25303eb41fa2da565c604", null ]
];

View File

@@ -0,0 +1,221 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/bold.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('bold_8cpp_source.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">bold.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="bold_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for make_shared</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for Element, bold</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>&quot;</span> <span class="comment">// for Node</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="node__decorator_8hpp.html">ftxui/dom/node_decorator.hpp</a>&quot;</span> <span class="comment">// for NodeDecorator</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>&quot;</span> <span class="comment">// for Pixel, Screen</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">class </span>Bold : <span class="keyword">public</span> NodeDecorator {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keyword">using </span><a class="code hl_function" href="classftxui_1_1NodeDecorator.html#a7e9d74ba5d480d87e8bfcaf2df66fbbe">NodeDecorator::NodeDecorator</a>;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordtype">void</span> Render(Screen&amp; screen)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>; y &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>; ++y) {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>; x &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>; ++x) {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> screen.PixelAt(x, y).bold = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> }</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> }</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <a class="code hl_function" href="classftxui_1_1Node.html#a7e286fe14880614686ceeec84a9a9702">Node::Render</a>(screen);</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> }</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>};</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"></span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment">/// @brief Use a bold font, for elements with more emphasis.</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment">/// @ingroup dom</span></div>
<div class="foldopen" id="foldopen00028" data-start="{" data-end="}">
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a353c769068e25303eb41fa2da565c604"> 28</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a353c769068e25303eb41fa2da565c604">bold</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">return</span> std::make_shared&lt;Bold&gt;(std::move(child));</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>}</div>
</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1NodeDecorator_html_a7e9d74ba5d480d87e8bfcaf2df66fbbe"><div class="ttname"><a href="classftxui_1_1NodeDecorator.html#a7e9d74ba5d480d87e8bfcaf2df66fbbe">ftxui::NodeDecorator::NodeDecorator</a></div><div class="ttdeci">NodeDecorator(Element child)</div><div class="ttdef"><b>Definition</b> <a href="node__decorator_8hpp_source.html#l00015">node_decorator.hpp:15</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a7e286fe14880614686ceeec84a9a9702"><div class="ttname"><a href="classftxui_1_1Node.html#a7e286fe14880614686ceeec84a9a9702">ftxui::Node::Render</a></div><div class="ttdeci">virtual void Render(Screen &amp;screen)</div><div class="ttdoc">Display an element on a ftxui::Screen.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00029">node.cpp:29</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_aa7e7d30102945911407723a5cbcdfabc"><div class="ttname"><a href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">ftxui::Node::box_</a></div><div class="ttdeci">Box box_</div><div class="ttdef"><b>Definition</b> <a href="node_8hpp_source.html#l00055">node.hpp:55</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="anamespaceftxui_html"><div class="ttname"><a href="namespaceftxui.html">ftxui</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a353c769068e25303eb41fa2da565c604"><div class="ttname"><a href="namespaceftxui.html#a353c769068e25303eb41fa2da565c604">ftxui::bold</a></div><div class="ttdeci">Element bold(Element)</div><div class="ttdoc">Use a bold font, for elements with more emphasis.</div><div class="ttdef"><b>Definition</b> <a href="#l00028">bold.cpp:28</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="anode__decorator_8hpp_html"><div class="ttname"><a href="node__decorator_8hpp.html">node_decorator.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="astructftxui_1_1Box_html_a5f0bb6d8a3e66525c3e6264cb8288e43"><div class="ttname"><a href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">ftxui::Box::x_max</a></div><div class="ttdeci">int x_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00008">box.hpp:8</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a7941ddc7e35fffb8864af1e922814401"><div class="ttname"><a href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">ftxui::Box::y_min</a></div><div class="ttdeci">int y_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00009">box.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad033aea530fbbcf5bcd6cd98d882e3a5"><div class="ttname"><a href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">ftxui::Box::y_max</a></div><div class="ttdeci">int y_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00010">box.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ae0951dcafafdc96ac1d8361c672d47e2"><div class="ttname"><a href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">ftxui::Box::x_min</a></div><div class="ttdeci">int x_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00007">box.hpp:7</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

226
en/v4.1.1/border_8cpp.html Normal file
View File

@@ -0,0 +1,226 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/border.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('border_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">border.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="border_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ae80c86fbe0249ef7f5ff0ab8a089fe35" id="r_ae80c86fbe0249ef7f5ff0ab8a089fe35"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a> = std::array&lt;std::string, 6&gt;</td></tr>
<tr class="separator:ae80c86fbe0249ef7f5ff0ab8a089fe35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f6d305305ca7631a8f91291822fff33" id="r_a5f6d305305ca7631a8f91291822fff33"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a5f6d305305ca7631a8f91291822fff33">Charsets</a> = std::array&lt;<a class="el" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>, 6&gt;</td></tr>
<tr class="separator:a5f6d305305ca7631a8f91291822fff33"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ae8537acd423d47cf07e61bd774fb1098" id="r_ae8537acd423d47cf07e61bd774fb1098"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#ae8537acd423d47cf07e61bd774fb1098">border</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:ae8537acd423d47cf07e61bd774fb1098"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a border around the element. <br /></td></tr>
<tr class="separator:ae8537acd423d47cf07e61bd774fb1098"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa97cfcfbe6df92dac085454395ec7b2f" id="r_aa97cfcfbe6df92dac085454395ec7b2f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#aa97cfcfbe6df92dac085454395ec7b2f">borderWith</a> (const <a class="el" href="structftxui_1_1Pixel.html">Pixel</a> &amp;pixel)</td></tr>
<tr class="memdesc:aa97cfcfbe6df92dac085454395ec7b2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as border but with a constant <a class="el" href="structftxui_1_1Pixel.html" title="A unicode character and its associated style.">Pixel</a> around the element. <br /></td></tr>
<tr class="separator:aa97cfcfbe6df92dac085454395ec7b2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc9db79957d4dd36deb8ca79938e4c41" id="r_abc9db79957d4dd36deb8ca79938e4c41"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#abc9db79957d4dd36deb8ca79938e4c41">borderStyled</a> (<a class="el" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9c">BorderStyle</a> style)</td></tr>
<tr class="memdesc:abc9db79957d4dd36deb8ca79938e4c41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as border but with different styles. <br /></td></tr>
<tr class="separator:abc9db79957d4dd36deb8ca79938e4c41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1dbf36194dcb77674085df9e11c1e22" id="r_ad1dbf36194dcb77674085df9e11c1e22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#ad1dbf36194dcb77674085df9e11c1e22">borderStyled</a> (<a class="el" href="classftxui_1_1Color.html">Color</a> foreground_color)</td></tr>
<tr class="memdesc:ad1dbf36194dcb77674085df9e11c1e22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as border but with a foreground color. <br /></td></tr>
<tr class="separator:ad1dbf36194dcb77674085df9e11c1e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aab98b289d2e7b2ce8ca0eeee51ce78" id="r_a5aab98b289d2e7b2ce8ca0eeee51ce78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a5aab98b289d2e7b2ce8ca0eeee51ce78">borderStyled</a> (<a class="el" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9c">BorderStyle</a> style, <a class="el" href="classftxui_1_1Color.html">Color</a> foreground_color)</td></tr>
<tr class="memdesc:a5aab98b289d2e7b2ce8ca0eeee51ce78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Same as border but with a foreground color and a different style. <br /></td></tr>
<tr class="separator:a5aab98b289d2e7b2ce8ca0eeee51ce78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a181c80f8ada12d1356f6bfa0ebb7219f" id="r_a181c80f8ada12d1356f6bfa0ebb7219f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a181c80f8ada12d1356f6bfa0ebb7219f">borderDashed</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:a181c80f8ada12d1356f6bfa0ebb7219f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a light border around the element. <br /></td></tr>
<tr class="separator:a181c80f8ada12d1356f6bfa0ebb7219f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa074cdab57eeb47b99f1699bcc8addd8" id="r_aa074cdab57eeb47b99f1699bcc8addd8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#aa074cdab57eeb47b99f1699bcc8addd8">borderLight</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:aa074cdab57eeb47b99f1699bcc8addd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a dashed border around the element. <br /></td></tr>
<tr class="separator:aa074cdab57eeb47b99f1699bcc8addd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a666c31419cc31cdadc9f8178ed63529e" id="r_a666c31419cc31cdadc9f8178ed63529e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a666c31419cc31cdadc9f8178ed63529e">borderHeavy</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:a666c31419cc31cdadc9f8178ed63529e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a heavy border around the element. <br /></td></tr>
<tr class="separator:a666c31419cc31cdadc9f8178ed63529e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a052b504344f3bc1ff86b3493cd934215" id="r_a052b504344f3bc1ff86b3493cd934215"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a052b504344f3bc1ff86b3493cd934215">borderDouble</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:a052b504344f3bc1ff86b3493cd934215"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a double border around the element. <br /></td></tr>
<tr class="separator:a052b504344f3bc1ff86b3493cd934215"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cf2db223a5efaa370f0ca6bb405b80e" id="r_a3cf2db223a5efaa370f0ca6bb405b80e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a3cf2db223a5efaa370f0ca6bb405b80e">borderRounded</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:a3cf2db223a5efaa370f0ca6bb405b80e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a rounded border around the element. <br /></td></tr>
<tr class="separator:a3cf2db223a5efaa370f0ca6bb405b80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af20f7d6fb275d109f0bdc01a2e4d3f3e" id="r_af20f7d6fb275d109f0bdc01a2e4d3f3e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#af20f7d6fb275d109f0bdc01a2e4d3f3e">borderEmpty</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child)</td></tr>
<tr class="memdesc:af20f7d6fb275d109f0bdc01a2e4d3f3e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw an empty border around the element. <br /></td></tr>
<tr class="separator:af20f7d6fb275d109f0bdc01a2e4d3f3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a443afb3d149fedaf88b89249c8f6dc25" id="r_a443afb3d149fedaf88b89249c8f6dc25"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a443afb3d149fedaf88b89249c8f6dc25">window</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> title, <a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> content)</td></tr>
<tr class="memdesc:a443afb3d149fedaf88b89249c8f6dc25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw window with a title and a border around the element. <br /></td></tr>
<tr class="separator:a443afb3d149fedaf88b89249c8f6dc25"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

17
en/v4.1.1/border_8cpp.js Normal file
View File

@@ -0,0 +1,17 @@
var border_8cpp =
[
[ "Charset", "border_8cpp.html#ae80c86fbe0249ef7f5ff0ab8a089fe35", null ],
[ "Charsets", "border_8cpp.html#a5f6d305305ca7631a8f91291822fff33", null ],
[ "border", "border_8cpp.html#ae8537acd423d47cf07e61bd774fb1098", null ],
[ "borderWith", "border_8cpp.html#aa97cfcfbe6df92dac085454395ec7b2f", null ],
[ "borderStyled", "border_8cpp.html#abc9db79957d4dd36deb8ca79938e4c41", null ],
[ "borderStyled", "border_8cpp.html#ad1dbf36194dcb77674085df9e11c1e22", null ],
[ "borderStyled", "border_8cpp.html#a5aab98b289d2e7b2ce8ca0eeee51ce78", null ],
[ "borderDashed", "border_8cpp.html#a181c80f8ada12d1356f6bfa0ebb7219f", null ],
[ "borderLight", "border_8cpp.html#aa074cdab57eeb47b99f1699bcc8addd8", null ],
[ "borderHeavy", "border_8cpp.html#a666c31419cc31cdadc9f8178ed63529e", null ],
[ "borderDouble", "border_8cpp.html#a052b504344f3bc1ff86b3493cd934215", null ],
[ "borderRounded", "border_8cpp.html#a3cf2db223a5efaa370f0ca6bb405b80e", null ],
[ "borderEmpty", "border_8cpp.html#af20f7d6fb275d109f0bdc01a2e4d3f3e", null ],
[ "window", "border_8cpp.html#a443afb3d149fedaf88b89249c8f6dc25", null ]
];

View File

@@ -0,0 +1,739 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/border.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('border_8cpp_source.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">border.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="border_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;algorithm&gt;</span> <span class="comment">// for max</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;array&gt;</span> <span class="comment">// for array</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;<a class="code" href="color_8hpp.html">ftxui/screen/color.hpp</a>&gt;</span> <span class="comment">// for Color</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for allocator, make_shared, __shared_ptr_access</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;optional&gt;</span> <span class="comment">// for optional, nullopt</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;string&gt;</span> <span class="comment">// for basic_string, string</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;vector&gt;</span> <span class="comment">// for __alloc_traits&lt;&gt;::value_type</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for unpack, Element, Decorator, BorderStyle, ROUNDED, borderStyled, Elements, DASHED, DOUBLE, EMPTY, HEAVY, LIGHT, border, borderDashed, borderDouble, borderEmpty, borderHeavy, borderLight, borderRounded, borderWith, window</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>&quot;</span> <span class="comment">// for Node, Elements</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="requirement_8hpp.html">ftxui/dom/requirement.hpp</a>&quot;</span> <span class="comment">// for Requirement</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &quot;<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>&quot;</span> <span class="comment">// for Pixel, Screen</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35"> 18</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a> = std::array&lt;std::string, 6&gt;; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a5f6d305305ca7631a8f91291822fff33"> 19</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui.html#a5f6d305305ca7631a8f91291822fff33">Charsets</a> = std::array&lt;Charset, 6&gt;; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment">// NOLINTNEXTLINE</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keyword">static</span> <a class="code hl_typedef" href="namespaceftxui.html#a5f6d305305ca7631a8f91291822fff33">Charsets</a> simple_border_charset = {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>{<span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>}, <span class="comment">// LIGHT</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>{<span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>}, <span class="comment">// DASHED</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>{<span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>}, <span class="comment">// HEAVY</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>{<span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>}, <span class="comment">// DOUBLE</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>{<span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>}, <span class="comment">// ROUNDED</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>{<span class="stringliteral">&quot; &quot;</span>, <span class="stringliteral">&quot; &quot;</span>, <span class="stringliteral">&quot; &quot;</span>, <span class="stringliteral">&quot; &quot;</span>, <span class="stringliteral">&quot; &quot;</span>, <span class="stringliteral">&quot; &quot;</span>}, <span class="comment">// EMPTY</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>};</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment">// For reference, here is the charset for normal border:</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="keyword">class </span>Border : <span class="keyword">public</span> Node {</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> Border(<a class="code hl_typedef" href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">Elements</a> children,</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <a class="code hl_enumeration" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9c">BorderStyle</a> style,</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> std::optional&lt;Color&gt; foreground_color = std::nullopt)</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> : <a class="code hl_function" href="classftxui_1_1Node.html#a0d313fac56abd7ebe58a17f1530b879e">Node</a>(std::move(children)),</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> charset_(simple_border_charset[style]),</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> foreground_color_(foreground_color) {} <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">Charset</a>&amp; charset_; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> std::optional&lt;Color&gt; foreground_color_;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">void</span> ComputeRequirement()<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <a class="code hl_function" href="classftxui_1_1Node.html#a40bd818c5de23bb2d208360d275ae59d">Node::ComputeRequirement</a>();</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a> = <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[0]-&gt;requirement();</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">min_x</a> += 2;</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a5fb18fec2bc2c10f230d683506bb5a8f">min_y</a> += 2;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>.size() == 2) {</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">min_x</a> =</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> std::max(<a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">min_x</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[1]-&gt;requirement().min_x + 2);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> }</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>++;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>++;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>++;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>++;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> }</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">void</span> SetBox(Box box)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <a class="code hl_function" href="classftxui_1_1Node.html#a2ed318aaadb07efc50e76fce1ccf9637">Node::SetBox</a>(box);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>.size() == 2) {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> Box title_box;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> title_box.x_min = box.x_min + 1;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> title_box.x_max = box.x_max - 1;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> title_box.y_min = box.y_min;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> title_box.y_max = box.y_min;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[1]-&gt;SetBox(title_box);</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> }</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> box.x_min++;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> box.x_max--;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> box.y_min++;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> box.y_max--;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[0]-&gt;SetBox(box);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> }</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">void</span> Render(Screen&amp; screen)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="comment">// Draw content.</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[0]-&gt;Render(screen);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="comment">// Draw the border.</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> &gt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a> || <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> &gt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) {</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> }</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> screen.at(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>) = charset_[0]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> screen.at(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>) = charset_[1]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> screen.at(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) = charset_[2]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> screen.at(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) = charset_[3]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> + 1; x &lt; <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>; ++x) {</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> Pixel&amp; p1 = screen.PixelAt(x, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>);</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> Pixel&amp; p2 = screen.PixelAt(x, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>);</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> p1.character = charset_[4]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> p2.character = charset_[4]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> p1.automerge = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> p2.automerge = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> }</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> + 1; y &lt; <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>; ++y) {</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> Pixel&amp; p3 = screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, y);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> Pixel&amp; p4 = screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, y);</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> p3.character = charset_[5]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> p4.character = charset_[5]; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> p3.automerge = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> p4.automerge = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> }</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="comment">// Draw title.</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>.size() == 2) {</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[1]-&gt;Render(screen);</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> }</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="comment">// Draw the border color.</span></div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span> (foreground_color_) {</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>; x &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>; ++x) {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> screen.PixelAt(x, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>).foreground_color = *foreground_color_;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> screen.PixelAt(x, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>).foreground_color = *foreground_color_;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> }</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>; y &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>; ++y) {</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, y).foreground_color = *foreground_color_;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, y).foreground_color = *foreground_color_;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> }</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> }</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> }</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span>};</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span><span class="comment">// For reference, here is the charset for normal border:</span></div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span><span class="keyword">class </span>BorderPixel : <span class="keyword">public</span> Node {</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> BorderPixel(<a class="code hl_typedef" href="namespaceftxui.html#a5d4aa06ca6cc6a72e981bd5386f93f0a">Elements</a> children, Pixel pixel)</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> : <a class="code hl_function" href="classftxui_1_1Node.html#a0d313fac56abd7ebe58a17f1530b879e">Node</a>(std::move(children)), pixel_(std::move(pixel)) {}</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> </div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> Pixel pixel_;</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> </div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="keywordtype">void</span> ComputeRequirement()<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <a class="code hl_function" href="classftxui_1_1Node.html#a40bd818c5de23bb2d208360d275ae59d">Node::ComputeRequirement</a>();</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a> = <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[0]-&gt;requirement();</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">min_x</a> += 2;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a5fb18fec2bc2c10f230d683506bb5a8f">min_y</a> += 2;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>.size() == 2) {</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">min_x</a> =</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> std::max(<a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">min_x</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[1]-&gt;requirement().min_x + 2);</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> }</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>++;</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>++;</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>++;</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">requirement_</a>.<a class="code hl_variable" href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">selected_box</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>++;</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> }</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> </div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keywordtype">void</span> SetBox(Box box)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <a class="code hl_function" href="classftxui_1_1Node.html#a2ed318aaadb07efc50e76fce1ccf9637">Node::SetBox</a>(box);</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>.size() == 2) {</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> Box title_box;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> title_box.x_min = box.x_min + 1;</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> title_box.x_max = box.x_max - 1;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> title_box.y_min = box.y_min;</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> title_box.y_max = box.y_min;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[1]-&gt;SetBox(title_box);</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> }</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> box.x_min++;</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> box.x_max--;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> box.y_min++;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> box.y_max--;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[0]-&gt;SetBox(box);</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> }</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> </div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="keywordtype">void</span> Render(Screen&amp; screen)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="comment">// Draw content.</span></div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <a class="code hl_variable" href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">children_</a>[0]-&gt;Render(screen);</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> </div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="comment">// Draw the border.</span></div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">if</span> (<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> &gt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a> || <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> &gt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) {</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> }</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> </div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>) = pixel_;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>) = pixel_;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) = pixel_;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) = pixel_;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> </div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> + 1; x &lt; <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>; ++x) {</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> screen.PixelAt(x, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>) = pixel_;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> screen.PixelAt(x, <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>) = pixel_;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> }</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> + 1; y &lt; <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>; ++y) {</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, y) = pixel_;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> screen.PixelAt(<a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, y) = pixel_;</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> }</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> }</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span>};</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span><span class="comment"></span> </div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span><span class="comment">/// @brief Draw a border around the element.</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span><span class="comment">///</span></div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span><span class="comment">///</span></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span><span class="comment">///</span></div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span><span class="comment">/// // Use &#39;border&#39; as a function...</span></div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span><span class="comment">/// Element document = border(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span><span class="comment">///</span></div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span><span class="comment">/// Element document = text(&quot;The element&quot;) | border;</span></div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span><span class="comment">///</span></div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span><span class="comment">///</span></div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span><span class="comment">/// ┌───────────┐</span></div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span><span class="comment">/// │The element│</span></div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span><span class="comment">/// └───────────┘</span></div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00222" data-start="{" data-end="}">
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"><a class="line" href="namespaceftxui.html#ae8537acd423d47cf07e61bd774fb1098"> 222</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#ae8537acd423d47cf07e61bd774fb1098">border</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca655074b92b285adff7d18a45748bf493">ROUNDED</a>);</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span>}</div>
</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span><span class="comment"></span> </div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span><span class="comment">/// @brief Same as border but with a constant Pixel around the element.</span></div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span><span class="comment">/// @see border</span></div>
<div class="foldopen" id="foldopen00229" data-start="{" data-end="}">
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"><a class="line" href="namespaceftxui.html#aa97cfcfbe6df92dac085454395ec7b2f"> 229</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a> <a class="code hl_function" href="namespaceftxui.html#aa97cfcfbe6df92dac085454395ec7b2f">borderWith</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structftxui_1_1Pixel.html">Pixel</a>&amp; pixel) {</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">return</span> [pixel](<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">return</span> std::make_shared&lt;BorderPixel&gt;(unpack(std::move(child)), pixel);</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> };</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span>}</div>
</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span><span class="comment"></span> </div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span><span class="comment">/// @brief Same as border but with different styles.</span></div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span><span class="comment">/// @see border</span></div>
<div class="foldopen" id="foldopen00238" data-start="{" data-end="}">
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"><a class="line" href="namespaceftxui.html#abc9db79957d4dd36deb8ca79938e4c41"> 238</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a> <a class="code hl_function" href="namespaceftxui.html#abc9db79957d4dd36deb8ca79938e4c41">borderStyled</a>(<a class="code hl_enumeration" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9c">BorderStyle</a> style) {</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">return</span> [style](<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), style);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> };</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span>}</div>
</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span><span class="comment"></span> </div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span><span class="comment">/// @brief Same as border but with a foreground color.</span></div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span><span class="comment">/// @see border</span></div>
<div class="foldopen" id="foldopen00247" data-start="{" data-end="}">
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"><a class="line" href="namespaceftxui.html#ad1dbf36194dcb77674085df9e11c1e22"> 247</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a> <a class="code hl_function" href="namespaceftxui.html#abc9db79957d4dd36deb8ca79938e4c41">borderStyled</a>(<a class="code hl_class" href="classftxui_1_1Color.html">Color</a> foreground_color) {</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">return</span> [foreground_color](<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca655074b92b285adff7d18a45748bf493">ROUNDED</a>,</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> foreground_color);</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> };</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span>}</div>
</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span><span class="comment"></span> </div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span><span class="comment">/// @brief Same as border but with a foreground color and a different style</span></div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span><span class="comment">/// @see border</span></div>
<div class="foldopen" id="foldopen00257" data-start="{" data-end="}">
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a5aab98b289d2e7b2ce8ca0eeee51ce78"> 257</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a> <a class="code hl_function" href="namespaceftxui.html#abc9db79957d4dd36deb8ca79938e4c41">borderStyled</a>(<a class="code hl_enumeration" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9c">BorderStyle</a> style, <a class="code hl_class" href="classftxui_1_1Color.html">Color</a> foreground_color) {</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">return</span> [style, foreground_color](<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), style,</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> foreground_color);</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> };</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span>}</div>
</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span><span class="comment"></span> </div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span><span class="comment">/// @brief Draw a light border around the element.</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span><span class="comment">///</span></div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span><span class="comment">///</span></div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span><span class="comment">///</span></div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span><span class="comment">/// // Use &#39;borderDash&#39; as a function...</span></div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span><span class="comment">/// Element document = borderDash(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span><span class="comment">///</span></div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span><span class="comment">/// Element document = text(&quot;The element&quot;) | borderDAsh;</span></div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span><span class="comment">///</span></div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span><span class="comment">///</span></div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span><span class="comment">/// ┏╍╍╍╍╍╍╍╍╍╍╍╍╍╍┓</span></div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span><span class="comment">/// ╏The element ╏</span></div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span><span class="comment">/// ┗╍╍╍╍╍╍╍╍╍╍╍╍╍╍┛</span></div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00295" data-start="{" data-end="}">
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a181c80f8ada12d1356f6bfa0ebb7219f"> 295</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a181c80f8ada12d1356f6bfa0ebb7219f">borderDashed</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca830310bdfd296d7cd00c59773579b892">DASHED</a>);</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span>}</div>
</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span><span class="comment"></span> </div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span><span class="comment">/// @brief Draw a dashed border around the element.</span></div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span><span class="comment">///</span></div>
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span><span class="comment">///</span></div>
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span><span class="comment">///</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span><span class="comment">/// // Use &#39;borderLight&#39; as a function...</span></div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span><span class="comment">/// Element document = borderLight(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span><span class="comment">///</span></div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span><span class="comment">/// Element document = text(&quot;The element&quot;) | borderLight;</span></div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span><span class="comment">///</span></div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span><span class="comment">///</span></div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span><span class="comment">/// ┌──────────────┐</span></div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span><span class="comment">/// │The element │</span></div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span><span class="comment">/// └──────────────┘</span></div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00330" data-start="{" data-end="}">
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"><a class="line" href="namespaceftxui.html#aa074cdab57eeb47b99f1699bcc8addd8"> 330</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#aa074cdab57eeb47b99f1699bcc8addd8">borderLight</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9caf917d6c11c85b4ac32e30d1cc9da25eb">LIGHT</a>);</div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span>}</div>
</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span><span class="comment"></span> </div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span><span class="comment">/// @brief Draw a heavy border around the element.</span></div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span><span class="comment">///</span></div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span><span class="comment">///</span></div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span><span class="comment">///</span></div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span><span class="comment">/// // Use &#39;borderHeavy&#39; as a function...</span></div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span><span class="comment">/// Element document = borderHeavy(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span><span class="comment">///</span></div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span><span class="comment">/// Element document = text(&quot;The element&quot;) | borderHeavy;</span></div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span><span class="comment">///</span></div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span><span class="comment">///</span></div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span><span class="comment">/// ┏━━━━━━━━━━━━━━┓</span></div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span><span class="comment">/// ┃The element ┃</span></div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span><span class="comment">/// ┗━━━━━━━━━━━━━━┛</span></div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00365" data-start="{" data-end="}">
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a666c31419cc31cdadc9f8178ed63529e"> 365</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a666c31419cc31cdadc9f8178ed63529e">borderHeavy</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca34cd68a92c52759ed9b545969a11c2da">HEAVY</a>);</div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span>}</div>
</div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span><span class="comment"></span> </div>
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span><span class="comment">/// @brief Draw a double border around the element.</span></div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"> 370</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"> 372</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"> 373</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"> 374</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span><span class="comment">///</span></div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span><span class="comment">///</span></div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span><span class="comment">///</span></div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span><span class="comment">/// // Use &#39;borderDouble&#39; as a function...</span></div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span><span class="comment">/// Element document = borderDouble(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span><span class="comment">///</span></div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span><span class="comment">/// Element document = text(&quot;The element&quot;) | borderDouble;</span></div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span><span class="comment">///</span></div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span><span class="comment">///</span></div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"> 395</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span><span class="comment">/// ╔══════════════╗</span></div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span><span class="comment">/// ║The element ║</span></div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span><span class="comment">/// ╚══════════════╝</span></div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00400" data-start="{" data-end="}">
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a052b504344f3bc1ff86b3493cd934215"> 400</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a052b504344f3bc1ff86b3493cd934215">borderDouble</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno"> 401</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca33465d1d419b1074fb259ef444609e92">DOUBLE</a>);</div>
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno"> 402</span>}</div>
</div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"> 403</span><span class="comment"></span> </div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span><span class="comment">/// @brief Draw a rounded border around the element.</span></div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno"> 413</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"> 415</span><span class="comment">///</span></div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"> 416</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"> 417</span><span class="comment">///</span></div>
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span><span class="comment">///</span></div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"> 421</span><span class="comment">/// // Use &#39;borderRounded&#39; as a function...</span></div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"> 422</span><span class="comment">/// Element document = borderRounded(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span><span class="comment">///</span></div>
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"> 424</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"> 425</span><span class="comment">/// Element document = text(&quot;The element&quot;) | borderRounded;</span></div>
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"> 426</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno"> 427</span><span class="comment">///</span></div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"> 428</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00429" name="l00429"></a><span class="lineno"> 429</span><span class="comment">///</span></div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"> 430</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"> 431</span><span class="comment">/// ╭──────────────╮</span></div>
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span><span class="comment">/// │The element │</span></div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span><span class="comment">/// ╰──────────────╯</span></div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00435" data-start="{" data-end="}">
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a3cf2db223a5efaa370f0ca6bb405b80e"> 435</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a3cf2db223a5efaa370f0ca6bb405b80e">borderRounded</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno"> 436</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca655074b92b285adff7d18a45748bf493">ROUNDED</a>);</div>
<div class="line"><a id="l00437" name="l00437"></a><span class="lineno"> 437</span>}</div>
</div>
<div class="line"><a id="l00438" name="l00438"></a><span class="lineno"> 438</span><span class="comment"></span> </div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"> 439</span><span class="comment">/// @brief Draw an empty border around the element.</span></div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"> 441</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00442" name="l00442"></a><span class="lineno"> 442</span><span class="comment">/// @see borderLight</span></div>
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span><span class="comment">/// @see borderDashed</span></div>
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span><span class="comment">/// @see borderDouble</span></div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span><span class="comment">/// @see borderHeavy</span></div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"> 446</span><span class="comment">/// @see borderRounded</span></div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"> 447</span><span class="comment">/// @see borderEmpty</span></div>
<div class="line"><a id="l00448" name="l00448"></a><span class="lineno"> 448</span><span class="comment">/// @see borderStyled</span></div>
<div class="line"><a id="l00449" name="l00449"></a><span class="lineno"> 449</span><span class="comment">/// @see borderWith</span></div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"> 450</span><span class="comment">///</span></div>
<div class="line"><a id="l00451" name="l00451"></a><span class="lineno"> 451</span><span class="comment">/// Add a border around an element</span></div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"> 452</span><span class="comment">///</span></div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"> 453</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00454" name="l00454"></a><span class="lineno"> 454</span><span class="comment">///</span></div>
<div class="line"><a id="l00455" name="l00455"></a><span class="lineno"> 455</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span><span class="comment">/// // Use &#39;borderRounded&#39; as a function...</span></div>
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span><span class="comment">/// Element document = borderRounded(text(&quot;The element&quot;));</span></div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span><span class="comment">///</span></div>
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"> 459</span><span class="comment">/// // ...Or as a &#39;pipe&#39;.</span></div>
<div class="line"><a id="l00460" name="l00460"></a><span class="lineno"> 460</span><span class="comment">/// Element document = text(&quot;The element&quot;) | borderRounded;</span></div>
<div class="line"><a id="l00461" name="l00461"></a><span class="lineno"> 461</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00462" name="l00462"></a><span class="lineno"> 462</span><span class="comment">///</span></div>
<div class="line"><a id="l00463" name="l00463"></a><span class="lineno"> 463</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"> 464</span><span class="comment">///</span></div>
<div class="line"><a id="l00465" name="l00465"></a><span class="lineno"> 465</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00466" name="l00466"></a><span class="lineno"> 466</span><span class="comment">///</span></div>
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"> 467</span><span class="comment">/// The element</span></div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span><span class="comment">///</span></div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00470" data-start="{" data-end="}">
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"><a class="line" href="namespaceftxui.html#af20f7d6fb275d109f0bdc01a2e4d3f3e"> 470</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#af20f7d6fb275d109f0bdc01a2e4d3f3e">borderEmpty</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> child) {</div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(child)), <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca2f0d18fc0d0fa4a6cd92dc328501874d">EMPTY</a>);</div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span>}</div>
</div>
<div class="line"><a id="l00473" name="l00473"></a><span class="lineno"> 473</span><span class="comment"></span> </div>
<div class="line"><a id="l00474" name="l00474"></a><span class="lineno"> 474</span><span class="comment">/// @brief Draw window with a title and a border around the element.</span></div>
<div class="line"><a id="l00475" name="l00475"></a><span class="lineno"> 475</span><span class="comment">/// @param title The title of the window.</span></div>
<div class="line"><a id="l00476" name="l00476"></a><span class="lineno"> 476</span><span class="comment">/// @param content The element to be wrapped.</span></div>
<div class="line"><a id="l00477" name="l00477"></a><span class="lineno"> 477</span><span class="comment">/// @ingroup dom</span></div>
<div class="line"><a id="l00478" name="l00478"></a><span class="lineno"> 478</span><span class="comment">/// @see border</span></div>
<div class="line"><a id="l00479" name="l00479"></a><span class="lineno"> 479</span><span class="comment">///</span></div>
<div class="line"><a id="l00480" name="l00480"></a><span class="lineno"> 480</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"> 481</span><span class="comment">///</span></div>
<div class="line"><a id="l00482" name="l00482"></a><span class="lineno"> 482</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00483" name="l00483"></a><span class="lineno"> 483</span><span class="comment">/// Element document = window(text(&quot;Title&quot;),</span></div>
<div class="line"><a id="l00484" name="l00484"></a><span class="lineno"> 484</span><span class="comment">/// text(&quot;content&quot;)</span></div>
<div class="line"><a id="l00485" name="l00485"></a><span class="lineno"> 485</span><span class="comment">/// );</span></div>
<div class="line"><a id="l00486" name="l00486"></a><span class="lineno"> 486</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno"> 487</span><span class="comment">///</span></div>
<div class="line"><a id="l00488" name="l00488"></a><span class="lineno"> 488</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00489" name="l00489"></a><span class="lineno"> 489</span><span class="comment">///</span></div>
<div class="line"><a id="l00490" name="l00490"></a><span class="lineno"> 490</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00491" name="l00491"></a><span class="lineno"> 491</span><span class="comment">/// ┌Title──┐</span></div>
<div class="line"><a id="l00492" name="l00492"></a><span class="lineno"> 492</span><span class="comment">/// │content│</span></div>
<div class="line"><a id="l00493" name="l00493"></a><span class="lineno"> 493</span><span class="comment">/// └───────┘</span></div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00495" data-start="{" data-end="}">
<div class="line"><a id="l00495" name="l00495"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a443afb3d149fedaf88b89249c8f6dc25"> 495</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a443afb3d149fedaf88b89249c8f6dc25">window</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> title, <a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> content) {</div>
<div class="line"><a id="l00496" name="l00496"></a><span class="lineno"> 496</span> <span class="keywordflow">return</span> std::make_shared&lt;Border&gt;(unpack(std::move(content), std::move(title)),</div>
<div class="line"><a id="l00497" name="l00497"></a><span class="lineno"> 497</span> <a class="code hl_enumvalue" href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca655074b92b285adff7d18a45748bf493">ROUNDED</a>);</div>
<div class="line"><a id="l00498" name="l00498"></a><span class="lineno"> 498</span>}</div>
</div>
<div class="line"><a id="l00499" name="l00499"></a><span class="lineno"> 499</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno"> 500</span> </div>
<div class="line"><a id="l00501" name="l00501"></a><span class="lineno"> 501</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00502" name="l00502"></a><span class="lineno"> 502</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00503" name="l00503"></a><span class="lineno"> 503</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></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#l00018">color.hpp:18</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a0d313fac56abd7ebe58a17f1530b879e"><div class="ttname"><a href="classftxui_1_1Node.html#a0d313fac56abd7ebe58a17f1530b879e">ftxui::Node::Node</a></div><div class="ttdeci">Node()</div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a2aeb117dade3254694355ab90e9fc566"><div class="ttname"><a href="classftxui_1_1Node.html#a2aeb117dade3254694355ab90e9fc566">ftxui::Node::children_</a></div><div class="ttdeci">Elements children_</div><div class="ttdef"><b>Definition</b> <a href="node_8hpp_source.html#l00053">node.hpp:53</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a2ed318aaadb07efc50e76fce1ccf9637"><div class="ttname"><a href="classftxui_1_1Node.html#a2ed318aaadb07efc50e76fce1ccf9637">ftxui::Node::SetBox</a></div><div class="ttdeci">virtual void SetBox(Box box)</div><div class="ttdoc">Assign a position and a dimension to an element for drawing.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00023">node.cpp:23</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a3530d99687053ce0d0006b9dee9a1ca7"><div class="ttname"><a href="classftxui_1_1Node.html#a3530d99687053ce0d0006b9dee9a1ca7">ftxui::Node::requirement_</a></div><div class="ttdeci">Requirement requirement_</div><div class="ttdef"><b>Definition</b> <a href="node_8hpp_source.html#l00054">node.hpp:54</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a40bd818c5de23bb2d208360d275ae59d"><div class="ttname"><a href="classftxui_1_1Node.html#a40bd818c5de23bb2d208360d275ae59d">ftxui::Node::ComputeRequirement</a></div><div class="ttdeci">virtual void ComputeRequirement()</div><div class="ttdoc">Compute how much space an elements needs.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00015">node.cpp:15</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_aa7e7d30102945911407723a5cbcdfabc"><div class="ttname"><a href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">ftxui::Node::box_</a></div><div class="ttdeci">Box box_</div><div class="ttdef"><b>Definition</b> <a href="node_8hpp_source.html#l00055">node.hpp:55</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="aelements_8hpp_html"><div class="ttname"><a href="elements_8hpp.html">elements.hpp</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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a052b504344f3bc1ff86b3493cd934215"><div class="ttname"><a href="namespaceftxui.html#a052b504344f3bc1ff86b3493cd934215">ftxui::borderDouble</a></div><div class="ttdeci">Element borderDouble(Element)</div><div class="ttdoc">Draw a double border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00400">border.cpp:400</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a164021903e9ac6f1357e4186582891e3"><div class="ttname"><a href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">ftxui::Decorator</a></div><div class="ttdeci">std::function&lt; Element(Element)&gt; Decorator</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00021">elements.hpp:21</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a181c80f8ada12d1356f6bfa0ebb7219f"><div class="ttname"><a href="namespaceftxui.html#a181c80f8ada12d1356f6bfa0ebb7219f">ftxui::borderDashed</a></div><div class="ttdeci">Element borderDashed(Element)</div><div class="ttdoc">Draw a light border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00295">border.cpp:295</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a3cf2db223a5efaa370f0ca6bb405b80e"><div class="ttname"><a href="namespaceftxui.html#a3cf2db223a5efaa370f0ca6bb405b80e">ftxui::borderRounded</a></div><div class="ttdeci">Element borderRounded(Element)</div><div class="ttdoc">Draw a rounded border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00435">border.cpp:435</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a443afb3d149fedaf88b89249c8f6dc25"><div class="ttname"><a href="namespaceftxui.html#a443afb3d149fedaf88b89249c8f6dc25">ftxui::window</a></div><div class="ttdeci">Element window(Element title, Element content)</div><div class="ttdoc">Draw window with a title and a border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00495">border.cpp:495</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&lt; Element &gt; Elements</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00020">elements.hpp:20</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a5f6d305305ca7631a8f91291822fff33"><div class="ttname"><a href="namespaceftxui.html#a5f6d305305ca7631a8f91291822fff33">ftxui::Charsets</a></div><div class="ttdeci">std::array&lt; Charset, 6 &gt; Charsets</div><div class="ttdef"><b>Definition</b> <a href="#l00019">border.cpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a666c31419cc31cdadc9f8178ed63529e"><div class="ttname"><a href="namespaceftxui.html#a666c31419cc31cdadc9f8178ed63529e">ftxui::borderHeavy</a></div><div class="ttdeci">Element borderHeavy(Element)</div><div class="ttdoc">Draw a heavy border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00365">border.cpp:365</a></div></div>
<div class="ttc" id="anamespaceftxui_html_aa074cdab57eeb47b99f1699bcc8addd8"><div class="ttname"><a href="namespaceftxui.html#aa074cdab57eeb47b99f1699bcc8addd8">ftxui::borderLight</a></div><div class="ttdeci">Element borderLight(Element)</div><div class="ttdoc">Draw a dashed border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00330">border.cpp:330</a></div></div>
<div class="ttc" id="anamespaceftxui_html_aa97cfcfbe6df92dac085454395ec7b2f"><div class="ttname"><a href="namespaceftxui.html#aa97cfcfbe6df92dac085454395ec7b2f">ftxui::borderWith</a></div><div class="ttdeci">Decorator borderWith(const Pixel &amp;)</div><div class="ttdoc">Same as border but with a constant Pixel around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00229">border.cpp:229</a></div></div>
<div class="ttc" id="anamespaceftxui_html_abc9db79957d4dd36deb8ca79938e4c41"><div class="ttname"><a href="namespaceftxui.html#abc9db79957d4dd36deb8ca79938e4c41">ftxui::borderStyled</a></div><div class="ttdeci">Decorator borderStyled(BorderStyle)</div><div class="ttdoc">Same as border but with different styles.</div><div class="ttdef"><b>Definition</b> <a href="#l00238">border.cpp:238</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ae80c86fbe0249ef7f5ff0ab8a089fe35"><div class="ttname"><a href="namespaceftxui.html#ae80c86fbe0249ef7f5ff0ab8a089fe35">ftxui::Charset</a></div><div class="ttdeci">std::array&lt; std::string, 6 &gt; Charset</div><div class="ttdef"><b>Definition</b> <a href="#l00018">border.cpp:18</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ae8537acd423d47cf07e61bd774fb1098"><div class="ttname"><a href="namespaceftxui.html#ae8537acd423d47cf07e61bd774fb1098">ftxui::border</a></div><div class="ttdeci">Element border(Element)</div><div class="ttdoc">Draw a border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00222">border.cpp:222</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af20f7d6fb275d109f0bdc01a2e4d3f3e"><div class="ttname"><a href="namespaceftxui.html#af20f7d6fb275d109f0bdc01a2e4d3f3e">ftxui::borderEmpty</a></div><div class="ttdeci">Element borderEmpty(Element)</div><div class="ttdoc">Draw an empty border around the element.</div><div class="ttdef"><b>Definition</b> <a href="#l00470">border.cpp:470</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9c"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9c">ftxui::BorderStyle</a></div><div class="ttdeci">BorderStyle</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00024">elements.hpp:24</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9ca2f0d18fc0d0fa4a6cd92dc328501874d"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca2f0d18fc0d0fa4a6cd92dc328501874d">ftxui::EMPTY</a></div><div class="ttdeci">@ EMPTY</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00030">elements.hpp:30</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9ca33465d1d419b1074fb259ef444609e92"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca33465d1d419b1074fb259ef444609e92">ftxui::DOUBLE</a></div><div class="ttdeci">@ DOUBLE</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00028">elements.hpp:28</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9ca34cd68a92c52759ed9b545969a11c2da"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca34cd68a92c52759ed9b545969a11c2da">ftxui::HEAVY</a></div><div class="ttdeci">@ HEAVY</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00027">elements.hpp:27</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9ca655074b92b285adff7d18a45748bf493"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca655074b92b285adff7d18a45748bf493">ftxui::ROUNDED</a></div><div class="ttdeci">@ ROUNDED</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00029">elements.hpp:29</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9ca830310bdfd296d7cd00c59773579b892"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9ca830310bdfd296d7cd00c59773579b892">ftxui::DASHED</a></div><div class="ttdeci">@ DASHED</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00026">elements.hpp:26</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afe3103dd0b8240c5443892484ef5af9caf917d6c11c85b4ac32e30d1cc9da25eb"><div class="ttname"><a href="namespaceftxui.html#afe3103dd0b8240c5443892484ef5af9caf917d6c11c85b4ac32e30d1cc9da25eb">ftxui::LIGHT</a></div><div class="ttdeci">@ LIGHT</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00025">elements.hpp:25</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="arequirement_8hpp_html"><div class="ttname"><a href="requirement_8hpp.html">requirement.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="astructftxui_1_1Box_html_a5f0bb6d8a3e66525c3e6264cb8288e43"><div class="ttname"><a href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">ftxui::Box::x_max</a></div><div class="ttdeci">int x_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00008">box.hpp:8</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a7941ddc7e35fffb8864af1e922814401"><div class="ttname"><a href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">ftxui::Box::y_min</a></div><div class="ttdeci">int y_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00009">box.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad033aea530fbbcf5bcd6cd98d882e3a5"><div class="ttname"><a href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">ftxui::Box::y_max</a></div><div class="ttdeci">int y_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00010">box.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ae0951dcafafdc96ac1d8361c672d47e2"><div class="ttname"><a href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">ftxui::Box::x_min</a></div><div class="ttdeci">int x_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00007">box.hpp:7</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="screen_8hpp_source.html#l00016">screen.hpp:16</a></div></div>
<div class="ttc" id="astructftxui_1_1Requirement_html_a5fb18fec2bc2c10f230d683506bb5a8f"><div class="ttname"><a href="structftxui_1_1Requirement.html#a5fb18fec2bc2c10f230d683506bb5a8f">ftxui::Requirement::min_y</a></div><div class="ttdeci">int min_y</div><div class="ttdef"><b>Definition</b> <a href="requirement_8hpp_source.html#l00011">requirement.hpp:11</a></div></div>
<div class="ttc" id="astructftxui_1_1Requirement_html_a9c8ab844b7e5b610b7a4ac433ea148a1"><div class="ttname"><a href="structftxui_1_1Requirement.html#a9c8ab844b7e5b610b7a4ac433ea148a1">ftxui::Requirement::min_x</a></div><div class="ttdeci">int min_x</div><div class="ttdef"><b>Definition</b> <a href="requirement_8hpp_source.html#l00010">requirement.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Requirement_html_af1b4a68043f8a6c1f7f2464f7a3f9099"><div class="ttname"><a href="structftxui_1_1Requirement.html#af1b4a68043f8a6c1f7f2464f7a3f9099">ftxui::Requirement::selected_box</a></div><div class="ttdeci">Box selected_box</div><div class="ttdef"><b>Definition</b> <a href="requirement_8hpp_source.html#l00026">requirement.hpp:26</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

178
en/v4.1.1/box_8cpp.html Normal file
View File

@@ -0,0 +1,178 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/screen/box.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">box.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="box_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,246 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/screen/box.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box_8cpp_source.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">box.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="box_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {<span class="comment"></span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">/// @return the biggest Box contained in both |a| and |b|.</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="comment">/// @ingroup screen</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment"></span><span class="comment">// static</span></div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="}">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#a83d40499d9e8740c35dc2352c2ac84a8"> 9</a></span><a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> <a class="code hl_function" href="structftxui_1_1Box.html#a83d40499d9e8740c35dc2352c2ac84a8">Box::Intersection</a>(<a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> a, <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> b) {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="keywordflow">return</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>{</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> std::max(a.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>),</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> std::min(a.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>),</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> std::max(a.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>),</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> std::min(a.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>),</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> };</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>}</div>
</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment"></span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment">/// @return the smallest Box containing both |a| and |b|.</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment">/// @ingroup screen</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"></span><span class="comment">// static</span></div>
<div class="foldopen" id="foldopen00021" data-start="{" data-end="}">
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#adbc0a2693f6a78124076ef53bfd4207e"> 21</a></span><a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> <a class="code hl_function" href="structftxui_1_1Box.html#adbc0a2693f6a78124076ef53bfd4207e">Box::Union</a>(<a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> a, <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> b) {</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keywordflow">return</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>{</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> std::min(a.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>),</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> std::max(a.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>),</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> std::min(a.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>),</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> std::max(a.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>, b.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>),</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> };</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>}</div>
</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"></span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment">/// @return whether (x,y) is contained inside the box.</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment">/// @ingroup screen</span></div>
<div class="foldopen" id="foldopen00032" data-start="{" data-end="}">
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#a2f31c89738607b84e65992a7005d35a9"> 32</a></span><span class="comment"></span><span class="keywordtype">bool</span> <a class="code hl_function" href="structftxui_1_1Box.html#a2f31c89738607b84e65992a7005d35a9">Box::Contain</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> <a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> &lt;= x &amp;&amp; <span class="comment">//</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a> &gt;= x &amp;&amp; <span class="comment">//</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> &lt;= y &amp;&amp; <span class="comment">//</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a> &gt;= y;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>}</div>
</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment"></span> </div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment">/// @return whether |other| is the same as |this|</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment">/// @ingroup screen</span></div>
<div class="foldopen" id="foldopen00041" data-start="{" data-end="}">
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#ad75c695cfa18e51d88a0984af5df2f69"> 41</a></span><span class="comment"></span><span class="keywordtype">bool</span> <a class="code hl_function" href="structftxui_1_1Box.html#ad75c695cfa18e51d88a0984af5df2f69">Box::operator==</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>&amp; other)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">return</span> (<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> == other.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>) &amp;&amp; (<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a> == other.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>) &amp;&amp;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> (<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> == other.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>) &amp;&amp; (<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a> == other.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>);</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>}</div>
</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment"></span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="comment">/// @return whether |other| and |this| are different.</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment">/// @ingroup screen</span></div>
<div class="foldopen" id="foldopen00048" data-start="{" data-end="}">
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#a1ff481fa3b55fcc402c98c7564990c17"> 48</a></span><span class="comment"></span><span class="keywordtype">bool</span> <a class="code hl_function" href="structftxui_1_1Box.html#a1ff481fa3b55fcc402c98c7564990c17">Box::operator!=</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>&amp; other)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">return</span> !<a class="code hl_function" href="structftxui_1_1Box.html#ad75c695cfa18e51d88a0984af5df2f69">operator==</a>(other);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>}</div>
</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> </div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html"><div class="ttname"><a href="structftxui_1_1Box.html">ftxui::Box</a></div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00006">box.hpp:6</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a1ff481fa3b55fcc402c98c7564990c17"><div class="ttname"><a href="structftxui_1_1Box.html#a1ff481fa3b55fcc402c98c7564990c17">ftxui::Box::operator!=</a></div><div class="ttdeci">bool operator!=(const Box &amp;other) const</div><div class="ttdef"><b>Definition</b> <a href="#l00048">box.cpp:48</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a2f31c89738607b84e65992a7005d35a9"><div class="ttname"><a href="structftxui_1_1Box.html#a2f31c89738607b84e65992a7005d35a9">ftxui::Box::Contain</a></div><div class="ttdeci">bool Contain(int x, int y) const</div><div class="ttdef"><b>Definition</b> <a href="#l00032">box.cpp:32</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a5f0bb6d8a3e66525c3e6264cb8288e43"><div class="ttname"><a href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">ftxui::Box::x_max</a></div><div class="ttdeci">int x_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00008">box.hpp:8</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a7941ddc7e35fffb8864af1e922814401"><div class="ttname"><a href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">ftxui::Box::y_min</a></div><div class="ttdeci">int y_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00009">box.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a83d40499d9e8740c35dc2352c2ac84a8"><div class="ttname"><a href="structftxui_1_1Box.html#a83d40499d9e8740c35dc2352c2ac84a8">ftxui::Box::Intersection</a></div><div class="ttdeci">static auto Intersection(Box a, Box b) -&gt; Box</div><div class="ttdef"><b>Definition</b> <a href="#l00009">box.cpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad033aea530fbbcf5bcd6cd98d882e3a5"><div class="ttname"><a href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">ftxui::Box::y_max</a></div><div class="ttdeci">int y_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00010">box.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad75c695cfa18e51d88a0984af5df2f69"><div class="ttname"><a href="structftxui_1_1Box.html#ad75c695cfa18e51d88a0984af5df2f69">ftxui::Box::operator==</a></div><div class="ttdeci">bool operator==(const Box &amp;other) const</div><div class="ttdef"><b>Definition</b> <a href="#l00041">box.cpp:41</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_adbc0a2693f6a78124076ef53bfd4207e"><div class="ttname"><a href="structftxui_1_1Box.html#adbc0a2693f6a78124076ef53bfd4207e">ftxui::Box::Union</a></div><div class="ttdeci">static auto Union(Box a, Box b) -&gt; Box</div><div class="ttdef"><b>Definition</b> <a href="#l00021">box.cpp:21</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ae0951dcafafdc96ac1d8361c672d47e2"><div class="ttname"><a href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">ftxui::Box::x_min</a></div><div class="ttdeci">int x_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00007">box.hpp:7</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

432
en/v4.1.1/box_8hpp.html Normal file
View File

@@ -0,0 +1,432 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/screen/box.hpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box_8hpp.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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">box.hpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="box_8hpp__dep__incl.png" border="0" usemap="#ainclude_2ftxui_2screen_2box_8hppdep" alt=""/></div>
<map name="ainclude_2ftxui_2screen_2box_8hppdep" id="ainclude_2ftxui_2screen_2box_8hppdep">
<area shape="rect" title=" " alt="" coords="3060,5,3209,45"/>
<area shape="rect" href="elements_8hpp.html" title=" " alt="" coords="3527,262,3755,287"/>
<area shape="poly" title=" " alt="" coords="3174,51,3297,131,3362,171,3429,204,3517,236,3596,259,3595,264,3515,241,3427,209,3359,175,3295,136,3171,55"/>
<area shape="rect" href="button_8cpp.html" title=" " alt="" coords="2857,519,3007,559"/>
<area shape="poly" title=" " alt="" coords="3046,30,2378,36,1389,49,480,69,182,81,94,88,56,96,31,115,17,136,10,161,8,193,8,363,14,376,33,388,66,400,110,411,229,432,387,450,574,466,787,480,1259,502,1753,517,2217,527,2856,534,2856,540,2217,532,1752,522,1259,507,786,485,574,471,386,455,229,437,108,416,64,405,31,393,10,379,3,365,3,193,5,160,12,133,27,111,54,91,93,83,181,76,480,64,1388,44,2378,31,3046,25"/>
<area shape="rect" href="checkbox_8cpp.html" title=" " alt="" coords="3031,519,3182,559"/>
<area shape="poly" title=" " alt="" coords="3047,30,2384,35,1405,47,921,56,507,67,213,80,126,88,89,96,70,116,61,137,58,162,59,193,59,276,60,339,70,390,79,412,94,432,114,450,140,468,159,475,192,482,296,493,442,501,625,507,1069,514,1571,516,2521,512,2855,512,3019,516,3031,518,3031,523,3018,521,2855,517,2521,518,1571,521,1069,519,624,513,442,506,295,498,192,487,158,480,137,473,110,455,90,435,75,414,64,391,55,340,53,276,53,193,53,161,55,135,65,113,87,91,125,83,212,75,506,62,921,51,1405,42,2384,30,3046,25"/>
<area shape="rect" href="container_8cpp.html" title=" " alt="" coords="3206,519,3357,559"/>
<area shape="poly" title=" " alt="" coords="3046,30,2394,35,1432,47,956,56,550,67,261,80,176,88,140,96,120,116,111,137,109,162,109,193,109,276,109,309,111,336,119,359,140,381,171,399,214,416,269,431,334,444,492,466,682,483,898,495,1134,503,1640,510,2149,509,2612,506,2976,506,3107,510,3194,516,3206,518,3205,523,3193,521,3106,515,2976,512,2612,511,2149,514,1640,516,1134,509,898,501,681,489,491,472,333,449,267,436,213,421,169,404,137,385,115,362,105,337,104,309,104,276,104,193,104,161,106,135,116,113,137,91,175,83,261,75,549,62,956,51,1431,42,2394,30,3046,25"/>
<area shape="rect" href="hoverable_8cpp.html" title=" " alt="" coords="3381,519,3531,559"/>
<area shape="poly" title=" " alt="" coords="3047,30,2387,35,1916,44,1417,57,942,78,728,91,540,107,382,125,262,146,218,157,186,169,166,181,160,193,160,276,159,336,165,358,184,381,204,390,240,400,352,417,513,433,713,446,1204,467,1761,482,2815,501,3186,508,3368,516,3381,518,3380,523,3368,521,3186,514,2815,507,1761,487,1204,472,713,451,512,438,351,423,238,405,202,395,181,385,161,361,153,336,155,276,155,192,162,177,183,164,216,152,261,140,381,120,539,102,728,86,941,73,1417,52,1916,38,2387,30,3047,24"/>
<area shape="rect" href="input_8cpp.html" title=" " alt="" coords="3555,519,3706,559"/>
<area shape="poly" title=" " alt="" coords="3079,53,2943,107,2752,176,2529,244,2413,273,2298,297,2112,303,1759,309,1409,321,1289,331,1252,338,1235,345,1229,354,1227,363,1229,372,1235,381,1256,397,1287,412,1373,438,1490,459,1633,475,1796,488,1974,496,2359,505,2747,507,3099,507,3378,508,3477,511,3543,516,3555,518,3555,523,3542,521,3477,516,3377,513,3099,512,2747,513,2359,511,1974,501,1796,493,1632,481,1490,464,1372,443,1285,417,1253,402,1231,384,1224,374,1221,363,1224,351,1232,341,1251,333,1288,326,1408,316,1759,304,2112,298,2297,292,2412,268,2527,239,2750,170,2941,102,3077,48"/>
<area shape="rect" href="menu_8cpp.html" title=" " alt="" coords="3938,519,4089,559"/>
<area shape="poly" title=" " alt="" coords="3223,24,3842,26,4799,34,5310,42,5794,54,6212,70,6527,91,6574,93,6621,91,6717,81,6810,67,6896,56,6970,55,7001,61,7029,73,7051,91,7068,117,7078,150,7081,193,7081,276,7080,311,7074,339,7060,363,7035,385,7003,402,6961,417,6844,443,6691,463,6508,479,6300,491,6073,499,5588,508,4658,509,4309,511,4185,515,4102,521,4089,523,4089,518,4101,516,4184,510,4309,506,4658,503,5588,502,6073,494,6300,486,6508,474,6691,458,6843,438,6959,412,7001,397,7032,380,7056,359,7069,337,7075,310,7076,276,7076,193,7073,151,7063,119,7047,95,7026,78,7000,66,6969,60,6896,61,6811,72,6718,86,6622,97,6574,98,6527,96,6212,75,5794,59,5310,47,4799,39,3842,31,3223,29"/>
<area shape="rect" href="radiobox_8cpp.html" title=" " alt="" coords="4113,519,4263,559"/>
<area shape="poly" title=" " alt="" coords="3223,24,3955,27,5080,36,5658,44,6175,55,6579,71,6722,80,6816,91,6871,96,6926,96,7027,94,7069,101,7102,117,7115,130,7124,146,7130,167,7132,193,7132,276,7130,309,7123,337,7113,362,7099,383,7082,400,7062,414,7014,435,6957,449,6895,457,6759,473,6650,487,6523,497,6230,509,5897,513,5546,512,4861,508,4566,511,4330,521,4264,528,4263,523,4329,516,4566,506,4861,502,5546,507,5897,507,6229,503,6523,491,6649,481,6758,468,6894,452,6956,443,7012,430,7059,410,7079,396,7095,379,7109,359,7118,336,7125,308,7127,276,7127,193,7125,168,7119,148,7111,133,7099,121,7067,106,7027,100,6926,101,6871,101,6816,96,6721,86,6578,76,6175,61,5658,49,5080,41,3955,32,3223,29"/>
<area shape="rect" href="renderer_8cpp.html" title=" " alt="" coords="4341,519,4491,559"/>
<area shape="poly" title=" " alt="" coords="3223,24,4019,29,5241,41,5857,50,6394,61,6790,75,6916,82,6983,91,7054,102,7118,112,7144,122,7165,137,7178,160,7183,192,7183,364,7176,406,7168,422,7157,434,7128,451,7092,459,7003,464,6955,467,6907,473,6785,483,6535,493,5806,513,4492,539,4492,533,5805,507,6535,488,6785,478,6906,468,6955,461,7003,459,7091,454,7126,446,7154,430,7164,419,7171,404,7177,364,7177,193,7173,162,7161,141,7141,127,7116,118,7053,108,6982,96,6915,88,6790,80,6394,66,5857,55,5241,46,4019,35,3223,30"/>
<area shape="rect" href="resizable__split_8cpp.html" title=" " alt="" coords="5789,519,5939,559"/>
<area shape="poly" title=" " alt="" coords="3223,24,4040,26,5297,35,5930,43,6483,55,6890,70,7019,80,7087,91,7141,105,7188,120,7206,131,7221,146,7230,166,7233,193,7233,364,7229,395,7217,418,7198,434,7174,445,7115,458,7049,473,6950,494,6819,510,6666,522,6501,531,6179,539,5940,540,5940,535,6179,534,6501,525,6665,517,6818,505,6949,489,7047,468,7114,453,7172,440,7195,430,7213,415,7224,394,7228,364,7228,193,7225,168,7216,149,7203,135,7185,125,7140,110,7086,96,7018,85,6889,76,6483,60,5930,48,5296,40,4040,31,3223,29"/>
<area shape="rect" href="slider_8cpp.html" title=" " alt="" coords="3763,519,3914,559"/>
<area shape="poly" title=" " alt="" coords="3223,24,3654,24,4341,32,5169,52,5599,69,6021,91,6129,90,6273,80,6438,69,6609,61,6769,63,6840,70,6903,82,6955,99,6996,122,7011,137,7022,153,7028,172,7031,193,7031,276,7032,336,7025,361,7004,385,6973,404,6929,422,6874,438,6809,452,6650,475,6459,492,6241,505,6003,513,5493,519,4980,517,4513,513,4145,512,4014,515,3927,521,3915,523,3914,518,3926,516,4014,510,4145,507,4513,507,4980,511,5493,514,6003,507,6241,499,6458,487,6650,470,6808,447,6873,433,6928,417,6970,400,7001,381,7020,358,7027,336,7025,276,7025,193,7023,173,7017,156,7006,140,6992,127,6953,104,6902,87,6839,75,6769,69,6609,66,6439,74,6273,86,6129,95,6021,96,5599,74,5169,57,4341,37,3654,30,3223,29"/>
<area shape="rect" href="automerge_8cpp.html" title=" " alt="" coords="5651,350,5861,375"/>
<area shape="poly" title=" " alt="" coords="3224,24,3682,27,4332,36,4658,44,4948,56,5173,71,5252,80,5305,91,5377,116,5448,148,5515,185,5578,224,5681,297,5744,348,5741,352,5678,301,5575,228,5512,190,5445,153,5375,121,5303,96,5251,86,5172,76,4947,61,4658,49,4331,41,3682,32,3223,29"/>
<area shape="rect" href="blink_8cpp.html" title=" " alt="" coords="5885,350,6056,375"/>
<area shape="poly" title=" " alt="" coords="3223,25,3694,29,4365,40,5004,60,5238,74,5320,82,5375,91,5467,116,5558,148,5647,185,5729,224,5868,297,5954,348,5951,352,5865,302,5727,229,5644,190,5556,153,5465,121,5374,96,5320,87,5237,79,5004,66,4365,46,3694,35,3223,30"/>
<area shape="rect" href="bold_8cpp.html" title=" " alt="" coords="6081,350,6247,375"/>
<area shape="poly" title=" " alt="" coords="3223,25,3709,30,4407,43,5072,62,5315,75,5459,91,5566,116,5673,148,5778,185,5876,224,6041,297,6143,348,6141,352,6038,302,5873,229,5776,190,5672,153,5565,121,5458,96,5315,81,5072,68,4407,48,3709,36,3223,30"/>
<area shape="rect" href="border_8cpp.html" title=" " alt="" coords="5240,350,5419,375"/>
<area shape="poly" title=" " alt="" coords="3224,23,3663,23,4280,30,4589,38,4863,50,5075,67,5149,78,5198,91,5235,106,5262,123,5284,147,5305,180,5323,227,5332,275,5334,319,5333,350,5328,350,5329,319,5327,276,5318,228,5300,183,5280,150,5258,128,5232,111,5196,96,5148,83,5074,73,4863,55,4589,43,4280,35,3663,29,3224,29"/>
<area shape="rect" href="canvas_8cpp.html" title=" " alt="" coords="5443,350,5627,375"/>
<area shape="poly" title=" " alt="" coords="3223,25,3691,32,4347,45,4949,64,5152,77,5217,84,5252,91,5302,117,5349,149,5393,186,5431,225,5493,298,5529,348,5525,351,5489,301,5427,228,5389,190,5346,153,5299,121,5250,96,5216,89,5152,82,4948,70,4347,50,3691,37,3223,30"/>
<area shape="rect" href="clear__under_8cpp.html" title=" " alt="" coords="6271,343,6414,383"/>
<area shape="poly" title=" " alt="" coords="3223,25,3727,31,4455,44,5150,63,5405,76,5555,91,5668,115,5781,145,5892,179,5997,216,6180,287,6303,340,6301,345,6178,292,5996,221,5890,184,5780,150,5667,120,5554,96,5404,81,5150,69,4455,49,3727,36,3223,30"/>
<area shape="rect" href="dom_2color_8cpp.html" title=" " alt="" coords="3107,350,3277,375"/>
<area shape="poly" title=" " alt="" coords="3143,59,3193,349,3187,350,3138,60"/>
<area shape="rect" href="dbox_8cpp.html" title=" " alt="" coords="5045,350,5216,375"/>
<area shape="poly" title=" " alt="" coords="3223,24,3650,27,4248,36,4547,44,4812,56,5018,71,5090,80,5138,91,5177,105,5213,124,5246,145,5272,170,5291,198,5300,229,5298,262,5282,296,5265,316,5243,332,5195,352,5193,348,5240,328,5261,313,5278,293,5293,260,5295,229,5286,200,5268,174,5242,149,5211,128,5175,110,5137,96,5089,86,5017,76,4812,61,4547,49,4248,41,3650,32,3223,29"/>
<area shape="rect" href="dim_8cpp.html" title=" " alt="" coords="6439,350,6601,375"/>
<area shape="poly" title=" " alt="" coords="3224,25,3747,31,4507,44,5234,64,5501,77,5659,91,5788,116,5918,148,6045,185,6165,224,6367,297,6494,347,6492,352,6365,302,6163,229,6043,190,5917,153,5787,121,5658,96,5501,82,5234,69,4507,50,3747,37,3224,30"/>
<area shape="rect" href="flex_8cpp.html" title=" " alt="" coords="587,350,749,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2125,52,1622,71,1439,83,1331,96,1231,121,1130,154,1033,190,941,229,787,302,690,352,688,347,784,297,939,224,1031,185,1129,149,1229,116,1330,91,1439,78,1622,66,2124,47,3046,25"/>
<area shape="rect" href="flexbox_8cpp.html" title=" " alt="" coords="773,350,960,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2195,52,1735,72,1568,83,1470,96,1378,121,1286,154,1197,190,1114,229,974,302,887,352,884,347,972,297,1112,224,1195,186,1284,149,1376,116,1469,91,1568,78,1735,66,2194,47,3046,26"/>
<area shape="rect" href="focus_8cpp.html" title=" " alt="" coords="195,350,368,375"/>
<area shape="poly" title=" " alt="" coords="3046,30,2600,37,1968,51,1369,70,1150,82,1020,96,909,121,797,154,689,190,586,229,413,302,305,352,303,348,411,297,584,224,687,185,796,148,908,116,1020,91,1149,77,1369,65,1968,45,2600,32,3046,25"/>
<area shape="rect" href="frame_8cpp.html" title=" " alt="" coords="2471,350,2649,375"/>
<area shape="poly" title=" " alt="" coords="3046,32,2887,38,2694,50,2510,69,2436,81,2379,96,2297,123,2233,149,2206,166,2180,189,2156,218,2133,256,2127,271,2125,283,2128,293,2136,301,2163,312,2205,319,2321,326,2389,331,2459,340,2501,347,2500,353,2458,345,2388,336,2321,331,2205,324,2162,318,2133,305,2124,296,2120,284,2121,270,2128,253,2152,215,2176,185,2202,162,2230,144,2295,118,2378,91,2435,76,2510,64,2693,45,2886,33,3046,26"/>
<area shape="rect" href="gauge_8cpp.html" title=" " alt="" coords="4269,350,4448,375"/>
<area shape="poly" title=" " alt="" coords="3220,46,3718,179,4320,347,4318,353,3717,184,3219,51"/>
<area shape="rect" href="graph_8cpp.html" title=" " alt="" coords="4473,350,4647,375"/>
<area shape="poly" title=" " alt="" coords="3223,40,3482,91,3795,163,4098,238,4518,347,4517,352,4097,243,3793,168,3481,96,3222,45"/>
<area shape="rect" href="gridbox_8cpp.html" title=" " alt="" coords="984,350,1171,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2708,38,2255,51,1833,71,1680,83,1590,96,1510,121,1432,154,1356,190,1286,229,1168,301,1095,352,1092,348,1165,297,1283,224,1354,186,1430,149,1509,116,1589,91,1679,77,1833,65,2255,46,2708,33,3046,26"/>
<area shape="rect" href="hbox_8cpp.html" title=" " alt="" coords="1245,350,1416,375"/>
<area shape="poly" title=" " alt="" coords="3046,30,2725,35,2299,47,1904,66,1761,80,1711,87,1678,96,1621,121,1566,154,1514,190,1466,229,1389,301,1342,352,1339,348,1385,297,1463,225,1510,186,1563,149,1618,117,1676,91,1710,82,1760,75,1903,61,2299,42,2725,30,3046,25"/>
<area shape="rect" href="inverted_8cpp.html" title=" " alt="" coords="6625,350,6817,375"/>
<area shape="poly" title=" " alt="" coords="3223,25,3767,32,4562,45,5325,65,5606,77,5771,91,5913,116,6056,148,6196,185,6328,224,6552,297,6692,347,6691,352,6550,302,6326,229,6194,190,6055,154,5912,121,5770,96,5605,82,5325,70,4562,50,3767,37,3223,30"/>
<area shape="rect" href="linear__gradient_8cpp.html" title=" " alt="" coords="6842,343,6990,383"/>
<area shape="poly" title=" " alt="" coords="3223,25,4623,46,5424,65,5718,77,5892,91,6037,114,6183,145,6327,179,6464,216,6702,287,6863,340,6862,345,6700,292,6462,221,6326,184,6182,150,6036,120,5892,96,5718,83,5424,71,4623,51,3223,30"/>
<area shape="rect" href="reflect_8cpp.html" title=" " alt="" coords="4672,350,4851,375"/>
<area shape="poly" title=" " alt="" coords="3223,24,3623,27,4176,37,4451,46,4696,57,4885,72,4951,81,4995,91,5075,117,5136,145,5163,163,5187,186,5209,216,5232,253,5239,271,5241,286,5238,298,5230,308,5200,320,5156,325,5028,330,4949,335,4863,345,4821,353,4820,347,4862,340,4949,330,5028,325,5155,320,5199,314,5227,304,5233,296,5236,286,5234,273,5227,256,5205,219,5183,190,5159,167,5134,149,5073,122,4994,96,4950,86,4884,77,4695,62,4451,51,4176,42,3623,33,3223,30"/>
<area shape="rect" href="scroll__indicator_8cpp.html" title=" " alt="" coords="4875,343,5021,383"/>
<area shape="poly" title=" " alt="" coords="3223,24,3637,28,4213,38,4501,46,4756,57,4954,72,5024,81,5070,91,5158,124,5199,146,5234,170,5260,198,5274,228,5276,244,5273,261,5266,279,5253,297,5022,348,5021,343,5251,292,5261,276,5268,260,5270,244,5269,229,5256,201,5231,174,5196,150,5156,129,5069,96,5023,86,4953,77,4756,63,4501,51,4213,43,3637,33,3223,30"/>
<area shape="rect" href="separator_8cpp.html" title=" " alt="" coords="1629,350,1827,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2730,37,2316,49,1949,68,1827,81,1790,88,1772,95,1749,124,1733,157,1723,194,1719,232,1721,302,1728,350,1723,350,1716,302,1714,232,1718,193,1728,156,1744,121,1769,91,1789,83,1827,76,1948,63,2316,44,2729,31,3046,25"/>
<area shape="rect" href="size_8cpp.html" title=" " alt="" coords="1441,350,1605,375"/>
<area shape="poly" title=" " alt="" coords="3046,29,2736,32,2327,41,2126,49,1950,61,1815,76,1769,85,1738,96,1697,122,1660,154,1627,191,1598,229,1554,301,1530,351,1525,349,1550,299,1594,226,1623,187,1656,150,1694,117,1736,91,1767,80,1815,71,1950,55,2126,44,2327,35,2736,26,3046,24"/>
<area shape="rect" href="strikethrough_8cpp.html" title=" " alt="" coords="2040,350,2264,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2740,37,2345,49,1995,68,1880,81,1845,88,1828,95,1811,121,1806,146,1813,174,1826,205,1846,236,1870,263,1899,285,1931,303,1999,331,2064,347,2063,353,1997,336,1929,308,1896,289,1867,266,1841,239,1822,208,1808,176,1801,147,1806,119,1825,91,1843,83,1879,76,1995,63,2344,43,2740,31,3046,25"/>
<area shape="rect" href="text_8cpp.html" title=" " alt="" coords="1851,350,2015,375"/>
<area shape="poly" title=" " alt="" coords="3047,30,2735,36,2331,48,2137,56,1972,67,1854,80,1819,88,1802,95,1784,120,1776,143,1777,167,1785,191,1816,241,1858,293,1888,324,1918,347,1915,352,1885,328,1854,296,1811,244,1780,193,1772,168,1771,143,1779,117,1798,91,1817,83,1854,75,1972,62,2137,51,2330,42,2735,31,3047,25"/>
<area shape="rect" href="underlined_8cpp.html" title=" " alt="" coords="2673,350,2879,375"/>
<area shape="poly" title=" " alt="" coords="3106,57,2790,352,2787,348,3102,53"/>
<area shape="rect" href="underlined__double_8cpp.html" title=" " alt="" coords="2903,343,3083,383"/>
<area shape="poly" title=" " alt="" coords="3124,59,3004,344,2999,342,3119,57"/>
<area shape="rect" href="dom_2util_8cpp.html" title=" " alt="" coords="2289,350,2447,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2749,37,2366,49,2029,68,1918,81,1884,88,1868,95,1843,122,1827,143,1822,160,1828,177,1847,196,1883,220,2008,292,2045,311,2077,322,2136,330,2199,331,2276,340,2314,347,2313,353,2276,345,2198,337,2136,335,2076,327,2043,315,2005,297,1880,225,1844,200,1823,180,1816,161,1823,141,1839,119,1865,91,1883,83,1917,76,2028,63,2366,44,2749,32,3046,25"/>
<area shape="rect" href="vbox_8cpp.html" title=" " alt="" coords="392,350,563,375"/>
<area shape="poly" title=" " alt="" coords="3046,31,2630,38,2048,51,1499,71,1299,83,1180,96,1074,121,968,154,865,190,768,229,604,302,501,352,498,347,601,297,766,224,863,185,967,149,1073,116,1180,91,1298,77,1499,66,2048,46,2630,33,3046,25"/>
<area shape="rect" href="node_8hpp.html" title=" " alt="" coords="3441,181,3639,207"/>
<area shape="poly" title=" " alt="" coords="3194,48,3513,179,3511,184,3192,53"/>
<area shape="rect" href="node_8cpp.html" title=" " alt="" coords="5047,262,5217,287"/>
<area shape="poly" title=" " alt="" coords="3223,24,3614,24,4152,31,4420,40,4656,52,4839,68,4903,79,4945,91,4977,108,5008,128,5060,177,5101,225,5127,260,5122,263,5097,228,5057,180,5004,133,4975,112,4943,96,4902,84,4838,74,4656,57,4420,45,4152,37,3614,29,3223,29"/>
<area shape="rect" href="node__decorator_8cpp.html" title=" " alt="" coords="2143,255,2286,295"/>
<area shape="poly" title=" " alt="" coords="3046,32,2902,39,2732,51,2572,70,2507,82,2458,96,2388,131,2325,176,2272,220,2234,256,2231,252,2268,216,2321,171,2386,126,2456,91,2506,77,2571,64,2731,46,2902,34,3046,27"/>
<area shape="rect" href="requirement_8hpp.html" title=" " alt="" coords="1879,101,2126,126"/>
<area shape="poly" title=" " alt="" coords="3047,33,2655,55,2401,73,2144,96,2082,103,2081,98,2144,91,2401,68,2655,50,3046,28"/>
<area shape="rect" href="screen_8hpp.html" title=" " alt="" coords="4783,93,4932,133"/>
<area shape="poly" title=" " alt="" coords="3223,27,3810,49,4213,68,4623,91,4783,103,4782,108,4622,96,4212,73,3810,55,3223,32"/>
<area shape="rect" href="box_8cpp.html" title=" " alt="" coords="7268,101,7444,126"/>
<area shape="poly" title=" " alt="" coords="3223,25,5292,44,6525,64,6981,77,7250,91,7301,98,7300,103,7249,96,6981,82,6525,70,5292,50,3223,30"/>
<area shape="rect" href="component_8hpp.html" title=" " alt="" coords="3645,431,3824,471"/>
<area shape="poly" title=" " alt="" coords="3692,291,3726,311,3741,325,3753,341,3760,364,3760,389,3747,431,3742,430,3754,388,3755,365,3748,344,3737,328,3722,315,3689,295"/>
<area shape="poly" title=" " alt="" coords="3561,292,3466,314,3365,345,3327,365,3289,385,3224,401,3171,405,3120,411,3091,419,3059,433,3026,452,2996,476,2950,521,2946,517,2992,472,3023,448,3056,428,3089,414,3119,406,3171,400,3223,396,3287,380,3325,361,3363,340,3465,309,3560,287"/>
<area shape="poly" title=" " alt="" coords="3588,294,3519,316,3445,345,3354,390,3267,439,3136,521,3134,516,3264,435,3352,385,3443,340,3517,311,3586,289"/>
<area shape="poly" title=" " alt="" coords="3599,295,3551,317,3501,345,3441,390,3384,439,3301,520,3297,516,3380,435,3437,386,3499,340,3549,312,3597,290"/>
<area shape="poly" title=" " alt="" coords="3600,295,3564,316,3531,344,3503,389,3482,438,3469,484,3461,519,3456,518,3464,482,3477,436,3498,386,3527,341,3561,312,3597,291"/>
<area shape="poly" title=" " alt="" coords="3600,296,3569,316,3545,344,3537,367,3537,391,3543,416,3553,439,3582,483,3612,516,3608,520,3578,486,3548,442,3538,417,3532,392,3532,366,3540,341,3565,312,3597,291"/>
<area shape="poly" title=" " alt="" coords="3728,287,3920,318,4031,340,4044,362,4051,386,4053,411,4051,436,4040,483,4025,520,4020,518,4034,481,4046,435,4048,411,4046,387,4040,364,4028,345,3919,323,3727,292"/>
<area shape="poly" title=" " alt="" coords="3728,287,4057,340,4082,359,4104,381,4141,431,4167,479,4184,518,4179,520,4162,482,4136,433,4100,385,4079,363,4055,345,3727,292"/>
<area shape="poly" title=" " alt="" coords="3728,287,3763,292,3858,302,3932,305,4006,314,4097,340,4188,381,4272,430,4344,478,4394,516,4391,521,4341,483,4270,434,4185,385,4095,345,4005,320,3932,311,3857,307,3762,297,3728,292"/>
<area shape="poly" title=" " alt="" coords="3727,287,3763,292,3874,304,3962,309,4048,317,4158,340,4187,350,4208,360,4230,371,4258,380,4480,427,4707,463,4934,490,5152,510,5354,523,5532,530,5788,535,5788,540,5532,535,5354,528,5152,515,4934,496,4707,468,4479,432,4257,385,4228,376,4206,365,4185,355,4157,345,4048,323,3961,314,3874,309,3762,297,3726,292"/>
<area shape="poly" title=" " alt="" coords="3723,287,3902,318,4006,341,4019,367,4018,393,4006,419,3986,444,3932,488,3877,521,3874,516,3929,484,3982,440,4002,416,4013,392,4014,368,4002,345,3901,323,3722,292"/>
<area shape="rect" href="component__base_8hpp.html" title=" " alt="" coords="3813,343,3992,383"/>
<area shape="poly" title=" " alt="" coords="3690,289,3846,340,3844,345,3689,294"/>
<area shape="rect" href="component__options_8hpp.html" title=" " alt="" coords="3555,343,3738,383"/>
<area shape="poly" title=" " alt="" coords="3646,301,3648,342,3643,342,3640,301"/>
<area shape="poly" title=" " alt="" coords="3769,277,4789,306,5327,324,5639,340,5694,347,5693,353,5638,345,5326,329,4789,311,3769,282"/>
<area shape="poly" title=" " alt="" coords="3769,276,4909,303,5519,322,5741,331,5874,340,5920,347,5919,353,5873,345,5741,336,5519,327,4909,308,3769,281"/>
<area shape="poly" title=" " alt="" coords="3769,276,5008,302,5678,321,5923,330,6068,340,6114,347,6113,353,6068,345,5923,336,5678,326,5008,307,3769,281"/>
<area shape="poly" title=" " alt="" coords="3769,276,4515,299,4927,318,5098,329,5228,340,5276,347,5275,353,5228,345,5098,334,4927,323,4515,305,3769,282"/>
<area shape="poly" title=" " alt="" coords="3769,277,4682,306,5156,324,5431,340,5480,347,5479,353,5430,345,5156,330,4682,311,3769,282"/>
<area shape="poly" title=" " alt="" coords="3769,276,5159,306,5890,325,6260,340,6272,342,6271,347,6260,345,5890,330,5159,311,3769,281"/>
<area shape="poly" title=" " alt="" coords="3569,293,3252,353,3251,347,3568,287"/>
<area shape="poly" title=" " alt="" coords="3769,278,4475,309,4829,326,5034,340,5079,347,5078,353,5033,345,4829,331,4475,314,3769,284"/>
<area shape="poly" title=" " alt="" coords="3769,276,5246,306,6030,325,6427,340,6472,347,6471,353,6426,345,6029,330,5246,311,3769,281"/>
<area shape="poly" title=" " alt="" coords="3514,280,2045,304,1234,323,937,334,762,345,717,353,716,347,761,340,937,329,1234,318,2045,299,3514,275"/>
<area shape="poly" title=" " alt="" coords="3513,281,2151,307,1406,326,1134,336,972,345,922,353,921,347,972,340,1134,330,1406,320,2151,301,3513,275"/>
<area shape="poly" title=" " alt="" coords="3514,281,1788,310,854,330,536,338,380,345,333,353,332,347,380,340,536,333,854,324,1787,305,3514,275"/>
<area shape="poly" title=" " alt="" coords="3514,287,2660,345,2615,353,2614,347,2660,340,3513,282"/>
<area shape="poly" title=" " alt="" coords="3733,287,3775,292,4013,315,4117,324,4251,340,4298,347,4297,353,4250,345,4117,329,4013,320,3774,297,3732,292"/>
<area shape="poly" title=" " alt="" coords="3763,286,3826,292,4004,305,4143,312,4282,321,4460,340,4506,347,4505,353,4460,345,4282,326,4143,317,4004,310,3825,297,3762,291"/>
<area shape="poly" title=" " alt="" coords="3514,281,2380,303,1719,322,1443,333,1234,345,1160,353,1160,347,1233,340,1443,328,1719,317,2380,298,3513,275"/>
<area shape="poly" title=" " alt="" coords="3514,281,2384,308,1779,327,1559,336,1428,345,1382,353,1382,347,1428,340,1559,331,1779,322,2383,303,3514,276"/>
<area shape="poly" title=" " alt="" coords="3769,275,5284,300,6123,319,6431,330,6614,340,6665,347,6665,353,6613,345,6431,335,6123,325,5284,305,3769,280"/>
<area shape="poly" title=" " alt="" coords="3769,275,5457,304,6367,324,6677,332,6830,340,6842,342,6842,347,6829,345,6677,338,6367,329,5457,310,3769,281"/>
<area shape="poly" title=" " alt="" coords="3769,282,4660,340,4707,347,4706,353,4660,345,3769,287"/>
<area shape="poly" title=" " alt="" coords="3769,280,4409,313,4863,340,4875,342,4874,347,4862,345,4409,318,3769,285"/>
<area shape="poly" title=" " alt="" coords="3514,283,2558,316,1839,345,1787,353,1787,347,1838,340,2558,311,3513,278"/>
<area shape="poly" title=" " alt="" coords="3513,283,2418,317,1616,345,1572,353,1571,347,1616,340,2418,312,3513,277"/>
<area shape="poly" title=" " alt="" coords="3514,284,2822,315,2476,333,2276,345,2220,353,2219,347,2276,340,2476,327,2821,310,3513,279"/>
<area shape="poly" title=" " alt="" coords="3514,284,2644,318,2028,345,1984,353,1983,347,2028,340,2644,313,3513,278"/>
<area shape="poly" title=" " alt="" coords="3514,289,3178,317,2891,345,2841,353,2840,347,2890,340,3178,312,3514,284"/>
<area shape="poly" title=" " alt="" coords="3519,291,3320,315,3095,345,3084,347,3083,342,3094,340,3319,309,3518,286"/>
<area shape="poly" title=" " alt="" coords="3513,286,2459,345,2417,353,2416,347,2458,340,3513,280"/>
<area shape="poly" title=" " alt="" coords="3513,280,1951,304,1082,323,763,334,575,345,529,353,528,347,574,340,763,329,1082,318,1951,298,3513,275"/>
<area shape="poly" title=" " alt="" coords="3632,460,3354,482,3187,499,3019,521,3008,523,3007,518,3018,516,3186,494,3354,476,3631,455"/>
<area shape="poly" title=" " alt="" coords="3632,465,3429,487,3194,521,3183,523,3182,518,3193,516,3428,482,3632,459"/>
<area shape="poly" title=" " alt="" coords="3632,472,3369,521,3357,524,3356,518,3367,516,3631,467"/>
<area shape="poly" title=" " alt="" coords="3661,477,3518,521,3516,516,3660,472"/>
<area shape="poly" title=" " alt="" coords="3703,482,3655,521,3652,516,3699,478"/>
<area shape="poly" title=" " alt="" coords="3810,472,3953,516,3952,521,3808,477"/>
<area shape="poly" title=" " alt="" coords="3838,467,4102,516,4113,518,4112,524,4101,521,3837,472"/>
<area shape="poly" title=" " alt="" coords="3838,462,4276,516,4341,524,4340,530,4276,521,3838,467"/>
<area shape="poly" title=" " alt="" coords="3838,453,5789,532,5788,537,3838,459"/>
<area shape="poly" title=" " alt="" coords="3770,478,3817,516,3814,521,3767,482"/>
<area shape="poly" title=" " alt="" coords="3855,391,3773,433,3770,428,3853,386"/>
<area shape="poly" title=" " alt="" coords="3800,380,3751,385,3622,397,3521,403,3421,412,3294,433,3153,471,2991,521,2990,516,3152,466,3293,428,3420,407,3521,398,3622,392,3750,380,3799,374"/>
<area shape="poly" title=" " alt="" coords="3800,379,3599,406,3435,433,3282,477,3156,521,3154,516,3280,472,3434,428,3599,401,3799,374"/>
<area shape="poly" title=" " alt="" coords="3801,381,3682,403,3554,433,3427,477,3323,521,3321,516,3425,472,3553,428,3680,397,3800,376"/>
<area shape="poly" title=" " alt="" coords="3800,385,3718,405,3634,433,3550,477,3483,521,3480,516,3547,472,3632,428,3717,400,3799,379"/>
<area shape="poly" title=" " alt="" coords="3893,397,3871,436,3856,456,3838,473,3807,493,3774,508,3707,528,3706,523,3772,503,3805,488,3834,469,3852,452,3866,433,3888,394"/>
<area shape="poly" title=" " alt="" coords="3945,389,3966,407,3984,429,3996,452,4004,476,4014,518,4008,519,3999,477,3991,454,3979,432,3962,411,3941,393"/>
<area shape="poly" title=" " alt="" coords="4006,373,4073,393,4106,408,4135,429,4154,449,4169,473,4186,518,4181,520,4164,475,4150,452,4132,433,4103,413,4071,398,4005,378"/>
<area shape="poly" title=" " alt="" coords="4005,383,4085,403,4168,428,4284,473,4379,516,4376,521,4282,478,4166,433,4083,408,4003,388"/>
<area shape="poly" title=" " alt="" coords="4006,370,5788,528,5788,533,4005,376"/>
<area shape="poly" title=" " alt="" coords="3901,397,3894,433,3882,472,3855,520,3851,517,3878,470,3889,432,3896,396"/>
<area shape="poly" title=" " alt="" coords="3678,391,3717,429,3713,432,3674,394"/>
<area shape="poly" title=" " alt="" coords="3542,373,3366,392,3267,410,3170,433,3113,453,3057,476,2967,521,2964,516,3055,471,3111,448,3169,428,3266,404,3365,387,3541,367"/>
<area shape="poly" title=" " alt="" coords="3542,368,3471,374,3393,386,3313,405,3236,433,3202,452,3172,475,3125,520,3121,516,3168,471,3200,448,3234,428,3311,400,3392,381,3471,369,3541,363"/>
<area shape="poly" title=" " alt="" coords="3616,395,3602,412,3592,431,3589,454,3594,477,3617,517,3612,520,3589,479,3584,455,3587,430,3598,409,3612,391"/>
<area shape="poly" title=" " alt="" coords="3724,385,3780,404,3837,428,3920,474,3987,516,3985,521,3918,478,3835,433,3778,409,3722,390"/>
<area shape="poly" title=" " alt="" coords="3734,384,3890,428,4026,474,4140,516,4138,521,4025,479,3889,433,3733,389"/>
<area shape="poly" title=" " alt="" coords="3635,396,3626,434,3628,452,3635,469,3654,484,3686,498,3764,520,3762,525,3684,503,3652,489,3631,472,3623,454,3621,433,3629,395"/>
<area shape="poly" title=" " alt="" coords="3568,213,3628,260,3625,264,3564,217"/>
<area shape="poly" title=" " alt="" coords="3654,196,4068,214,4282,230,4369,240,4437,252,4465,262,4487,272,4507,283,4535,292,4641,308,4774,318,5085,326,5397,329,5531,333,5639,340,5693,347,5692,353,5638,345,5531,338,5397,335,5085,332,4774,323,4641,313,4534,297,4505,288,4484,277,4463,266,4435,257,4369,246,4281,235,4068,219,3653,201"/>
<area shape="poly" title=" " alt="" coords="3653,196,4100,216,4334,232,4504,252,4542,262,4571,272,4599,283,4636,292,4823,318,4982,329,5122,331,5253,327,5385,321,5526,319,5686,324,5874,340,5920,347,5919,353,5873,345,5685,329,5526,324,5385,327,5253,332,5122,336,4981,334,4822,323,4636,297,4598,288,4569,277,4541,267,4504,257,4334,238,4100,222,3653,202"/>
<area shape="poly" title=" " alt="" coords="3653,194,3873,200,4142,210,4401,227,4507,238,4589,252,4617,261,4639,272,4659,283,4687,292,4820,311,4986,322,5175,326,5376,327,5766,327,5933,331,6068,340,6114,347,6113,353,6068,345,5933,336,5766,332,5376,332,5175,331,4986,327,4819,316,4686,297,4657,288,4636,277,4615,266,4587,257,4507,244,4401,232,4142,215,3873,205,3653,200"/>
<area shape="poly" title=" " alt="" coords="3653,198,3919,217,4076,233,4234,252,4290,262,4334,272,4377,283,4434,292,4554,305,4656,313,4831,317,5005,321,5108,328,5228,340,5275,347,5274,353,5228,345,5107,333,5005,326,4830,322,4656,318,4554,311,4433,297,4376,288,4333,278,4289,267,4233,257,4076,238,3918,223,3653,204"/>
<area shape="poly" title=" " alt="" coords="3653,193,3794,197,3970,206,4161,224,4353,252,4390,262,4419,272,4447,283,4485,292,4627,313,4748,323,4856,326,4956,325,5165,322,5287,327,5431,340,5479,347,5478,353,5430,345,5287,332,5165,328,4956,330,4856,332,4748,329,4626,318,4483,297,4446,288,4417,277,4389,267,4351,257,4161,229,3969,212,3794,202,3653,198"/>
<area shape="poly" title=" " alt="" coords="3653,195,4175,213,4454,230,4569,240,4656,252,4694,261,4723,272,4751,283,4788,292,5010,321,5199,333,5366,332,5523,325,5679,316,5847,312,6037,318,6260,340,6272,342,6271,347,6260,345,6037,324,5847,318,5679,322,5523,330,5366,337,5199,338,5010,327,4788,297,4750,288,4721,277,4693,267,4656,257,4568,246,4453,235,4175,219,3653,201"/>
<area shape="poly" title=" " alt="" coords="3653,203,3860,223,4098,252,4215,273,4332,292,4529,309,4683,315,4837,321,5034,340,5078,347,5077,353,5033,345,4836,326,4683,320,4529,315,4332,297,4214,278,4097,257,3859,229,3653,208"/>
<area shape="poly" title=" " alt="" coords="3653,193,3857,196,4128,204,4433,222,4740,252,4797,262,4841,272,4884,283,4940,292,5166,313,5357,321,5526,321,5683,316,5841,311,6010,311,6201,319,6427,340,6471,347,6470,353,6426,345,6201,325,6010,317,5841,317,5683,321,5526,326,5357,326,5165,318,4940,297,4883,288,4839,278,4796,267,4740,257,4432,227,4128,210,3857,201,3653,198"/>
<area shape="poly" title=" " alt="" coords="3427,199,3154,204,2817,215,2515,232,2407,243,2344,257,2330,266,2322,276,2313,288,2298,297,2256,308,2193,317,2014,329,1786,335,1533,338,1051,338,870,340,762,345,718,353,717,347,761,340,869,335,1051,333,1533,332,1786,330,2014,323,2192,311,2255,303,2296,292,2310,284,2318,273,2327,262,2342,252,2406,238,2514,227,2817,209,3154,199,3427,194"/>
<area shape="poly" title=" " alt="" coords="3427,200,3165,206,2845,217,2557,234,2454,245,2394,257,2380,266,2370,277,2360,288,2344,297,2306,306,2249,314,2090,325,1886,331,1661,335,1230,338,1069,341,972,345,923,353,922,347,972,340,1068,335,1230,333,1660,330,1886,326,2089,319,2249,308,2305,301,2342,292,2356,284,2366,273,2376,262,2392,252,2454,240,2557,229,2845,212,3165,201,3427,195"/>
<area shape="poly" title=" " alt="" coords="3476,213,3417,231,3357,257,3343,267,3333,278,3323,288,3306,297,3246,314,3168,324,2986,334,2802,337,2660,345,2615,353,2614,347,2660,340,2802,332,2986,329,3168,319,3244,308,3304,292,3319,284,3329,274,3339,263,3355,252,3415,226,3475,208"/>
<area shape="poly" title=" " alt="" coords="3623,207,3695,225,3769,252,3786,263,3798,273,3810,283,3826,292,3888,312,3941,324,3989,330,4034,331,4130,331,4186,333,4251,340,4297,347,4296,353,4250,345,4185,338,4130,336,4034,336,3988,335,3940,329,3886,317,3824,297,3807,288,3795,277,3783,267,3767,257,3694,230,3622,212"/>
<area shape="poly" title=" " alt="" coords="3618,207,3713,226,3815,252,3871,273,3895,283,3927,292,4007,307,4075,316,4192,323,4310,326,4460,340,4505,347,4504,353,4460,345,4310,331,4192,328,4075,322,4006,313,3926,297,3894,288,3869,278,3814,257,3711,231,3617,212"/>
<area shape="poly" title=" " alt="" coords="3427,200,3207,205,2937,215,2677,232,2571,243,2490,257,2463,266,2443,277,2422,288,2394,297,2282,315,2142,325,1983,332,1815,335,1488,337,1347,340,1234,345,1162,353,1162,347,1233,340,1347,334,1488,332,1815,329,1983,326,2142,320,2281,309,2393,292,2420,283,2440,272,2461,261,2489,252,2570,238,2677,227,2936,210,3207,199,3427,194"/>
<area shape="poly" title=" " alt="" coords="3427,201,2925,220,2683,237,2597,246,2546,257,2532,266,2522,277,2512,288,2496,297,2449,311,2395,322,2268,336,2122,342,1966,342,1663,338,1532,339,1428,345,1383,353,1382,347,1428,340,1532,333,1663,332,1966,337,2122,336,2267,331,2394,317,2448,306,2494,292,2508,284,2518,273,2528,262,2544,252,2596,241,2683,231,2925,215,3427,196"/>
<area shape="poly" title=" " alt="" coords="3653,195,4272,214,4612,231,4752,241,4859,252,4909,261,4947,272,4985,283,5035,292,5274,317,5477,327,5656,328,5823,323,5990,317,6170,315,6374,321,6614,340,6665,347,6664,353,6613,345,6373,327,6170,321,5991,323,5823,328,5656,333,5477,332,5274,322,5034,297,4984,288,4946,277,4908,267,4858,257,4751,246,4611,236,4272,220,3653,200"/>
<area shape="poly" title=" " alt="" coords="3636,206,3758,226,3890,252,3959,273,3989,283,4029,292,4124,307,4205,315,4343,321,4482,324,4564,330,4660,340,4706,347,4705,353,4660,345,4564,335,4482,330,4343,326,4204,321,4123,312,4027,297,3988,288,3958,278,3889,257,3757,231,3636,211"/>
<area shape="poly" title=" " alt="" coords="3650,206,3805,226,3978,252,4079,273,4180,292,4284,304,4372,310,4522,315,4672,320,4760,327,4863,340,4875,342,4874,347,4862,345,4759,332,4671,325,4521,320,4371,316,4283,309,4180,297,4078,278,3977,257,3805,231,3649,211"/>
<area shape="poly" title=" " alt="" coords="3427,205,3218,224,3122,239,3053,257,3038,266,3029,277,3019,288,3002,297,2970,305,2922,312,2787,322,2423,333,2058,338,1839,345,1787,353,1787,347,1838,340,2057,333,2423,328,2786,317,2922,306,2969,300,3000,292,3015,284,3025,273,3035,262,3051,252,3120,233,3218,219,3427,199"/>
<area shape="poly" title=" " alt="" coords="3429,211,3039,253,2546,297,2284,311,2080,314,1876,321,1757,330,1616,345,1573,353,1572,347,1616,340,1757,324,1876,315,2080,308,2284,305,2545,292,3038,247,3428,206"/>
<area shape="poly" title=" " alt="" coords="3427,204,3317,221,3260,237,3205,257,3191,266,3181,277,3171,288,3154,297,3116,309,3072,318,2967,331,2847,338,2719,340,2469,339,2362,340,2276,345,2220,353,2219,347,2276,340,2362,335,2469,334,2719,334,2847,332,2966,326,3071,313,3115,304,3152,292,3167,284,3177,273,3187,262,3203,252,3258,232,3316,216,3426,199"/>
<area shape="poly" title=" " alt="" coords="3427,209,3295,227,3154,257,3125,267,3104,278,3082,288,3053,297,2899,325,2768,337,2651,340,2542,337,2433,331,2316,328,2184,331,2028,345,1984,353,1983,347,2028,340,2183,326,2316,323,2433,326,2543,331,2652,335,2768,332,2898,319,3051,292,3080,283,3102,273,3123,262,3153,252,3294,222,3427,203"/>
<area shape="poly" title=" " alt="" coords="3497,214,3453,233,3408,257,3384,278,3373,288,3357,297,3290,321,3231,334,3179,340,3128,340,3023,337,2962,339,2891,345,2842,353,2842,347,2890,340,2962,333,3023,332,3128,335,3178,334,3231,329,3288,315,3355,292,3370,284,3380,274,3405,252,3451,228,3495,209"/>
<area shape="poly" title=" " alt="" coords="3517,218,3460,263,3408,297,3363,314,3323,324,3254,333,3184,336,3095,345,3084,347,3083,342,3094,340,3183,330,3254,328,3322,319,3361,309,3405,292,3456,259,3514,214"/>
<area shape="poly" title=" " alt="" coords="3474,212,3393,232,3306,257,3256,279,3234,289,3205,297,3093,318,2997,329,2913,333,2833,332,2668,329,2572,334,2459,345,2418,353,2417,347,2458,340,2572,328,2668,324,2833,327,2913,327,2997,324,3092,313,3203,292,3232,284,3254,274,3304,252,3392,227,3473,207"/>
<area shape="poly" title=" " alt="" coords="3427,198,2970,202,2642,208,2267,220,1859,239,1431,265,999,300,575,345,530,353,529,347,574,340,998,294,1431,259,1859,233,2267,215,2642,203,2970,196,3427,192"/>
<area shape="poly" title=" " alt="" coords="3653,194,4222,210,4597,227,4978,252,5048,259,5048,265,4977,257,4597,232,4221,215,3653,200"/>
<area shape="poly" title=" " alt="" coords="3426,198,3217,200,2938,208,2623,226,2463,240,2306,257,2287,260,2286,255,2305,252,2462,235,2623,221,2938,203,3217,195,3426,192"/>
<area shape="poly" title=" " alt="" coords="2140,112,2480,114,2960,122,3513,143,3798,158,4076,179,4230,194,4348,210,4619,252,4890,292,5059,315,5228,340,5270,347,5269,353,5228,345,5058,320,4889,297,4618,257,4348,215,4229,199,4076,184,3797,164,3513,148,2960,128,2480,119,2140,117"/>
<area shape="poly" title=" " alt="" coords="2140,111,2500,113,3011,122,3604,142,3908,158,4207,179,4367,194,4490,210,4772,252,5035,292,5233,315,5431,340,5475,347,5474,353,5430,345,5232,320,5034,297,4772,257,4490,215,4366,199,4206,184,3908,163,3603,147,3011,127,2500,118,2140,117"/>
<area shape="poly" title=" " alt="" coords="2140,111,2465,112,2919,121,3441,141,3709,158,3971,179,4171,206,4503,256,5034,340,5074,347,5073,353,5033,345,4502,261,4170,211,3970,184,3708,163,3440,147,2918,126,2465,118,2140,116"/>
<area shape="poly" title=" " alt="" coords="1902,130,1536,184,1294,228,1058,276,717,353,716,347,1057,271,1293,223,1536,179,1901,125"/>
<area shape="poly" title=" " alt="" coords="1925,131,1647,184,1221,279,914,352,912,347,1220,274,1646,179,1924,126"/>
<area shape="poly" title=" " alt="" coords="1866,126,1570,148,1223,184,996,216,770,257,522,309,330,353,329,347,521,304,769,252,995,210,1222,179,1570,143,1866,121"/>
<area shape="poly" title=" " alt="" coords="2013,139,2047,225,2068,267,2088,293,2120,308,2162,318,2267,330,2375,334,2459,340,2502,347,2501,353,2458,345,2375,339,2267,335,2161,324,2118,313,2085,297,2064,270,2042,228,2008,141"/>
<area shape="poly" title=" " alt="" coords="2140,112,2479,116,2915,126,3341,146,3517,160,3651,179,3745,203,3816,232,3886,262,3978,292,4118,320,4286,347,4285,353,4117,325,3977,297,3884,267,3814,237,3744,208,3650,184,3517,166,3341,151,2915,131,2479,121,2140,118"/>
<area shape="poly" title=" " alt="" coords="2140,113,2492,119,2947,130,3393,149,3577,163,3718,179,3835,203,3925,232,4014,262,4130,292,4222,309,4295,318,4460,340,4502,347,4501,353,4460,345,4294,324,4221,314,4129,297,4012,267,3923,237,3834,208,3717,184,3577,168,3392,155,2947,135,2492,124,2140,119"/>
<area shape="poly" title=" " alt="" coords="1944,132,1749,184,1629,215,1578,231,1515,257,1481,278,1467,288,1446,297,1144,353,1143,347,1445,292,1464,283,1478,273,1512,252,1576,226,1628,210,1747,179,1943,127"/>
<area shape="poly" title=" " alt="" coords="1959,133,1820,184,1362,352,1361,347,1818,179,1957,128"/>
<area shape="poly" title=" " alt="" coords="2140,114,2506,120,2984,132,3453,151,3648,164,3796,179,3934,203,4040,232,4145,262,4282,292,4388,309,4471,317,4554,326,4660,340,4703,347,4702,353,4660,345,4553,331,4470,323,4387,314,4281,297,4144,267,4039,237,3933,209,3796,184,3648,169,3453,156,2984,137,2506,125,2140,119"/>
<area shape="poly" title=" " alt="" coords="2140,114,2522,120,3024,132,3520,151,3725,164,3882,179,3976,193,4049,210,4214,252,4298,274,4383,292,4517,310,4623,317,4728,323,4863,340,4875,342,4874,347,4862,345,4728,329,4622,322,4517,315,4382,297,4297,279,4213,257,4048,215,3975,199,3881,184,3725,169,3519,156,3024,137,2522,125,2140,119"/>
<area shape="poly" title=" " alt="" coords="1981,137,1743,351,1739,348,1978,133"/>
<area shape="poly" title=" " alt="" coords="1969,135,1546,352,1544,347,1967,130"/>
<area shape="poly" title=" " alt="" coords="1998,140,1939,350,1934,349,1993,139"/>
<area shape="poly" title=" " alt="" coords="2002,140,2000,174,2004,216,2015,257,2025,276,2038,293,2065,316,2092,329,2118,336,2145,337,2204,334,2238,335,2276,340,2313,347,2312,353,2276,345,2238,340,2204,340,2145,342,2117,341,2090,334,2062,320,2034,297,2020,279,2010,259,1998,217,1995,175,1997,140"/>
<area shape="poly" title=" " alt="" coords="1866,130,1645,153,1396,184,1181,217,967,257,719,309,527,353,526,347,718,304,966,252,1180,212,1396,179,1645,148,1865,125"/>
<area shape="poly" title=" " alt="" coords="2140,119,3441,185,3440,190,2140,124"/>
<area shape="poly" title=" " alt="" coords="2031,132,2191,253,2188,257,2027,136"/>
<area shape="poly" title=" " alt="" coords="4769,119,4660,125,4524,136,4377,155,4231,184,4200,196,4167,209,4059,233,3950,250,3756,270,3755,264,3949,245,4058,227,4166,204,4198,191,4230,179,4376,150,4524,131,4659,119,4769,114"/>
<area shape="poly" title=" " alt="" coords="4946,125,5076,147,5221,179,5296,204,5723,347,5721,352,5294,209,5219,184,5075,152,4945,130"/>
<area shape="poly" title=" " alt="" coords="4946,121,5101,143,5190,159,5277,179,5312,191,5346,204,5508,250,5669,291,5917,347,5916,353,5667,296,5506,255,5344,209,5310,196,5275,184,5189,164,5100,148,4945,126"/>
<area shape="poly" title=" " alt="" coords="4946,122,5124,145,5330,179,5461,207,5562,234,5663,262,5794,292,5931,317,6068,340,6107,347,6106,353,6068,345,5930,322,5793,297,5662,267,5561,239,5460,212,5329,184,5123,150,4945,127"/>
<area shape="poly" title=" " alt="" coords="4946,124,5018,140,5099,166,5180,203,5218,226,5252,253,5276,277,5297,304,5325,348,5321,351,5293,307,5272,281,5249,257,5215,230,5177,207,5097,171,5017,146,4945,130"/>
<area shape="poly" title=" " alt="" coords="4946,124,5056,146,5174,179,5279,221,5378,269,5517,347,5515,352,5375,274,5276,226,5172,184,5055,151,4945,130"/>
<area shape="poly" title=" " alt="" coords="4946,121,5156,145,5406,179,5647,218,5834,252,6261,340,6272,342,6270,348,6259,345,5833,257,5646,223,5405,184,5155,150,4945,126"/>
<area shape="poly" title=" " alt="" coords="4769,121,4496,135,4131,162,3945,180,3772,202,3625,228,3516,257,3498,266,3486,276,3474,287,3456,297,3362,326,3246,353,3245,347,3360,321,3454,292,3471,282,3483,272,3495,261,3514,252,3624,222,3772,197,3945,175,4131,156,4495,130,4769,116"/>
<area shape="poly" title=" " alt="" coords="4946,120,5195,143,5498,179,5724,212,5948,252,6427,340,6464,347,6463,353,6426,345,5948,257,5723,218,5497,184,5194,149,4946,125"/>
<area shape="poly" title=" " alt="" coords="4769,118,4445,124,3997,135,3547,155,3360,168,3219,184,3141,198,3081,212,2946,257,2898,277,2850,297,2731,330,2624,353,2623,347,2729,325,2848,292,2896,272,2944,252,3079,207,3140,192,3218,179,3360,163,3547,149,3996,130,4444,118,4769,113"/>
<area shape="poly" title=" " alt="" coords="4808,142,4383,352,4381,348,4806,137"/>
<area shape="poly" title=" " alt="" coords="4826,144,4575,352,4572,348,4822,140"/>
<area shape="poly" title=" " alt="" coords="4946,118,5238,141,5602,179,5840,212,6078,252,6614,340,6657,347,6656,353,6613,345,6077,257,5839,218,5601,184,5237,147,4946,123"/>
<area shape="poly" title=" " alt="" coords="4946,117,5282,140,5495,157,5710,179,6026,215,6272,247,6516,285,6830,340,6842,342,6841,348,6829,345,6515,290,6271,252,6025,220,5709,184,5494,163,5281,145,4945,122"/>
<area shape="poly" title=" " alt="" coords="4874,145,4884,178,4892,217,4891,258,4878,296,4863,316,4844,331,4802,352,4800,348,4841,327,4859,312,4874,293,4886,257,4886,218,4879,180,4869,147"/>
<area shape="poly" title=" " alt="" coords="4932,135,5113,196,5191,228,5217,241,5231,253,5240,275,5231,297,5156,317,5022,348,5021,342,5154,312,5228,293,5235,275,5227,256,5214,246,5189,233,5111,201,4930,140"/>
<area shape="poly" title=" " alt="" coords="4768,118,4329,125,3710,138,3125,157,2911,170,2784,184,2739,195,2702,209,2640,239,2579,270,2541,285,2495,297,2397,317,2313,327,2238,332,2169,332,2024,332,1939,336,1839,345,1790,353,1789,347,1838,340,1938,331,2023,327,2169,327,2238,326,2312,322,2396,311,2494,292,2539,280,2577,266,2638,235,2700,204,2737,190,2784,179,2910,164,3124,152,3710,133,4329,120,4768,113"/>
<area shape="poly" title=" " alt="" coords="4769,118,4363,125,3798,138,3266,157,3072,170,2958,184,2917,195,2883,209,2828,239,2773,269,2739,284,2698,297,2581,322,2489,330,2395,334,2276,345,2225,353,2224,347,2276,340,2395,329,2488,325,2581,317,2697,292,2737,279,2771,265,2826,234,2881,204,2915,190,2957,179,3072,164,3266,152,3798,133,4363,120,4769,113"/>
<area shape="poly" title=" " alt="" coords="4769,118,4348,125,3759,138,3202,158,2999,170,2879,184,2826,197,2785,211,2699,257,2684,268,2675,278,2664,288,2648,297,2589,313,2515,323,2341,333,2164,337,2028,345,1986,353,1985,347,2028,340,2164,332,2340,328,2515,318,2588,308,2646,292,2661,284,2671,274,2681,264,2696,252,2783,206,2824,192,2878,179,2998,165,3202,152,3759,133,4348,120,4769,113"/>
<area shape="poly" title=" " alt="" coords="4769,118,4465,123,4051,133,3637,153,3465,167,3335,184,3255,201,3174,222,3020,270,2890,317,2804,352,2802,347,2889,312,3018,265,3173,216,3254,195,3334,179,3464,162,3636,148,4050,128,4465,117,4769,113"/>
<area shape="poly" title=" " alt="" coords="4769,117,4481,120,4093,130,3894,138,3708,150,3549,165,3429,184,3310,218,3196,263,3099,308,3028,345,3026,340,3096,304,3194,258,3308,213,3427,179,3548,159,3708,144,3894,133,4093,124,4481,115,4769,112"/>
<area shape="poly" title=" " alt="" coords="4769,118,4422,121,3935,130,3683,139,3446,150,3242,165,3088,184,3019,196,2965,208,2914,227,2851,257,2836,267,2826,277,2816,288,2800,297,2751,315,2708,326,2633,334,2556,335,2459,345,2421,353,2420,347,2458,340,2555,330,2632,329,2707,321,2749,310,2798,292,2813,283,2822,274,2833,263,2848,252,2912,222,2964,203,3018,191,3088,179,3242,160,3446,145,3682,134,3935,125,4422,115,4769,112"/>
<area shape="poly" title=" " alt="" coords="4769,123,3640,189,3640,184,4768,117"/>
<area shape="poly" title=" " alt="" coords="4905,138,4979,179,5114,260,5112,264,4976,184,4902,142"/>
</map>
</div>
</div>
<p><a href="box_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structftxui_1_1Box.html">Box</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

4
en/v4.1.1/box_8hpp.js Normal file
View File

@@ -0,0 +1,4 @@
var box_8hpp =
[
[ "Box", "structftxui_1_1Box.html", null ]
];

View File

@@ -0,0 +1,241 @@
<map id="include/ftxui/screen/box.hpp" name="include/ftxui/screen/box.hpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="3060,5,3209,45"/>
<area shape="rect" id="Node000002" href="$elements_8hpp.html" title=" " alt="" coords="3527,262,3755,287"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="3174,51,3297,131,3362,171,3429,204,3517,236,3596,259,3595,264,3515,241,3427,209,3359,175,3295,136,3171,55"/>
<area shape="rect" id="Node000004" href="$button_8cpp.html" title=" " alt="" coords="2857,519,3007,559"/>
<area shape="poly" id="edge148_Node000001_Node000004" title=" " alt="" coords="3046,30,2378,36,1389,49,480,69,182,81,94,88,56,96,31,115,17,136,10,161,8,193,8,363,14,376,33,388,66,400,110,411,229,432,387,450,574,466,787,480,1259,502,1753,517,2217,527,2856,534,2856,540,2217,532,1752,522,1259,507,786,485,574,471,386,455,229,437,108,416,64,405,31,393,10,379,3,365,3,193,5,160,12,133,27,111,54,91,93,83,181,76,480,64,1388,44,2378,31,3046,25"/>
<area shape="rect" id="Node000006" href="$checkbox_8cpp.html" title=" " alt="" coords="3031,519,3182,559"/>
<area shape="poly" id="edge149_Node000001_Node000006" title=" " alt="" coords="3047,30,2384,35,1405,47,921,56,507,67,213,80,126,88,89,96,70,116,61,137,58,162,59,193,59,276,60,339,70,390,79,412,94,432,114,450,140,468,159,475,192,482,296,493,442,501,625,507,1069,514,1571,516,2521,512,2855,512,3019,516,3031,518,3031,523,3018,521,2855,517,2521,518,1571,521,1069,519,624,513,442,506,295,498,192,487,158,480,137,473,110,455,90,435,75,414,64,391,55,340,53,276,53,193,53,161,55,135,65,113,87,91,125,83,212,75,506,62,921,51,1405,42,2384,30,3046,25"/>
<area shape="rect" id="Node000010" href="$container_8cpp.html" title=" " alt="" coords="3206,519,3357,559"/>
<area shape="poly" id="edge150_Node000001_Node000010" title=" " alt="" coords="3046,30,2394,35,1432,47,956,56,550,67,261,80,176,88,140,96,120,116,111,137,109,162,109,193,109,276,109,309,111,336,119,359,140,381,171,399,214,416,269,431,334,444,492,466,682,483,898,495,1134,503,1640,510,2149,509,2612,506,2976,506,3107,510,3194,516,3206,518,3205,523,3193,521,3106,515,2976,512,2612,511,2149,514,1640,516,1134,509,898,501,681,489,491,472,333,449,267,436,213,421,169,404,137,385,115,362,105,337,104,309,104,276,104,193,104,161,106,135,116,113,137,91,175,83,261,75,549,62,956,51,1431,42,2394,30,3046,25"/>
<area shape="rect" id="Node000012" href="$hoverable_8cpp.html" title=" " alt="" coords="3381,519,3531,559"/>
<area shape="poly" id="edge151_Node000001_Node000012" title=" " alt="" coords="3047,30,2387,35,1916,44,1417,57,942,78,728,91,540,107,382,125,262,146,218,157,186,169,166,181,160,193,160,276,159,336,165,358,184,381,204,390,240,400,352,417,513,433,713,446,1204,467,1761,482,2815,501,3186,508,3368,516,3381,518,3380,523,3368,521,3186,514,2815,507,1761,487,1204,472,713,451,512,438,351,423,238,405,202,395,181,385,161,361,153,336,155,276,155,192,162,177,183,164,216,152,261,140,381,120,539,102,728,86,941,73,1417,52,1916,38,2387,30,3047,24"/>
<area shape="rect" id="Node000013" href="$input_8cpp.html" title=" " alt="" coords="3555,519,3706,559"/>
<area shape="poly" id="edge152_Node000001_Node000013" title=" " alt="" coords="3079,53,2943,107,2752,176,2529,244,2413,273,2298,297,2112,303,1759,309,1409,321,1289,331,1252,338,1235,345,1229,354,1227,363,1229,372,1235,381,1256,397,1287,412,1373,438,1490,459,1633,475,1796,488,1974,496,2359,505,2747,507,3099,507,3378,508,3477,511,3543,516,3555,518,3555,523,3542,521,3477,516,3377,513,3099,512,2747,513,2359,511,1974,501,1796,493,1632,481,1490,464,1372,443,1285,417,1253,402,1231,384,1224,374,1221,363,1224,351,1232,341,1251,333,1288,326,1408,316,1759,304,2112,298,2297,292,2412,268,2527,239,2750,170,2941,102,3077,48"/>
<area shape="rect" id="Node000015" href="$menu_8cpp.html" title=" " alt="" coords="3938,519,4089,559"/>
<area shape="poly" id="edge153_Node000001_Node000015" title=" " alt="" coords="3223,24,3842,26,4799,34,5310,42,5794,54,6212,70,6527,91,6574,93,6621,91,6717,81,6810,67,6896,56,6970,55,7001,61,7029,73,7051,91,7068,117,7078,150,7081,193,7081,276,7080,311,7074,339,7060,363,7035,385,7003,402,6961,417,6844,443,6691,463,6508,479,6300,491,6073,499,5588,508,4658,509,4309,511,4185,515,4102,521,4089,523,4089,518,4101,516,4184,510,4309,506,4658,503,5588,502,6073,494,6300,486,6508,474,6691,458,6843,438,6959,412,7001,397,7032,380,7056,359,7069,337,7075,310,7076,276,7076,193,7073,151,7063,119,7047,95,7026,78,7000,66,6969,60,6896,61,6811,72,6718,86,6622,97,6574,98,6527,96,6212,75,5794,59,5310,47,4799,39,3842,31,3223,29"/>
<area shape="rect" id="Node000017" href="$radiobox_8cpp.html" title=" " alt="" coords="4113,519,4263,559"/>
<area shape="poly" id="edge154_Node000001_Node000017" title=" " alt="" coords="3223,24,3955,27,5080,36,5658,44,6175,55,6579,71,6722,80,6816,91,6871,96,6926,96,7027,94,7069,101,7102,117,7115,130,7124,146,7130,167,7132,193,7132,276,7130,309,7123,337,7113,362,7099,383,7082,400,7062,414,7014,435,6957,449,6895,457,6759,473,6650,487,6523,497,6230,509,5897,513,5546,512,4861,508,4566,511,4330,521,4264,528,4263,523,4329,516,4566,506,4861,502,5546,507,5897,507,6229,503,6523,491,6649,481,6758,468,6894,452,6956,443,7012,430,7059,410,7079,396,7095,379,7109,359,7118,336,7125,308,7127,276,7127,193,7125,168,7119,148,7111,133,7099,121,7067,106,7027,100,6926,101,6871,101,6816,96,6721,86,6578,76,6175,61,5658,49,5080,41,3955,32,3223,29"/>
<area shape="rect" id="Node000018" href="$renderer_8cpp.html" title=" " alt="" coords="4341,519,4491,559"/>
<area shape="poly" id="edge155_Node000001_Node000018" title=" " alt="" coords="3223,24,4019,29,5241,41,5857,50,6394,61,6790,75,6916,82,6983,91,7054,102,7118,112,7144,122,7165,137,7178,160,7183,192,7183,364,7176,406,7168,422,7157,434,7128,451,7092,459,7003,464,6955,467,6907,473,6785,483,6535,493,5806,513,4492,539,4492,533,5805,507,6535,488,6785,478,6906,468,6955,461,7003,459,7091,454,7126,446,7154,430,7164,419,7171,404,7177,364,7177,193,7173,162,7161,141,7141,127,7116,118,7053,108,6982,96,6915,88,6790,80,6394,66,5857,55,5241,46,4019,35,3223,30"/>
<area shape="rect" id="Node000019" href="$resizable__split_8cpp.html" title=" " alt="" coords="5789,519,5939,559"/>
<area shape="poly" id="edge156_Node000001_Node000019" title=" " alt="" coords="3223,24,4040,26,5297,35,5930,43,6483,55,6890,70,7019,80,7087,91,7141,105,7188,120,7206,131,7221,146,7230,166,7233,193,7233,364,7229,395,7217,418,7198,434,7174,445,7115,458,7049,473,6950,494,6819,510,6666,522,6501,531,6179,539,5940,540,5940,535,6179,534,6501,525,6665,517,6818,505,6949,489,7047,468,7114,453,7172,440,7195,430,7213,415,7224,394,7228,364,7228,193,7225,168,7216,149,7203,135,7185,125,7140,110,7086,96,7018,85,6889,76,6483,60,5930,48,5296,40,4040,31,3223,29"/>
<area shape="rect" id="Node000020" href="$slider_8cpp.html" title=" " alt="" coords="3763,519,3914,559"/>
<area shape="poly" id="edge157_Node000001_Node000020" title=" " alt="" coords="3223,24,3654,24,4341,32,5169,52,5599,69,6021,91,6129,90,6273,80,6438,69,6609,61,6769,63,6840,70,6903,82,6955,99,6996,122,7011,137,7022,153,7028,172,7031,193,7031,276,7032,336,7025,361,7004,385,6973,404,6929,422,6874,438,6809,452,6650,475,6459,492,6241,505,6003,513,5493,519,4980,517,4513,513,4145,512,4014,515,3927,521,3915,523,3914,518,3926,516,4014,510,4145,507,4513,507,4980,511,5493,514,6003,507,6241,499,6458,487,6650,470,6808,447,6873,433,6928,417,6970,400,7001,381,7020,358,7027,336,7025,276,7025,193,7023,173,7017,156,7006,140,6992,127,6953,104,6902,87,6839,75,6769,69,6609,66,6439,74,6273,86,6129,95,6021,96,5599,74,5169,57,4341,37,3654,30,3223,29"/>
<area shape="rect" id="Node000032" href="$automerge_8cpp.html" title=" " alt="" coords="5651,350,5861,375"/>
<area shape="poly" id="edge158_Node000001_Node000032" title=" " alt="" coords="3224,24,3682,27,4332,36,4658,44,4948,56,5173,71,5252,80,5305,91,5377,116,5448,148,5515,185,5578,224,5681,297,5744,348,5741,352,5678,301,5575,228,5512,190,5445,153,5375,121,5303,96,5251,86,5172,76,4947,61,4658,49,4331,41,3682,32,3223,29"/>
<area shape="rect" id="Node000033" href="$blink_8cpp.html" title=" " alt="" coords="5885,350,6056,375"/>
<area shape="poly" id="edge159_Node000001_Node000033" title=" " alt="" coords="3223,25,3694,29,4365,40,5004,60,5238,74,5320,82,5375,91,5467,116,5558,148,5647,185,5729,224,5868,297,5954,348,5951,352,5865,302,5727,229,5644,190,5556,153,5465,121,5374,96,5320,87,5237,79,5004,66,4365,46,3694,35,3223,30"/>
<area shape="rect" id="Node000034" href="$bold_8cpp.html" title=" " alt="" coords="6081,350,6247,375"/>
<area shape="poly" id="edge160_Node000001_Node000034" title=" " alt="" coords="3223,25,3709,30,4407,43,5072,62,5315,75,5459,91,5566,116,5673,148,5778,185,5876,224,6041,297,6143,348,6141,352,6038,302,5873,229,5776,190,5672,153,5565,121,5458,96,5315,81,5072,68,4407,48,3709,36,3223,30"/>
<area shape="rect" id="Node000035" href="$border_8cpp.html" title=" " alt="" coords="5240,350,5419,375"/>
<area shape="poly" id="edge161_Node000001_Node000035" title=" " alt="" coords="3224,23,3663,23,4280,30,4589,38,4863,50,5075,67,5149,78,5198,91,5235,106,5262,123,5284,147,5305,180,5323,227,5332,275,5334,319,5333,350,5328,350,5329,319,5327,276,5318,228,5300,183,5280,150,5258,128,5232,111,5196,96,5148,83,5074,73,4863,55,4589,43,4280,35,3663,29,3224,29"/>
<area shape="rect" id="Node000036" href="$canvas_8cpp.html" title=" " alt="" coords="5443,350,5627,375"/>
<area shape="poly" id="edge162_Node000001_Node000036" title=" " alt="" coords="3223,25,3691,32,4347,45,4949,64,5152,77,5217,84,5252,91,5302,117,5349,149,5393,186,5431,225,5493,298,5529,348,5525,351,5489,301,5427,228,5389,190,5346,153,5299,121,5250,96,5216,89,5152,82,4948,70,4347,50,3691,37,3223,30"/>
<area shape="rect" id="Node000037" href="$clear__under_8cpp.html" title=" " alt="" coords="6271,343,6414,383"/>
<area shape="poly" id="edge163_Node000001_Node000037" title=" " alt="" coords="3223,25,3727,31,4455,44,5150,63,5405,76,5555,91,5668,115,5781,145,5892,179,5997,216,6180,287,6303,340,6301,345,6178,292,5996,221,5890,184,5780,150,5667,120,5554,96,5404,81,5150,69,4455,49,3727,36,3223,30"/>
<area shape="rect" id="Node000038" href="$dom_2color_8cpp.html" title=" " alt="" coords="3107,350,3277,375"/>
<area shape="poly" id="edge164_Node000001_Node000038" title=" " alt="" coords="3143,59,3193,349,3187,350,3138,60"/>
<area shape="rect" id="Node000040" href="$dbox_8cpp.html" title=" " alt="" coords="5045,350,5216,375"/>
<area shape="poly" id="edge165_Node000001_Node000040" title=" " alt="" coords="3223,24,3650,27,4248,36,4547,44,4812,56,5018,71,5090,80,5138,91,5177,105,5213,124,5246,145,5272,170,5291,198,5300,229,5298,262,5282,296,5265,316,5243,332,5195,352,5193,348,5240,328,5261,313,5278,293,5293,260,5295,229,5286,200,5268,174,5242,149,5211,128,5175,110,5137,96,5089,86,5017,76,4812,61,4547,49,4248,41,3650,32,3223,29"/>
<area shape="rect" id="Node000041" href="$dim_8cpp.html" title=" " alt="" coords="6439,350,6601,375"/>
<area shape="poly" id="edge166_Node000001_Node000041" title=" " alt="" coords="3224,25,3747,31,4507,44,5234,64,5501,77,5659,91,5788,116,5918,148,6045,185,6165,224,6367,297,6494,347,6492,352,6365,302,6163,229,6043,190,5917,153,5787,121,5658,96,5501,82,5234,69,4507,50,3747,37,3224,30"/>
<area shape="rect" id="Node000042" href="$flex_8cpp.html" title=" " alt="" coords="587,350,749,375"/>
<area shape="poly" id="edge167_Node000001_Node000042" title=" " alt="" coords="3046,31,2125,52,1622,71,1439,83,1331,96,1231,121,1130,154,1033,190,941,229,787,302,690,352,688,347,784,297,939,224,1031,185,1129,149,1229,116,1330,91,1439,78,1622,66,2124,47,3046,25"/>
<area shape="rect" id="Node000043" href="$flexbox_8cpp.html" title=" " alt="" coords="773,350,960,375"/>
<area shape="poly" id="edge168_Node000001_Node000043" title=" " alt="" coords="3046,31,2195,52,1735,72,1568,83,1470,96,1378,121,1286,154,1197,190,1114,229,974,302,887,352,884,347,972,297,1112,224,1195,186,1284,149,1376,116,1469,91,1568,78,1735,66,2194,47,3046,26"/>
<area shape="rect" id="Node000044" href="$focus_8cpp.html" title=" " alt="" coords="195,350,368,375"/>
<area shape="poly" id="edge169_Node000001_Node000044" title=" " alt="" coords="3046,30,2600,37,1968,51,1369,70,1150,82,1020,96,909,121,797,154,689,190,586,229,413,302,305,352,303,348,411,297,584,224,687,185,796,148,908,116,1020,91,1149,77,1369,65,1968,45,2600,32,3046,25"/>
<area shape="rect" id="Node000045" href="$frame_8cpp.html" title=" " alt="" coords="2471,350,2649,375"/>
<area shape="poly" id="edge170_Node000001_Node000045" title=" " alt="" coords="3046,32,2887,38,2694,50,2510,69,2436,81,2379,96,2297,123,2233,149,2206,166,2180,189,2156,218,2133,256,2127,271,2125,283,2128,293,2136,301,2163,312,2205,319,2321,326,2389,331,2459,340,2501,347,2500,353,2458,345,2388,336,2321,331,2205,324,2162,318,2133,305,2124,296,2120,284,2121,270,2128,253,2152,215,2176,185,2202,162,2230,144,2295,118,2378,91,2435,76,2510,64,2693,45,2886,33,3046,26"/>
<area shape="rect" id="Node000046" href="$gauge_8cpp.html" title=" " alt="" coords="4269,350,4448,375"/>
<area shape="poly" id="edge171_Node000001_Node000046" title=" " alt="" coords="3220,46,3718,179,4320,347,4318,353,3717,184,3219,51"/>
<area shape="rect" id="Node000047" href="$graph_8cpp.html" title=" " alt="" coords="4473,350,4647,375"/>
<area shape="poly" id="edge172_Node000001_Node000047" title=" " alt="" coords="3223,40,3482,91,3795,163,4098,238,4518,347,4517,352,4097,243,3793,168,3481,96,3222,45"/>
<area shape="rect" id="Node000048" href="$gridbox_8cpp.html" title=" " alt="" coords="984,350,1171,375"/>
<area shape="poly" id="edge173_Node000001_Node000048" title=" " alt="" coords="3046,31,2708,38,2255,51,1833,71,1680,83,1590,96,1510,121,1432,154,1356,190,1286,229,1168,301,1095,352,1092,348,1165,297,1283,224,1354,186,1430,149,1509,116,1589,91,1679,77,1833,65,2255,46,2708,33,3046,26"/>
<area shape="rect" id="Node000049" href="$hbox_8cpp.html" title=" " alt="" coords="1245,350,1416,375"/>
<area shape="poly" id="edge174_Node000001_Node000049" title=" " alt="" coords="3046,30,2725,35,2299,47,1904,66,1761,80,1711,87,1678,96,1621,121,1566,154,1514,190,1466,229,1389,301,1342,352,1339,348,1385,297,1463,225,1510,186,1563,149,1618,117,1676,91,1710,82,1760,75,1903,61,2299,42,2725,30,3046,25"/>
<area shape="rect" id="Node000050" href="$inverted_8cpp.html" title=" " alt="" coords="6625,350,6817,375"/>
<area shape="poly" id="edge175_Node000001_Node000050" title=" " alt="" coords="3223,25,3767,32,4562,45,5325,65,5606,77,5771,91,5913,116,6056,148,6196,185,6328,224,6552,297,6692,347,6691,352,6550,302,6326,229,6194,190,6055,154,5912,121,5770,96,5605,82,5325,70,4562,50,3767,37,3223,30"/>
<area shape="rect" id="Node000051" href="$linear__gradient_8cpp.html" title=" " alt="" coords="6842,343,6990,383"/>
<area shape="poly" id="edge176_Node000001_Node000051" title=" " alt="" coords="3223,25,4623,46,5424,65,5718,77,5892,91,6037,114,6183,145,6327,179,6464,216,6702,287,6863,340,6862,345,6700,292,6462,221,6326,184,6182,150,6036,120,5892,96,5718,83,5424,71,4623,51,3223,30"/>
<area shape="rect" id="Node000059" href="$reflect_8cpp.html" title=" " alt="" coords="4672,350,4851,375"/>
<area shape="poly" id="edge179_Node000001_Node000059" title=" " alt="" coords="3223,24,3623,27,4176,37,4451,46,4696,57,4885,72,4951,81,4995,91,5075,117,5136,145,5163,163,5187,186,5209,216,5232,253,5239,271,5241,286,5238,298,5230,308,5200,320,5156,325,5028,330,4949,335,4863,345,4821,353,4820,347,4862,340,4949,330,5028,325,5155,320,5199,314,5227,304,5233,296,5236,286,5234,273,5227,256,5205,219,5183,190,5159,167,5134,149,5073,122,4994,96,4950,86,4884,77,4695,62,4451,51,4176,42,3623,33,3223,30"/>
<area shape="rect" id="Node000054" href="$scroll__indicator_8cpp.html" title=" " alt="" coords="4875,343,5021,383"/>
<area shape="poly" id="edge180_Node000001_Node000054" title=" " alt="" coords="3223,24,3637,28,4213,38,4501,46,4756,57,4954,72,5024,81,5070,91,5158,124,5199,146,5234,170,5260,198,5274,228,5276,244,5273,261,5266,279,5253,297,5022,348,5021,343,5251,292,5261,276,5268,260,5270,244,5269,229,5256,201,5231,174,5196,150,5156,129,5069,96,5023,86,4953,77,4756,63,4501,51,4213,43,3637,33,3223,30"/>
<area shape="rect" id="Node000060" href="$separator_8cpp.html" title=" " alt="" coords="1629,350,1827,375"/>
<area shape="poly" id="edge181_Node000001_Node000060" title=" " alt="" coords="3046,31,2730,37,2316,49,1949,68,1827,81,1790,88,1772,95,1749,124,1733,157,1723,194,1719,232,1721,302,1728,350,1723,350,1716,302,1714,232,1718,193,1728,156,1744,121,1769,91,1789,83,1827,76,1948,63,2316,44,2729,31,3046,25"/>
<area shape="rect" id="Node000061" href="$size_8cpp.html" title=" " alt="" coords="1441,350,1605,375"/>
<area shape="poly" id="edge182_Node000001_Node000061" title=" " alt="" coords="3046,29,2736,32,2327,41,2126,49,1950,61,1815,76,1769,85,1738,96,1697,122,1660,154,1627,191,1598,229,1554,301,1530,351,1525,349,1550,299,1594,226,1623,187,1656,150,1694,117,1736,91,1767,80,1815,71,1950,55,2126,44,2327,35,2736,26,3046,24"/>
<area shape="rect" id="Node000055" href="$strikethrough_8cpp.html" title=" " alt="" coords="2040,350,2264,375"/>
<area shape="poly" id="edge183_Node000001_Node000055" title=" " alt="" coords="3046,31,2740,37,2345,49,1995,68,1880,81,1845,88,1828,95,1811,121,1806,146,1813,174,1826,205,1846,236,1870,263,1899,285,1931,303,1999,331,2064,347,2063,353,1997,336,1929,308,1896,289,1867,266,1841,239,1822,208,1808,176,1801,147,1806,119,1825,91,1843,83,1879,76,1995,63,2344,43,2740,31,3046,25"/>
<area shape="rect" id="Node000029" href="$text_8cpp.html" title=" " alt="" coords="1851,350,2015,375"/>
<area shape="poly" id="edge184_Node000001_Node000029" title=" " alt="" coords="3047,30,2735,36,2331,48,2137,56,1972,67,1854,80,1819,88,1802,95,1784,120,1776,143,1777,167,1785,191,1816,241,1858,293,1888,324,1918,347,1915,352,1885,328,1854,296,1811,244,1780,193,1772,168,1771,143,1779,117,1798,91,1817,83,1854,75,1972,62,2137,51,2330,42,2735,31,3047,25"/>
<area shape="rect" id="Node000056" href="$underlined_8cpp.html" title=" " alt="" coords="2673,350,2879,375"/>
<area shape="poly" id="edge185_Node000001_Node000056" title=" " alt="" coords="3106,57,2790,352,2787,348,3102,53"/>
<area shape="rect" id="Node000057" href="$underlined__double_8cpp.html" title=" " alt="" coords="2903,343,3083,383"/>
<area shape="poly" id="edge186_Node000001_Node000057" title=" " alt="" coords="3124,59,3004,344,2999,342,3119,57"/>
<area shape="rect" id="Node000063" href="$dom_2util_8cpp.html" title=" " alt="" coords="2289,350,2447,375"/>
<area shape="poly" id="edge187_Node000001_Node000063" title=" " alt="" coords="3046,31,2749,37,2366,49,2029,68,1918,81,1884,88,1868,95,1843,122,1827,143,1822,160,1828,177,1847,196,1883,220,2008,292,2045,311,2077,322,2136,330,2199,331,2276,340,2314,347,2313,353,2276,345,2198,337,2136,335,2076,327,2043,315,2005,297,1880,225,1844,200,1823,180,1816,161,1823,141,1839,119,1865,91,1883,83,1917,76,2028,63,2366,44,2749,32,3046,25"/>
<area shape="rect" id="Node000064" href="$vbox_8cpp.html" title=" " alt="" coords="392,350,563,375"/>
<area shape="poly" id="edge188_Node000001_Node000064" title=" " alt="" coords="3046,31,2630,38,2048,51,1499,71,1299,83,1180,96,1074,121,968,154,865,190,768,229,604,302,501,352,498,347,601,297,766,224,863,185,967,149,1073,116,1180,91,1298,77,1499,66,2048,46,2630,33,3046,25"/>
<area shape="rect" id="Node000065" href="$node_8hpp.html" title=" " alt="" coords="3441,181,3639,207"/>
<area shape="poly" id="edge72_Node000001_Node000065" title=" " alt="" coords="3194,48,3513,179,3511,184,3192,53"/>
<area shape="rect" id="Node000066" href="$node_8cpp.html" title=" " alt="" coords="5047,262,5217,287"/>
<area shape="poly" id="edge177_Node000001_Node000066" title=" " alt="" coords="3223,24,3614,24,4152,31,4420,40,4656,52,4839,68,4903,79,4945,91,4977,108,5008,128,5060,177,5101,225,5127,260,5122,263,5097,228,5057,180,5004,133,4975,112,4943,96,4902,84,4838,74,4656,57,4420,45,4152,37,3614,29,3223,29"/>
<area shape="rect" id="Node000053" href="$node__decorator_8cpp.html" title=" " alt="" coords="2143,255,2286,295"/>
<area shape="poly" id="edge178_Node000001_Node000053" title=" " alt="" coords="3046,32,2902,39,2732,51,2572,70,2507,82,2458,96,2388,131,2325,176,2272,220,2234,256,2231,252,2268,216,2321,171,2386,126,2456,91,2506,77,2571,64,2731,46,2902,34,3046,27"/>
<area shape="rect" id="Node000067" href="$requirement_8hpp.html" title=" " alt="" coords="1879,101,2126,126"/>
<area shape="poly" id="edge102_Node000001_Node000067" title=" " alt="" coords="3047,33,2655,55,2401,73,2144,96,2082,103,2081,98,2144,91,2401,68,2655,50,3046,28"/>
<area shape="rect" id="Node000068" href="$screen_8hpp.html" title=" " alt="" coords="4783,93,4932,133"/>
<area shape="poly" id="edge123_Node000001_Node000068" title=" " alt="" coords="3223,27,3810,49,4213,68,4623,91,4783,103,4782,108,4622,96,4212,73,3810,55,3223,32"/>
<area shape="rect" id="Node000072" href="$box_8cpp.html" title=" " alt="" coords="7268,101,7444,126"/>
<area shape="poly" id="edge189_Node000001_Node000072" title=" " alt="" coords="3223,25,5292,44,6525,64,6981,77,7250,91,7301,98,7300,103,7249,96,6981,82,6525,70,5292,50,3223,30"/>
<area shape="rect" id="Node000003" href="$component_8hpp.html" title=" " alt="" coords="3645,431,3824,471"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="3692,291,3726,311,3741,325,3753,341,3760,364,3760,389,3747,431,3742,430,3754,388,3755,365,3748,344,3737,328,3722,315,3689,295"/>
<area shape="poly" id="edge33_Node000002_Node000004" title=" " alt="" coords="3561,292,3466,314,3365,345,3327,365,3289,385,3224,401,3171,405,3120,411,3091,419,3059,433,3026,452,2996,476,2950,521,2946,517,2992,472,3023,448,3056,428,3089,414,3119,406,3171,400,3223,396,3287,380,3325,361,3363,340,3465,309,3560,287"/>
<area shape="poly" id="edge34_Node000002_Node000006" title=" " alt="" coords="3588,294,3519,316,3445,345,3354,390,3267,439,3136,521,3134,516,3264,435,3352,385,3443,340,3517,311,3586,289"/>
<area shape="poly" id="edge35_Node000002_Node000010" title=" " alt="" coords="3599,295,3551,317,3501,345,3441,390,3384,439,3301,520,3297,516,3380,435,3437,386,3499,340,3549,312,3597,290"/>
<area shape="poly" id="edge36_Node000002_Node000012" title=" " alt="" coords="3600,295,3564,316,3531,344,3503,389,3482,438,3469,484,3461,519,3456,518,3464,482,3477,436,3498,386,3527,341,3561,312,3597,291"/>
<area shape="poly" id="edge37_Node000002_Node000013" title=" " alt="" coords="3600,296,3569,316,3545,344,3537,367,3537,391,3543,416,3553,439,3582,483,3612,516,3608,520,3578,486,3548,442,3538,417,3532,392,3532,366,3540,341,3565,312,3597,291"/>
<area shape="poly" id="edge38_Node000002_Node000015" title=" " alt="" coords="3728,287,3920,318,4031,340,4044,362,4051,386,4053,411,4051,436,4040,483,4025,520,4020,518,4034,481,4046,435,4048,411,4046,387,4040,364,4028,345,3919,323,3727,292"/>
<area shape="poly" id="edge39_Node000002_Node000017" title=" " alt="" coords="3728,287,4057,340,4082,359,4104,381,4141,431,4167,479,4184,518,4179,520,4162,482,4136,433,4100,385,4079,363,4055,345,3727,292"/>
<area shape="poly" id="edge40_Node000002_Node000018" title=" " alt="" coords="3728,287,3763,292,3858,302,3932,305,4006,314,4097,340,4188,381,4272,430,4344,478,4394,516,4391,521,4341,483,4270,434,4185,385,4095,345,4005,320,3932,311,3857,307,3762,297,3728,292"/>
<area shape="poly" id="edge41_Node000002_Node000019" title=" " alt="" coords="3727,287,3763,292,3874,304,3962,309,4048,317,4158,340,4187,350,4208,360,4230,371,4258,380,4480,427,4707,463,4934,490,5152,510,5354,523,5532,530,5788,535,5788,540,5532,535,5354,528,5152,515,4934,496,4707,468,4479,432,4257,385,4228,376,4206,365,4185,355,4157,345,4048,323,3961,314,3874,309,3762,297,3726,292"/>
<area shape="poly" id="edge42_Node000002_Node000020" title=" " alt="" coords="3723,287,3902,318,4006,341,4019,367,4018,393,4006,419,3986,444,3932,488,3877,521,3874,516,3929,484,3982,440,4002,416,4013,392,4014,368,4002,345,3901,323,3722,292"/>
<area shape="rect" id="Node000022" href="$component__base_8hpp.html" title=" " alt="" coords="3813,343,3992,383"/>
<area shape="poly" id="edge13_Node000002_Node000022" title=" " alt="" coords="3690,289,3846,340,3844,345,3689,294"/>
<area shape="rect" id="Node000026" href="$component__options_8hpp.html" title=" " alt="" coords="3555,343,3738,383"/>
<area shape="poly" id="edge25_Node000002_Node000026" title=" " alt="" coords="3646,301,3648,342,3643,342,3640,301"/>
<area shape="poly" id="edge43_Node000002_Node000032" title=" " alt="" coords="3769,277,4789,306,5327,324,5639,340,5694,347,5693,353,5638,345,5326,329,4789,311,3769,282"/>
<area shape="poly" id="edge44_Node000002_Node000033" title=" " alt="" coords="3769,276,4909,303,5519,322,5741,331,5874,340,5920,347,5919,353,5873,345,5741,336,5519,327,4909,308,3769,281"/>
<area shape="poly" id="edge45_Node000002_Node000034" title=" " alt="" coords="3769,276,5008,302,5678,321,5923,330,6068,340,6114,347,6113,353,6068,345,5923,336,5678,326,5008,307,3769,281"/>
<area shape="poly" id="edge46_Node000002_Node000035" title=" " alt="" coords="3769,276,4515,299,4927,318,5098,329,5228,340,5276,347,5275,353,5228,345,5098,334,4927,323,4515,305,3769,282"/>
<area shape="poly" id="edge47_Node000002_Node000036" title=" " alt="" coords="3769,277,4682,306,5156,324,5431,340,5480,347,5479,353,5430,345,5156,330,4682,311,3769,282"/>
<area shape="poly" id="edge48_Node000002_Node000037" title=" " alt="" coords="3769,276,5159,306,5890,325,6260,340,6272,342,6271,347,6260,345,5890,330,5159,311,3769,281"/>
<area shape="poly" id="edge49_Node000002_Node000038" title=" " alt="" coords="3569,293,3252,353,3251,347,3568,287"/>
<area shape="poly" id="edge50_Node000002_Node000040" title=" " alt="" coords="3769,278,4475,309,4829,326,5034,340,5079,347,5078,353,5033,345,4829,331,4475,314,3769,284"/>
<area shape="poly" id="edge51_Node000002_Node000041" title=" " alt="" coords="3769,276,5246,306,6030,325,6427,340,6472,347,6471,353,6426,345,6029,330,5246,311,3769,281"/>
<area shape="poly" id="edge52_Node000002_Node000042" title=" " alt="" coords="3514,280,2045,304,1234,323,937,334,762,345,717,353,716,347,761,340,937,329,1234,318,2045,299,3514,275"/>
<area shape="poly" id="edge53_Node000002_Node000043" title=" " alt="" coords="3513,281,2151,307,1406,326,1134,336,972,345,922,353,921,347,972,340,1134,330,1406,320,2151,301,3513,275"/>
<area shape="poly" id="edge54_Node000002_Node000044" title=" " alt="" coords="3514,281,1788,310,854,330,536,338,380,345,333,353,332,347,380,340,536,333,854,324,1787,305,3514,275"/>
<area shape="poly" id="edge55_Node000002_Node000045" title=" " alt="" coords="3514,287,2660,345,2615,353,2614,347,2660,340,3513,282"/>
<area shape="poly" id="edge56_Node000002_Node000046" title=" " alt="" coords="3733,287,3775,292,4013,315,4117,324,4251,340,4298,347,4297,353,4250,345,4117,329,4013,320,3774,297,3732,292"/>
<area shape="poly" id="edge57_Node000002_Node000047" title=" " alt="" coords="3763,286,3826,292,4004,305,4143,312,4282,321,4460,340,4506,347,4505,353,4460,345,4282,326,4143,317,4004,310,3825,297,3762,291"/>
<area shape="poly" id="edge58_Node000002_Node000048" title=" " alt="" coords="3514,281,2380,303,1719,322,1443,333,1234,345,1160,353,1160,347,1233,340,1443,328,1719,317,2380,298,3513,275"/>
<area shape="poly" id="edge59_Node000002_Node000049" title=" " alt="" coords="3514,281,2384,308,1779,327,1559,336,1428,345,1382,353,1382,347,1428,340,1559,331,1779,322,2383,303,3514,276"/>
<area shape="poly" id="edge60_Node000002_Node000050" title=" " alt="" coords="3769,275,5284,300,6123,319,6431,330,6614,340,6665,347,6665,353,6613,345,6431,335,6123,325,5284,305,3769,280"/>
<area shape="poly" id="edge61_Node000002_Node000051" title=" " alt="" coords="3769,275,5457,304,6367,324,6677,332,6830,340,6842,342,6842,347,6829,345,6677,338,6367,329,5457,310,3769,281"/>
<area shape="poly" id="edge62_Node000002_Node000059" title=" " alt="" coords="3769,282,4660,340,4707,347,4706,353,4660,345,3769,287"/>
<area shape="poly" id="edge63_Node000002_Node000054" title=" " alt="" coords="3769,280,4409,313,4863,340,4875,342,4874,347,4862,345,4409,318,3769,285"/>
<area shape="poly" id="edge64_Node000002_Node000060" title=" " alt="" coords="3514,283,2558,316,1839,345,1787,353,1787,347,1838,340,2558,311,3513,278"/>
<area shape="poly" id="edge65_Node000002_Node000061" title=" " alt="" coords="3513,283,2418,317,1616,345,1572,353,1571,347,1616,340,2418,312,3513,277"/>
<area shape="poly" id="edge66_Node000002_Node000055" title=" " alt="" coords="3514,284,2822,315,2476,333,2276,345,2220,353,2219,347,2276,340,2476,327,2821,310,3513,279"/>
<area shape="poly" id="edge67_Node000002_Node000029" title=" " alt="" coords="3514,284,2644,318,2028,345,1984,353,1983,347,2028,340,2644,313,3513,278"/>
<area shape="poly" id="edge68_Node000002_Node000056" title=" " alt="" coords="3514,289,3178,317,2891,345,2841,353,2840,347,2890,340,3178,312,3514,284"/>
<area shape="poly" id="edge69_Node000002_Node000057" title=" " alt="" coords="3519,291,3320,315,3095,345,3084,347,3083,342,3094,340,3319,309,3518,286"/>
<area shape="poly" id="edge70_Node000002_Node000063" title=" " alt="" coords="3513,286,2459,345,2417,353,2416,347,2458,340,3513,280"/>
<area shape="poly" id="edge71_Node000002_Node000064" title=" " alt="" coords="3513,280,1951,304,1082,323,763,334,575,345,529,353,528,347,574,340,763,329,1082,318,1951,298,3513,275"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="3632,460,3354,482,3187,499,3019,521,3008,523,3007,518,3018,516,3186,494,3354,476,3631,455"/>
<area shape="poly" id="edge4_Node000003_Node000006" title=" " alt="" coords="3632,465,3429,487,3194,521,3183,523,3182,518,3193,516,3428,482,3632,459"/>
<area shape="poly" id="edge5_Node000003_Node000010" title=" " alt="" coords="3632,472,3369,521,3357,524,3356,518,3367,516,3631,467"/>
<area shape="poly" id="edge6_Node000003_Node000012" title=" " alt="" coords="3661,477,3518,521,3516,516,3660,472"/>
<area shape="poly" id="edge7_Node000003_Node000013" title=" " alt="" coords="3703,482,3655,521,3652,516,3699,478"/>
<area shape="poly" id="edge8_Node000003_Node000015" title=" " alt="" coords="3810,472,3953,516,3952,521,3808,477"/>
<area shape="poly" id="edge9_Node000003_Node000017" title=" " alt="" coords="3838,467,4102,516,4113,518,4112,524,4101,521,3837,472"/>
<area shape="poly" id="edge10_Node000003_Node000018" title=" " alt="" coords="3838,462,4276,516,4341,524,4340,530,4276,521,3838,467"/>
<area shape="poly" id="edge11_Node000003_Node000019" title=" " alt="" coords="3838,453,5789,532,5788,537,3838,459"/>
<area shape="poly" id="edge12_Node000003_Node000020" title=" " alt="" coords="3770,478,3817,516,3814,521,3767,482"/>
<area shape="poly" id="edge14_Node000022_Node000003" title=" " alt="" coords="3855,391,3773,433,3770,428,3853,386"/>
<area shape="poly" id="edge15_Node000022_Node000004" title=" " alt="" coords="3800,380,3751,385,3622,397,3521,403,3421,412,3294,433,3153,471,2991,521,2990,516,3152,466,3293,428,3420,407,3521,398,3622,392,3750,380,3799,374"/>
<area shape="poly" id="edge16_Node000022_Node000006" title=" " alt="" coords="3800,379,3599,406,3435,433,3282,477,3156,521,3154,516,3280,472,3434,428,3599,401,3799,374"/>
<area shape="poly" id="edge17_Node000022_Node000010" title=" " alt="" coords="3801,381,3682,403,3554,433,3427,477,3323,521,3321,516,3425,472,3553,428,3680,397,3800,376"/>
<area shape="poly" id="edge18_Node000022_Node000012" title=" " alt="" coords="3800,385,3718,405,3634,433,3550,477,3483,521,3480,516,3547,472,3632,428,3717,400,3799,379"/>
<area shape="poly" id="edge19_Node000022_Node000013" title=" " alt="" coords="3893,397,3871,436,3856,456,3838,473,3807,493,3774,508,3707,528,3706,523,3772,503,3805,488,3834,469,3852,452,3866,433,3888,394"/>
<area shape="poly" id="edge20_Node000022_Node000015" title=" " alt="" coords="3945,389,3966,407,3984,429,3996,452,4004,476,4014,518,4008,519,3999,477,3991,454,3979,432,3962,411,3941,393"/>
<area shape="poly" id="edge21_Node000022_Node000017" title=" " alt="" coords="4006,373,4073,393,4106,408,4135,429,4154,449,4169,473,4186,518,4181,520,4164,475,4150,452,4132,433,4103,413,4071,398,4005,378"/>
<area shape="poly" id="edge22_Node000022_Node000018" title=" " alt="" coords="4005,383,4085,403,4168,428,4284,473,4379,516,4376,521,4282,478,4166,433,4083,408,4003,388"/>
<area shape="poly" id="edge23_Node000022_Node000019" title=" " alt="" coords="4006,370,5788,528,5788,533,4005,376"/>
<area shape="poly" id="edge24_Node000022_Node000020" title=" " alt="" coords="3901,397,3894,433,3882,472,3855,520,3851,517,3878,470,3889,432,3896,396"/>
<area shape="poly" id="edge26_Node000026_Node000003" title=" " alt="" coords="3678,391,3717,429,3713,432,3674,394"/>
<area shape="poly" id="edge27_Node000026_Node000004" title=" " alt="" coords="3542,373,3366,392,3267,410,3170,433,3113,453,3057,476,2967,521,2964,516,3055,471,3111,448,3169,428,3266,404,3365,387,3541,367"/>
<area shape="poly" id="edge28_Node000026_Node000006" title=" " alt="" coords="3542,368,3471,374,3393,386,3313,405,3236,433,3202,452,3172,475,3125,520,3121,516,3168,471,3200,448,3234,428,3311,400,3392,381,3471,369,3541,363"/>
<area shape="poly" id="edge29_Node000026_Node000013" title=" " alt="" coords="3616,395,3602,412,3592,431,3589,454,3594,477,3617,517,3612,520,3589,479,3584,455,3587,430,3598,409,3612,391"/>
<area shape="poly" id="edge30_Node000026_Node000015" title=" " alt="" coords="3724,385,3780,404,3837,428,3920,474,3987,516,3985,521,3918,478,3835,433,3778,409,3722,390"/>
<area shape="poly" id="edge31_Node000026_Node000017" title=" " alt="" coords="3734,384,3890,428,4026,474,4140,516,4138,521,4025,479,3889,433,3733,389"/>
<area shape="poly" id="edge32_Node000026_Node000020" title=" " alt="" coords="3635,396,3626,434,3628,452,3635,469,3654,484,3686,498,3764,520,3762,525,3684,503,3652,489,3631,472,3623,454,3621,433,3629,395"/>
<area shape="poly" id="edge73_Node000065_Node000002" title=" " alt="" coords="3568,213,3628,260,3625,264,3564,217"/>
<area shape="poly" id="edge74_Node000065_Node000032" title=" " alt="" coords="3654,196,4068,214,4282,230,4369,240,4437,252,4465,262,4487,272,4507,283,4535,292,4641,308,4774,318,5085,326,5397,329,5531,333,5639,340,5693,347,5692,353,5638,345,5531,338,5397,335,5085,332,4774,323,4641,313,4534,297,4505,288,4484,277,4463,266,4435,257,4369,246,4281,235,4068,219,3653,201"/>
<area shape="poly" id="edge75_Node000065_Node000033" title=" " alt="" coords="3653,196,4100,216,4334,232,4504,252,4542,262,4571,272,4599,283,4636,292,4823,318,4982,329,5122,331,5253,327,5385,321,5526,319,5686,324,5874,340,5920,347,5919,353,5873,345,5685,329,5526,324,5385,327,5253,332,5122,336,4981,334,4822,323,4636,297,4598,288,4569,277,4541,267,4504,257,4334,238,4100,222,3653,202"/>
<area shape="poly" id="edge76_Node000065_Node000034" title=" " alt="" coords="3653,194,3873,200,4142,210,4401,227,4507,238,4589,252,4617,261,4639,272,4659,283,4687,292,4820,311,4986,322,5175,326,5376,327,5766,327,5933,331,6068,340,6114,347,6113,353,6068,345,5933,336,5766,332,5376,332,5175,331,4986,327,4819,316,4686,297,4657,288,4636,277,4615,266,4587,257,4507,244,4401,232,4142,215,3873,205,3653,200"/>
<area shape="poly" id="edge77_Node000065_Node000035" title=" " alt="" coords="3653,198,3919,217,4076,233,4234,252,4290,262,4334,272,4377,283,4434,292,4554,305,4656,313,4831,317,5005,321,5108,328,5228,340,5275,347,5274,353,5228,345,5107,333,5005,326,4830,322,4656,318,4554,311,4433,297,4376,288,4333,278,4289,267,4233,257,4076,238,3918,223,3653,204"/>
<area shape="poly" id="edge78_Node000065_Node000036" title=" " alt="" coords="3653,193,3794,197,3970,206,4161,224,4353,252,4390,262,4419,272,4447,283,4485,292,4627,313,4748,323,4856,326,4956,325,5165,322,5287,327,5431,340,5479,347,5478,353,5430,345,5287,332,5165,328,4956,330,4856,332,4748,329,4626,318,4483,297,4446,288,4417,277,4389,267,4351,257,4161,229,3969,212,3794,202,3653,198"/>
<area shape="poly" id="edge79_Node000065_Node000037" title=" " alt="" coords="3653,195,4175,213,4454,230,4569,240,4656,252,4694,261,4723,272,4751,283,4788,292,5010,321,5199,333,5366,332,5523,325,5679,316,5847,312,6037,318,6260,340,6272,342,6271,347,6260,345,6037,324,5847,318,5679,322,5523,330,5366,337,5199,338,5010,327,4788,297,4750,288,4721,277,4693,267,4656,257,4568,246,4453,235,4175,219,3653,201"/>
<area shape="poly" id="edge80_Node000065_Node000040" title=" " alt="" coords="3653,203,3860,223,4098,252,4215,273,4332,292,4529,309,4683,315,4837,321,5034,340,5078,347,5077,353,5033,345,4836,326,4683,320,4529,315,4332,297,4214,278,4097,257,3859,229,3653,208"/>
<area shape="poly" id="edge81_Node000065_Node000041" title=" " alt="" coords="3653,193,3857,196,4128,204,4433,222,4740,252,4797,262,4841,272,4884,283,4940,292,5166,313,5357,321,5526,321,5683,316,5841,311,6010,311,6201,319,6427,340,6471,347,6470,353,6426,345,6201,325,6010,317,5841,317,5683,321,5526,326,5357,326,5165,318,4940,297,4883,288,4839,278,4796,267,4740,257,4432,227,4128,210,3857,201,3653,198"/>
<area shape="poly" id="edge82_Node000065_Node000042" title=" " alt="" coords="3427,199,3154,204,2817,215,2515,232,2407,243,2344,257,2330,266,2322,276,2313,288,2298,297,2256,308,2193,317,2014,329,1786,335,1533,338,1051,338,870,340,762,345,718,353,717,347,761,340,869,335,1051,333,1533,332,1786,330,2014,323,2192,311,2255,303,2296,292,2310,284,2318,273,2327,262,2342,252,2406,238,2514,227,2817,209,3154,199,3427,194"/>
<area shape="poly" id="edge83_Node000065_Node000043" title=" " alt="" coords="3427,200,3165,206,2845,217,2557,234,2454,245,2394,257,2380,266,2370,277,2360,288,2344,297,2306,306,2249,314,2090,325,1886,331,1661,335,1230,338,1069,341,972,345,923,353,922,347,972,340,1068,335,1230,333,1660,330,1886,326,2089,319,2249,308,2305,301,2342,292,2356,284,2366,273,2376,262,2392,252,2454,240,2557,229,2845,212,3165,201,3427,195"/>
<area shape="poly" id="edge84_Node000065_Node000045" title=" " alt="" coords="3476,213,3417,231,3357,257,3343,267,3333,278,3323,288,3306,297,3246,314,3168,324,2986,334,2802,337,2660,345,2615,353,2614,347,2660,340,2802,332,2986,329,3168,319,3244,308,3304,292,3319,284,3329,274,3339,263,3355,252,3415,226,3475,208"/>
<area shape="poly" id="edge85_Node000065_Node000046" title=" " alt="" coords="3623,207,3695,225,3769,252,3786,263,3798,273,3810,283,3826,292,3888,312,3941,324,3989,330,4034,331,4130,331,4186,333,4251,340,4297,347,4296,353,4250,345,4185,338,4130,336,4034,336,3988,335,3940,329,3886,317,3824,297,3807,288,3795,277,3783,267,3767,257,3694,230,3622,212"/>
<area shape="poly" id="edge86_Node000065_Node000047" title=" " alt="" coords="3618,207,3713,226,3815,252,3871,273,3895,283,3927,292,4007,307,4075,316,4192,323,4310,326,4460,340,4505,347,4504,353,4460,345,4310,331,4192,328,4075,322,4006,313,3926,297,3894,288,3869,278,3814,257,3711,231,3617,212"/>
<area shape="poly" id="edge87_Node000065_Node000048" title=" " alt="" coords="3427,200,3207,205,2937,215,2677,232,2571,243,2490,257,2463,266,2443,277,2422,288,2394,297,2282,315,2142,325,1983,332,1815,335,1488,337,1347,340,1234,345,1162,353,1162,347,1233,340,1347,334,1488,332,1815,329,1983,326,2142,320,2281,309,2393,292,2420,283,2440,272,2461,261,2489,252,2570,238,2677,227,2936,210,3207,199,3427,194"/>
<area shape="poly" id="edge88_Node000065_Node000049" title=" " alt="" coords="3427,201,2925,220,2683,237,2597,246,2546,257,2532,266,2522,277,2512,288,2496,297,2449,311,2395,322,2268,336,2122,342,1966,342,1663,338,1532,339,1428,345,1383,353,1382,347,1428,340,1532,333,1663,332,1966,337,2122,336,2267,331,2394,317,2448,306,2494,292,2508,284,2518,273,2528,262,2544,252,2596,241,2683,231,2925,215,3427,196"/>
<area shape="poly" id="edge89_Node000065_Node000050" title=" " alt="" coords="3653,195,4272,214,4612,231,4752,241,4859,252,4909,261,4947,272,4985,283,5035,292,5274,317,5477,327,5656,328,5823,323,5990,317,6170,315,6374,321,6614,340,6665,347,6664,353,6613,345,6373,327,6170,321,5991,323,5823,328,5656,333,5477,332,5274,322,5034,297,4984,288,4946,277,4908,267,4858,257,4751,246,4611,236,4272,220,3653,200"/>
<area shape="poly" id="edge92_Node000065_Node000059" title=" " alt="" coords="3636,206,3758,226,3890,252,3959,273,3989,283,4029,292,4124,307,4205,315,4343,321,4482,324,4564,330,4660,340,4706,347,4705,353,4660,345,4564,335,4482,330,4343,326,4204,321,4123,312,4027,297,3988,288,3958,278,3889,257,3757,231,3636,211"/>
<area shape="poly" id="edge93_Node000065_Node000054" title=" " alt="" coords="3650,206,3805,226,3978,252,4079,273,4180,292,4284,304,4372,310,4522,315,4672,320,4760,327,4863,340,4875,342,4874,347,4862,345,4759,332,4671,325,4521,320,4371,316,4283,309,4180,297,4078,278,3977,257,3805,231,3649,211"/>
<area shape="poly" id="edge94_Node000065_Node000060" title=" " alt="" coords="3427,205,3218,224,3122,239,3053,257,3038,266,3029,277,3019,288,3002,297,2970,305,2922,312,2787,322,2423,333,2058,338,1839,345,1787,353,1787,347,1838,340,2057,333,2423,328,2786,317,2922,306,2969,300,3000,292,3015,284,3025,273,3035,262,3051,252,3120,233,3218,219,3427,199"/>
<area shape="poly" id="edge95_Node000065_Node000061" title=" " alt="" coords="3429,211,3039,253,2546,297,2284,311,2080,314,1876,321,1757,330,1616,345,1573,353,1572,347,1616,340,1757,324,1876,315,2080,308,2284,305,2545,292,3038,247,3428,206"/>
<area shape="poly" id="edge96_Node000065_Node000055" title=" " alt="" coords="3427,204,3317,221,3260,237,3205,257,3191,266,3181,277,3171,288,3154,297,3116,309,3072,318,2967,331,2847,338,2719,340,2469,339,2362,340,2276,345,2220,353,2219,347,2276,340,2362,335,2469,334,2719,334,2847,332,2966,326,3071,313,3115,304,3152,292,3167,284,3177,273,3187,262,3203,252,3258,232,3316,216,3426,199"/>
<area shape="poly" id="edge97_Node000065_Node000029" title=" " alt="" coords="3427,209,3295,227,3154,257,3125,267,3104,278,3082,288,3053,297,2899,325,2768,337,2651,340,2542,337,2433,331,2316,328,2184,331,2028,345,1984,353,1983,347,2028,340,2183,326,2316,323,2433,326,2543,331,2652,335,2768,332,2898,319,3051,292,3080,283,3102,273,3123,262,3153,252,3294,222,3427,203"/>
<area shape="poly" id="edge98_Node000065_Node000056" title=" " alt="" coords="3497,214,3453,233,3408,257,3384,278,3373,288,3357,297,3290,321,3231,334,3179,340,3128,340,3023,337,2962,339,2891,345,2842,353,2842,347,2890,340,2962,333,3023,332,3128,335,3178,334,3231,329,3288,315,3355,292,3370,284,3380,274,3405,252,3451,228,3495,209"/>
<area shape="poly" id="edge99_Node000065_Node000057" title=" " alt="" coords="3517,218,3460,263,3408,297,3363,314,3323,324,3254,333,3184,336,3095,345,3084,347,3083,342,3094,340,3183,330,3254,328,3322,319,3361,309,3405,292,3456,259,3514,214"/>
<area shape="poly" id="edge100_Node000065_Node000063" title=" " alt="" coords="3474,212,3393,232,3306,257,3256,279,3234,289,3205,297,3093,318,2997,329,2913,333,2833,332,2668,329,2572,334,2459,345,2418,353,2417,347,2458,340,2572,328,2668,324,2833,327,2913,327,2997,324,3092,313,3203,292,3232,284,3254,274,3304,252,3392,227,3473,207"/>
<area shape="poly" id="edge101_Node000065_Node000064" title=" " alt="" coords="3427,198,2970,202,2642,208,2267,220,1859,239,1431,265,999,300,575,345,530,353,529,347,574,340,998,294,1431,259,1859,233,2267,215,2642,203,2970,196,3427,192"/>
<area shape="poly" id="edge90_Node000065_Node000066" title=" " alt="" coords="3653,194,4222,210,4597,227,4978,252,5048,259,5048,265,4977,257,4597,232,4221,215,3653,200"/>
<area shape="poly" id="edge91_Node000065_Node000053" title=" " alt="" coords="3426,198,3217,200,2938,208,2623,226,2463,240,2306,257,2287,260,2286,255,2305,252,2462,235,2623,221,2938,203,3217,195,3426,192"/>
<area shape="poly" id="edge104_Node000067_Node000035" title=" " alt="" coords="2140,112,2480,114,2960,122,3513,143,3798,158,4076,179,4230,194,4348,210,4619,252,4890,292,5059,315,5228,340,5270,347,5269,353,5228,345,5058,320,4889,297,4618,257,4348,215,4229,199,4076,184,3797,164,3513,148,2960,128,2480,119,2140,117"/>
<area shape="poly" id="edge105_Node000067_Node000036" title=" " alt="" coords="2140,111,2500,113,3011,122,3604,142,3908,158,4207,179,4367,194,4490,210,4772,252,5035,292,5233,315,5431,340,5475,347,5474,353,5430,345,5232,320,5034,297,4772,257,4490,215,4366,199,4206,184,3908,163,3603,147,3011,127,2500,118,2140,117"/>
<area shape="poly" id="edge106_Node000067_Node000040" title=" " alt="" coords="2140,111,2465,112,2919,121,3441,141,3709,158,3971,179,4171,206,4503,256,5034,340,5074,347,5073,353,5033,345,4502,261,4170,211,3970,184,3708,163,3440,147,2918,126,2465,118,2140,116"/>
<area shape="poly" id="edge107_Node000067_Node000042" title=" " alt="" coords="1902,130,1536,184,1294,228,1058,276,717,353,716,347,1057,271,1293,223,1536,179,1901,125"/>
<area shape="poly" id="edge108_Node000067_Node000043" title=" " alt="" coords="1925,131,1647,184,1221,279,914,352,912,347,1220,274,1646,179,1924,126"/>
<area shape="poly" id="edge109_Node000067_Node000044" title=" " alt="" coords="1866,126,1570,148,1223,184,996,216,770,257,522,309,330,353,329,347,521,304,769,252,995,210,1222,179,1570,143,1866,121"/>
<area shape="poly" id="edge110_Node000067_Node000045" title=" " alt="" coords="2013,139,2047,225,2068,267,2088,293,2120,308,2162,318,2267,330,2375,334,2459,340,2502,347,2501,353,2458,345,2375,339,2267,335,2161,324,2118,313,2085,297,2064,270,2042,228,2008,141"/>
<area shape="poly" id="edge111_Node000067_Node000046" title=" " alt="" coords="2140,112,2479,116,2915,126,3341,146,3517,160,3651,179,3745,203,3816,232,3886,262,3978,292,4118,320,4286,347,4285,353,4117,325,3977,297,3884,267,3814,237,3744,208,3650,184,3517,166,3341,151,2915,131,2479,121,2140,118"/>
<area shape="poly" id="edge112_Node000067_Node000047" title=" " alt="" coords="2140,113,2492,119,2947,130,3393,149,3577,163,3718,179,3835,203,3925,232,4014,262,4130,292,4222,309,4295,318,4460,340,4502,347,4501,353,4460,345,4294,324,4221,314,4129,297,4012,267,3923,237,3834,208,3717,184,3577,168,3392,155,2947,135,2492,124,2140,119"/>
<area shape="poly" id="edge113_Node000067_Node000048" title=" " alt="" coords="1944,132,1749,184,1629,215,1578,231,1515,257,1481,278,1467,288,1446,297,1144,353,1143,347,1445,292,1464,283,1478,273,1512,252,1576,226,1628,210,1747,179,1943,127"/>
<area shape="poly" id="edge114_Node000067_Node000049" title=" " alt="" coords="1959,133,1820,184,1362,352,1361,347,1818,179,1957,128"/>
<area shape="poly" id="edge116_Node000067_Node000059" title=" " alt="" coords="2140,114,2506,120,2984,132,3453,151,3648,164,3796,179,3934,203,4040,232,4145,262,4282,292,4388,309,4471,317,4554,326,4660,340,4703,347,4702,353,4660,345,4553,331,4470,323,4387,314,4281,297,4144,267,4039,237,3933,209,3796,184,3648,169,3453,156,2984,137,2506,125,2140,119"/>
<area shape="poly" id="edge117_Node000067_Node000054" title=" " alt="" coords="2140,114,2522,120,3024,132,3520,151,3725,164,3882,179,3976,193,4049,210,4214,252,4298,274,4383,292,4517,310,4623,317,4728,323,4863,340,4875,342,4874,347,4862,345,4728,329,4622,322,4517,315,4382,297,4297,279,4213,257,4048,215,3975,199,3881,184,3725,169,3519,156,3024,137,2522,125,2140,119"/>
<area shape="poly" id="edge118_Node000067_Node000060" title=" " alt="" coords="1981,137,1743,351,1739,348,1978,133"/>
<area shape="poly" id="edge119_Node000067_Node000061" title=" " alt="" coords="1969,135,1546,352,1544,347,1967,130"/>
<area shape="poly" id="edge120_Node000067_Node000029" title=" " alt="" coords="1998,140,1939,350,1934,349,1993,139"/>
<area shape="poly" id="edge121_Node000067_Node000063" title=" " alt="" coords="2002,140,2000,174,2004,216,2015,257,2025,276,2038,293,2065,316,2092,329,2118,336,2145,337,2204,334,2238,335,2276,340,2313,347,2312,353,2276,345,2238,340,2204,340,2145,342,2117,341,2090,334,2062,320,2034,297,2020,279,2010,259,1998,217,1995,175,1997,140"/>
<area shape="poly" id="edge122_Node000067_Node000064" title=" " alt="" coords="1866,130,1645,153,1396,184,1181,217,967,257,719,309,527,353,526,347,718,304,966,252,1180,212,1396,179,1645,148,1865,125"/>
<area shape="poly" id="edge103_Node000067_Node000065" title=" " alt="" coords="2140,119,3441,185,3440,190,2140,124"/>
<area shape="poly" id="edge115_Node000067_Node000053" title=" " alt="" coords="2031,132,2191,253,2188,257,2027,136"/>
<area shape="poly" id="edge124_Node000068_Node000002" title=" " alt="" coords="4769,119,4660,125,4524,136,4377,155,4231,184,4200,196,4167,209,4059,233,3950,250,3756,270,3755,264,3949,245,4058,227,4166,204,4198,191,4230,179,4376,150,4524,131,4659,119,4769,114"/>
<area shape="poly" id="edge126_Node000068_Node000032" title=" " alt="" coords="4946,125,5076,147,5221,179,5296,204,5723,347,5721,352,5294,209,5219,184,5075,152,4945,130"/>
<area shape="poly" id="edge127_Node000068_Node000033" title=" " alt="" coords="4946,121,5101,143,5190,159,5277,179,5312,191,5346,204,5508,250,5669,291,5917,347,5916,353,5667,296,5506,255,5344,209,5310,196,5275,184,5189,164,5100,148,4945,126"/>
<area shape="poly" id="edge128_Node000068_Node000034" title=" " alt="" coords="4946,122,5124,145,5330,179,5461,207,5562,234,5663,262,5794,292,5931,317,6068,340,6107,347,6106,353,6068,345,5930,322,5793,297,5662,267,5561,239,5460,212,5329,184,5123,150,4945,127"/>
<area shape="poly" id="edge129_Node000068_Node000035" title=" " alt="" coords="4946,124,5018,140,5099,166,5180,203,5218,226,5252,253,5276,277,5297,304,5325,348,5321,351,5293,307,5272,281,5249,257,5215,230,5177,207,5097,171,5017,146,4945,130"/>
<area shape="poly" id="edge130_Node000068_Node000036" title=" " alt="" coords="4946,124,5056,146,5174,179,5279,221,5378,269,5517,347,5515,352,5375,274,5276,226,5172,184,5055,151,4945,130"/>
<area shape="poly" id="edge131_Node000068_Node000037" title=" " alt="" coords="4946,121,5156,145,5406,179,5647,218,5834,252,6261,340,6272,342,6270,348,6259,345,5833,257,5646,223,5405,184,5155,150,4945,126"/>
<area shape="poly" id="edge132_Node000068_Node000038" title=" " alt="" coords="4769,121,4496,135,4131,162,3945,180,3772,202,3625,228,3516,257,3498,266,3486,276,3474,287,3456,297,3362,326,3246,353,3245,347,3360,321,3454,292,3471,282,3483,272,3495,261,3514,252,3624,222,3772,197,3945,175,4131,156,4495,130,4769,116"/>
<area shape="poly" id="edge133_Node000068_Node000041" title=" " alt="" coords="4946,120,5195,143,5498,179,5724,212,5948,252,6427,340,6464,347,6463,353,6426,345,5948,257,5723,218,5497,184,5194,149,4946,125"/>
<area shape="poly" id="edge134_Node000068_Node000045" title=" " alt="" coords="4769,118,4445,124,3997,135,3547,155,3360,168,3219,184,3141,198,3081,212,2946,257,2898,277,2850,297,2731,330,2624,353,2623,347,2729,325,2848,292,2896,272,2944,252,3079,207,3140,192,3218,179,3360,163,3547,149,3996,130,4444,118,4769,113"/>
<area shape="poly" id="edge135_Node000068_Node000046" title=" " alt="" coords="4808,142,4383,352,4381,348,4806,137"/>
<area shape="poly" id="edge136_Node000068_Node000047" title=" " alt="" coords="4826,144,4575,352,4572,348,4822,140"/>
<area shape="poly" id="edge137_Node000068_Node000050" title=" " alt="" coords="4946,118,5238,141,5602,179,5840,212,6078,252,6614,340,6657,347,6656,353,6613,345,6077,257,5839,218,5601,184,5237,147,4946,123"/>
<area shape="poly" id="edge138_Node000068_Node000051" title=" " alt="" coords="4946,117,5282,140,5495,157,5710,179,6026,215,6272,247,6516,285,6830,340,6842,342,6841,348,6829,345,6515,290,6271,252,6025,220,5709,184,5494,163,5281,145,4945,122"/>
<area shape="poly" id="edge140_Node000068_Node000059" title=" " alt="" coords="4874,145,4884,178,4892,217,4891,258,4878,296,4863,316,4844,331,4802,352,4800,348,4841,327,4859,312,4874,293,4886,257,4886,218,4879,180,4869,147"/>
<area shape="poly" id="edge141_Node000068_Node000054" title=" " alt="" coords="4932,135,5113,196,5191,228,5217,241,5231,253,5240,275,5231,297,5156,317,5022,348,5021,342,5154,312,5228,293,5235,275,5227,256,5214,246,5189,233,5111,201,4930,140"/>
<area shape="poly" id="edge142_Node000068_Node000060" title=" " alt="" coords="4768,118,4329,125,3710,138,3125,157,2911,170,2784,184,2739,195,2702,209,2640,239,2579,270,2541,285,2495,297,2397,317,2313,327,2238,332,2169,332,2024,332,1939,336,1839,345,1790,353,1789,347,1838,340,1938,331,2023,327,2169,327,2238,326,2312,322,2396,311,2494,292,2539,280,2577,266,2638,235,2700,204,2737,190,2784,179,2910,164,3124,152,3710,133,4329,120,4768,113"/>
<area shape="poly" id="edge143_Node000068_Node000055" title=" " alt="" coords="4769,118,4363,125,3798,138,3266,157,3072,170,2958,184,2917,195,2883,209,2828,239,2773,269,2739,284,2698,297,2581,322,2489,330,2395,334,2276,345,2225,353,2224,347,2276,340,2395,329,2488,325,2581,317,2697,292,2737,279,2771,265,2826,234,2881,204,2915,190,2957,179,3072,164,3266,152,3798,133,4363,120,4769,113"/>
<area shape="poly" id="edge144_Node000068_Node000029" title=" " alt="" coords="4769,118,4348,125,3759,138,3202,158,2999,170,2879,184,2826,197,2785,211,2699,257,2684,268,2675,278,2664,288,2648,297,2589,313,2515,323,2341,333,2164,337,2028,345,1986,353,1985,347,2028,340,2164,332,2340,328,2515,318,2588,308,2646,292,2661,284,2671,274,2681,264,2696,252,2783,206,2824,192,2878,179,2998,165,3202,152,3759,133,4348,120,4769,113"/>
<area shape="poly" id="edge145_Node000068_Node000056" title=" " alt="" coords="4769,118,4465,123,4051,133,3637,153,3465,167,3335,184,3255,201,3174,222,3020,270,2890,317,2804,352,2802,347,2889,312,3018,265,3173,216,3254,195,3334,179,3464,162,3636,148,4050,128,4465,117,4769,113"/>
<area shape="poly" id="edge146_Node000068_Node000057" title=" " alt="" coords="4769,117,4481,120,4093,130,3894,138,3708,150,3549,165,3429,184,3310,218,3196,263,3099,308,3028,345,3026,340,3096,304,3194,258,3308,213,3427,179,3548,159,3708,144,3894,133,4093,124,4481,115,4769,112"/>
<area shape="poly" id="edge147_Node000068_Node000063" title=" " alt="" coords="4769,118,4422,121,3935,130,3683,139,3446,150,3242,165,3088,184,3019,196,2965,208,2914,227,2851,257,2836,267,2826,277,2816,288,2800,297,2751,315,2708,326,2633,334,2556,335,2459,345,2421,353,2420,347,2458,340,2555,330,2632,329,2707,321,2749,310,2798,292,2813,283,2822,274,2833,263,2848,252,2912,222,2964,203,3018,191,3088,179,3242,160,3446,145,3682,134,3935,125,4422,115,4769,112"/>
<area shape="poly" id="edge125_Node000068_Node000065" title=" " alt="" coords="4769,123,3640,189,3640,184,4768,117"/>
<area shape="poly" id="edge139_Node000068_Node000066" title=" " alt="" coords="4905,138,4979,179,5114,260,5112,264,4976,184,4902,142"/>
</map>

View File

@@ -0,0 +1 @@
5258ba7748d6486a5f7b8675303f1eef

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@@ -0,0 +1,206 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/screen/box.hpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box_8hpp_source.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">box.hpp</div></div>
</div><!--header-->
<div class="contents">
<a href="box_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef FTXUI_SCREEN_BOX_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define FTXUI_SCREEN_BOX_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="foldopen" id="foldopen00006" data-start="{" data-end="};">
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html"> 6</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> {</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2"> 7</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a> = 0;</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43"> 8</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a> = 0;</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401"> 9</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a> = 0;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"><a class="line" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5"> 10</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a> = 0;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <span class="keyword">static</span> <span class="keyword">auto</span> <a class="code hl_function" href="structftxui_1_1Box.html#a83d40499d9e8740c35dc2352c2ac84a8">Intersection</a>(<a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> a, <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> b) -&gt; <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keyword">static</span> <span class="keyword">auto</span> <a class="code hl_function" href="structftxui_1_1Box.html#adbc0a2693f6a78124076ef53bfd4207e">Union</a>(<a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> a, <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> b) -&gt; <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structftxui_1_1Box.html#a2f31c89738607b84e65992a7005d35a9">Contain</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structftxui_1_1Box.html#ad75c695cfa18e51d88a0984af5df2f69">operator==</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>&amp; other) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structftxui_1_1Box.html#a1ff481fa3b55fcc402c98c7564990c17">operator!=</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a>&amp; other) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>};</div>
</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor">#endif </span><span class="comment">// FTXUI_SCREEN_BOX_HPP</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment">// the LICENSE file.</span></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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html"><div class="ttname"><a href="structftxui_1_1Box.html">ftxui::Box</a></div><div class="ttdef"><b>Definition</b> <a href="#l00006">box.hpp:6</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a1ff481fa3b55fcc402c98c7564990c17"><div class="ttname"><a href="structftxui_1_1Box.html#a1ff481fa3b55fcc402c98c7564990c17">ftxui::Box::operator!=</a></div><div class="ttdeci">bool operator!=(const Box &amp;other) const</div><div class="ttdef"><b>Definition</b> <a href="box_8cpp_source.html#l00048">box.cpp:48</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a2f31c89738607b84e65992a7005d35a9"><div class="ttname"><a href="structftxui_1_1Box.html#a2f31c89738607b84e65992a7005d35a9">ftxui::Box::Contain</a></div><div class="ttdeci">bool Contain(int x, int y) const</div><div class="ttdef"><b>Definition</b> <a href="box_8cpp_source.html#l00032">box.cpp:32</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a5f0bb6d8a3e66525c3e6264cb8288e43"><div class="ttname"><a href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">ftxui::Box::x_max</a></div><div class="ttdeci">int x_max</div><div class="ttdef"><b>Definition</b> <a href="#l00008">box.hpp:8</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a7941ddc7e35fffb8864af1e922814401"><div class="ttname"><a href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">ftxui::Box::y_min</a></div><div class="ttdeci">int y_min</div><div class="ttdef"><b>Definition</b> <a href="#l00009">box.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a83d40499d9e8740c35dc2352c2ac84a8"><div class="ttname"><a href="structftxui_1_1Box.html#a83d40499d9e8740c35dc2352c2ac84a8">ftxui::Box::Intersection</a></div><div class="ttdeci">static auto Intersection(Box a, Box b) -&gt; Box</div><div class="ttdef"><b>Definition</b> <a href="box_8cpp_source.html#l00009">box.cpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad033aea530fbbcf5bcd6cd98d882e3a5"><div class="ttname"><a href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">ftxui::Box::y_max</a></div><div class="ttdeci">int y_max</div><div class="ttdef"><b>Definition</b> <a href="#l00010">box.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad75c695cfa18e51d88a0984af5df2f69"><div class="ttname"><a href="structftxui_1_1Box.html#ad75c695cfa18e51d88a0984af5df2f69">ftxui::Box::operator==</a></div><div class="ttdeci">bool operator==(const Box &amp;other) const</div><div class="ttdef"><b>Definition</b> <a href="box_8cpp_source.html#l00041">box.cpp:41</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_adbc0a2693f6a78124076ef53bfd4207e"><div class="ttname"><a href="structftxui_1_1Box.html#adbc0a2693f6a78124076ef53bfd4207e">ftxui::Box::Union</a></div><div class="ttdeci">static auto Union(Box a, Box b) -&gt; Box</div><div class="ttdef"><b>Definition</b> <a href="box_8cpp_source.html#l00021">box.cpp:21</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ae0951dcafafdc96ac1d8361c672d47e2"><div class="ttname"><a href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">ftxui::Box::x_min</a></div><div class="ttdeci">int x_min</div><div class="ttdef"><b>Definition</b> <a href="#l00007">box.hpp:7</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,186 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/box_helper.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box__helper_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">box_helper.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="box__helper_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1box__helper.html">ftxui::box_helper</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aede4ed6e71fbe0689a500ff8db06f3a3" id="r_aede4ed6e71fbe0689a500ff8db06f3a3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3">Compute</a> (std::vector&lt; <a class="el" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a> &gt; *elements, int target_size)</td></tr>
<tr class="separator:aede4ed6e71fbe0689a500ff8db06f3a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var box__helper_8cpp =
[
[ "Compute", "box__helper_8cpp.html#aede4ed6e71fbe0689a500ff8db06f3a3", null ]
];

View File

@@ -0,0 +1,269 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/box_helper.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box__helper_8cpp_source.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">box_helper.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="box__helper_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;<a class="code" href="box__helper_8hpp.html">ftxui/dom/box_helper.hpp</a>&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;algorithm&gt;</span> <span class="comment">// for max</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="foldopen" id="foldopen00005" data-start="{" data-end="}">
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html"> 5</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui_1_1box__helper.html">ftxui::box_helper</a> {</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="keyword">namespace </span>{</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="comment">// Called when the size allowed is greater than the requested size. This</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment">// distributes the extra spaces toward the flexible elements, in relative</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment">// proportions.</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="keywordtype">void</span> ComputeGrow(std::vector&lt;Element&gt;* elements,</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <span class="keywordtype">int</span> extra_space,</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keywordtype">int</span> flex_grow_sum) {</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordflow">for</span> (<a class="code hl_struct" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a>&amp; element : *elements) {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">const</span> <span class="keywordtype">int</span> added_space =</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> extra_space * element.flex_grow / std::max(flex_grow_sum, 1);</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> extra_space -= added_space;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> flex_grow_sum -= element.flex_grow;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> element.size = element.min_size + added_space;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> }</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>}</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment">// Called when the size allowed is lower than the requested size, and the</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment">// shrinkable element can absorbe the (negative) extra_space. This distribute</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment">// the extra_space toward those.</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keywordtype">void</span> ComputeShrinkEasy(std::vector&lt;Element&gt;* elements,</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordtype">int</span> extra_space,</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keywordtype">int</span> flex_shrink_sum) {</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordflow">for</span> (<a class="code hl_struct" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a>&amp; element : *elements) {</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">const</span> <span class="keywordtype">int</span> added_space = extra_space * element.min_size *</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> element.flex_shrink / std::max(flex_shrink_sum, 1);</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> extra_space -= added_space;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> flex_shrink_sum -= element.flex_shrink * element.min_size;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> element.size = element.min_size + added_space;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> }</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span>}</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">// Called when the size allowed is lower than the requested size, and the</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment">// shrinkable element can not absorbe the (negative) extra_space. This assign</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment">// zero to shrinkable elements and distribute the remaining (negative)</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment">// extra_space toward the other non shrinkable elements.</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="keywordtype">void</span> ComputeShrinkHard(std::vector&lt;Element&gt;* elements,</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> extra_space,</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">int</span> <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a>) {</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">for</span> (<a class="code hl_struct" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a>&amp; element : *elements) {</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">if</span> (element.flex_shrink != 0) {</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> element.size = 0;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> }</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">const</span> <span class="keywordtype">int</span> added_space = extra_space * element.min_size / std::max(1, <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a>);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> extra_space -= added_space;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a> -= element.min_size;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> element.size = element.min_size + added_space;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> }</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>}</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>} <span class="comment">// namespace</span></div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="foldopen" id="foldopen00061" data-start="{" data-end="}">
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3"> 61</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3">Compute</a>(std::vector&lt;Element&gt;* elements, <span class="keywordtype">int</span> target_size) {</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">int</span> <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a> = 0;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> flex_grow_sum = 0;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">int</span> flex_shrink_sum = 0;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">int</span> flex_shrink_size = 0;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; element : *elements) {</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> flex_grow_sum += element.flex_grow;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> flex_shrink_sum += element.min_size * element.flex_shrink;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span> (element.flex_shrink != 0) {</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> flex_shrink_size += element.min_size;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> }</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a> += element.min_size;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> }</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keyword">const</span> <span class="keywordtype">int</span> extra_space = target_size - <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a>;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (extra_space &gt;= 0) {</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> ComputeGrow(elements, extra_space, flex_grow_sum);</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (flex_shrink_size + extra_space &gt;= 0) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> ComputeShrinkEasy(elements, extra_space, flex_shrink_sum);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> ComputeShrinkHard(elements, extra_space + flex_shrink_size,</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <a class="code hl_function" href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">size</a> - flex_shrink_size);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> }</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span>}</div>
</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> </div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>} <span class="comment">// namespace ftxui::box_helper</span></div>
</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><span class="comment">// Copyright 2021 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox__helper_8hpp_html"><div class="ttname"><a href="box__helper_8hpp.html">box_helper.hpp</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html">ftxui::box_helper</a></div><div class="ttdef"><b>Definition</b> <a href="#l00005">box_helper.cpp:5</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_aede4ed6e71fbe0689a500ff8db06f3a3"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3">ftxui::box_helper::Compute</a></div><div class="ttdeci">void Compute(std::vector&lt; Element &gt; *elements, int target_size)</div><div class="ttdef"><b>Definition</b> <a href="#l00061">box_helper.cpp:61</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_structftxui_1_1box__helper_1_1Element"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">ftxui::box_helper::Element</a></div><div class="ttdef"><b>Definition</b> <a href="box__helper_8hpp_source.html#l00009">box_helper.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_adbda408cdd76f3bbd9c4e863672b7122"><div class="ttname"><a href="namespaceftxui.html#adbda408cdd76f3bbd9c4e863672b7122">ftxui::size</a></div><div class="ttdeci">Decorator size(Direction, Constraint, int value)</div><div class="ttdoc">Apply a constraint on the size of an element.</div><div class="ttdef"><b>Definition</b> <a href="size_8cpp_source.html#l00085">size.cpp:85</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,227 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/box_helper.hpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box__helper_8hpp.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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">box_helper.hpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="box__helper_8hpp__dep__incl.png" border="0" usemap="#asrc_2ftxui_2dom_2box__helper_8hppdep" alt=""/></div>
<map name="asrc_2ftxui_2dom_2box__helper_8hppdep" id="asrc_2ftxui_2dom_2box__helper_8hppdep">
<area shape="rect" title=" " alt="" coords="410,5,621,31"/>
<area shape="rect" href="box__helper_8cpp.html" title=" " alt="" coords="5,86,215,111"/>
<area shape="poly" title=" " alt="" coords="444,36,170,89,169,83,443,31"/>
<area shape="rect" href="flexbox__helper_8cpp.html" title=" " alt="" coords="239,79,397,119"/>
<area shape="poly" title=" " alt="" coords="475,38,366,81,364,76,473,33"/>
<area shape="rect" href="gridbox_8cpp.html" title=" " alt="" coords="422,86,609,111"/>
<area shape="poly" title=" " alt="" coords="518,44,518,86,513,86,513,44"/>
<area shape="rect" href="hbox_8cpp.html" title=" " alt="" coords="633,86,803,111"/>
<area shape="poly" title=" " alt="" coords="558,33,689,83,688,88,556,38"/>
<area shape="rect" href="vbox_8cpp.html" title=" " alt="" coords="827,86,998,111"/>
<area shape="poly" title=" " alt="" coords="587,31,855,83,854,89,586,36"/>
</map>
</div>
</div>
<p><a href="box__helper_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:structftxui_1_1box__helper_1_1Element" id="r_structftxui_1_1box__helper_1_1Element"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a></td></tr>
<tr class="separator:structftxui_1_1box__helper_1_1Element"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1box__helper.html">ftxui::box_helper</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:aede4ed6e71fbe0689a500ff8db06f3a3" id="r_aede4ed6e71fbe0689a500ff8db06f3a3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3">Compute</a> (std::vector&lt; <a class="el" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a> &gt; *elements, int target_size)</td></tr>
<tr class="separator:aede4ed6e71fbe0689a500ff8db06f3a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="structftxui_1_1box__helper_1_1Element" id="structftxui_1_1box__helper_1_1Element"></a>
<h2 class="memtitle"><span class="permalink"><a href="#structftxui_1_1box__helper_1_1Element">&#9670;&#160;</a></span>ftxui::box_helper::Element</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct ftxui::box_helper::Element</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var box__helper_8hpp =
[
[ "Element", "namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element", null ],
[ "Compute", "box__helper_8hpp.html#aede4ed6e71fbe0689a500ff8db06f3a3", null ]
];

View File

@@ -0,0 +1,13 @@
<map id="src/ftxui/dom/box_helper.hpp" name="src/ftxui/dom/box_helper.hpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="410,5,621,31"/>
<area shape="rect" id="Node000002" href="$box__helper_8cpp.html" title=" " alt="" coords="5,86,215,111"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="444,36,170,89,169,83,443,31"/>
<area shape="rect" id="Node000003" href="$flexbox__helper_8cpp.html" title=" " alt="" coords="239,79,397,119"/>
<area shape="poly" id="edge2_Node000001_Node000003" title=" " alt="" coords="475,38,366,81,364,76,473,33"/>
<area shape="rect" id="Node000004" href="$gridbox_8cpp.html" title=" " alt="" coords="422,86,609,111"/>
<area shape="poly" id="edge3_Node000001_Node000004" title=" " alt="" coords="518,44,518,86,513,86,513,44"/>
<area shape="rect" id="Node000005" href="$hbox_8cpp.html" title=" " alt="" coords="633,86,803,111"/>
<area shape="poly" id="edge4_Node000001_Node000005" title=" " alt="" coords="558,33,689,83,688,88,556,38"/>
<area shape="rect" id="Node000006" href="$vbox_8cpp.html" title=" " alt="" coords="827,86,998,111"/>
<area shape="poly" id="edge5_Node000001_Node000006" title=" " alt="" coords="587,31,855,83,854,89,586,36"/>
</map>

View File

@@ -0,0 +1 @@
beb32619b4c542234d07c0643b536270

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -0,0 +1,205 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/box_helper.hpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('box__helper_8hpp_source.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">box_helper.hpp</div></div>
</div><!--header-->
<div class="contents">
<a href="box__helper_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef FTXUI_DOM_BOX_HELPER_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define FTXUI_DOM_BOX_HELPER_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="keyword">namespace </span>box_helper {</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="foldopen" id="foldopen00009" data-start="{" data-end="};">
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html"> 9</a></span><span class="keyword">struct </span><a class="code hl_struct" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a> {</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// Input:</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html#ac3f0cc8c8c9e0fb97f20cf7777773197"> 11</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="namespaceftxui_1_1box__helper.html#ac3f0cc8c8c9e0fb97f20cf7777773197">min_size</a> = 0;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html#a2fb16db68c0bf00d3bf872bc18675116"> 12</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="namespaceftxui_1_1box__helper.html#a2fb16db68c0bf00d3bf872bc18675116">flex_grow</a> = 0;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html#a94a9a7333988edf4249f38c1b1491cf4"> 13</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="namespaceftxui_1_1box__helper.html#a94a9a7333988edf4249f38c1b1491cf4">flex_shrink</a> = 0;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// Output;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"><a class="line" href="namespaceftxui_1_1box__helper.html#a439227feff9d7f55384e8780cfc2eb82"> 16</a></span> <span class="keywordtype">int</span> <a class="code hl_variable" href="namespaceftxui_1_1box__helper.html#a439227feff9d7f55384e8780cfc2eb82">size</a> = 0;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>};</div>
</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3">Compute</a>(std::vector&lt;Element&gt;* elements, <span class="keywordtype">int</span> target_size);</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>} <span class="comment">// namespace box_helper</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="preprocessor">#endif </span><span class="comment">/* end of include guard: FTXUI_DOM_BOX_HELPER_HPP */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment">// Copyright 2021 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment">// the LICENSE file.line.</span></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_a2fb16db68c0bf00d3bf872bc18675116"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#a2fb16db68c0bf00d3bf872bc18675116">ftxui::box_helper::Element::flex_grow</a></div><div class="ttdeci">int flex_grow</div><div class="ttdef"><b>Definition</b> <a href="#l00012">box_helper.hpp:12</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_a439227feff9d7f55384e8780cfc2eb82"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#a439227feff9d7f55384e8780cfc2eb82">ftxui::box_helper::Element::size</a></div><div class="ttdeci">int size</div><div class="ttdef"><b>Definition</b> <a href="#l00016">box_helper.hpp:16</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_a94a9a7333988edf4249f38c1b1491cf4"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#a94a9a7333988edf4249f38c1b1491cf4">ftxui::box_helper::Element::flex_shrink</a></div><div class="ttdeci">int flex_shrink</div><div class="ttdef"><b>Definition</b> <a href="#l00013">box_helper.hpp:13</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_ac3f0cc8c8c9e0fb97f20cf7777773197"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#ac3f0cc8c8c9e0fb97f20cf7777773197">ftxui::box_helper::Element::min_size</a></div><div class="ttdeci">int min_size</div><div class="ttdef"><b>Definition</b> <a href="#l00011">box_helper.hpp:11</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_aede4ed6e71fbe0689a500ff8db06f3a3"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#aede4ed6e71fbe0689a500ff8db06f3a3">ftxui::box_helper::Compute</a></div><div class="ttdeci">void Compute(std::vector&lt; Element &gt; *elements, int target_size)</div><div class="ttdef"><b>Definition</b> <a href="box__helper_8cpp_source.html#l00061">box_helper.cpp:61</a></div></div>
<div class="ttc" id="anamespaceftxui_1_1box__helper_html_structftxui_1_1box__helper_1_1Element"><div class="ttname"><a href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">ftxui::box_helper::Element</a></div><div class="ttdef"><b>Definition</b> <a href="#l00009">box_helper.hpp:9</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#l00009">animation.hpp:9</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

185
en/v4.1.1/button_8cpp.html Normal file
View File

@@ -0,0 +1,185 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/button.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('button_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">button.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="button_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a6910ffaa082c693603aafab4e7dddac3" id="r_a6910ffaa082c693603aafab4e7dddac3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a6910ffaa082c693603aafab4e7dddac3">Button</a> (<a class="el" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> label, std::function&lt; void()&gt; on_click, <a class="el" href="classftxui_1_1Ref.html">Ref</a>&lt; <a class="el" href="structftxui_1_1ButtonOption.html">ButtonOption</a> &gt; option)</td></tr>
<tr class="memdesc:a6910ffaa082c693603aafab4e7dddac3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw a button. Execute a function when clicked. <br /></td></tr>
<tr class="separator:a6910ffaa082c693603aafab4e7dddac3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

4
en/v4.1.1/button_8cpp.js Normal file
View File

@@ -0,0 +1,4 @@
var button_8cpp =
[
[ "Button", "button_8cpp.html#a6910ffaa082c693603aafab4e7dddac3", null ]
];

View File

@@ -0,0 +1,406 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/button.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('button_8cpp_source.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">button.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="button_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;functional&gt;</span> <span class="comment">// for function</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for shared_ptr</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="animation_8hpp.html">ftxui/component/animation.hpp</a>&quot;</span> <span class="comment">// for Animator, Params (ptr only)</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="captured__mouse_8hpp.html">ftxui/component/captured_mouse.hpp</a>&quot;</span> <span class="comment">// for CapturedMouse</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="component_8hpp.html">ftxui/component/component.hpp</a>&quot;</span> <span class="comment">// for Make, Button</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="component__base_8hpp.html">ftxui/component/component_base.hpp</a>&quot;</span> <span class="comment">// for ComponentBase</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;<a class="code" href="component__options_8hpp.html">ftxui/component/component_options.hpp</a>&quot;</span> <span class="comment">// for ButtonOption, AnimatedColorOption, AnimatedColorsOption, EntryState</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;<a class="code" href="event_8hpp.html">ftxui/component/event.hpp</a>&quot;</span> <span class="comment">// for Event, Event::Return</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;<a class="code" href="mouse_8hpp.html">ftxui/component/mouse.hpp</a>&quot;</span> <span class="comment">// for Mouse, Mouse::Left, Mouse::Pressed</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="screen__interactive_8hpp.html">ftxui/component/screen_interactive.hpp</a>&quot;</span> <span class="comment">// for Component</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for operator|, Decorator, Element, operator|=, bgcolor, color, reflect, text, bold, border, inverted, nothing</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &quot;<a class="code" href="color_8hpp.html">ftxui/screen/color.hpp</a>&quot;</span> <span class="comment">// for Color</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &quot;<a class="code" href="ref_8hpp.html">ftxui/util/ref.hpp</a>&quot;</span> <span class="comment">// for Ref, ConstStringRef</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">namespace </span>{</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> DefaultTransform(EntryState params) { <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keyword">auto</span> element = <a class="code hl_function" href="namespaceftxui.html#a75baaa2734ed76a9f478beaafa87ae57">text</a>(params.label) | <a class="code hl_function" href="namespaceftxui.html#ae8537acd423d47cf07e61bd774fb1098">border</a>;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordflow">if</span> (params.active) {</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> element |= <a class="code hl_function" href="namespaceftxui.html#a353c769068e25303eb41fa2da565c604">bold</a>;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> }</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordflow">if</span> (params.focused) {</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> element |= <a class="code hl_function" href="namespaceftxui.html#a672456b8f2091b615a30ff755418b37b">inverted</a>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> }</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">return</span> element;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span>}</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>} <span class="comment">// namespace</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment"></span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">/// @brief Draw a button. Execute a function when clicked.</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment">/// @param label The label of the button.</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment">/// @param on_click The action to execute when clicked.</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">/// @param option Additional optional parameters.</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment">/// @ingroup component</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment">/// @see ButtonBase</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment">///</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="comment">///</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment">/// auto screen = ScreenInteractive::FitComponent();</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="comment">/// std::string label = &quot;Click to quit&quot;;</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment">/// Component button = Button(&amp;label, screen.ExitLoopClosure());</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="comment">/// screen.Loop(button)</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="comment">///</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="comment">///</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="comment">/// ┌─────────────┐</span></div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="comment">/// │Click to quit│</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="comment">/// └─────────────┘</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span><span class="comment"></span><span class="comment">// NOLINTNEXTLINE(readability-function-cognitive-complexity)</span></div>
<div class="foldopen" id="foldopen00059" data-start="{" data-end="}">
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a6910ffaa082c693603aafab4e7dddac3"> 59</a></span><a class="code hl_typedef" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a> <a class="code hl_function" href="namespaceftxui.html#a6910ffaa082c693603aafab4e7dddac3">Button</a>(<a class="code hl_class" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> label,</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> std::function&lt;<span class="keywordtype">void</span>()&gt; on_click,</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <a class="code hl_class" href="classftxui_1_1Ref.html">Ref&lt;ButtonOption&gt;</a> option) {</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">class </span>Impl : <span class="keyword">public</span> <a class="code hl_class" href="classftxui_1_1ComponentBase.html">ComponentBase</a> {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> Impl(<a class="code hl_class" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> label,</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> std::function&lt;<span class="keywordtype">void</span>()&gt; on_click,</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <a class="code hl_class" href="classftxui_1_1Ref.html">Ref&lt;ButtonOption&gt;</a> option)</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> : label_(std::move(label)),</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> on_click_(std::move(on_click)),</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> option_(std::move(option)) {}</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// Component implementation:</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#ad4b8aa9392f56ba41e2b421e046a7d83">Render</a>()<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> active = Active();</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> focused = Focused();</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> focused_or_hover = focused || mouse_hover_;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">float</span> target = focused_or_hover ? 1.F : 0.F; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">if</span> (target != animator_background_.to()) {</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> SetAnimationTarget(target);</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> }</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keyword">auto</span> focus_management = focused ? <a class="code hl_function" href="namespaceftxui.html#a52ee73ca2fb34afb6e6f25ac7df04b0e">focus</a> : active ? <a class="code hl_function" href="namespaceftxui.html#af0a483ef6e8a00023755c4637a1fcb9d">select</a> : <a class="code hl_function" href="namespaceftxui.html#a1bfd3885ac8b40dc82a1103725003c07">nothing</a>;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keyword">const</span> <a class="code hl_struct" href="namespaceftxui.html#structftxui_1_1EntryState">EntryState</a> state = {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> *label_,</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keyword">false</span>,</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> active,</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> focused_or_hover,</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> };</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keyword">auto</span> element =</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> (option_-&gt;transform ? option_-&gt;transform : DefaultTransform) <span class="comment">//</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> (state);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">return</span> element | AnimatedColorStyle() | focus_management | <a class="code hl_function" href="namespaceftxui.html#aaff8245861617a3d9e846e99de582a63">reflect</a>(box_);</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> }</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <a class="code hl_typedef" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a> AnimatedColorStyle() {</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <a class="code hl_typedef" href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">Decorator</a> style = <a class="code hl_function" href="namespaceftxui.html#a1bfd3885ac8b40dc82a1103725003c07">nothing</a>;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">if</span> (option_-&gt;animated_colors.background.enabled) {</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> style = style | <a class="code hl_function" href="namespaceftxui.html#a01d4c5aaf0447e862246849111782245">bgcolor</a>(Color::Interpolate(</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> animation_foreground_, <span class="comment">//</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> option_-&gt;animated_colors.background.inactive,</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> option_-&gt;animated_colors.background.active));</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> }</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">if</span> (option_-&gt;animated_colors.foreground.enabled) {</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> style = style | <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>(Color::Interpolate(</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> animation_foreground_, <span class="comment">//</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> option_-&gt;animated_colors.foreground.inactive,</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> option_-&gt;animated_colors.foreground.active));</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> }</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">return</span> style;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> }</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">void</span> SetAnimationTarget(<span class="keywordtype">float</span> target) {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (option_-&gt;animated_colors.foreground.enabled) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> animator_foreground_ =</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">animation::Animator</a>(&amp;animation_foreground_, target,</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> option_-&gt;animated_colors.foreground.duration,</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> option_-&gt;animated_colors.foreground.function);</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> }</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">if</span> (option_-&gt;animated_colors.background.enabled) {</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> animator_background_ =</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">animation::Animator</a>(&amp;animation_background_, target,</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> option_-&gt;animated_colors.background.duration,</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> option_-&gt;animated_colors.background.function);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> }</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> }</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">void</span> OnAnimation(<a class="code hl_class" href="classftxui_1_1animation_1_1Params.html">animation::Params</a>&amp; p)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> animator_background_.OnAnimation(p);</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> animator_foreground_.OnAnimation(p);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> }</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">void</span> OnClick() {</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> on_click_();</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> animation_background_ = 0.5F; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> animation_foreground_ = 0.5F; <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> SetAnimationTarget(1.F); <span class="comment">// NOLINT</span></div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> }</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordtype">bool</span> OnEvent(<a class="code hl_struct" href="structftxui_1_1Event.html">Event</a> event)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">if</span> (event.<a class="code hl_function" href="structftxui_1_1Event.html#a2c835925299d56941ffd2e2421f0fd13">is_mouse</a>()) {</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">return</span> OnMouseEvent(event);</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> }</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> (event == Event::Return) {</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> OnClick();</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> }</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> }</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordtype">bool</span> OnMouseEvent(<a class="code hl_struct" href="structftxui_1_1Event.html">Event</a> event) {</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> mouse_hover_ =</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> box_.Contain(event.<a class="code hl_function" href="structftxui_1_1Event.html#a37daf59df57eb6415eb34c8df11a4892">mouse</a>().<a class="code hl_variable" href="structftxui_1_1Mouse.html#a6150e0515f7202e2fb518f7206ed97dc">x</a>, event.<a class="code hl_function" href="structftxui_1_1Event.html#a37daf59df57eb6415eb34c8df11a4892">mouse</a>().<a class="code hl_variable" href="structftxui_1_1Mouse.html#a0a2f84ed7838f07779ae24c5a9086d33">y</a>) &amp;&amp; CaptureMouse(event);</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> </div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">if</span> (!mouse_hover_) {</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> }</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> </div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">if</span> (event.<a class="code hl_function" href="structftxui_1_1Event.html#a37daf59df57eb6415eb34c8df11a4892">mouse</a>().<a class="code hl_variable" href="structftxui_1_1Mouse.html#aa56e877ca6a7524cf1e891c7435c3ace">button</a> == Mouse::Left &amp;&amp;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> event.<a class="code hl_function" href="structftxui_1_1Event.html#a37daf59df57eb6415eb34c8df11a4892">mouse</a>().<a class="code hl_variable" href="structftxui_1_1Mouse.html#af8ec4d0833a67c0bcd400f9e30bd07c7">motion</a> == Mouse::Pressed) {</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> TakeFocus();</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> OnClick();</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> }</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> </div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> }</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> </div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="keywordtype">bool</span> Focusable() <span class="keyword">const</span> <span class="keyword">final</span> { <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> </div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <a class="code hl_class" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> label_;</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> std::function&lt;void()&gt; on_click_;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> <span class="keywordtype">bool</span> mouse_hover_ = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <a class="code hl_struct" href="structftxui_1_1Box.html">Box</a> box_;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <a class="code hl_class" href="classftxui_1_1Ref.html">Ref&lt;ButtonOption&gt;</a> option_;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordtype">float</span> animation_background_ = 0;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">float</span> animation_foreground_ = 0;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">animation::Animator</a> animator_background_ =</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">animation::Animator</a>(&amp;animation_background_);</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">animation::Animator</a> animator_foreground_ =</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <a class="code hl_class" href="classftxui_1_1animation_1_1Animator.html">animation::Animator</a>(&amp;animation_foreground_);</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> };</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> </div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceftxui.html#a2b8973dc71334f1d98e2e6f55de8b5ae">Make&lt;Impl&gt;</a>(std::move(label), std::move(on_click), std::move(option));</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span>}</div>
</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> </div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="aanimation_8hpp_html"><div class="ttname"><a href="animation_8hpp.html">animation.hpp</a></div></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="acaptured__mouse_8hpp_html"><div class="ttname"><a href="captured__mouse_8hpp.html">captured_mouse.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1ComponentBase_html"><div class="ttname"><a href="classftxui_1_1ComponentBase.html">ftxui::ComponentBase</a></div><div class="ttdoc">It implement rendering itself as ftxui::Element. It implement keyboard navigation by responding to ft...</div><div class="ttdef"><b>Definition</b> <a href="component__base_8hpp_source.html#l00027">component_base.hpp:27</a></div></div>
<div class="ttc" id="aclassftxui_1_1ConstStringRef_html"><div class="ttname"><a href="classftxui_1_1ConstStringRef.html">ftxui::ConstStringRef</a></div><div class="ttdoc">An adapter. Own or reference a constant string. For convenience, this class convert multiple immutabl...</div><div class="ttdef"><b>Definition</b> <a href="ref_8hpp_source.html#l00060">ref.hpp:60</a></div></div>
<div class="ttc" id="aclassftxui_1_1Ref_html"><div class="ttname"><a href="classftxui_1_1Ref.html">ftxui::Ref</a></div><div class="ttdoc">An adapter. Own or reference an mutable object.</div><div class="ttdef"><b>Definition</b> <a href="ref_8hpp_source.html#l00027">ref.hpp:27</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Animator_html"><div class="ttname"><a href="classftxui_1_1animation_1_1Animator.html">ftxui::animation::Animator</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00091">animation.hpp:91</a></div></div>
<div class="ttc" id="aclassftxui_1_1animation_1_1Params_html"><div class="ttname"><a href="classftxui_1_1animation_1_1Params.html">ftxui::animation::Params</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00024">animation.hpp:24</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="acomponent_8hpp_html"><div class="ttname"><a href="component_8hpp.html">component.hpp</a></div></div>
<div class="ttc" id="acomponent__base_8hpp_html"><div class="ttname"><a href="component__base_8hpp.html">component_base.hpp</a></div></div>
<div class="ttc" id="acomponent__options_8hpp_html"><div class="ttname"><a href="component__options_8hpp.html">component_options.hpp</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="aevent_8hpp_html"><div class="ttname"><a href="event_8hpp.html">event.hpp</a></div></div>
<div class="ttc" id="amouse_8hpp_html"><div class="ttname"><a href="mouse_8hpp.html">mouse.hpp</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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a01d4c5aaf0447e862246849111782245"><div class="ttname"><a href="namespaceftxui.html#a01d4c5aaf0447e862246849111782245">ftxui::bgcolor</a></div><div class="ttdeci">Decorator bgcolor(Color)</div><div class="ttdoc">Decorate using a background color.</div><div class="ttdef"><b>Definition</b> <a href="dom_2color_8cpp_source.html#l00100">color.cpp:100</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a164021903e9ac6f1357e4186582891e3"><div class="ttname"><a href="namespaceftxui.html#a164021903e9ac6f1357e4186582891e3">ftxui::Decorator</a></div><div class="ttdeci">std::function&lt; Element(Element)&gt; Decorator</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00021">elements.hpp:21</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a1bfd3885ac8b40dc82a1103725003c07"><div class="ttname"><a href="namespaceftxui.html#a1bfd3885ac8b40dc82a1103725003c07">ftxui::nothing</a></div><div class="ttdeci">Element nothing(Element element)</div><div class="ttdoc">A decoration doing absolutely nothing.</div><div class="ttdef"><b>Definition</b> <a href="dom_2util_8cpp_source.html#l00027">util.cpp:27</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2b8973dc71334f1d98e2e6f55de8b5ae"><div class="ttname"><a href="namespaceftxui.html#a2b8973dc71334f1d98e2e6f55de8b5ae">ftxui::Make</a></div><div class="ttdeci">std::shared_ptr&lt; T &gt; Make(Args &amp;&amp;... args)</div><div class="ttdef"><b>Definition</b> <a href="component_8hpp_source.html#l00025">component.hpp:25</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a353c769068e25303eb41fa2da565c604"><div class="ttname"><a href="namespaceftxui.html#a353c769068e25303eb41fa2da565c604">ftxui::bold</a></div><div class="ttdeci">Element bold(Element)</div><div class="ttdoc">Use a bold font, for elements with more emphasis.</div><div class="ttdef"><b>Definition</b> <a href="bold_8cpp_source.html#l00028">bold.cpp:28</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a52ee73ca2fb34afb6e6f25ac7df04b0e"><div class="ttname"><a href="namespaceftxui.html#a52ee73ca2fb34afb6e6f25ac7df04b0e">ftxui::focus</a></div><div class="ttdeci">Element focus(Element)</div><div class="ttdef"><b>Definition</b> <a href="frame_8cpp_source.html#l00083">frame.cpp:83</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a672456b8f2091b615a30ff755418b37b"><div class="ttname"><a href="namespaceftxui.html#a672456b8f2091b615a30ff755418b37b">ftxui::inverted</a></div><div class="ttdeci">Element inverted(Element)</div><div class="ttdoc">Add a filter that will invert the foreground and the background colors.</div><div class="ttdef"><b>Definition</b> <a href="inverted_8cpp_source.html#l00029">inverted.cpp:29</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a6910ffaa082c693603aafab4e7dddac3"><div class="ttname"><a href="namespaceftxui.html#a6910ffaa082c693603aafab4e7dddac3">ftxui::Button</a></div><div class="ttdeci">Component Button(ConstStringRef label, std::function&lt; void()&gt; on_click, Ref&lt; ButtonOption &gt;=ButtonOption::Simple())</div><div class="ttdoc">Draw a button. Execute a function when clicked.</div><div class="ttdef"><b>Definition</b> <a href="#l00059">button.cpp:59</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a75baaa2734ed76a9f478beaafa87ae57"><div class="ttname"><a href="namespaceftxui.html#a75baaa2734ed76a9f478beaafa87ae57">ftxui::text</a></div><div class="ttdeci">Element text(std::wstring text)</div><div class="ttdoc">Display a piece of unicode text.</div><div class="ttdef"><b>Definition</b> <a href="text_8cpp_source.html#l00111">text.cpp:111</a></div></div>
<div class="ttc" id="anamespaceftxui_html_aaff8245861617a3d9e846e99de582a63"><div class="ttname"><a href="namespaceftxui.html#aaff8245861617a3d9e846e99de582a63">ftxui::reflect</a></div><div class="ttdeci">Decorator reflect(Box &amp;box)</div><div class="ttdef"><b>Definition</b> <a href="reflect_8cpp_source.html#l00039">reflect.cpp:39</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ad4b8aa9392f56ba41e2b421e046a7d83"><div class="ttname"><a href="namespaceftxui.html#ad4b8aa9392f56ba41e2b421e046a7d83">ftxui::Render</a></div><div class="ttdeci">void Render(Screen &amp;screen, const Element &amp;element)</div><div class="ttdoc">Display an element on a ftxui::Screen.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00044">node.cpp:44</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ae8537acd423d47cf07e61bd774fb1098"><div class="ttname"><a href="namespaceftxui.html#ae8537acd423d47cf07e61bd774fb1098">ftxui::border</a></div><div class="ttdeci">Element border(Element)</div><div class="ttdoc">Draw a border around the element.</div><div class="ttdef"><b>Definition</b> <a href="border_8cpp_source.html#l00222">border.cpp:222</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af0a483ef6e8a00023755c4637a1fcb9d"><div class="ttname"><a href="namespaceftxui.html#af0a483ef6e8a00023755c4637a1fcb9d">ftxui::select</a></div><div class="ttdeci">Element select(Element)</div><div class="ttdef"><b>Definition</b> <a href="frame_8cpp_source.html#l00038">frame.cpp:38</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af1479ede01dbf087342534ab4ada11d3"><div class="ttname"><a href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">ftxui::Component</a></div><div class="ttdeci">std::shared_ptr&lt; ComponentBase &gt; Component</div><div class="ttdef"><b>Definition</b> <a href="component__base_8hpp_source.html#l00021">component_base.hpp:21</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af61b489da39ca5e24b68e6e1a2b09c0d"><div class="ttname"><a href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">ftxui::color</a></div><div class="ttdeci">Decorator color(Color)</div><div class="ttdoc">Decorate using a foreground color.</div><div class="ttdef"><b>Definition</b> <a href="dom_2color_8cpp_source.html#l00086">color.cpp:86</a></div></div>
<div class="ttc" id="anamespaceftxui_html_structftxui_1_1EntryState"><div class="ttname"><a href="namespaceftxui.html#structftxui_1_1EntryState">ftxui::EntryState</a></div><div class="ttdoc">arguments for |ButtonOption::transform|, |CheckboxOption::transform|, |Radiobox::transform|,...</div><div class="ttdef"><b>Definition</b> <a href="component__options_8hpp_source.html#l00019">component_options.hpp:19</a></div></div>
<div class="ttc" id="aref_8hpp_html"><div class="ttname"><a href="ref_8hpp.html">ref.hpp</a></div></div>
<div class="ttc" id="ascreen__interactive_8hpp_html"><div class="ttname"><a href="screen__interactive_8hpp.html">screen_interactive.hpp</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html"><div class="ttname"><a href="structftxui_1_1Box.html">ftxui::Box</a></div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00006">box.hpp:6</a></div></div>
<div class="ttc" id="astructftxui_1_1Event_html"><div class="ttname"><a href="structftxui_1_1Event.html">ftxui::Event</a></div><div class="ttdoc">Represent an event. It can be key press event, a terminal resize, or more ...</div><div class="ttdef"><b>Definition</b> <a href="event_8hpp_source.html#l00026">event.hpp:26</a></div></div>
<div class="ttc" id="astructftxui_1_1Event_html_a2c835925299d56941ffd2e2421f0fd13"><div class="ttname"><a href="structftxui_1_1Event.html#a2c835925299d56941ffd2e2421f0fd13">ftxui::Event::is_mouse</a></div><div class="ttdeci">bool is_mouse() const</div><div class="ttdef"><b>Definition</b> <a href="event_8hpp_source.html#l00068">event.hpp:68</a></div></div>
<div class="ttc" id="astructftxui_1_1Event_html_a37daf59df57eb6415eb34c8df11a4892"><div class="ttname"><a href="structftxui_1_1Event.html#a37daf59df57eb6415eb34c8df11a4892">ftxui::Event::mouse</a></div><div class="ttdeci">struct Mouse &amp; mouse()</div><div class="ttdef"><b>Definition</b> <a href="event_8hpp_source.html#l00069">event.hpp:69</a></div></div>
<div class="ttc" id="astructftxui_1_1Mouse_html_a0a2f84ed7838f07779ae24c5a9086d33"><div class="ttname"><a href="structftxui_1_1Mouse.html#a0a2f84ed7838f07779ae24c5a9086d33">ftxui::Mouse::y</a></div><div class="ttdeci">int y</div><div class="ttdef"><b>Definition</b> <a href="mouse_8hpp_source.html#l00036">mouse.hpp:36</a></div></div>
<div class="ttc" id="astructftxui_1_1Mouse_html_a6150e0515f7202e2fb518f7206ed97dc"><div class="ttname"><a href="structftxui_1_1Mouse.html#a6150e0515f7202e2fb518f7206ed97dc">ftxui::Mouse::x</a></div><div class="ttdeci">int x</div><div class="ttdef"><b>Definition</b> <a href="mouse_8hpp_source.html#l00035">mouse.hpp:35</a></div></div>
<div class="ttc" id="astructftxui_1_1Mouse_html_aa56e877ca6a7524cf1e891c7435c3ace"><div class="ttname"><a href="structftxui_1_1Mouse.html#aa56e877ca6a7524cf1e891c7435c3ace">ftxui::Mouse::button</a></div><div class="ttdeci">Button button</div><div class="ttdef"><b>Definition</b> <a href="mouse_8hpp_source.html#l00024">mouse.hpp:24</a></div></div>
<div class="ttc" id="astructftxui_1_1Mouse_html_af8ec4d0833a67c0bcd400f9e30bd07c7"><div class="ttname"><a href="structftxui_1_1Mouse.html#af8ec4d0833a67c0bcd400f9e30bd07c7">ftxui::Mouse::motion</a></div><div class="ttdeci">Motion motion</div><div class="ttdef"><b>Definition</b> <a href="mouse_8hpp_source.html#l00027">mouse.hpp:27</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

191
en/v4.1.1/canvas_8cpp.html Normal file
View File

@@ -0,0 +1,191 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/canvas.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('canvas_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">canvas.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="canvas_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a57d7bdf155e190de514a689abb4e9a35" id="r_a57d7bdf155e190de514a689abb4e9a35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a57d7bdf155e190de514a689abb4e9a35">canvas</a> (<a class="el" href="classftxui_1_1ConstRef.html">ConstRef</a>&lt; <a class="el" href="structftxui_1_1Canvas.html">Canvas</a> &gt; canvas)</td></tr>
<tr class="memdesc:a57d7bdf155e190de514a689abb4e9a35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Produce an element from a <a class="el" href="structftxui_1_1Canvas.html">Canvas</a>, or a reference to a <a class="el" href="structftxui_1_1Canvas.html">Canvas</a>. <br /></td></tr>
<tr class="separator:a57d7bdf155e190de514a689abb4e9a35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac781c6530fb74b861af7d52c03ffb2b9" id="r_ac781c6530fb74b861af7d52c03ffb2b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#ac781c6530fb74b861af7d52c03ffb2b9">canvas</a> (int width, int height, std::function&lt; void(<a class="el" href="structftxui_1_1Canvas.html">Canvas</a> &amp;)&gt; fn)</td></tr>
<tr class="memdesc:ac781c6530fb74b861af7d52c03ffb2b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Produce an element drawing a canvas of requested size. <br /></td></tr>
<tr class="separator:ac781c6530fb74b861af7d52c03ffb2b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bef154e558868d259c52380e1e5ead9" id="r_a8bef154e558868d259c52380e1e5ead9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a8bef154e558868d259c52380e1e5ead9">canvas</a> (std::function&lt; void(<a class="el" href="structftxui_1_1Canvas.html">Canvas</a> &amp;)&gt; fn)</td></tr>
<tr class="memdesc:a8bef154e558868d259c52380e1e5ead9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Produce an element drawing a canvas. <br /></td></tr>
<tr class="separator:a8bef154e558868d259c52380e1e5ead9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

6
en/v4.1.1/canvas_8cpp.js Normal file
View File

@@ -0,0 +1,6 @@
var canvas_8cpp =
[
[ "canvas", "canvas_8cpp.html#a57d7bdf155e190de514a689abb4e9a35", null ],
[ "canvas", "canvas_8cpp.html#ac781c6530fb74b861af7d52c03ffb2b9", null ],
[ "canvas", "canvas_8cpp.html#a8bef154e558868d259c52380e1e5ead9", null ]
];

File diff suppressed because it is too large Load Diff

345
en/v4.1.1/canvas_8hpp.html Normal file
View File

@@ -0,0 +1,345 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/dom/canvas.hpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('canvas_8hpp.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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">canvas.hpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="canvas_8hpp__dep__incl.png" border="0" usemap="#ainclude_2ftxui_2dom_2canvas_8hppdep" alt=""/></div>
<map name="ainclude_2ftxui_2dom_2canvas_8hppdep" id="ainclude_2ftxui_2dom_2canvas_8hppdep">
<area shape="rect" title=" " alt="" coords="2673,5,2886,31"/>
<area shape="rect" href="elements_8hpp.html" title=" " alt="" coords="2589,79,2817,104"/>
<area shape="poly" title=" " alt="" coords="2759,42,2718,80,2714,76,2755,38"/>
<area shape="rect" href="canvas_8cpp.html" title=" " alt="" coords="6299,159,6483,185"/>
<area shape="poly" title=" " alt="" coords="2900,19,3559,34,4537,62,5055,81,5542,101,5963,124,6281,149,6333,157,6332,162,6280,155,5963,130,5542,107,5054,86,4537,68,3559,40,2900,24"/>
<area shape="rect" href="component_8hpp.html" title=" " alt="" coords="1214,240,1393,280"/>
<area shape="poly" title=" " alt="" coords="2576,97,2247,102,1846,112,1497,130,1383,141,1348,147,1330,154,1316,173,1308,195,1304,240,1299,240,1303,194,1311,170,1327,150,1346,142,1382,136,1497,124,1845,107,2247,97,2576,91"/>
<area shape="rect" href="button_8cpp.html" title=" " alt="" coords="704,328,855,368"/>
<area shape="poly" title=" " alt="" coords="2576,96,2066,100,1376,110,731,127,496,139,357,155,287,165,230,174,205,182,182,194,160,214,138,241,130,261,131,269,137,278,149,286,169,292,232,303,406,315,585,320,692,325,704,327,703,333,691,331,584,326,406,320,231,308,168,297,147,290,133,282,126,271,124,260,133,239,156,210,179,190,203,177,229,169,286,160,356,149,495,134,730,122,1376,104,2066,95,2575,91"/>
<area shape="rect" href="checkbox_8cpp.html" title=" " alt="" coords="1053,328,1204,368"/>
<area shape="poly" title=" " alt="" coords="2575,97,2257,103,1862,114,1505,131,1377,142,1301,155,1256,169,1222,185,1193,207,1163,242,1150,263,1142,286,1133,328,1128,327,1136,285,1145,260,1159,238,1190,203,1220,180,1254,164,1300,149,1376,136,1505,125,1862,108,2257,97,2575,92"/>
<area shape="rect" href="collapsible_8cpp.html" title=" " alt="" coords="355,328,505,368"/>
<area shape="poly" title=" " alt="" coords="2576,96,1982,101,1174,112,454,130,220,141,152,148,123,154,97,182,83,213,82,229,85,246,92,262,103,278,128,303,154,318,180,324,207,325,269,320,304,320,342,325,355,328,354,333,342,331,304,326,269,326,207,330,179,329,152,323,125,308,99,282,87,264,80,247,77,230,78,212,92,180,121,150,151,142,220,136,453,124,1174,107,1982,96,2576,91"/>
<area shape="rect" href="component_8cpp.html" title=" " alt="" coords="2101,328,2252,368"/>
<area shape="poly" title=" " alt="" coords="2586,109,2514,127,2445,154,2431,163,2423,173,2401,194,2371,210,2346,218,2322,227,2293,242,2237,287,2195,330,2191,326,2234,283,2290,238,2319,222,2344,213,2369,205,2398,190,2419,169,2428,159,2442,150,2512,121,2584,104"/>
<area shape="rect" href="container_8cpp.html" title=" " alt="" coords="2276,328,2427,368"/>
<area shape="poly" title=" " alt="" coords="2655,111,2531,154,2444,195,2401,205,2365,208,2334,216,2320,226,2306,241,2301,252,2299,262,2305,285,2318,307,2334,326,2330,329,2313,310,2300,287,2294,262,2295,250,2301,239,2316,222,2332,211,2364,202,2401,200,2442,189,2529,150,2653,106"/>
<area shape="rect" href="dropdown_8cpp.html" title=" " alt="" coords="1228,328,1379,368"/>
<area shape="poly" title=" " alt="" coords="2576,98,2376,104,2142,115,1920,131,1829,142,1760,155,1673,184,1555,233,1344,330,1341,325,1553,228,1671,179,1759,149,1828,137,1919,126,2141,110,2376,99,2576,93"/>
<area shape="rect" href="hoverable_8cpp.html" title=" " alt="" coords="2451,328,2601,368"/>
<area shape="poly" title=" " alt="" coords="2831,91,4729,111,5734,128,6055,138,6147,144,6183,150,6191,161,6194,172,6184,194,6136,242,6088,271,6038,285,5987,289,5873,282,5808,279,5737,283,5437,305,5038,322,4577,334,4089,342,3181,349,2602,350,2602,344,3180,344,4089,337,4577,329,5038,317,5437,300,5736,277,5808,274,5873,276,5987,284,6037,280,6086,266,6133,238,6180,190,6188,171,6186,163,6181,154,6146,149,6055,144,5733,133,4729,116,2831,96"/>
<area shape="rect" href="input_8cpp.html" title=" " alt="" coords="5,328,156,368"/>
<area shape="poly" title=" " alt="" coords="2575,96,1967,99,1134,109,732,117,392,127,153,139,83,146,54,154,41,173,35,195,34,218,38,242,53,289,71,326,67,329,48,291,33,244,29,218,30,194,37,171,51,150,82,141,152,134,392,121,732,111,1134,104,1967,94,2575,90"/>
<area shape="rect" href="maybe_8cpp.html" title=" " alt="" coords="1403,328,1553,368"/>
<area shape="poly" title=" " alt="" coords="2576,98,2367,105,2129,116,1922,132,1849,143,1807,154,1787,168,1773,182,1755,215,1737,249,1723,266,1703,282,1677,295,1640,308,1554,332,1553,327,1638,303,1675,290,1701,278,1719,262,1733,246,1750,212,1769,179,1784,163,1805,150,1848,137,1922,127,2129,110,2367,99,2576,93"/>
<area shape="rect" href="menu_8cpp.html" title=" " alt="" coords="879,328,1029,368"/>
<area shape="poly" title=" " alt="" coords="2575,96,2235,99,1809,109,1423,126,1284,139,1235,146,1203,155,1165,171,1129,192,1063,241,1009,290,972,329,968,326,1006,286,1060,236,1126,187,1163,166,1201,149,1234,141,1283,134,1422,121,1809,103,2235,94,2575,91"/>
<area shape="rect" href="modal_8cpp.html" title=" " alt="" coords="1577,328,1728,368"/>
<area shape="poly" title=" " alt="" coords="2576,99,2378,105,2155,117,1962,133,1894,143,1855,154,1835,167,1821,181,1802,212,1784,245,1755,282,1721,308,1688,330,1685,326,1718,304,1751,278,1780,243,1797,209,1817,178,1832,163,1853,150,1893,138,1961,128,2155,111,2378,100,2575,93"/>
<area shape="rect" href="radiobox_8cpp.html" title=" " alt="" coords="180,328,331,368"/>
<area shape="poly" title=" " alt="" coords="2576,96,1974,100,1153,110,420,128,184,140,115,147,86,154,64,183,56,213,61,245,79,278,94,291,118,304,181,325,180,330,116,309,91,296,75,282,56,247,50,213,59,181,83,150,114,142,183,135,420,122,1153,105,1974,95,2576,91"/>
<area shape="rect" href="renderer_8cpp.html" title=" " alt="" coords="1752,328,1903,368"/>
<area shape="poly" title=" " alt="" coords="2575,97,2385,102,2172,112,1990,129,1928,140,1893,154,1875,172,1860,193,1841,242,1832,290,1830,328,1824,328,1827,289,1836,241,1856,191,1871,169,1890,150,1926,135,1990,124,2172,107,2385,97,2575,92"/>
<area shape="rect" href="resizable__split_8cpp.html" title=" " alt="" coords="1927,328,2077,368"/>
<area shape="poly" title=" " alt="" coords="2576,96,2388,99,2180,108,2085,116,2004,126,1945,138,1925,146,1913,154,1901,174,1898,197,1903,220,1915,244,1948,290,1983,326,1979,330,1944,294,1910,247,1898,222,1893,197,1896,172,1909,150,1922,141,1943,133,2003,120,2085,110,2180,103,2388,94,2575,90"/>
<area shape="rect" href="slider_8cpp.html" title=" " alt="" coords="529,328,680,368"/>
<area shape="poly" title=" " alt="" coords="2575,95,2005,95,1228,102,850,109,526,120,290,135,216,144,178,154,142,180,116,211,110,228,108,245,113,261,124,278,137,289,153,298,197,311,250,318,309,321,427,321,517,325,529,328,528,333,516,331,426,326,309,326,249,323,196,316,151,303,134,293,120,282,108,264,103,245,105,227,112,209,138,176,176,150,215,139,289,130,525,115,850,104,1228,97,2005,90,2575,90"/>
<area shape="rect" href="component__base_8hpp.html" title=" " alt="" coords="1341,152,1519,192"/>
<area shape="poly" title=" " alt="" coords="2576,102,2170,124,1665,155,1520,166,1519,160,1664,149,2169,118,2575,96"/>
<area shape="rect" href="component__options_8hpp.html" title=" " alt="" coords="477,152,660,192"/>
<area shape="poly" title=" " alt="" coords="2576,99,1885,121,955,155,660,169,660,163,955,149,1885,115,2576,94"/>
<area shape="rect" href="component__options_8cpp.html" title=" " alt="" coords="147,240,329,280"/>
<area shape="poly" title=" " alt="" coords="2576,96,2087,99,1431,107,1106,115,819,125,596,138,518,146,465,155,409,172,355,196,269,242,266,238,352,191,407,167,464,149,517,141,596,133,818,120,1105,110,1430,102,2087,93,2576,90"/>
<area shape="rect" href="dom_2deprecated_8hpp.html" title=" " alt="" coords="1923,159,2163,185"/>
<area shape="poly" title=" " alt="" coords="2576,108,2164,155,2110,162,2109,157,2163,149,2575,102"/>
<area shape="rect" href="table_8hpp.html" title=" " alt="" coords="2187,159,2387,185"/>
<area shape="poly" title=" " alt="" coords="2630,109,2348,162,2347,157,2629,104"/>
<area shape="rect" href="automerge_8cpp.html" title=" " alt="" coords="2316,247,2525,273"/>
<area shape="poly" title=" " alt="" coords="2672,113,2599,154,2441,250,2438,245,2597,150,2669,108"/>
<area shape="rect" href="blink_8cpp.html" title=" " alt="" coords="2550,247,2721,273"/>
<area shape="poly" title=" " alt="" coords="2658,112,2632,129,2611,153,2605,177,2609,203,2619,227,2629,245,2625,248,2614,229,2604,204,2600,177,2606,151,2628,125,2655,108"/>
<area shape="rect" href="bold_8cpp.html" title=" " alt="" coords="2745,247,2912,273"/>
<area shape="poly" title=" " alt="" coords="2684,116,2670,133,2660,153,2656,172,2662,191,2680,206,2711,221,2785,245,2784,250,2709,225,2677,210,2657,193,2650,173,2655,151,2666,130,2680,113"/>
<area shape="rect" href="border_8cpp.html" title=" " alt="" coords="3086,159,3265,185"/>
<area shape="poly" title=" " alt="" coords="2788,104,3068,149,3111,157,3110,162,3067,155,2787,109"/>
<area shape="poly" title=" " alt="" coords="2831,91,4650,110,5679,127,6057,138,6281,149,6334,157,6334,162,6280,155,6057,143,5679,133,4650,115,2831,96"/>
<area shape="rect" href="clear__under_8cpp.html" title=" " alt="" coords="2936,240,3079,280"/>
<area shape="poly" title=" " alt="" coords="2700,118,2698,155,2703,174,2712,190,2936,240,2935,245,2708,194,2698,176,2693,156,2695,118"/>
<area shape="rect" href="dom_2color_8cpp.html" title=" " alt="" coords="3103,247,3272,273"/>
<area shape="poly" title=" " alt="" coords="2712,117,2727,156,2739,174,2756,190,2799,216,2838,230,2875,237,2912,237,2992,232,3038,232,3090,237,3131,245,3130,250,3090,243,3038,237,2992,237,2912,242,2875,242,2837,236,2796,221,2752,194,2735,178,2722,158,2707,119"/>
<area shape="rect" href="composite__decorator_8cpp.html" title=" " alt="" coords="3289,152,3467,192"/>
<area shape="poly" title=" " alt="" coords="2831,100,3040,120,3277,149,3289,151,3288,156,3276,155,3040,126,2831,106"/>
<area shape="rect" href="dbox_8cpp.html" title=" " alt="" coords="3491,159,3662,185"/>
<area shape="poly" title=" " alt="" coords="2831,95,3128,114,3304,129,3480,149,3524,157,3523,162,3479,155,3304,134,3128,119,2831,101"/>
<area shape="rect" href="dim_8cpp.html" title=" " alt="" coords="3297,247,3459,273"/>
<area shape="poly" title=" " alt="" coords="2780,104,2850,123,2922,150,2939,160,2951,171,2963,180,2980,190,3062,215,3129,223,3197,227,3284,237,3322,245,3322,250,3283,243,3197,232,3128,229,3061,220,2978,194,2960,185,2948,175,2936,164,2920,154,2849,128,2779,110"/>
<area shape="rect" href="flex_8cpp.html" title=" " alt="" coords="3686,159,3849,185"/>
<area shape="poly" title=" " alt="" coords="2831,92,3210,108,3442,125,3674,149,3718,157,3717,162,3674,155,3441,130,3209,113,2831,98"/>
<area shape="rect" href="flexbox_8cpp.html" title=" " alt="" coords="3873,159,4059,185"/>
<area shape="poly" title=" " alt="" coords="2831,91,3030,96,3287,106,3573,123,3861,149,3910,157,3909,162,3860,155,3573,128,3286,111,3030,101,2831,97"/>
<area shape="rect" href="focus_8cpp.html" title=" " alt="" coords="3483,247,3657,273"/>
<area shape="poly" title=" " alt="" coords="2804,104,2886,122,2970,150,2988,160,3001,171,3013,181,3031,190,3095,209,3150,221,3200,226,3247,227,3346,227,3404,230,3472,237,3514,245,3513,250,3471,243,3404,235,3346,232,3247,233,3200,231,3149,226,3094,215,3029,194,3010,185,2997,175,2985,164,2968,154,2885,127,2803,109"/>
<area shape="rect" href="frame_8cpp.html" title=" " alt="" coords="4084,159,4261,185"/>
<area shape="poly" title=" " alt="" coords="2831,90,3063,92,3372,100,3720,118,3898,132,4072,149,4119,157,4118,162,4071,155,3897,137,3720,124,3372,106,3063,97,2831,95"/>
<area shape="rect" href="gauge_8cpp.html" title=" " alt="" coords="4286,159,4465,185"/>
<area shape="poly" title=" " alt="" coords="2832,92,3569,112,3976,129,4144,138,4273,149,4321,157,4320,162,4272,155,4144,144,3975,134,3569,117,2831,98"/>
<area shape="rect" href="graph_8cpp.html" title=" " alt="" coords="4489,159,4664,185"/>
<area shape="poly" title=" " alt="" coords="2832,92,3667,109,4135,126,4329,137,4477,149,4524,157,4524,162,4476,155,4329,142,4134,132,3666,115,2832,97"/>
<area shape="rect" href="gridbox_8cpp.html" title=" " alt="" coords="4689,159,4875,185"/>
<area shape="poly" title=" " alt="" coords="2831,91,3760,108,4289,125,4509,137,4676,149,4726,157,4725,162,4675,155,4508,142,4289,131,3760,114,2831,97"/>
<area shape="rect" href="hbox_8cpp.html" title=" " alt="" coords="4899,159,5070,185"/>
<area shape="poly" title=" " alt="" coords="2831,91,3266,95,3860,105,4453,122,4700,134,4888,149,4934,157,4933,162,4887,155,4700,140,4453,127,3860,110,3266,100,2831,96"/>
<area shape="rect" href="inverted_8cpp.html" title=" " alt="" coords="3681,247,3873,273"/>
<area shape="poly" title=" " alt="" coords="2831,101,2925,119,2973,133,3019,150,3036,160,3048,171,3059,181,3075,190,3161,216,3235,231,3302,236,3366,235,3500,229,3578,229,3669,237,3717,245,3716,250,3668,243,3578,235,3500,234,3366,240,3302,241,3235,236,3160,221,3073,194,3056,185,3044,175,3033,164,3017,154,2971,138,2924,124,2830,107"/>
<area shape="rect" href="linear__gradient_8cpp.html" title=" " alt="" coords="4407,240,4555,280"/>
<area shape="poly" title=" " alt="" coords="2831,91,4703,111,5692,128,6009,138,6099,144,6135,150,6143,161,6146,172,6143,183,6136,194,6116,200,6072,205,5921,216,5454,235,4555,260,4555,254,5454,230,5920,211,6071,200,6115,195,6132,190,6139,181,6141,172,6139,163,6133,154,6099,149,6009,144,5692,134,4703,116,2831,96"/>
<area shape="rect" href="node__decorator_8hpp.html" title=" " alt="" coords="2767,152,2909,192"/>
<area shape="poly" title=" " alt="" coords="2736,109,2807,150,2804,154,2734,113"/>
<area shape="rect" href="scroll__indicator_8cpp.html" title=" " alt="" coords="5578,240,5725,280"/>
<area shape="poly" title=" " alt="" coords="2831,91,4716,111,5713,128,6032,138,6123,144,6159,150,6167,161,6170,172,6167,183,6160,194,6138,206,6098,217,5981,235,5845,248,5725,257,5725,252,5845,243,5981,229,6097,211,6136,201,6156,190,6162,181,6164,172,6162,163,6157,154,6122,149,6032,144,5713,133,4716,116,2831,96"/>
<area shape="rect" href="paragraph_8cpp.html" title=" " alt="" coords="5095,159,5299,185"/>
<area shape="poly" title=" " alt="" coords="2831,91,3301,96,3951,106,4604,123,4876,135,5082,149,5137,157,5136,162,5082,155,4876,140,4604,129,3951,111,3301,101,2831,96"/>
<area shape="rect" href="reflect_8cpp.html" title=" " alt="" coords="5323,159,5502,185"/>
<area shape="poly" title=" " alt="" coords="2831,90,3341,93,4057,102,4780,119,5082,133,5310,149,5359,157,5359,162,5310,155,5081,138,4780,125,4057,107,3341,98,2831,96"/>
<area shape="rect" href="separator_8cpp.html" title=" " alt="" coords="5527,159,5725,185"/>
<area shape="poly" title=" " alt="" coords="2831,90,3377,93,4152,102,4938,119,5266,133,5514,149,5568,157,5567,162,5514,155,5266,138,4938,125,4152,107,3377,98,2831,96"/>
<area shape="rect" href="size_8cpp.html" title=" " alt="" coords="5749,159,5913,185"/>
<area shape="poly" title=" " alt="" coords="2831,91,4377,110,5236,128,5550,138,5737,149,5783,157,5782,162,5736,155,5550,143,5236,133,4377,116,2831,97"/>
<area shape="rect" href="spinner_8cpp.html" title=" " alt="" coords="5937,159,6123,185"/>
<area shape="poly" title=" " alt="" coords="2831,91,4471,111,5389,128,5726,138,5925,149,5975,157,5975,162,5924,155,5725,144,5389,134,4471,116,2831,97"/>
<area shape="poly" title=" " alt="" coords="1201,278,1043,301,866,331,855,333,854,327,866,325,1042,296,1200,273"/>
<area shape="poly" title=" " alt="" coords="1254,288,1168,330,1166,326,1252,284"/>
<area shape="poly" title=" " alt="" coords="1200,269,893,289,705,307,517,331,506,332,505,327,516,325,705,301,893,283,1200,263"/>
<area shape="poly" title=" " alt="" coords="1407,263,1713,284,1901,302,2089,325,2101,327,2101,333,2088,331,1900,307,1713,289,1406,269"/>
<area shape="poly" title=" " alt="" coords="1407,261,1571,267,1785,279,2024,298,2264,325,2276,327,2275,333,2263,331,2023,303,1785,284,1571,273,1406,266"/>
<area shape="poly" title=" " alt="" coords="1306,294,1306,328,1301,328,1301,294"/>
<area shape="poly" title=" " alt="" coords="1406,260,1599,264,1855,274,2146,294,2438,325,2451,327,2450,332,2438,331,2145,299,1855,280,1598,269,1406,265"/>
<area shape="poly" title=" " alt="" coords="1200,268,668,293,379,311,168,331,157,332,156,327,167,325,378,306,667,288,1200,263"/>
<area shape="poly" title=" " alt="" coords="1355,284,1441,326,1439,330,1353,288"/>
<area shape="poly" title=" " alt="" coords="1214,286,1031,331,1029,326,1213,281"/>
<area shape="poly" title=" " alt="" coords="1394,281,1577,326,1576,331,1392,286"/>
<area shape="poly" title=" " alt="" coords="1200,266,1035,272,821,284,582,303,342,331,331,332,330,327,342,325,582,297,821,279,1035,267,1200,261"/>
<area shape="poly" title=" " alt="" coords="1407,273,1564,296,1740,325,1752,328,1751,333,1739,331,1563,301,1406,278"/>
<area shape="poly" title=" " alt="" coords="1406,267,1639,289,1914,325,1927,327,1926,333,1914,331,1639,295,1406,272"/>
<area shape="poly" title=" " alt="" coords="1201,272,967,294,692,331,681,333,680,327,691,325,967,289,1200,267"/>
<area shape="poly" title=" " alt="" coords="1392,202,1333,242,1330,238,1389,198"/>
<area shape="poly" title=" " alt="" coords="1327,190,1203,212,1069,243,934,287,824,330,822,325,933,282,1068,237,1202,207,1327,185"/>
<area shape="poly" title=" " alt="" coords="1328,190,1263,210,1232,224,1204,242,1182,262,1164,285,1139,329,1134,327,1159,282,1178,258,1200,238,1230,220,1262,205,1326,185"/>
<area shape="poly" title=" " alt="" coords="1327,181,1202,189,1062,202,933,219,881,230,842,242,827,251,817,262,807,272,791,282,717,308,657,317,595,320,517,331,506,333,505,328,516,325,594,315,656,311,716,303,789,278,804,268,813,258,824,247,840,238,880,225,932,214,1061,196,1202,184,1327,176"/>
<area shape="poly" title=" " alt="" coords="1532,192,1736,237,2102,325,2101,331,1735,243,1531,198"/>
<area shape="poly" title=" " alt="" coords="1533,187,1834,237,2050,280,2264,325,2277,328,2275,333,2263,331,2048,285,1834,243,1533,192"/>
<area shape="poly" title=" " alt="" coords="1431,207,1424,244,1407,282,1380,310,1348,330,1345,325,1376,305,1402,278,1419,242,1426,206"/>
<area shape="poly" title=" " alt="" coords="1534,182,1729,206,1954,237,2197,278,2439,325,2451,328,2450,333,2437,331,2196,283,1954,243,1729,211,1533,188"/>
<area shape="poly" title=" " alt="" coords="1327,184,1061,208,740,243,453,281,168,331,157,333,156,327,167,325,452,276,739,237,1060,202,1327,179"/>
<area shape="poly" title=" " alt="" coords="1441,204,1451,239,1475,327,1470,328,1446,241,1436,206"/>
<area shape="poly" title=" " alt="" coords="1328,195,1246,216,1162,242,1064,287,986,330,984,326,1062,282,1160,238,1244,211,1326,190"/>
<area shape="poly" title=" " alt="" coords="1465,198,1565,278,1629,326,1625,330,1562,282,1462,203"/>
<area shape="poly" title=" " alt="" coords="1327,180,1191,187,1036,199,892,218,835,229,791,242,776,251,767,262,756,273,740,282,683,303,633,315,588,320,545,321,455,320,403,323,342,331,331,333,330,327,342,325,402,318,455,315,545,316,588,315,632,310,682,298,738,278,753,269,763,258,773,247,789,238,833,224,891,212,1035,194,1190,182,1326,174"/>
<area shape="poly" title=" " alt="" coords="1483,196,1559,238,1587,259,1615,278,1684,306,1752,327,1751,332,1683,311,1613,282,1584,263,1557,242,1480,200"/>
<area shape="poly" title=" " alt="" coords="1506,193,1941,325,1939,330,1504,199"/>
<area shape="poly" title=" " alt="" coords="1327,183,1147,203,1045,220,944,243,893,261,842,283,679,330,677,325,840,277,891,256,943,237,1044,215,1146,198,1326,178"/>
<area shape="poly" title=" " alt="" coords="674,183,1214,246,1213,251,674,188"/>
<area shape="poly" title=" " alt="" coords="573,205,582,243,591,262,603,278,620,290,646,303,711,325,710,330,644,308,617,295,599,282,586,264,577,245,568,206"/>
<area shape="poly" title=" " alt="" coords="643,193,1069,325,1067,330,641,199"/>
<area shape="poly" title=" " alt="" coords="547,205,447,329,443,326,543,201"/>
<area shape="poly" title=" " alt="" coords="669,192,868,237,1230,325,1228,331,867,243,668,198"/>
<area shape="poly" title=" " alt="" coords="485,199,435,218,386,242,373,252,365,262,356,272,342,282,269,304,157,332,155,327,268,299,339,278,352,268,361,259,370,248,383,238,433,213,483,194"/>
<area shape="poly" title=" " alt="" coords="587,202,614,242,632,262,652,278,879,328,878,333,650,282,629,266,610,246,582,205"/>
<area shape="poly" title=" " alt="" coords="526,202,386,282,294,330,292,326,383,278,524,197"/>
<area shape="poly" title=" " alt="" coords="557,206,549,242,549,261,553,279,567,305,585,326,581,330,562,308,547,281,543,261,544,241,552,205"/>
<area shape="poly" title=" " alt="" coords="484,198,311,243,310,237,482,193"/>
<area shape="poly" title=" " alt="" coords="2146,155,2187,149,2603,101,2603,107,2188,155,2146,160"/>
<area shape="poly" title=" " alt="" coords="2753,193,2477,250,2476,245,2752,188"/>
<area shape="poly" title=" " alt="" coords="2782,200,2663,250,2661,245,2780,195"/>
<area shape="poly" title=" " alt="" coords="2837,206,2833,247,2827,247,2832,206"/>
<area shape="poly" title=" " alt="" coords="2888,196,2971,238,2969,242,2886,201"/>
<area shape="poly" title=" " alt="" coords="2923,191,3141,245,3140,250,2922,197"/>
<area shape="poly" title=" " alt="" coords="2923,188,2929,189,3106,214,3284,237,3324,245,3323,250,3283,243,3106,219,2928,195,2922,194"/>
<area shape="poly" title=" " alt="" coords="2923,182,2980,189,3118,203,3226,211,3334,220,3472,237,3515,245,3514,250,3471,243,3333,226,3225,216,3117,208,2979,195,2922,188"/>
<area shape="poly" title=" " alt="" coords="2923,179,3030,189,3210,202,3350,209,3490,219,3669,237,3717,245,3716,250,3668,243,3489,224,3350,215,3210,208,3030,195,2923,185"/>
<area shape="poly" title=" " alt="" coords="2923,178,3074,189,3853,230,4407,253,4407,259,3853,236,3074,195,2923,183"/>
<area shape="poly" title=" " alt="" coords="2923,179,3074,189,3628,210,4379,229,5578,255,5578,260,4379,235,3627,215,3074,195,2923,184"/>
</map>
</div>
</div>
<p><a href="canvas_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structftxui_1_1Canvas.html">Canvas</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

4
en/v4.1.1/canvas_8hpp.js Normal file
View File

@@ -0,0 +1,4 @@
var canvas_8hpp =
[
[ "Canvas", "structftxui_1_1Canvas.html", null ]
];

View File

@@ -0,0 +1,154 @@
<map id="include/ftxui/dom/canvas.hpp" name="include/ftxui/dom/canvas.hpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="2673,5,2886,31"/>
<area shape="rect" id="Node000002" href="$elements_8hpp.html" title=" " alt="" coords="2589,79,2817,104"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="2759,42,2718,80,2714,76,2755,38"/>
<area shape="rect" id="Node000036" href="$canvas_8cpp.html" title=" " alt="" coords="6299,159,6483,185"/>
<area shape="poly" id="edge102_Node000001_Node000036" title=" " alt="" coords="2900,19,3559,34,4537,62,5055,81,5542,101,5963,124,6281,149,6333,157,6332,162,6280,155,5963,130,5542,107,5054,86,4537,68,3559,40,2900,24"/>
<area shape="rect" id="Node000003" href="$component_8hpp.html" title=" " alt="" coords="1214,240,1393,280"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="2576,97,2247,102,1846,112,1497,130,1383,141,1348,147,1330,154,1316,173,1308,195,1304,240,1299,240,1303,194,1311,170,1327,150,1346,142,1382,136,1497,124,1845,107,2247,97,2576,91"/>
<area shape="rect" id="Node000004" href="$button_8cpp.html" title=" " alt="" coords="704,328,855,368"/>
<area shape="poly" id="edge49_Node000002_Node000004" title=" " alt="" coords="2576,96,2066,100,1376,110,731,127,496,139,357,155,287,165,230,174,205,182,182,194,160,214,138,241,130,261,131,269,137,278,149,286,169,292,232,303,406,315,585,320,692,325,704,327,703,333,691,331,584,326,406,320,231,308,168,297,147,290,133,282,126,271,124,260,133,239,156,210,179,190,203,177,229,169,286,160,356,149,495,134,730,122,1376,104,2066,95,2575,91"/>
<area shape="rect" id="Node000006" href="$checkbox_8cpp.html" title=" " alt="" coords="1053,328,1204,368"/>
<area shape="poly" id="edge50_Node000002_Node000006" title=" " alt="" coords="2575,97,2257,103,1862,114,1505,131,1377,142,1301,155,1256,169,1222,185,1193,207,1163,242,1150,263,1142,286,1133,328,1128,327,1136,285,1145,260,1159,238,1190,203,1220,180,1254,164,1300,149,1376,136,1505,125,1862,108,2257,97,2575,92"/>
<area shape="rect" id="Node000007" href="$collapsible_8cpp.html" title=" " alt="" coords="355,328,505,368"/>
<area shape="poly" id="edge51_Node000002_Node000007" title=" " alt="" coords="2576,96,1982,101,1174,112,454,130,220,141,152,148,123,154,97,182,83,213,82,229,85,246,92,262,103,278,128,303,154,318,180,324,207,325,269,320,304,320,342,325,355,328,354,333,342,331,304,326,269,326,207,330,179,329,152,323,125,308,99,282,87,264,80,247,77,230,78,212,92,180,121,150,151,142,220,136,453,124,1174,107,1982,96,2576,91"/>
<area shape="rect" id="Node000008" href="$component_8cpp.html" title=" " alt="" coords="2101,328,2252,368"/>
<area shape="poly" id="edge52_Node000002_Node000008" title=" " alt="" coords="2586,109,2514,127,2445,154,2431,163,2423,173,2401,194,2371,210,2346,218,2322,227,2293,242,2237,287,2195,330,2191,326,2234,283,2290,238,2319,222,2344,213,2369,205,2398,190,2419,169,2428,159,2442,150,2512,121,2584,104"/>
<area shape="rect" id="Node000010" href="$container_8cpp.html" title=" " alt="" coords="2276,328,2427,368"/>
<area shape="poly" id="edge54_Node000002_Node000010" title=" " alt="" coords="2655,111,2531,154,2444,195,2401,205,2365,208,2334,216,2320,226,2306,241,2301,252,2299,262,2305,285,2318,307,2334,326,2330,329,2313,310,2300,287,2294,262,2295,250,2301,239,2316,222,2332,211,2364,202,2401,200,2442,189,2529,150,2653,106"/>
<area shape="rect" id="Node000011" href="$dropdown_8cpp.html" title=" " alt="" coords="1228,328,1379,368"/>
<area shape="poly" id="edge55_Node000002_Node000011" title=" " alt="" coords="2576,98,2376,104,2142,115,1920,131,1829,142,1760,155,1673,184,1555,233,1344,330,1341,325,1553,228,1671,179,1759,149,1828,137,1919,126,2141,110,2376,99,2576,93"/>
<area shape="rect" id="Node000012" href="$hoverable_8cpp.html" title=" " alt="" coords="2451,328,2601,368"/>
<area shape="poly" id="edge56_Node000002_Node000012" title=" " alt="" coords="2831,91,4729,111,5734,128,6055,138,6147,144,6183,150,6191,161,6194,172,6184,194,6136,242,6088,271,6038,285,5987,289,5873,282,5808,279,5737,283,5437,305,5038,322,4577,334,4089,342,3181,349,2602,350,2602,344,3180,344,4089,337,4577,329,5038,317,5437,300,5736,277,5808,274,5873,276,5987,284,6037,280,6086,266,6133,238,6180,190,6188,171,6186,163,6181,154,6146,149,6055,144,5733,133,4729,116,2831,96"/>
<area shape="rect" id="Node000013" href="$input_8cpp.html" title=" " alt="" coords="5,328,156,368"/>
<area shape="poly" id="edge57_Node000002_Node000013" title=" " alt="" coords="2575,96,1967,99,1134,109,732,117,392,127,153,139,83,146,54,154,41,173,35,195,34,218,38,242,53,289,71,326,67,329,48,291,33,244,29,218,30,194,37,171,51,150,82,141,152,134,392,121,732,111,1134,104,1967,94,2575,90"/>
<area shape="rect" id="Node000014" href="$maybe_8cpp.html" title=" " alt="" coords="1403,328,1553,368"/>
<area shape="poly" id="edge58_Node000002_Node000014" title=" " alt="" coords="2576,98,2367,105,2129,116,1922,132,1849,143,1807,154,1787,168,1773,182,1755,215,1737,249,1723,266,1703,282,1677,295,1640,308,1554,332,1553,327,1638,303,1675,290,1701,278,1719,262,1733,246,1750,212,1769,179,1784,163,1805,150,1848,137,1922,127,2129,110,2367,99,2576,93"/>
<area shape="rect" id="Node000015" href="$menu_8cpp.html" title=" " alt="" coords="879,328,1029,368"/>
<area shape="poly" id="edge59_Node000002_Node000015" title=" " alt="" coords="2575,96,2235,99,1809,109,1423,126,1284,139,1235,146,1203,155,1165,171,1129,192,1063,241,1009,290,972,329,968,326,1006,286,1060,236,1126,187,1163,166,1201,149,1234,141,1283,134,1422,121,1809,103,2235,94,2575,91"/>
<area shape="rect" id="Node000016" href="$modal_8cpp.html" title=" " alt="" coords="1577,328,1728,368"/>
<area shape="poly" id="edge60_Node000002_Node000016" title=" " alt="" coords="2576,99,2378,105,2155,117,1962,133,1894,143,1855,154,1835,167,1821,181,1802,212,1784,245,1755,282,1721,308,1688,330,1685,326,1718,304,1751,278,1780,243,1797,209,1817,178,1832,163,1853,150,1893,138,1961,128,2155,111,2378,100,2575,93"/>
<area shape="rect" id="Node000017" href="$radiobox_8cpp.html" title=" " alt="" coords="180,328,331,368"/>
<area shape="poly" id="edge61_Node000002_Node000017" title=" " alt="" coords="2576,96,1974,100,1153,110,420,128,184,140,115,147,86,154,64,183,56,213,61,245,79,278,94,291,118,304,181,325,180,330,116,309,91,296,75,282,56,247,50,213,59,181,83,150,114,142,183,135,420,122,1153,105,1974,95,2576,91"/>
<area shape="rect" id="Node000018" href="$renderer_8cpp.html" title=" " alt="" coords="1752,328,1903,368"/>
<area shape="poly" id="edge62_Node000002_Node000018" title=" " alt="" coords="2575,97,2385,102,2172,112,1990,129,1928,140,1893,154,1875,172,1860,193,1841,242,1832,290,1830,328,1824,328,1827,289,1836,241,1856,191,1871,169,1890,150,1926,135,1990,124,2172,107,2385,97,2575,92"/>
<area shape="rect" id="Node000019" href="$resizable__split_8cpp.html" title=" " alt="" coords="1927,328,2077,368"/>
<area shape="poly" id="edge63_Node000002_Node000019" title=" " alt="" coords="2576,96,2388,99,2180,108,2085,116,2004,126,1945,138,1925,146,1913,154,1901,174,1898,197,1903,220,1915,244,1948,290,1983,326,1979,330,1944,294,1910,247,1898,222,1893,197,1896,172,1909,150,1922,141,1943,133,2003,120,2085,110,2180,103,2388,94,2575,90"/>
<area shape="rect" id="Node000020" href="$slider_8cpp.html" title=" " alt="" coords="529,328,680,368"/>
<area shape="poly" id="edge64_Node000002_Node000020" title=" " alt="" coords="2575,95,2005,95,1228,102,850,109,526,120,290,135,216,144,178,154,142,180,116,211,110,228,108,245,113,261,124,278,137,289,153,298,197,311,250,318,309,321,427,321,517,325,529,328,528,333,516,331,426,326,309,326,249,323,196,316,151,303,134,293,120,282,108,264,103,245,105,227,112,209,138,176,176,150,215,139,289,130,525,115,850,104,1228,97,2005,90,2575,90"/>
<area shape="rect" id="Node000022" href="$component__base_8hpp.html" title=" " alt="" coords="1341,152,1519,192"/>
<area shape="poly" id="edge18_Node000002_Node000022" title=" " alt="" coords="2576,102,2170,124,1665,155,1520,166,1519,160,1664,149,2169,118,2575,96"/>
<area shape="rect" id="Node000026" href="$component__options_8hpp.html" title=" " alt="" coords="477,152,660,192"/>
<area shape="poly" id="edge35_Node000002_Node000026" title=" " alt="" coords="2576,99,1885,121,955,155,660,169,660,163,955,149,1885,115,2576,94"/>
<area shape="rect" id="Node000027" href="$component__options_8cpp.html" title=" " alt="" coords="147,240,329,280"/>
<area shape="poly" id="edge53_Node000002_Node000027" title=" " alt="" coords="2576,96,2087,99,1431,107,1106,115,819,125,596,138,518,146,465,155,409,172,355,196,269,242,266,238,352,191,407,167,464,149,517,141,596,133,818,120,1105,110,1430,102,2087,93,2576,90"/>
<area shape="rect" id="Node000028" href="$dom_2deprecated_8hpp.html" title=" " alt="" coords="1923,159,2163,185"/>
<area shape="poly" id="edge46_Node000002_Node000028" title=" " alt="" coords="2576,108,2164,155,2110,162,2109,157,2163,149,2575,102"/>
<area shape="rect" id="Node000030" href="$table_8hpp.html" title=" " alt="" coords="2187,159,2387,185"/>
<area shape="poly" id="edge48_Node000002_Node000030" title=" " alt="" coords="2630,109,2348,162,2347,157,2629,104"/>
<area shape="rect" id="Node000032" href="$automerge_8cpp.html" title=" " alt="" coords="2316,247,2525,273"/>
<area shape="poly" id="edge65_Node000002_Node000032" title=" " alt="" coords="2672,113,2599,154,2441,250,2438,245,2597,150,2669,108"/>
<area shape="rect" id="Node000033" href="$blink_8cpp.html" title=" " alt="" coords="2550,247,2721,273"/>
<area shape="poly" id="edge66_Node000002_Node000033" title=" " alt="" coords="2658,112,2632,129,2611,153,2605,177,2609,203,2619,227,2629,245,2625,248,2614,229,2604,204,2600,177,2606,151,2628,125,2655,108"/>
<area shape="rect" id="Node000034" href="$bold_8cpp.html" title=" " alt="" coords="2745,247,2912,273"/>
<area shape="poly" id="edge67_Node000002_Node000034" title=" " alt="" coords="2684,116,2670,133,2660,153,2656,172,2662,191,2680,206,2711,221,2785,245,2784,250,2709,225,2677,210,2657,193,2650,173,2655,151,2666,130,2680,113"/>
<area shape="rect" id="Node000035" href="$border_8cpp.html" title=" " alt="" coords="3086,159,3265,185"/>
<area shape="poly" id="edge68_Node000002_Node000035" title=" " alt="" coords="2788,104,3068,149,3111,157,3110,162,3067,155,2787,109"/>
<area shape="poly" id="edge69_Node000002_Node000036" title=" " alt="" coords="2831,91,4650,110,5679,127,6057,138,6281,149,6334,157,6334,162,6280,155,6057,143,5679,133,4650,115,2831,96"/>
<area shape="rect" id="Node000037" href="$clear__under_8cpp.html" title=" " alt="" coords="2936,240,3079,280"/>
<area shape="poly" id="edge70_Node000002_Node000037" title=" " alt="" coords="2700,118,2698,155,2703,174,2712,190,2936,240,2935,245,2708,194,2698,176,2693,156,2695,118"/>
<area shape="rect" id="Node000038" href="$dom_2color_8cpp.html" title=" " alt="" coords="3103,247,3272,273"/>
<area shape="poly" id="edge71_Node000002_Node000038" title=" " alt="" coords="2712,117,2727,156,2739,174,2756,190,2799,216,2838,230,2875,237,2912,237,2992,232,3038,232,3090,237,3131,245,3130,250,3090,243,3038,237,2992,237,2912,242,2875,242,2837,236,2796,221,2752,194,2735,178,2722,158,2707,119"/>
<area shape="rect" id="Node000039" href="$composite__decorator_8cpp.html" title=" " alt="" coords="3289,152,3467,192"/>
<area shape="poly" id="edge72_Node000002_Node000039" title=" " alt="" coords="2831,100,3040,120,3277,149,3289,151,3288,156,3276,155,3040,126,2831,106"/>
<area shape="rect" id="Node000040" href="$dbox_8cpp.html" title=" " alt="" coords="3491,159,3662,185"/>
<area shape="poly" id="edge73_Node000002_Node000040" title=" " alt="" coords="2831,95,3128,114,3304,129,3480,149,3524,157,3523,162,3479,155,3304,134,3128,119,2831,101"/>
<area shape="rect" id="Node000041" href="$dim_8cpp.html" title=" " alt="" coords="3297,247,3459,273"/>
<area shape="poly" id="edge74_Node000002_Node000041" title=" " alt="" coords="2780,104,2850,123,2922,150,2939,160,2951,171,2963,180,2980,190,3062,215,3129,223,3197,227,3284,237,3322,245,3322,250,3283,243,3197,232,3128,229,3061,220,2978,194,2960,185,2948,175,2936,164,2920,154,2849,128,2779,110"/>
<area shape="rect" id="Node000042" href="$flex_8cpp.html" title=" " alt="" coords="3686,159,3849,185"/>
<area shape="poly" id="edge75_Node000002_Node000042" title=" " alt="" coords="2831,92,3210,108,3442,125,3674,149,3718,157,3717,162,3674,155,3441,130,3209,113,2831,98"/>
<area shape="rect" id="Node000043" href="$flexbox_8cpp.html" title=" " alt="" coords="3873,159,4059,185"/>
<area shape="poly" id="edge76_Node000002_Node000043" title=" " alt="" coords="2831,91,3030,96,3287,106,3573,123,3861,149,3910,157,3909,162,3860,155,3573,128,3286,111,3030,101,2831,97"/>
<area shape="rect" id="Node000044" href="$focus_8cpp.html" title=" " alt="" coords="3483,247,3657,273"/>
<area shape="poly" id="edge77_Node000002_Node000044" title=" " alt="" coords="2804,104,2886,122,2970,150,2988,160,3001,171,3013,181,3031,190,3095,209,3150,221,3200,226,3247,227,3346,227,3404,230,3472,237,3514,245,3513,250,3471,243,3404,235,3346,232,3247,233,3200,231,3149,226,3094,215,3029,194,3010,185,2997,175,2985,164,2968,154,2885,127,2803,109"/>
<area shape="rect" id="Node000045" href="$frame_8cpp.html" title=" " alt="" coords="4084,159,4261,185"/>
<area shape="poly" id="edge78_Node000002_Node000045" title=" " alt="" coords="2831,90,3063,92,3372,100,3720,118,3898,132,4072,149,4119,157,4118,162,4071,155,3897,137,3720,124,3372,106,3063,97,2831,95"/>
<area shape="rect" id="Node000046" href="$gauge_8cpp.html" title=" " alt="" coords="4286,159,4465,185"/>
<area shape="poly" id="edge79_Node000002_Node000046" title=" " alt="" coords="2832,92,3569,112,3976,129,4144,138,4273,149,4321,157,4320,162,4272,155,4144,144,3975,134,3569,117,2831,98"/>
<area shape="rect" id="Node000047" href="$graph_8cpp.html" title=" " alt="" coords="4489,159,4664,185"/>
<area shape="poly" id="edge80_Node000002_Node000047" title=" " alt="" coords="2832,92,3667,109,4135,126,4329,137,4477,149,4524,157,4524,162,4476,155,4329,142,4134,132,3666,115,2832,97"/>
<area shape="rect" id="Node000048" href="$gridbox_8cpp.html" title=" " alt="" coords="4689,159,4875,185"/>
<area shape="poly" id="edge81_Node000002_Node000048" title=" " alt="" coords="2831,91,3760,108,4289,125,4509,137,4676,149,4726,157,4725,162,4675,155,4508,142,4289,131,3760,114,2831,97"/>
<area shape="rect" id="Node000049" href="$hbox_8cpp.html" title=" " alt="" coords="4899,159,5070,185"/>
<area shape="poly" id="edge82_Node000002_Node000049" title=" " alt="" coords="2831,91,3266,95,3860,105,4453,122,4700,134,4888,149,4934,157,4933,162,4887,155,4700,140,4453,127,3860,110,3266,100,2831,96"/>
<area shape="rect" id="Node000050" href="$inverted_8cpp.html" title=" " alt="" coords="3681,247,3873,273"/>
<area shape="poly" id="edge83_Node000002_Node000050" title=" " alt="" coords="2831,101,2925,119,2973,133,3019,150,3036,160,3048,171,3059,181,3075,190,3161,216,3235,231,3302,236,3366,235,3500,229,3578,229,3669,237,3717,245,3716,250,3668,243,3578,235,3500,234,3366,240,3302,241,3235,236,3160,221,3073,194,3056,185,3044,175,3033,164,3017,154,2971,138,2924,124,2830,107"/>
<area shape="rect" id="Node000051" href="$linear__gradient_8cpp.html" title=" " alt="" coords="4407,240,4555,280"/>
<area shape="poly" id="edge84_Node000002_Node000051" title=" " alt="" coords="2831,91,4703,111,5692,128,6009,138,6099,144,6135,150,6143,161,6146,172,6143,183,6136,194,6116,200,6072,205,5921,216,5454,235,4555,260,4555,254,5454,230,5920,211,6071,200,6115,195,6132,190,6139,181,6141,172,6139,163,6133,154,6099,149,6009,144,5692,134,4703,116,2831,96"/>
<area shape="rect" id="Node000052" href="$node__decorator_8hpp.html" title=" " alt="" coords="2767,152,2909,192"/>
<area shape="poly" id="edge85_Node000002_Node000052" title=" " alt="" coords="2736,109,2807,150,2804,154,2734,113"/>
<area shape="rect" id="Node000054" href="$scroll__indicator_8cpp.html" title=" " alt="" coords="5578,240,5725,280"/>
<area shape="poly" id="edge98_Node000002_Node000054" title=" " alt="" coords="2831,91,4716,111,5713,128,6032,138,6123,144,6159,150,6167,161,6170,172,6167,183,6160,194,6138,206,6098,217,5981,235,5845,248,5725,257,5725,252,5845,243,5981,229,6097,211,6136,201,6156,190,6162,181,6164,172,6162,163,6157,154,6122,149,6032,144,5713,133,4716,116,2831,96"/>
<area shape="rect" id="Node000058" href="$paragraph_8cpp.html" title=" " alt="" coords="5095,159,5299,185"/>
<area shape="poly" id="edge96_Node000002_Node000058" title=" " alt="" coords="2831,91,3301,96,3951,106,4604,123,4876,135,5082,149,5137,157,5136,162,5082,155,4876,140,4604,129,3951,111,3301,101,2831,96"/>
<area shape="rect" id="Node000059" href="$reflect_8cpp.html" title=" " alt="" coords="5323,159,5502,185"/>
<area shape="poly" id="edge97_Node000002_Node000059" title=" " alt="" coords="2831,90,3341,93,4057,102,4780,119,5082,133,5310,149,5359,157,5359,162,5310,155,5081,138,4780,125,4057,107,3341,98,2831,96"/>
<area shape="rect" id="Node000060" href="$separator_8cpp.html" title=" " alt="" coords="5527,159,5725,185"/>
<area shape="poly" id="edge99_Node000002_Node000060" title=" " alt="" coords="2831,90,3377,93,4152,102,4938,119,5266,133,5514,149,5568,157,5567,162,5514,155,5266,138,4938,125,4152,107,3377,98,2831,96"/>
<area shape="rect" id="Node000061" href="$size_8cpp.html" title=" " alt="" coords="5749,159,5913,185"/>
<area shape="poly" id="edge100_Node000002_Node000061" title=" " alt="" coords="2831,91,4377,110,5236,128,5550,138,5737,149,5783,157,5782,162,5736,155,5550,143,5236,133,4377,116,2831,97"/>
<area shape="rect" id="Node000062" href="$spinner_8cpp.html" title=" " alt="" coords="5937,159,6123,185"/>
<area shape="poly" id="edge101_Node000002_Node000062" title=" " alt="" coords="2831,91,4471,111,5389,128,5726,138,5925,149,5975,157,5975,162,5924,155,5725,144,5389,134,4471,116,2831,97"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="1201,278,1043,301,866,331,855,333,854,327,866,325,1042,296,1200,273"/>
<area shape="poly" id="edge4_Node000003_Node000006" title=" " alt="" coords="1254,288,1168,330,1166,326,1252,284"/>
<area shape="poly" id="edge5_Node000003_Node000007" title=" " alt="" coords="1200,269,893,289,705,307,517,331,506,332,505,327,516,325,705,301,893,283,1200,263"/>
<area shape="poly" id="edge6_Node000003_Node000008" title=" " alt="" coords="1407,263,1713,284,1901,302,2089,325,2101,327,2101,333,2088,331,1900,307,1713,289,1406,269"/>
<area shape="poly" id="edge7_Node000003_Node000010" title=" " alt="" coords="1407,261,1571,267,1785,279,2024,298,2264,325,2276,327,2275,333,2263,331,2023,303,1785,284,1571,273,1406,266"/>
<area shape="poly" id="edge8_Node000003_Node000011" title=" " alt="" coords="1306,294,1306,328,1301,328,1301,294"/>
<area shape="poly" id="edge9_Node000003_Node000012" title=" " alt="" coords="1406,260,1599,264,1855,274,2146,294,2438,325,2451,327,2450,332,2438,331,2145,299,1855,280,1598,269,1406,265"/>
<area shape="poly" id="edge10_Node000003_Node000013" title=" " alt="" coords="1200,268,668,293,379,311,168,331,157,332,156,327,167,325,378,306,667,288,1200,263"/>
<area shape="poly" id="edge11_Node000003_Node000014" title=" " alt="" coords="1355,284,1441,326,1439,330,1353,288"/>
<area shape="poly" id="edge12_Node000003_Node000015" title=" " alt="" coords="1214,286,1031,331,1029,326,1213,281"/>
<area shape="poly" id="edge13_Node000003_Node000016" title=" " alt="" coords="1394,281,1577,326,1576,331,1392,286"/>
<area shape="poly" id="edge14_Node000003_Node000017" title=" " alt="" coords="1200,266,1035,272,821,284,582,303,342,331,331,332,330,327,342,325,582,297,821,279,1035,267,1200,261"/>
<area shape="poly" id="edge15_Node000003_Node000018" title=" " alt="" coords="1407,273,1564,296,1740,325,1752,328,1751,333,1739,331,1563,301,1406,278"/>
<area shape="poly" id="edge16_Node000003_Node000019" title=" " alt="" coords="1406,267,1639,289,1914,325,1927,327,1926,333,1914,331,1639,295,1406,272"/>
<area shape="poly" id="edge17_Node000003_Node000020" title=" " alt="" coords="1201,272,967,294,692,331,681,333,680,327,691,325,967,289,1200,267"/>
<area shape="poly" id="edge19_Node000022_Node000003" title=" " alt="" coords="1392,202,1333,242,1330,238,1389,198"/>
<area shape="poly" id="edge20_Node000022_Node000004" title=" " alt="" coords="1327,190,1203,212,1069,243,934,287,824,330,822,325,933,282,1068,237,1202,207,1327,185"/>
<area shape="poly" id="edge21_Node000022_Node000006" title=" " alt="" coords="1328,190,1263,210,1232,224,1204,242,1182,262,1164,285,1139,329,1134,327,1159,282,1178,258,1200,238,1230,220,1262,205,1326,185"/>
<area shape="poly" id="edge22_Node000022_Node000007" title=" " alt="" coords="1327,181,1202,189,1062,202,933,219,881,230,842,242,827,251,817,262,807,272,791,282,717,308,657,317,595,320,517,331,506,333,505,328,516,325,594,315,656,311,716,303,789,278,804,268,813,258,824,247,840,238,880,225,932,214,1061,196,1202,184,1327,176"/>
<area shape="poly" id="edge23_Node000022_Node000008" title=" " alt="" coords="1532,192,1736,237,2102,325,2101,331,1735,243,1531,198"/>
<area shape="poly" id="edge24_Node000022_Node000010" title=" " alt="" coords="1533,187,1834,237,2050,280,2264,325,2277,328,2275,333,2263,331,2048,285,1834,243,1533,192"/>
<area shape="poly" id="edge25_Node000022_Node000011" title=" " alt="" coords="1431,207,1424,244,1407,282,1380,310,1348,330,1345,325,1376,305,1402,278,1419,242,1426,206"/>
<area shape="poly" id="edge26_Node000022_Node000012" title=" " alt="" coords="1534,182,1729,206,1954,237,2197,278,2439,325,2451,328,2450,333,2437,331,2196,283,1954,243,1729,211,1533,188"/>
<area shape="poly" id="edge27_Node000022_Node000013" title=" " alt="" coords="1327,184,1061,208,740,243,453,281,168,331,157,333,156,327,167,325,452,276,739,237,1060,202,1327,179"/>
<area shape="poly" id="edge28_Node000022_Node000014" title=" " alt="" coords="1441,204,1451,239,1475,327,1470,328,1446,241,1436,206"/>
<area shape="poly" id="edge29_Node000022_Node000015" title=" " alt="" coords="1328,195,1246,216,1162,242,1064,287,986,330,984,326,1062,282,1160,238,1244,211,1326,190"/>
<area shape="poly" id="edge30_Node000022_Node000016" title=" " alt="" coords="1465,198,1565,278,1629,326,1625,330,1562,282,1462,203"/>
<area shape="poly" id="edge31_Node000022_Node000017" title=" " alt="" coords="1327,180,1191,187,1036,199,892,218,835,229,791,242,776,251,767,262,756,273,740,282,683,303,633,315,588,320,545,321,455,320,403,323,342,331,331,333,330,327,342,325,402,318,455,315,545,316,588,315,632,310,682,298,738,278,753,269,763,258,773,247,789,238,833,224,891,212,1035,194,1190,182,1326,174"/>
<area shape="poly" id="edge32_Node000022_Node000018" title=" " alt="" coords="1483,196,1559,238,1587,259,1615,278,1684,306,1752,327,1751,332,1683,311,1613,282,1584,263,1557,242,1480,200"/>
<area shape="poly" id="edge33_Node000022_Node000019" title=" " alt="" coords="1506,193,1941,325,1939,330,1504,199"/>
<area shape="poly" id="edge34_Node000022_Node000020" title=" " alt="" coords="1327,183,1147,203,1045,220,944,243,893,261,842,283,679,330,677,325,840,277,891,256,943,237,1044,215,1146,198,1326,178"/>
<area shape="poly" id="edge36_Node000026_Node000003" title=" " alt="" coords="674,183,1214,246,1213,251,674,188"/>
<area shape="poly" id="edge37_Node000026_Node000004" title=" " alt="" coords="573,205,582,243,591,262,603,278,620,290,646,303,711,325,710,330,644,308,617,295,599,282,586,264,577,245,568,206"/>
<area shape="poly" id="edge38_Node000026_Node000006" title=" " alt="" coords="643,193,1069,325,1067,330,641,199"/>
<area shape="poly" id="edge39_Node000026_Node000007" title=" " alt="" coords="547,205,447,329,443,326,543,201"/>
<area shape="poly" id="edge41_Node000026_Node000011" title=" " alt="" coords="669,192,868,237,1230,325,1228,331,867,243,668,198"/>
<area shape="poly" id="edge42_Node000026_Node000013" title=" " alt="" coords="485,199,435,218,386,242,373,252,365,262,356,272,342,282,269,304,157,332,155,327,268,299,339,278,352,268,361,259,370,248,383,238,433,213,483,194"/>
<area shape="poly" id="edge43_Node000026_Node000015" title=" " alt="" coords="587,202,614,242,632,262,652,278,879,328,878,333,650,282,629,266,610,246,582,205"/>
<area shape="poly" id="edge44_Node000026_Node000017" title=" " alt="" coords="526,202,386,282,294,330,292,326,383,278,524,197"/>
<area shape="poly" id="edge45_Node000026_Node000020" title=" " alt="" coords="557,206,549,242,549,261,553,279,567,305,585,326,581,330,562,308,547,281,543,261,544,241,552,205"/>
<area shape="poly" id="edge40_Node000026_Node000027" title=" " alt="" coords="484,198,311,243,310,237,482,193"/>
<area shape="poly" id="edge47_Node000028_Node000002" title=" " alt="" coords="2146,155,2187,149,2603,101,2603,107,2188,155,2146,160"/>
<area shape="poly" id="edge86_Node000052_Node000032" title=" " alt="" coords="2753,193,2477,250,2476,245,2752,188"/>
<area shape="poly" id="edge87_Node000052_Node000033" title=" " alt="" coords="2782,200,2663,250,2661,245,2780,195"/>
<area shape="poly" id="edge88_Node000052_Node000034" title=" " alt="" coords="2837,206,2833,247,2827,247,2832,206"/>
<area shape="poly" id="edge89_Node000052_Node000037" title=" " alt="" coords="2888,196,2971,238,2969,242,2886,201"/>
<area shape="poly" id="edge90_Node000052_Node000038" title=" " alt="" coords="2923,191,3141,245,3140,250,2922,197"/>
<area shape="poly" id="edge91_Node000052_Node000041" title=" " alt="" coords="2923,188,2929,189,3106,214,3284,237,3324,245,3323,250,3283,243,3106,219,2928,195,2922,194"/>
<area shape="poly" id="edge92_Node000052_Node000044" title=" " alt="" coords="2923,182,2980,189,3118,203,3226,211,3334,220,3472,237,3515,245,3514,250,3471,243,3333,226,3225,216,3117,208,2979,195,2922,188"/>
<area shape="poly" id="edge93_Node000052_Node000050" title=" " alt="" coords="2923,179,3030,189,3210,202,3350,209,3490,219,3669,237,3717,245,3716,250,3668,243,3489,224,3350,215,3210,208,3030,195,2923,185"/>
<area shape="poly" id="edge94_Node000052_Node000051" title=" " alt="" coords="2923,178,3074,189,3853,230,4407,253,4407,259,3853,236,3074,195,2923,183"/>
<area shape="poly" id="edge95_Node000052_Node000054" title=" " alt="" coords="2923,179,3074,189,3628,210,4379,229,5578,255,5578,260,4379,235,3627,215,3074,195,2923,184"/>
</map>

View File

@@ -0,0 +1 @@
f550d2342d67aedfa0df1fd1ea2310d5

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 KiB

View File

@@ -0,0 +1,341 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/dom/canvas.hpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('canvas_8hpp_source.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">canvas.hpp</div></div>
</div><!--header-->
<div class="contents">
<a href="canvas_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef FTXUI_DOM_CANVAS_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define FTXUI_DOM_CANVAS_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;cstddef&gt;</span> <span class="comment">// for size_t</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;functional&gt;</span> <span class="comment">// for function</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;string&gt;</span> <span class="comment">// for string</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;unordered_map&gt;</span> <span class="comment">// for unordered_map</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;<a class="code" href="color_8hpp.html">ftxui/screen/color.hpp</a>&quot;</span> <span class="comment">// for Color</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>&quot;</span> <span class="comment">// for Pixel</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#ifdef DrawText</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">// Workaround for WinUsr.h (via Windows.h) defining macros that break things.</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment">// https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-drawtext</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#undef DrawText</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="foldopen" id="foldopen00020" data-start="{" data-end="};">
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="structftxui_1_1Canvas.html"> 20</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structftxui_1_1Canvas.html">Canvas</a> {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"><a class="line" href="structftxui_1_1Canvas.html#a3cbcd839ac8597df2e0f351850ec4735"> 22</a></span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a3cbcd839ac8597df2e0f351850ec4735">Canvas</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a3cbcd839ac8597df2e0f351850ec4735">Canvas</a>(<span class="keywordtype">int</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad72663daf610f2a0833a2fc3d78e4fdf">width</a>, <span class="keywordtype">int</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad3774f6419003470f54fd495124ef51f">height</a>);</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="comment">// Getters:</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="structftxui_1_1Canvas.html#ad72663daf610f2a0833a2fc3d78e4fdf"> 26</a></span> <span class="keywordtype">int</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad72663daf610f2a0833a2fc3d78e4fdf">width</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> width_; }</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="structftxui_1_1Canvas.html#ad3774f6419003470f54fd495124ef51f"> 27</a></span> <span class="keywordtype">int</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad3774f6419003470f54fd495124ef51f">height</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> height_; }</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <a class="code hl_struct" href="structftxui_1_1Pixel.html">Pixel</a> <a class="code hl_function" href="structftxui_1_1Canvas.html#a656c4e679bf9254e4688f2049989a9bd">GetPixel</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae"> 30</a></span> <span class="keyword">using </span><a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a> = std::function&lt;void(<a class="code hl_struct" href="structftxui_1_1Pixel.html">Pixel</a>&amp;)&gt;;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="comment">// Draws using braille characters --------------------------------------------</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a5f488ea43e72f25cc25d055bf18dac5b">DrawPointOn</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a64ad8a12830a3341d4a5afb380913474">DrawPointOff</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#afd64176f05f91df2d96e8f3bb0631c51">DrawPointToggle</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a8707f2585ed8b787b6b14032a5c761a1">DrawPoint</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">bool</span> value);</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a8707f2585ed8b787b6b14032a5c761a1">DrawPoint</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">bool</span> value, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a8707f2585ed8b787b6b14032a5c761a1">DrawPoint</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">bool</span> value, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a2b6800c9a6a93457a921d9b570fb2f30">DrawPointLine</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> x2, <span class="keywordtype">int</span> y2);</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a2b6800c9a6a93457a921d9b570fb2f30">DrawPointLine</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> x2, <span class="keywordtype">int</span> y2, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a2b6800c9a6a93457a921d9b570fb2f30">DrawPointLine</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> x2, <span class="keywordtype">int</span> y2, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad21641f8f1fd60aa5f1d149379eba3eb">DrawPointCircle</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> radius);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad21641f8f1fd60aa5f1d149379eba3eb">DrawPointCircle</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad21641f8f1fd60aa5f1d149379eba3eb">DrawPointCircle</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a5b6388d2515edcfb6c88a39ea56805b2">DrawPointCircleFilled</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> radius);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a5b6388d2515edcfb6c88a39ea56805b2">DrawPointCircleFilled</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a5b6388d2515edcfb6c88a39ea56805b2">DrawPointCircleFilled</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a79ee88b3cfe258309041469f707dcf68">DrawPointEllipse</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a79ee88b3cfe258309041469f707dcf68">DrawPointEllipse</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a79ee88b3cfe258309041469f707dcf68">DrawPointEllipse</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a2633b8a556a82c74438fe41b253b39ee">DrawPointEllipseFilled</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a2633b8a556a82c74438fe41b253b39ee">DrawPointEllipseFilled</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a2633b8a556a82c74438fe41b253b39ee">DrawPointEllipseFilled</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="comment">// Draw using box characters -------------------------------------------------</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="comment">// Block are of size 1x2. y is considered to be a multiple of 2.</span></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a43cd60e79e418d3173e757a1809fde09">DrawBlockOn</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ad626747e5e54412d0376ba870565dce6">DrawBlockOff</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ab4154641384d18497de60c2626b71a94">DrawBlockToggle</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ae38b2e4f5bcda94c060bb77779d1e339">DrawBlock</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">bool</span> value);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ae38b2e4f5bcda94c060bb77779d1e339">DrawBlock</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">bool</span> value, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ae38b2e4f5bcda94c060bb77779d1e339">DrawBlock</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">bool</span> value, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a182a915a7e3fc863f5c222253de01ff1">DrawBlockLine</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> x2, <span class="keywordtype">int</span> y2);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a182a915a7e3fc863f5c222253de01ff1">DrawBlockLine</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> x2, <span class="keywordtype">int</span> y2, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a182a915a7e3fc863f5c222253de01ff1">DrawBlockLine</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> x2, <span class="keywordtype">int</span> y2, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ac3977d4b06ca96ff799a3b72437c8a0b">DrawBlockCircle</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> radius);</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ac3977d4b06ca96ff799a3b72437c8a0b">DrawBlockCircle</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ac3977d4b06ca96ff799a3b72437c8a0b">DrawBlockCircle</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#acffdcd5bae224992e155facb0baf4119">DrawBlockCircleFilled</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> radius);</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#acffdcd5bae224992e155facb0baf4119">DrawBlockCircleFilled</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#acffdcd5bae224992e155facb0baf4119">DrawBlockCircleFilled</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> radius, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a8dd75f2dfc5bef37aa2c8bc8cfaf0579">DrawBlockEllipse</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2);</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a8dd75f2dfc5bef37aa2c8bc8cfaf0579">DrawBlockEllipse</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a8dd75f2dfc5bef37aa2c8bc8cfaf0579">DrawBlockEllipse</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a78dc3c908f7ce1c30837bd3043f19526">DrawBlockEllipseFilled</a>(<span class="keywordtype">int</span> x1, <span class="keywordtype">int</span> y1, <span class="keywordtype">int</span> r1, <span class="keywordtype">int</span> r2);</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a78dc3c908f7ce1c30837bd3043f19526">DrawBlockEllipseFilled</a>(<span class="keywordtype">int</span> x1,</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">int</span> y1,</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordtype">int</span> r1,</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordtype">int</span> r2,</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; s);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a78dc3c908f7ce1c30837bd3043f19526">DrawBlockEllipseFilled</a>(<span class="keywordtype">int</span> x1,</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordtype">int</span> y1,</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">int</span> r1,</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordtype">int</span> r2,</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="comment">// Draw using normal characters ----------------------------------------------</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="comment">// Draw using character of size 2x4 at position (x,y)</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="comment">// x is considered to be a multiple of 2.</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// y is considered to be a multiple of 4.</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a3791777bd6d3c6f8ff6281efd19a5161">DrawText</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keyword">const</span> std::string&amp; value);</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a3791777bd6d3c6f8ff6281efd19a5161">DrawText</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keyword">const</span> std::string&amp; value, <span class="keyword">const</span> <a class="code hl_class" href="classftxui_1_1Color.html">Color</a>&amp; <a class="code hl_function" href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">color</a>);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#a3791777bd6d3c6f8ff6281efd19a5161">DrawText</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keyword">const</span> std::string&amp; value, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; style);</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="comment">// Decorator:</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="comment">// x is considered to be a multiple of 2.</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> <span class="comment">// y is considered to be a multiple of 4.</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structftxui_1_1Canvas.html#ae9e7d3f5b753cf2650057623960d4cb4">Style</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keyword">const</span> <a class="code hl_typedef" href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">Stylizer</a>&amp; style);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">bool</span> IsIn(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">return</span> x &gt;= 0 &amp;&amp; x &lt; width_ &amp;&amp; y &gt;= 0 &amp;&amp; y &lt; height_;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> }</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> <span class="keyword">enum</span> CellType {</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> kBraille,</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> kBlock,</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> kText,</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> };</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keyword">struct </span>Cell {</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> CellType type = kText;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> Pixel content;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> };</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keyword">struct </span>XY {</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">int</span> x;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">int</span> y;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> XY&amp; other)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">return</span> x == other.x &amp;&amp; y == other.y;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> }</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> };</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> </div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keyword">struct </span>XYHash {</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">size_t</span> operator()(<span class="keyword">const</span> XY&amp; xy)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keyword">constexpr</span> <span class="keywordtype">size_t</span> shift = 1024;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">return</span> size_t(xy.x) * shift + size_t(xy.y);</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> }</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> };</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> </div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> width_ = 0;</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">int</span> height_ = 0;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> std::unordered_map&lt;XY, Cell, XYHash&gt; storage_;</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span>};</div>
</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> </div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span><span class="preprocessor">#endif </span><span class="comment">// FTXUI_DOM_CANVAS_HPP</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> </div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span><span class="comment">// Copyright 2021 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span><span class="comment">// the LICENSE file.</span></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#l00018">color.hpp:18</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="anamespaceftxui_html"><div class="ttname"><a href="namespaceftxui.html">ftxui</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af61b489da39ca5e24b68e6e1a2b09c0d"><div class="ttname"><a href="namespaceftxui.html#af61b489da39ca5e24b68e6e1a2b09c0d">ftxui::color</a></div><div class="ttdeci">Decorator color(Color)</div><div class="ttdoc">Decorate using a foreground color.</div><div class="ttdef"><b>Definition</b> <a href="dom_2color_8cpp_source.html#l00086">color.cpp:86</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="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="#l00020">canvas.hpp:20</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a182a915a7e3fc863f5c222253de01ff1"><div class="ttname"><a href="structftxui_1_1Canvas.html#a182a915a7e3fc863f5c222253de01ff1">ftxui::Canvas::DrawBlockLine</a></div><div class="ttdeci">void DrawBlockLine(int x1, int y1, int x2, int y2)</div><div class="ttdoc">Draw a line made of block characters.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00525">canvas.cpp:525</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a2633b8a556a82c74438fe41b253b39ee"><div class="ttname"><a href="structftxui_1_1Canvas.html#a2633b8a556a82c74438fe41b253b39ee">ftxui::Canvas::DrawPointEllipseFilled</a></div><div class="ttdeci">void DrawPointEllipseFilled(int x, int y, int r1, int r2)</div><div class="ttdoc">Draw a filled ellipse made of braille dots.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00368">canvas.cpp:368</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a2b6800c9a6a93457a921d9b570fb2f30"><div class="ttname"><a href="structftxui_1_1Canvas.html#a2b6800c9a6a93457a921d9b570fb2f30">ftxui::Canvas::DrawPointLine</a></div><div class="ttdeci">void DrawPointLine(int x1, int y1, int x2, int y2)</div><div class="ttdoc">Draw a line made of braille dots.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00185">canvas.cpp:185</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a3791777bd6d3c6f8ff6281efd19a5161"><div class="ttname"><a href="structftxui_1_1Canvas.html#a3791777bd6d3c6f8ff6281efd19a5161">ftxui::Canvas::DrawText</a></div><div class="ttdeci">void DrawText(int x, int y, const std::string &amp;value)</div><div class="ttdoc">Draw a piece of text.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00779">canvas.cpp:779</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a3cbcd839ac8597df2e0f351850ec4735"><div class="ttname"><a href="structftxui_1_1Canvas.html#a3cbcd839ac8597df2e0f351850ec4735">ftxui::Canvas::Canvas</a></div><div class="ttdeci">Canvas()=default</div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a407f299e079846ce6169f2a709ad4aae"><div class="ttname"><a href="structftxui_1_1Canvas.html#a407f299e079846ce6169f2a709ad4aae">ftxui::Canvas::Stylizer</a></div><div class="ttdeci">std::function&lt; void(Pixel &amp;)&gt; Stylizer</div><div class="ttdef"><b>Definition</b> <a href="#l00030">canvas.hpp:30</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a43cd60e79e418d3173e757a1809fde09"><div class="ttname"><a href="structftxui_1_1Canvas.html#a43cd60e79e418d3173e757a1809fde09">ftxui::Canvas::DrawBlockOn</a></div><div class="ttdeci">void DrawBlockOn(int x, int y)</div><div class="ttdoc">Draw a block.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00462">canvas.cpp:462</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a5b6388d2515edcfb6c88a39ea56805b2"><div class="ttname"><a href="structftxui_1_1Canvas.html#a5b6388d2515edcfb6c88a39ea56805b2">ftxui::Canvas::DrawPointCircleFilled</a></div><div class="ttdeci">void DrawPointCircleFilled(int x, int y, int radius)</div><div class="ttdoc">Draw a filled circle made of braille dots.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00270">canvas.cpp:270</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a5f488ea43e72f25cc25d055bf18dac5b"><div class="ttname"><a href="structftxui_1_1Canvas.html#a5f488ea43e72f25cc25d055bf18dac5b">ftxui::Canvas::DrawPointOn</a></div><div class="ttdeci">void DrawPointOn(int x, int y)</div><div class="ttdoc">Draw a braille dot.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00131">canvas.cpp:131</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a64ad8a12830a3341d4a5afb380913474"><div class="ttname"><a href="structftxui_1_1Canvas.html#a64ad8a12830a3341d4a5afb380913474">ftxui::Canvas::DrawPointOff</a></div><div class="ttdeci">void DrawPointOff(int x, int y)</div><div class="ttdoc">Erase a braille dot.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00148">canvas.cpp:148</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a656c4e679bf9254e4688f2049989a9bd"><div class="ttname"><a href="structftxui_1_1Canvas.html#a656c4e679bf9254e4688f2049989a9bd">ftxui::Canvas::GetPixel</a></div><div class="ttdeci">Pixel GetPixel(int x, int y) const</div><div class="ttdoc">Get the content of a cell.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00092">canvas.cpp:92</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a78dc3c908f7ce1c30837bd3043f19526"><div class="ttname"><a href="structftxui_1_1Canvas.html#a78dc3c908f7ce1c30837bd3043f19526">ftxui::Canvas::DrawBlockEllipseFilled</a></div><div class="ttdeci">void DrawBlockEllipseFilled(int x1, int y1, int r1, int r2)</div><div class="ttdoc">Draw a filled ellipse made of block characters.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00713">canvas.cpp:713</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a79ee88b3cfe258309041469f707dcf68"><div class="ttname"><a href="structftxui_1_1Canvas.html#a79ee88b3cfe258309041469f707dcf68">ftxui::Canvas::DrawPointEllipse</a></div><div class="ttdeci">void DrawPointEllipse(int x, int y, int r1, int r2)</div><div class="ttdoc">Draw an ellipse made of braille dots.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00304">canvas.cpp:304</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a8707f2585ed8b787b6b14032a5c761a1"><div class="ttname"><a href="structftxui_1_1Canvas.html#a8707f2585ed8b787b6b14032a5c761a1">ftxui::Canvas::DrawPoint</a></div><div class="ttdeci">void DrawPoint(int x, int y, bool value)</div><div class="ttdoc">Draw a braille dot.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00101">canvas.cpp:101</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_a8dd75f2dfc5bef37aa2c8bc8cfaf0579"><div class="ttname"><a href="structftxui_1_1Canvas.html#a8dd75f2dfc5bef37aa2c8bc8cfaf0579">ftxui::Canvas::DrawBlockEllipse</a></div><div class="ttdeci">void DrawBlockEllipse(int x1, int y1, int r1, int r2)</div><div class="ttdoc">Draw an ellipse made of block characters.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00647">canvas.cpp:647</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ab4154641384d18497de60c2626b71a94"><div class="ttname"><a href="structftxui_1_1Canvas.html#ab4154641384d18497de60c2626b71a94">ftxui::Canvas::DrawBlockToggle</a></div><div class="ttdeci">void DrawBlockToggle(int x, int y)</div><div class="ttdoc">Toggle a block. If it is filled, it will be erased. If it is empty, it will be filled.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00503">canvas.cpp:503</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ac3977d4b06ca96ff799a3b72437c8a0b"><div class="ttname"><a href="structftxui_1_1Canvas.html#ac3977d4b06ca96ff799a3b72437c8a0b">ftxui::Canvas::DrawBlockCircle</a></div><div class="ttdeci">void DrawBlockCircle(int x1, int y1, int radius)</div><div class="ttdoc">Draw a circle made of block characters.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00586">canvas.cpp:586</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_acffdcd5bae224992e155facb0baf4119"><div class="ttname"><a href="structftxui_1_1Canvas.html#acffdcd5bae224992e155facb0baf4119">ftxui::Canvas::DrawBlockCircleFilled</a></div><div class="ttdeci">void DrawBlockCircleFilled(int x1, int y1, int radius)</div><div class="ttdoc">Draw a filled circle made of block characters.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00613">canvas.cpp:613</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ad21641f8f1fd60aa5f1d149379eba3eb"><div class="ttname"><a href="structftxui_1_1Canvas.html#ad21641f8f1fd60aa5f1d149379eba3eb">ftxui::Canvas::DrawPointCircle</a></div><div class="ttdeci">void DrawPointCircle(int x, int y, int radius)</div><div class="ttdoc">Draw a circle made of braille dots.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00243">canvas.cpp:243</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ad3774f6419003470f54fd495124ef51f"><div class="ttname"><a href="structftxui_1_1Canvas.html#ad3774f6419003470f54fd495124ef51f">ftxui::Canvas::height</a></div><div class="ttdeci">int height() const</div><div class="ttdef"><b>Definition</b> <a href="#l00027">canvas.hpp:27</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ad626747e5e54412d0376ba870565dce6"><div class="ttname"><a href="structftxui_1_1Canvas.html#ad626747e5e54412d0376ba870565dce6">ftxui::Canvas::DrawBlockOff</a></div><div class="ttdeci">void DrawBlockOff(int x, int y)</div><div class="ttdoc">Erase a block.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00482">canvas.cpp:482</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ad72663daf610f2a0833a2fc3d78e4fdf"><div class="ttname"><a href="structftxui_1_1Canvas.html#ad72663daf610f2a0833a2fc3d78e4fdf">ftxui::Canvas::width</a></div><div class="ttdeci">int width() const</div><div class="ttdef"><b>Definition</b> <a href="#l00026">canvas.hpp:26</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ae38b2e4f5bcda94c060bb77779d1e339"><div class="ttname"><a href="structftxui_1_1Canvas.html#ae38b2e4f5bcda94c060bb77779d1e339">ftxui::Canvas::DrawBlock</a></div><div class="ttdeci">void DrawBlock(int x, int y, bool value)</div><div class="ttdoc">Draw a block.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00432">canvas.cpp:432</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_ae9e7d3f5b753cf2650057623960d4cb4"><div class="ttname"><a href="structftxui_1_1Canvas.html#ae9e7d3f5b753cf2650057623960d4cb4">ftxui::Canvas::Style</a></div><div class="ttdeci">void Style(int x, int y, const Stylizer &amp;style)</div><div class="ttdoc">Modify a pixel at a given location.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00819">canvas.cpp:819</a></div></div>
<div class="ttc" id="astructftxui_1_1Canvas_html_afd64176f05f91df2d96e8f3bb0631c51"><div class="ttname"><a href="structftxui_1_1Canvas.html#afd64176f05f91df2d96e8f3bb0631c51">ftxui::Canvas::DrawPointToggle</a></div><div class="ttdeci">void DrawPointToggle(int x, int y)</div><div class="ttdoc">Toggle a braille dot. A filled one will be erased, and the other will be drawn.</div><div class="ttdef"><b>Definition</b> <a href="canvas_8cpp_source.html#l00166">canvas.cpp:166</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="screen_8hpp_source.html#l00016">screen.hpp:16</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,286 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/component/captured_mouse.hpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('captured__mouse_8hpp.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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> </div>
<div class="headertitle"><div class="title">captured_mouse.hpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="captured__mouse_8hpp__dep__incl.png" border="0" usemap="#ainclude_2ftxui_2component_2captured__mouse_8hppdep" alt=""/></div>
<map name="ainclude_2ftxui_2component_2captured__mouse_8hppdep" id="ainclude_2ftxui_2component_2captured__mouse_8hppdep">
<area shape="rect" title=" " alt="" coords="1127,5,1306,45"/>
<area shape="rect" href="component__base_8hpp.html" title=" " alt="" coords="1585,93,1763,133"/>
<area shape="poly" title=" " alt="" coords="1320,43,1585,93,1584,98,1319,49"/>
<area shape="rect" href="button_8cpp.html" title=" " alt="" coords="5,269,156,309"/>
<area shape="poly" title=" " alt="" coords="1114,30,997,35,855,46,701,65,549,96,421,136,299,185,193,233,117,271,115,267,191,228,296,180,420,131,548,91,700,60,854,41,997,30,1113,25"/>
<area shape="rect" href="checkbox_8cpp.html" title=" " alt="" coords="3020,269,3171,309"/>
<area shape="poly" title=" " alt="" coords="1320,31,1554,50,1877,81,2248,124,2624,179,2844,223,3025,267,3024,272,2843,228,2623,184,2248,129,1877,86,1553,56,1319,37"/>
<area shape="rect" href="component_8cpp.html" title=" " alt="" coords="180,269,331,309"/>
<area shape="poly" title=" " alt="" coords="1114,32,1017,37,903,49,781,68,661,96,550,136,443,185,352,233,287,272,284,267,350,229,441,180,548,131,660,91,780,62,902,43,1017,32,1114,26"/>
<area shape="rect" href="hoverable_8cpp.html" title=" " alt="" coords="355,269,505,309"/>
<area shape="poly" title=" " alt="" coords="1113,32,1033,39,942,50,846,69,754,96,663,136,578,185,506,233,455,271,452,267,503,229,575,180,660,131,752,91,845,64,941,45,1033,33,1113,27"/>
<area shape="rect" href="input_8cpp.html" title=" " alt="" coords="529,269,680,309"/>
<area shape="poly" title=" " alt="" coords="1114,35,1014,49,899,75,840,94,783,119,728,148,678,183,658,204,640,227,615,271,611,268,636,224,654,200,675,179,726,144,781,114,839,89,898,70,1013,43,1113,30"/>
<area shape="rect" href="menu_8cpp.html" title=" " alt="" coords="1077,269,1228,309"/>
<area shape="poly" title=" " alt="" coords="1219,59,1213,135,1206,179,1194,222,1182,248,1169,271,1164,268,1178,246,1189,220,1200,178,1208,134,1214,59"/>
<area shape="rect" href="radiobox_8cpp.html" title=" " alt="" coords="1252,269,1403,309"/>
<area shape="poly" title=" " alt="" coords="1232,57,1322,268,1317,270,1227,59"/>
<area shape="rect" href="renderer_8cpp.html" title=" " alt="" coords="3195,269,3345,309"/>
<area shape="poly" title=" " alt="" coords="1320,29,1692,50,1926,68,2162,91,2452,129,2740,179,2990,226,3195,269,3194,274,2989,232,2739,184,2451,134,2162,96,1926,73,1692,55,1320,34"/>
<area shape="rect" href="resizable__split_8cpp.html" title=" " alt="" coords="3369,269,3520,309"/>
<area shape="poly" title=" " alt="" coords="1320,27,1760,45,2044,64,2330,91,2481,110,2597,130,2862,179,3111,221,3359,267,3370,269,3369,274,3357,272,3110,226,2862,184,2596,135,2480,115,2330,96,2043,69,1760,51,1320,32"/>
<area shape="rect" href="slider_8cpp.html" title=" " alt="" coords="1427,269,1577,309"/>
<area shape="poly" title=" " alt="" coords="1249,53,1483,267,1479,271,1245,57"/>
<area shape="rect" href="screen__interactive_8cpp.html" title=" " alt="" coords="879,269,1053,309"/>
<area shape="poly" title=" " alt="" coords="1159,54,1116,76,1070,105,1027,140,991,183,980,204,973,227,969,269,963,269,968,226,975,202,986,180,1023,137,1067,100,1113,71,1156,49"/>
<area shape="rect" href="screen__interactive_8hpp.html" title=" " alt="" coords="747,181,926,221"/>
<area shape="poly" title=" " alt="" coords="1114,41,1030,61,987,76,946,96,917,115,891,138,852,183,848,179,888,135,914,111,943,91,984,71,1028,56,1113,36"/>
<area shape="rect" href="component_8hpp.html" title=" " alt="" coords="1762,181,1941,221"/>
<area shape="poly" title=" " alt="" coords="1726,137,1814,179,1811,184,1724,142"/>
<area shape="poly" title=" " alt="" coords="1571,120,1315,127,985,140,662,158,529,170,428,184,344,202,262,226,129,272,128,267,261,221,343,197,427,179,528,165,662,153,985,134,1314,121,1571,114"/>
<area shape="rect" href="catch__event_8cpp.html" title=" " alt="" coords="2147,269,2297,309"/>
<area shape="poly" title=" " alt="" coords="1777,133,1864,153,1953,179,2079,224,2181,267,2179,272,2077,229,1952,184,1862,159,1776,138"/>
<area shape="poly" title=" " alt="" coords="1777,118,2096,140,2292,157,2489,179,3009,267,3020,269,3019,274,3008,272,2488,184,2291,162,2095,145,1777,123"/>
<area shape="rect" href="collapsible_8cpp.html" title=" " alt="" coords="2321,269,2472,309"/>
<area shape="poly" title=" " alt="" coords="1777,129,1896,151,2025,179,2197,224,2339,267,2337,272,2195,229,2024,184,1895,156,1776,134"/>
<area shape="poly" title=" " alt="" coords="1571,120,1055,141,777,160,662,171,575,184,498,202,422,226,300,272,298,267,421,221,496,197,573,179,661,166,776,154,1055,136,1571,115"/>
<area shape="rect" href="container_8cpp.html" title=" " alt="" coords="2496,269,2647,309"/>
<area shape="poly" title=" " alt="" coords="1777,125,1938,148,2117,179,2326,224,2500,267,2499,272,2325,229,2116,184,1937,153,1777,130"/>
<area shape="rect" href="dropdown_8cpp.html" title=" " alt="" coords="2671,269,2821,309"/>
<area shape="poly" title=" " alt="" coords="1778,122,1984,145,2224,179,2442,219,2660,267,2671,269,2670,274,2659,272,2441,225,2223,184,1983,151,1777,127"/>
<area shape="poly" title=" " alt="" coords="1571,120,1362,127,1104,139,856,158,755,170,677,184,636,198,580,221,470,272,468,267,578,216,634,193,676,179,754,165,856,152,1104,134,1362,121,1571,114"/>
<area shape="poly" title=" " alt="" coords="1571,117,1372,119,1130,128,1010,137,900,148,806,164,736,184,713,197,684,220,627,271,623,267,680,216,710,193,734,179,805,159,899,143,1010,131,1130,123,1372,114,1571,112"/>
<area shape="rect" href="maybe_8cpp.html" title=" " alt="" coords="2845,269,2996,309"/>
<area shape="poly" title=" " alt="" coords="1778,120,2038,142,2349,179,2593,218,2835,267,2846,269,2845,274,2833,272,2592,223,2348,184,2037,148,1777,125"/>
<area shape="poly" title=" " alt="" coords="1601,140,1466,184,1208,272,1206,267,1464,179,1600,135"/>
<area shape="rect" href="modal_8cpp.html" title=" " alt="" coords="1601,269,1752,309"/>
<area shape="poly" title=" " alt="" coords="1677,147,1679,269,1674,269,1672,147"/>
<area shape="poly" title=" " alt="" coords="1625,142,1366,272,1364,267,1623,137"/>
<area shape="poly" title=" " alt="" coords="1778,116,2152,135,2387,153,2624,179,2733,197,2842,219,3013,242,3184,267,3195,269,3194,274,3183,272,3012,247,2842,224,2732,203,2623,184,2386,159,2151,140,1778,121"/>
<area shape="poly" title=" " alt="" coords="1777,116,2203,136,2476,154,2752,179,3056,215,3358,267,3370,269,3369,274,3358,272,3055,220,2751,184,2475,160,2202,141,1777,121"/>
<area shape="poly" title=" " alt="" coords="1647,145,1523,271,1519,267,1644,141"/>
<area shape="rect" href="component_2util_8cpp.html" title=" " alt="" coords="1776,269,1927,309"/>
<area shape="poly" title=" " alt="" coords="1694,144,1719,182,1752,219,1784,246,1818,267,1815,271,1781,250,1748,223,1715,185,1689,147"/>
<area shape="rect" href="loop_8hpp.html" title=" " alt="" coords="1001,181,1179,221"/>
<area shape="poly" title=" " alt="" coords="1571,132,1180,190,1179,184,1570,127"/>
<area shape="poly" title=" " alt="" coords="1572,136,1349,184,1175,230,1029,272,1027,267,1173,225,1348,179,1571,131"/>
<area shape="poly" title=" " alt="" coords="1748,208,888,237,432,255,168,272,157,274,156,268,167,267,432,250,888,231,1748,203"/>
<area shape="poly" title=" " alt="" coords="1946,222,2147,268,2146,273,1945,227"/>
<area shape="poly" title=" " alt="" coords="1954,201,2150,205,2413,215,2709,235,2861,249,3009,267,3020,268,3019,274,3008,272,2860,254,2709,240,2412,220,2150,210,1954,206"/>
<area shape="poly" title=" " alt="" coords="1955,213,2121,236,2309,267,2321,269,2320,274,2308,272,2120,242,1954,218"/>
<area shape="poly" title=" " alt="" coords="1748,209,978,238,575,256,342,272,331,274,330,268,342,267,575,251,977,233,1748,204"/>
<area shape="rect" href="component__fuzzer_8cpp.html" title=" " alt="" coords="1951,269,2123,309"/>
<area shape="poly" title=" " alt="" coords="1906,225,1997,267,1995,272,1903,230"/>
<area shape="poly" title=" " alt="" coords="1954,207,2197,230,2341,246,2485,267,2496,269,2495,274,2484,272,2341,252,2197,235,1954,213"/>
<area shape="poly" title=" " alt="" coords="1955,204,2270,224,2465,242,2660,267,2671,268,2670,274,2659,272,2464,247,2270,229,1954,210"/>
<area shape="poly" title=" " alt="" coords="1748,208,1120,231,772,250,627,261,517,272,506,274,505,268,516,267,627,255,771,245,1120,226,1748,203"/>
<area shape="poly" title=" " alt="" coords="1748,206,1552,210,1289,220,992,240,840,254,692,272,681,274,680,268,691,267,839,249,991,235,1289,215,1552,205,1748,201"/>
<area shape="poly" title=" " alt="" coords="1955,202,2123,208,2342,219,2588,238,2834,267,2846,268,2845,274,2834,272,2587,244,2342,225,2123,213,1954,207"/>
<area shape="poly" title=" " alt="" coords="1749,213,1515,236,1240,272,1229,274,1228,269,1239,267,1515,230,1748,208"/>
<area shape="poly" title=" " alt="" coords="1802,230,1716,272,1714,267,1800,225"/>
<area shape="poly" title=" " alt="" coords="1749,219,1591,242,1414,272,1403,274,1402,269,1414,267,1590,237,1748,214"/>
<area shape="poly" title=" " alt="" coords="1954,199,2177,202,2482,211,2831,231,3009,247,3184,267,3195,268,3194,274,3183,272,3009,252,2831,236,2482,216,2177,207,1954,205"/>
<area shape="poly" title=" " alt="" coords="1954,202,2664,224,3065,243,3232,254,3358,267,3370,268,3369,274,3358,272,3231,259,3065,248,2664,229,1954,208"/>
<area shape="poly" title=" " alt="" coords="1762,227,1579,272,1577,267,1761,222"/>
<area shape="poly" title=" " alt="" coords="1854,235,1854,269,1849,269,1849,235"/>
<area shape="rect" href="loop_8cpp.html" title=" " alt="" coords="704,269,855,309"/>
<area shape="poly" title=" " alt="" coords="1009,228,848,272,847,267,1008,222"/>
<area shape="poly" title=" " alt="" coords="1053,231,995,271,992,267,1050,227"/>
<area shape="poly" title=" " alt="" coords="734,212,476,234,322,251,168,272,157,274,156,269,167,267,321,245,475,228,733,207"/>
<area shape="poly" title=" " alt="" coords="734,217,551,240,342,272,331,274,330,269,342,267,550,235,733,212"/>
<area shape="poly" title=" " alt="" coords="735,226,517,272,506,274,505,269,516,267,734,221"/>
<area shape="poly" title=" " alt="" coords="774,229,656,272,655,267,772,224"/>
<area shape="poly" title=" " alt="" coords="920,222,1084,267,1083,272,919,228"/>
<area shape="poly" title=" " alt="" coords="940,216,1240,267,1252,269,1251,274,1239,272,939,221"/>
<area shape="poly" title=" " alt="" coords="940,213,989,219,1202,240,1295,249,1414,267,1427,269,1426,274,1414,272,1295,255,1201,245,988,224,940,218"/>
<area shape="poly" title=" " alt="" coords="818,234,794,271,790,268,814,232"/>
<area shape="poly" title=" " alt="" coords="878,227,939,267,936,271,876,232"/>
</map>
</div>
</div>
<p><a href="captured__mouse_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classftxui_1_1CapturedMouseInterface.html">CapturedMouseInterface</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a24b663cb6b0b262055c94d3a03bdd274" id="r_a24b663cb6b0b262055c94d3a03bdd274"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a24b663cb6b0b262055c94d3a03bdd274">CapturedMouse</a> = std::unique_ptr&lt;<a class="el" href="classftxui_1_1CapturedMouseInterface.html">CapturedMouseInterface</a>&gt;</td></tr>
<tr class="separator:a24b663cb6b0b262055c94d3a03bdd274"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var captured__mouse_8hpp =
[
[ "CapturedMouseInterface", "classftxui_1_1CapturedMouseInterface.html", null ],
[ "CapturedMouse", "captured__mouse_8hpp.html#a24b663cb6b0b262055c94d3a03bdd274", null ]
];

View File

@@ -0,0 +1,89 @@
<map id="include/ftxui/component/captured_mouse.hpp" name="include/ftxui/component/captured_mouse.hpp">
<area shape="rect" id="Node000001" title=" " alt="" coords="1127,5,1306,45"/>
<area shape="rect" id="Node000002" href="$component__base_8hpp.html" title=" " alt="" coords="1585,93,1763,133"/>
<area shape="poly" id="edge1_Node000001_Node000002" title=" " alt="" coords="1320,43,1585,93,1584,98,1319,49"/>
<area shape="rect" id="Node000004" href="$button_8cpp.html" title=" " alt="" coords="5,269,156,309"/>
<area shape="poly" id="edge52_Node000001_Node000004" title=" " alt="" coords="1114,30,997,35,855,46,701,65,549,96,421,136,299,185,193,233,117,271,115,267,191,228,296,180,420,131,548,91,700,60,854,41,997,30,1113,25"/>
<area shape="rect" id="Node000006" href="$checkbox_8cpp.html" title=" " alt="" coords="3020,269,3171,309"/>
<area shape="poly" id="edge53_Node000001_Node000006" title=" " alt="" coords="1320,31,1554,50,1877,81,2248,124,2624,179,2844,223,3025,267,3024,272,2843,228,2623,184,2248,129,1877,86,1553,56,1319,37"/>
<area shape="rect" id="Node000008" href="$component_8cpp.html" title=" " alt="" coords="180,269,331,309"/>
<area shape="poly" id="edge54_Node000001_Node000008" title=" " alt="" coords="1114,32,1017,37,903,49,781,68,661,96,550,136,443,185,352,233,287,272,284,267,350,229,441,180,548,131,660,91,780,62,902,43,1017,32,1114,26"/>
<area shape="rect" id="Node000012" href="$hoverable_8cpp.html" title=" " alt="" coords="355,269,505,309"/>
<area shape="poly" id="edge55_Node000001_Node000012" title=" " alt="" coords="1113,32,1033,39,942,50,846,69,754,96,663,136,578,185,506,233,455,271,452,267,503,229,575,180,660,131,752,91,845,64,941,45,1033,33,1113,27"/>
<area shape="rect" id="Node000013" href="$input_8cpp.html" title=" " alt="" coords="529,269,680,309"/>
<area shape="poly" id="edge56_Node000001_Node000013" title=" " alt="" coords="1114,35,1014,49,899,75,840,94,783,119,728,148,678,183,658,204,640,227,615,271,611,268,636,224,654,200,675,179,726,144,781,114,839,89,898,70,1013,43,1113,30"/>
<area shape="rect" id="Node000015" href="$menu_8cpp.html" title=" " alt="" coords="1077,269,1228,309"/>
<area shape="poly" id="edge57_Node000001_Node000015" title=" " alt="" coords="1219,59,1213,135,1206,179,1194,222,1182,248,1169,271,1164,268,1178,246,1189,220,1200,178,1208,134,1214,59"/>
<area shape="rect" id="Node000017" href="$radiobox_8cpp.html" title=" " alt="" coords="1252,269,1403,309"/>
<area shape="poly" id="edge58_Node000001_Node000017" title=" " alt="" coords="1232,57,1322,268,1317,270,1227,59"/>
<area shape="rect" id="Node000018" href="$renderer_8cpp.html" title=" " alt="" coords="3195,269,3345,309"/>
<area shape="poly" id="edge59_Node000001_Node000018" title=" " alt="" coords="1320,29,1692,50,1926,68,2162,91,2452,129,2740,179,2990,226,3195,269,3194,274,2989,232,2739,184,2451,134,2162,96,1926,73,1692,55,1320,34"/>
<area shape="rect" id="Node000019" href="$resizable__split_8cpp.html" title=" " alt="" coords="3369,269,3520,309"/>
<area shape="poly" id="edge60_Node000001_Node000019" title=" " alt="" coords="1320,27,1760,45,2044,64,2330,91,2481,110,2597,130,2862,179,3111,221,3359,267,3370,269,3369,274,3357,272,3110,226,2862,184,2596,135,2480,115,2330,96,2043,69,1760,51,1320,32"/>
<area shape="rect" id="Node000020" href="$slider_8cpp.html" title=" " alt="" coords="1427,269,1577,309"/>
<area shape="poly" id="edge62_Node000001_Node000020" title=" " alt="" coords="1249,53,1483,267,1479,271,1245,57"/>
<area shape="rect" id="Node000024" href="$screen__interactive_8cpp.html" title=" " alt="" coords="879,269,1053,309"/>
<area shape="poly" id="edge61_Node000001_Node000024" title=" " alt="" coords="1159,54,1116,76,1070,105,1027,140,991,183,980,204,973,227,969,269,963,269,968,226,975,202,986,180,1023,137,1067,100,1113,71,1156,49"/>
<area shape="rect" id="Node000025" href="$screen__interactive_8hpp.html" title=" " alt="" coords="747,181,926,221"/>
<area shape="poly" id="edge42_Node000001_Node000025" title=" " alt="" coords="1114,41,1030,61,987,76,946,96,917,115,891,138,852,183,848,179,888,135,914,111,943,91,984,71,1028,56,1113,36"/>
<area shape="rect" id="Node000003" href="$component_8hpp.html" title=" " alt="" coords="1762,181,1941,221"/>
<area shape="poly" id="edge2_Node000002_Node000003" title=" " alt="" coords="1726,137,1814,179,1811,184,1724,142"/>
<area shape="poly" id="edge24_Node000002_Node000004" title=" " alt="" coords="1571,120,1315,127,985,140,662,158,529,170,428,184,344,202,262,226,129,272,128,267,261,221,343,197,427,179,528,165,662,153,985,134,1314,121,1571,114"/>
<area shape="rect" id="Node000005" href="$catch__event_8cpp.html" title=" " alt="" coords="2147,269,2297,309"/>
<area shape="poly" id="edge25_Node000002_Node000005" title=" " alt="" coords="1777,133,1864,153,1953,179,2079,224,2181,267,2179,272,2077,229,1952,184,1862,159,1776,138"/>
<area shape="poly" id="edge26_Node000002_Node000006" title=" " alt="" coords="1777,118,2096,140,2292,157,2489,179,3009,267,3020,269,3019,274,3008,272,2488,184,2291,162,2095,145,1777,123"/>
<area shape="rect" id="Node000007" href="$collapsible_8cpp.html" title=" " alt="" coords="2321,269,2472,309"/>
<area shape="poly" id="edge27_Node000002_Node000007" title=" " alt="" coords="1777,129,1896,151,2025,179,2197,224,2339,267,2337,272,2195,229,2024,184,1895,156,1776,134"/>
<area shape="poly" id="edge28_Node000002_Node000008" title=" " alt="" coords="1571,120,1055,141,777,160,662,171,575,184,498,202,422,226,300,272,298,267,421,221,496,197,573,179,661,166,776,154,1055,136,1571,115"/>
<area shape="rect" id="Node000010" href="$container_8cpp.html" title=" " alt="" coords="2496,269,2647,309"/>
<area shape="poly" id="edge29_Node000002_Node000010" title=" " alt="" coords="1777,125,1938,148,2117,179,2326,224,2500,267,2499,272,2325,229,2116,184,1937,153,1777,130"/>
<area shape="rect" id="Node000011" href="$dropdown_8cpp.html" title=" " alt="" coords="2671,269,2821,309"/>
<area shape="poly" id="edge30_Node000002_Node000011" title=" " alt="" coords="1778,122,1984,145,2224,179,2442,219,2660,267,2671,269,2670,274,2659,272,2441,225,2223,184,1983,151,1777,127"/>
<area shape="poly" id="edge31_Node000002_Node000012" title=" " alt="" coords="1571,120,1362,127,1104,139,856,158,755,170,677,184,636,198,580,221,470,272,468,267,578,216,634,193,676,179,754,165,856,152,1104,134,1362,121,1571,114"/>
<area shape="poly" id="edge32_Node000002_Node000013" title=" " alt="" coords="1571,117,1372,119,1130,128,1010,137,900,148,806,164,736,184,713,197,684,220,627,271,623,267,680,216,710,193,734,179,805,159,899,143,1010,131,1130,123,1372,114,1571,112"/>
<area shape="rect" id="Node000014" href="$maybe_8cpp.html" title=" " alt="" coords="2845,269,2996,309"/>
<area shape="poly" id="edge33_Node000002_Node000014" title=" " alt="" coords="1778,120,2038,142,2349,179,2593,218,2835,267,2846,269,2845,274,2833,272,2592,223,2348,184,2037,148,1777,125"/>
<area shape="poly" id="edge34_Node000002_Node000015" title=" " alt="" coords="1601,140,1466,184,1208,272,1206,267,1464,179,1600,135"/>
<area shape="rect" id="Node000016" href="$modal_8cpp.html" title=" " alt="" coords="1601,269,1752,309"/>
<area shape="poly" id="edge35_Node000002_Node000016" title=" " alt="" coords="1677,147,1679,269,1674,269,1672,147"/>
<area shape="poly" id="edge36_Node000002_Node000017" title=" " alt="" coords="1625,142,1366,272,1364,267,1623,137"/>
<area shape="poly" id="edge37_Node000002_Node000018" title=" " alt="" coords="1778,116,2152,135,2387,153,2624,179,2733,197,2842,219,3013,242,3184,267,3195,269,3194,274,3183,272,3012,247,2842,224,2732,203,2623,184,2386,159,2151,140,1778,121"/>
<area shape="poly" id="edge38_Node000002_Node000019" title=" " alt="" coords="1777,116,2203,136,2476,154,2752,179,3056,215,3358,267,3370,269,3369,274,3358,272,3055,220,2751,184,2475,160,2202,141,1777,121"/>
<area shape="poly" id="edge40_Node000002_Node000020" title=" " alt="" coords="1647,145,1523,271,1519,267,1644,141"/>
<area shape="rect" id="Node000021" href="$component_2util_8cpp.html" title=" " alt="" coords="1776,269,1927,309"/>
<area shape="poly" id="edge41_Node000002_Node000021" title=" " alt="" coords="1694,144,1719,182,1752,219,1784,246,1818,267,1815,271,1781,250,1748,223,1715,185,1689,147"/>
<area shape="rect" id="Node000022" href="$loop_8hpp.html" title=" " alt="" coords="1001,181,1179,221"/>
<area shape="poly" id="edge21_Node000002_Node000022" title=" " alt="" coords="1571,132,1180,190,1179,184,1570,127"/>
<area shape="poly" id="edge39_Node000002_Node000024" title=" " alt="" coords="1572,136,1349,184,1175,230,1029,272,1027,267,1173,225,1348,179,1571,131"/>
<area shape="poly" id="edge3_Node000003_Node000004" title=" " alt="" coords="1748,208,888,237,432,255,168,272,157,274,156,268,167,267,432,250,888,231,1748,203"/>
<area shape="poly" id="edge4_Node000003_Node000005" title=" " alt="" coords="1946,222,2147,268,2146,273,1945,227"/>
<area shape="poly" id="edge5_Node000003_Node000006" title=" " alt="" coords="1954,201,2150,205,2413,215,2709,235,2861,249,3009,267,3020,268,3019,274,3008,272,2860,254,2709,240,2412,220,2150,210,1954,206"/>
<area shape="poly" id="edge6_Node000003_Node000007" title=" " alt="" coords="1955,213,2121,236,2309,267,2321,269,2320,274,2308,272,2120,242,1954,218"/>
<area shape="poly" id="edge7_Node000003_Node000008" title=" " alt="" coords="1748,209,978,238,575,256,342,272,331,274,330,268,342,267,575,251,977,233,1748,204"/>
<area shape="rect" id="Node000009" href="$component__fuzzer_8cpp.html" title=" " alt="" coords="1951,269,2123,309"/>
<area shape="poly" id="edge8_Node000003_Node000009" title=" " alt="" coords="1906,225,1997,267,1995,272,1903,230"/>
<area shape="poly" id="edge9_Node000003_Node000010" title=" " alt="" coords="1954,207,2197,230,2341,246,2485,267,2496,269,2495,274,2484,272,2341,252,2197,235,1954,213"/>
<area shape="poly" id="edge10_Node000003_Node000011" title=" " alt="" coords="1955,204,2270,224,2465,242,2660,267,2671,268,2670,274,2659,272,2464,247,2270,229,1954,210"/>
<area shape="poly" id="edge11_Node000003_Node000012" title=" " alt="" coords="1748,208,1120,231,772,250,627,261,517,272,506,274,505,268,516,267,627,255,771,245,1120,226,1748,203"/>
<area shape="poly" id="edge12_Node000003_Node000013" title=" " alt="" coords="1748,206,1552,210,1289,220,992,240,840,254,692,272,681,274,680,268,691,267,839,249,991,235,1289,215,1552,205,1748,201"/>
<area shape="poly" id="edge13_Node000003_Node000014" title=" " alt="" coords="1955,202,2123,208,2342,219,2588,238,2834,267,2846,268,2845,274,2834,272,2587,244,2342,225,2123,213,1954,207"/>
<area shape="poly" id="edge14_Node000003_Node000015" title=" " alt="" coords="1749,213,1515,236,1240,272,1229,274,1228,269,1239,267,1515,230,1748,208"/>
<area shape="poly" id="edge15_Node000003_Node000016" title=" " alt="" coords="1802,230,1716,272,1714,267,1800,225"/>
<area shape="poly" id="edge16_Node000003_Node000017" title=" " alt="" coords="1749,219,1591,242,1414,272,1403,274,1402,269,1414,267,1590,237,1748,214"/>
<area shape="poly" id="edge17_Node000003_Node000018" title=" " alt="" coords="1954,199,2177,202,2482,211,2831,231,3009,247,3184,267,3195,268,3194,274,3183,272,3009,252,2831,236,2482,216,2177,207,1954,205"/>
<area shape="poly" id="edge18_Node000003_Node000019" title=" " alt="" coords="1954,202,2664,224,3065,243,3232,254,3358,267,3370,268,3369,274,3358,272,3231,259,3065,248,2664,229,1954,208"/>
<area shape="poly" id="edge19_Node000003_Node000020" title=" " alt="" coords="1762,227,1579,272,1577,267,1761,222"/>
<area shape="poly" id="edge20_Node000003_Node000021" title=" " alt="" coords="1854,235,1854,269,1849,269,1849,235"/>
<area shape="rect" id="Node000023" href="$loop_8cpp.html" title=" " alt="" coords="704,269,855,309"/>
<area shape="poly" id="edge22_Node000022_Node000023" title=" " alt="" coords="1009,228,848,272,847,267,1008,222"/>
<area shape="poly" id="edge23_Node000022_Node000024" title=" " alt="" coords="1053,231,995,271,992,267,1050,227"/>
<area shape="poly" id="edge43_Node000025_Node000004" title=" " alt="" coords="734,212,476,234,322,251,168,272,157,274,156,269,167,267,321,245,475,228,733,207"/>
<area shape="poly" id="edge44_Node000025_Node000008" title=" " alt="" coords="734,217,551,240,342,272,331,274,330,269,342,267,550,235,733,212"/>
<area shape="poly" id="edge45_Node000025_Node000012" title=" " alt="" coords="735,226,517,272,506,274,505,269,516,267,734,221"/>
<area shape="poly" id="edge46_Node000025_Node000013" title=" " alt="" coords="774,229,656,272,655,267,772,224"/>
<area shape="poly" id="edge48_Node000025_Node000015" title=" " alt="" coords="920,222,1084,267,1083,272,919,228"/>
<area shape="poly" id="edge49_Node000025_Node000017" title=" " alt="" coords="940,216,1240,267,1252,269,1251,274,1239,272,939,221"/>
<area shape="poly" id="edge51_Node000025_Node000020" title=" " alt="" coords="940,213,989,219,1202,240,1295,249,1414,267,1427,269,1426,274,1414,272,1295,255,1201,245,988,224,940,218"/>
<area shape="poly" id="edge47_Node000025_Node000023" title=" " alt="" coords="818,234,794,271,790,268,814,232"/>
<area shape="poly" id="edge50_Node000025_Node000024" title=" " alt="" coords="878,227,939,267,936,271,876,232"/>
</map>

View File

@@ -0,0 +1 @@
1cabd9794f927f377ef3815eaa947d32

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

View File

@@ -0,0 +1,192 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: include/ftxui/component/captured_mouse.hpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('captured__mouse_8hpp_source.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">captured_mouse.hpp</div></div>
</div><!--header-->
<div class="contents">
<a href="captured__mouse_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef FTXUI_CAPTURED_MOUSE_HPP</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define FTXUI_CAPTURED_MOUSE_HPP</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="classftxui_1_1CapturedMouseInterface.html"> 7</a></span><span class="keyword">class </span><a class="code hl_class" href="classftxui_1_1CapturedMouseInterface.html">CapturedMouseInterface</a> {</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="classftxui_1_1CapturedMouseInterface.html#af35148d7f798953f8d7e8c1a0e2b2ef0"> 9</a></span> <span class="keyword">virtual</span> <a class="code hl_function" href="classftxui_1_1CapturedMouseInterface.html#af35148d7f798953f8d7e8c1a0e2b2ef0">~CapturedMouseInterface</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span>};</div>
</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a24b663cb6b0b262055c94d3a03bdd274"> 11</a></span><span class="keyword">using </span><a class="code hl_typedef" href="namespaceftxui.html#a24b663cb6b0b262055c94d3a03bdd274">CapturedMouse</a> = std::unique_ptr&lt;CapturedMouseInterface&gt;;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#endif </span><span class="comment">/* end of include guard: FTXUI_CAPTURED_MOUSE_HPP */</span><span class="preprocessor"></span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="aclassftxui_1_1CapturedMouseInterface_html"><div class="ttname"><a href="classftxui_1_1CapturedMouseInterface.html">ftxui::CapturedMouseInterface</a></div><div class="ttdef"><b>Definition</b> <a href="#l00007">captured_mouse.hpp:7</a></div></div>
<div class="ttc" id="aclassftxui_1_1CapturedMouseInterface_html_af35148d7f798953f8d7e8c1a0e2b2ef0"><div class="ttname"><a href="classftxui_1_1CapturedMouseInterface.html#af35148d7f798953f8d7e8c1a0e2b2ef0">ftxui::CapturedMouseInterface::~CapturedMouseInterface</a></div><div class="ttdeci">virtual ~CapturedMouseInterface()=default</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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a24b663cb6b0b262055c94d3a03bdd274"><div class="ttname"><a href="namespaceftxui.html#a24b663cb6b0b262055c94d3a03bdd274">ftxui::CapturedMouse</a></div><div class="ttdeci">std::unique_ptr&lt; CapturedMouseInterface &gt; CapturedMouse</div><div class="ttdef"><b>Definition</b> <a href="#l00011">captured_mouse.hpp:11</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,188 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/catch_event.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('catch__event_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">catch_event.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="catch__event_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a0bfd67a2815807dc6fc9bc0f79bce29e" id="r_a0bfd67a2815807dc6fc9bc0f79bce29e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a0bfd67a2815807dc6fc9bc0f79bce29e">CatchEvent</a> (<a class="el" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a> child, std::function&lt; bool(<a class="el" href="structftxui_1_1Event.html">Event</a> event)&gt; on_event)</td></tr>
<tr class="memdesc:a0bfd67a2815807dc6fc9bc0f79bce29e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a component, using |on_event| to catch events. This function must returns true when the event has been handled, false otherwise. <br /></td></tr>
<tr class="separator:a0bfd67a2815807dc6fc9bc0f79bce29e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2948235799c010c76c6de861c050c59" id="r_ad2948235799c010c76c6de861c050c59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#af07b496fe512e3a4863ee546f19e9a6c">ComponentDecorator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#ad2948235799c010c76c6de861c050c59">CatchEvent</a> (std::function&lt; bool(<a class="el" href="structftxui_1_1Event.html">Event</a>)&gt; on_event)</td></tr>
<tr class="memdesc:ad2948235799c010c76c6de861c050c59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decorate a component, using |on_event| to catch events. This function must returns true when the event has been handled, false otherwise. <br /></td></tr>
<tr class="separator:ad2948235799c010c76c6de861c050c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,5 @@
var catch__event_8cpp =
[
[ "CatchEvent", "catch__event_8cpp.html#a0bfd67a2815807dc6fc9bc0f79bce29e", null ],
[ "CatchEvent", "catch__event_8cpp.html#ad2948235799c010c76c6de861c050c59", null ]
];

View File

@@ -0,0 +1,273 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/catch_event.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('catch__event_8cpp_source.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">catch_event.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="catch__event_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;functional&gt;</span> <span class="comment">// for function</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for __shared_ptr_access, __shared_ptr_access&lt;&gt;::element_type, shared_ptr</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;type_traits&gt;</span> <span class="comment">// for remove_reference, remove_reference&lt;&gt;::type</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="component_8hpp.html">ftxui/component/component.hpp</a>&quot;</span> <span class="comment">// for Make, CatchEvent, ComponentDecorator</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="component__base_8hpp.html">ftxui/component/component_base.hpp</a>&quot;</span> <span class="comment">// for Component, ComponentBase</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="event_8hpp.html">ftxui/component/event.hpp</a>&quot;</span> <span class="comment">// for Event</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">class </span>CatchEventBase : <span class="keyword">public</span> ComponentBase {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// Constructor.</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">explicit</span> CatchEventBase(std::function&lt;<span class="keywordtype">bool</span>(Event)&gt; on_event)</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> : on_event_(std::move(on_event)) {}</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="comment">// Component implementation.</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordtype">bool</span> OnEvent(Event event)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">if</span> (on_event_(event)) {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keywordflow">return</span> <a class="code hl_function" href="classftxui_1_1ComponentBase.html#ab84629a8fecad2e1cdd426b7ddc72277">ComponentBase::OnEvent</a>(event);</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> }</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> }</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">protected</span>:</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> std::function&lt;bool(Event)&gt; on_event_;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span>};</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment"></span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment">/// @brief Return a component, using |on_event| to catch events. This function</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="comment">/// must returns true when the event has been handled, false otherwise.</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="comment">/// @param child The wrapped component.</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="comment">/// @param on_event The function drawing the interface.</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="comment">/// @ingroup component</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="comment">///</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">///</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment">/// auto screen = ScreenInteractive::TerminalOutput();</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="comment">/// auto renderer = Renderer([] {</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="comment">/// return text(&quot;My interface&quot;);</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="comment">/// });</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="comment">/// auto component = CatchEvent(renderer, [&amp;](Event event) {</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="comment">/// if (event == Event::Character(&#39;q&#39;)) {</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="comment">/// screen.ExitLoopClosure()();</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment">/// return true;</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="comment">/// }</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="comment">/// return false;</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="comment">/// });</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span><span class="comment">/// screen.Loop(component);</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00053" data-start="{" data-end="}">
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a0bfd67a2815807dc6fc9bc0f79bce29e"> 53</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a> <a class="code hl_function" href="namespaceftxui.html#afa5872ba3f9889c7487e57e745e56857">CatchEvent</a>(<a class="code hl_typedef" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a> child,</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> std::function&lt;<span class="keywordtype">bool</span>(<a class="code hl_struct" href="structftxui_1_1Event.html">Event</a> event)&gt; on_event) {</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keyword">auto</span> out = <a class="code hl_function" href="namespaceftxui.html#a2b8973dc71334f1d98e2e6f55de8b5ae">Make&lt;CatchEventBase&gt;</a>(std::move(on_event));</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> out-&gt;Add(std::move(child));</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> out;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>}</div>
</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="comment"></span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span><span class="comment">/// @brief Decorate a component, using |on_event| to catch events. This function</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="comment">/// must returns true when the event has been handled, false otherwise.</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="comment">/// @param on_event The function drawing the interface.</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="comment">/// @ingroup component</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span><span class="comment">///</span></div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span><span class="comment">///</span></div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span><span class="comment">/// auto screen = ScreenInteractive::TerminalOutput();</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="comment">/// auto renderer = Renderer([] { return text(&quot;Hello world&quot;); });</span></div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="comment">/// renderer |= CatchEvent([&amp;](Event event) {</span></div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span><span class="comment">/// if (event == Event::Character(&#39;q&#39;)) {</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span><span class="comment">/// screen.ExitLoopClosure()();</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="comment">/// return true;</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span><span class="comment">/// }</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="comment">/// return false;</span></div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><span class="comment">/// });</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="comment">/// screen.Loop(renderer);</span></div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00079" data-start="{" data-end="}">
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="namespaceftxui.html#ad2948235799c010c76c6de861c050c59"> 79</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#af07b496fe512e3a4863ee546f19e9a6c">ComponentDecorator</a> <a class="code hl_function" href="namespaceftxui.html#afa5872ba3f9889c7487e57e745e56857">CatchEvent</a>(std::function&lt;<span class="keywordtype">bool</span>(<a class="code hl_struct" href="structftxui_1_1Event.html">Event</a>)&gt; on_event) {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">return</span> [on_event = std::move(on_event)](<a class="code hl_typedef" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a> child) {</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceftxui.html#afa5872ba3f9889c7487e57e745e56857">CatchEvent</a>(std::move(child), [on_event = on_event](<a class="code hl_struct" href="structftxui_1_1Event.html">Event</a> event) {</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">return</span> on_event(std::move(event));</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> });</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> };</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>}</div>
</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span><span class="comment">// Copyright 2021 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="aclassftxui_1_1ComponentBase_html_ab84629a8fecad2e1cdd426b7ddc72277"><div class="ttname"><a href="classftxui_1_1ComponentBase.html#ab84629a8fecad2e1cdd426b7ddc72277">ftxui::ComponentBase::OnEvent</a></div><div class="ttdeci">virtual bool OnEvent(Event)</div><div class="ttdoc">Called in response to an event.</div><div class="ttdef"><b>Definition</b> <a href="component_8cpp_source.html#l00103">component.cpp:103</a></div></div>
<div class="ttc" id="acomponent_8hpp_html"><div class="ttname"><a href="component_8hpp.html">component.hpp</a></div></div>
<div class="ttc" id="acomponent__base_8hpp_html"><div class="ttname"><a href="component__base_8hpp.html">component_base.hpp</a></div></div>
<div class="ttc" id="aevent_8hpp_html"><div class="ttname"><a href="event_8hpp.html">event.hpp</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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2b8973dc71334f1d98e2e6f55de8b5ae"><div class="ttname"><a href="namespaceftxui.html#a2b8973dc71334f1d98e2e6f55de8b5ae">ftxui::Make</a></div><div class="ttdeci">std::shared_ptr&lt; T &gt; Make(Args &amp;&amp;... args)</div><div class="ttdef"><b>Definition</b> <a href="component_8hpp_source.html#l00025">component.hpp:25</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af07b496fe512e3a4863ee546f19e9a6c"><div class="ttname"><a href="namespaceftxui.html#af07b496fe512e3a4863ee546f19e9a6c">ftxui::ComponentDecorator</a></div><div class="ttdeci">std::function&lt; Component(Component)&gt; ComponentDecorator</div><div class="ttdef"><b>Definition</b> <a href="component_8hpp_source.html#l00030">component.hpp:30</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af1479ede01dbf087342534ab4ada11d3"><div class="ttname"><a href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">ftxui::Component</a></div><div class="ttdeci">std::shared_ptr&lt; ComponentBase &gt; Component</div><div class="ttdef"><b>Definition</b> <a href="component__base_8hpp_source.html#l00021">component_base.hpp:21</a></div></div>
<div class="ttc" id="anamespaceftxui_html_afa5872ba3f9889c7487e57e745e56857"><div class="ttname"><a href="namespaceftxui.html#afa5872ba3f9889c7487e57e745e56857">ftxui::CatchEvent</a></div><div class="ttdeci">Component CatchEvent(Component child, std::function&lt; bool(Event)&gt;)</div></div>
<div class="ttc" id="astructftxui_1_1Event_html"><div class="ttname"><a href="structftxui_1_1Event.html">ftxui::Event</a></div><div class="ttdoc">Represent an event. It can be key press event, a terminal resize, or more ...</div><div class="ttdef"><b>Definition</b> <a href="event_8hpp_source.html#l00026">event.hpp:26</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,185 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/checkbox.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('checkbox_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">checkbox.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="checkbox_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a04e40e348dee25bbbfce0a13bf234e19" id="r_a04e40e348dee25bbbfce0a13bf234e19"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a04e40e348dee25bbbfce0a13bf234e19">Checkbox</a> (<a class="el" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> label, bool *checked, <a class="el" href="classftxui_1_1Ref.html">Ref</a>&lt; <a class="el" href="structftxui_1_1CheckboxOption.html">CheckboxOption</a> &gt; option)</td></tr>
<tr class="memdesc:a04e40e348dee25bbbfce0a13bf234e19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draw checkable element. <br /></td></tr>
<tr class="separator:a04e40e348dee25bbbfce0a13bf234e19"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var checkbox_8cpp =
[
[ "Checkbox", "checkbox_8cpp.html#a04e40e348dee25bbbfce0a13bf234e19", null ]
];

View File

@@ -0,0 +1,318 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/checkbox.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('checkbox_8cpp_source.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">checkbox.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="checkbox_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;functional&gt;</span> <span class="comment">// for function</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;<a class="code" href="captured__mouse_8hpp.html">ftxui/component/captured_mouse.hpp</a>&quot;</span> <span class="comment">// for CapturedMouse</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="component_8hpp.html">ftxui/component/component.hpp</a>&quot;</span> <span class="comment">// for Make, Checkbox</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="component__base_8hpp.html">ftxui/component/component_base.hpp</a>&quot;</span> <span class="comment">// for Component, ComponentBase</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="component__options_8hpp.html">ftxui/component/component_options.hpp</a>&quot;</span> <span class="comment">// for CheckboxOption, EntryState</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="event_8hpp.html">ftxui/component/event.hpp</a>&quot;</span> <span class="comment">// for Event, Event::Return</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;<a class="code" href="mouse_8hpp.html">ftxui/component/mouse.hpp</a>&quot;</span> <span class="comment">// for Mouse, Mouse::Left, Mouse::Pressed</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for operator|, Element, reflect, focus, nothing, select</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;<a class="code" href="ref_8hpp.html">ftxui/util/ref.hpp</a>&quot;</span> <span class="comment">// for Ref, ConstStringRef</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="keyword">namespace </span>{</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="keyword">class </span>CheckboxBase : <span class="keyword">public</span> ComponentBase {</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> CheckboxBase(ConstStringRef label, <span class="keywordtype">bool</span>* state, Ref&lt;CheckboxOption&gt; option)</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> : label_(std::move(label)), state_(state), option_(std::move(option)) {}</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">private</span>:</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="comment">// Component implementation.</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#ad4b8aa9392f56ba41e2b421e046a7d83">Render</a>()<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> is_focused = Focused();</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> is_active = Active();</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">auto</span> focus_management = is_focused ? <a class="code hl_function" href="namespaceftxui.html#a52ee73ca2fb34afb6e6f25ac7df04b0e">focus</a> : is_active ? <a class="code hl_function" href="namespaceftxui.html#af0a483ef6e8a00023755c4637a1fcb9d">select</a> : <a class="code hl_function" href="namespaceftxui.html#a1bfd3885ac8b40dc82a1103725003c07">nothing</a>;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">auto</span> state = EntryState{</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> *label_,</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> *state_,</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> is_active,</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> is_focused || hovered_,</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> };</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">auto</span> element =</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> (option_-&gt;transform ? option_-&gt;transform</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> : <a class="code hl_function" href="structftxui_1_1CheckboxOption.html#a41b17a916980353033366c01b15d3cb1">CheckboxOption::Simple</a>().<a class="code hl_variable" href="structftxui_1_1CheckboxOption.html#afe14c161494dad905597e75661c7b6a0">transform</a>)(state);</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">return</span> element | focus_management | <a class="code hl_function" href="namespaceftxui.html#aaff8245861617a3d9e846e99de582a63">reflect</a>(box_);</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> }</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">bool</span> OnEvent(Event event)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">if</span> (!CaptureMouse(event)) {</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> }</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span> (event.is_mouse()) {</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">return</span> OnMouseEvent(event);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> }</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> hovered_ = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span> (event == Event::Character(<span class="charliteral">&#39; &#39;</span>) || event == <a class="code hl_variable" href="structftxui_1_1Event.html#ad3ab0b5bcc923c4b994080d45b97e36b">Event::Return</a>) {</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> *state_ = !*state_;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> option_-&gt;on_change();</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> TakeFocus();</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> }</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> }</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">bool</span> OnMouseEvent(Event event) {</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> hovered_ = box_.Contain(event.mouse().x, event.mouse().y);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">if</span> (!CaptureMouse(event)) {</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> }</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span> (!hovered_) {</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> }</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> </div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span> (event.mouse().button == <a class="code hl_enumvalue" href="structftxui_1_1Mouse.html#a03bfec859eac87be20f8952c1eb89de0a9d4d8b0b72fc2659da772d761a3c5ecb">Mouse::Left</a> &amp;&amp;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> event.mouse().motion == <a class="code hl_enumvalue" href="structftxui_1_1Mouse.html#a099c889d2b948b264c7a665b66e3a9b6a05f4abb2322aa023aba9570c327aff25">Mouse::Pressed</a>) {</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> *state_ = !*state_;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> option_-&gt;on_change();</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> }</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> }</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">bool</span> Focusable() const final { <span class="keywordflow">return</span> <span class="keyword">true</span>; }</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> ConstStringRef label_;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">bool</span>* <span class="keyword">const</span> state_;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="keywordtype">bool</span> hovered_ = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> Ref&lt;CheckboxOption&gt; option_;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> Box box_;</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>};</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>} <span class="comment">// namespace</span></div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span><span class="comment"></span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><span class="comment">/// @brief Draw checkable element.</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><span class="comment">/// @param label The label of the checkbox.</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span><span class="comment">/// @param checked Whether the checkbox is checked or not.</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span><span class="comment">/// @param option Additional optional parameters.</span></div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span><span class="comment">/// @ingroup component</span></div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span><span class="comment">/// @see CheckboxBase</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span><span class="comment">///</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span><span class="comment">/// ### Example</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span><span class="comment">///</span></div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span><span class="comment">/// ```cpp</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span><span class="comment">/// auto screen = ScreenInteractive::FitComponent();</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><span class="comment">/// std::string label = &quot;Make a sandwidth&quot;;</span></div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span><span class="comment">/// bool checked = false;</span></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span><span class="comment">/// Component checkbox = Checkbox(&amp;label, &amp;checked);</span></div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span><span class="comment">/// screen.Loop(checkbox)</span></div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span><span class="comment">/// ```</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span><span class="comment">///</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span><span class="comment">/// ### Output</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span><span class="comment">///</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span><span class="comment">/// ```bash</span></div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><span class="comment">/// ☐ Make a sandwitch</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span><span class="comment">/// ```</span></div>
<div class="foldopen" id="foldopen00112" data-start="{" data-end="}">
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a04e40e348dee25bbbfce0a13bf234e19"> 112</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">Component</a> <a class="code hl_function" href="namespaceftxui.html#a04e40e348dee25bbbfce0a13bf234e19">Checkbox</a>(<a class="code hl_class" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> label,</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">bool</span>* checked,</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <a class="code hl_class" href="classftxui_1_1Ref.html">Ref&lt;CheckboxOption&gt;</a> option) {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceftxui.html#a2b8973dc71334f1d98e2e6f55de8b5ae">Make&lt;CheckboxBase&gt;</a>(std::move(label), checked, std::move(option));</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span>}</div>
</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> </div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="acaptured__mouse_8hpp_html"><div class="ttname"><a href="captured__mouse_8hpp.html">captured_mouse.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1ConstStringRef_html"><div class="ttname"><a href="classftxui_1_1ConstStringRef.html">ftxui::ConstStringRef</a></div><div class="ttdoc">An adapter. Own or reference a constant string. For convenience, this class convert multiple immutabl...</div><div class="ttdef"><b>Definition</b> <a href="ref_8hpp_source.html#l00060">ref.hpp:60</a></div></div>
<div class="ttc" id="aclassftxui_1_1Ref_html"><div class="ttname"><a href="classftxui_1_1Ref.html">ftxui::Ref</a></div><div class="ttdoc">An adapter. Own or reference an mutable object.</div><div class="ttdef"><b>Definition</b> <a href="ref_8hpp_source.html#l00027">ref.hpp:27</a></div></div>
<div class="ttc" id="acomponent_8hpp_html"><div class="ttname"><a href="component_8hpp.html">component.hpp</a></div></div>
<div class="ttc" id="acomponent__base_8hpp_html"><div class="ttname"><a href="component__base_8hpp.html">component_base.hpp</a></div></div>
<div class="ttc" id="acomponent__options_8hpp_html"><div class="ttname"><a href="component__options_8hpp.html">component_options.hpp</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="aevent_8hpp_html"><div class="ttname"><a href="event_8hpp.html">event.hpp</a></div></div>
<div class="ttc" id="amouse_8hpp_html"><div class="ttname"><a href="mouse_8hpp.html">mouse.hpp</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#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a04e40e348dee25bbbfce0a13bf234e19"><div class="ttname"><a href="namespaceftxui.html#a04e40e348dee25bbbfce0a13bf234e19">ftxui::Checkbox</a></div><div class="ttdeci">Component Checkbox(ConstStringRef label, bool *checked, Ref&lt; CheckboxOption &gt; option=CheckboxOption::Simple())</div><div class="ttdoc">Draw checkable element.</div><div class="ttdef"><b>Definition</b> <a href="#l00112">checkbox.cpp:112</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a1bfd3885ac8b40dc82a1103725003c07"><div class="ttname"><a href="namespaceftxui.html#a1bfd3885ac8b40dc82a1103725003c07">ftxui::nothing</a></div><div class="ttdeci">Element nothing(Element element)</div><div class="ttdoc">A decoration doing absolutely nothing.</div><div class="ttdef"><b>Definition</b> <a href="dom_2util_8cpp_source.html#l00027">util.cpp:27</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2b8973dc71334f1d98e2e6f55de8b5ae"><div class="ttname"><a href="namespaceftxui.html#a2b8973dc71334f1d98e2e6f55de8b5ae">ftxui::Make</a></div><div class="ttdeci">std::shared_ptr&lt; T &gt; Make(Args &amp;&amp;... args)</div><div class="ttdef"><b>Definition</b> <a href="component_8hpp_source.html#l00025">component.hpp:25</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a52ee73ca2fb34afb6e6f25ac7df04b0e"><div class="ttname"><a href="namespaceftxui.html#a52ee73ca2fb34afb6e6f25ac7df04b0e">ftxui::focus</a></div><div class="ttdeci">Element focus(Element)</div><div class="ttdef"><b>Definition</b> <a href="frame_8cpp_source.html#l00083">frame.cpp:83</a></div></div>
<div class="ttc" id="anamespaceftxui_html_aaff8245861617a3d9e846e99de582a63"><div class="ttname"><a href="namespaceftxui.html#aaff8245861617a3d9e846e99de582a63">ftxui::reflect</a></div><div class="ttdeci">Decorator reflect(Box &amp;box)</div><div class="ttdef"><b>Definition</b> <a href="reflect_8cpp_source.html#l00039">reflect.cpp:39</a></div></div>
<div class="ttc" id="anamespaceftxui_html_ad4b8aa9392f56ba41e2b421e046a7d83"><div class="ttname"><a href="namespaceftxui.html#ad4b8aa9392f56ba41e2b421e046a7d83">ftxui::Render</a></div><div class="ttdeci">void Render(Screen &amp;screen, const Element &amp;element)</div><div class="ttdoc">Display an element on a ftxui::Screen.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00044">node.cpp:44</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af0a483ef6e8a00023755c4637a1fcb9d"><div class="ttname"><a href="namespaceftxui.html#af0a483ef6e8a00023755c4637a1fcb9d">ftxui::select</a></div><div class="ttdeci">Element select(Element)</div><div class="ttdef"><b>Definition</b> <a href="frame_8cpp_source.html#l00038">frame.cpp:38</a></div></div>
<div class="ttc" id="anamespaceftxui_html_af1479ede01dbf087342534ab4ada11d3"><div class="ttname"><a href="namespaceftxui.html#af1479ede01dbf087342534ab4ada11d3">ftxui::Component</a></div><div class="ttdeci">std::shared_ptr&lt; ComponentBase &gt; Component</div><div class="ttdef"><b>Definition</b> <a href="component__base_8hpp_source.html#l00021">component_base.hpp:21</a></div></div>
<div class="ttc" id="aref_8hpp_html"><div class="ttname"><a href="ref_8hpp.html">ref.hpp</a></div></div>
<div class="ttc" id="astructftxui_1_1CheckboxOption_html_a41b17a916980353033366c01b15d3cb1"><div class="ttname"><a href="structftxui_1_1CheckboxOption.html#a41b17a916980353033366c01b15d3cb1">ftxui::CheckboxOption::Simple</a></div><div class="ttdeci">static CheckboxOption Simple()</div><div class="ttdoc">Option for standard Checkbox.</div><div class="ttdef"><b>Definition</b> <a href="component__options_8cpp_source.html#l00214">component_options.cpp:214</a></div></div>
<div class="ttc" id="astructftxui_1_1CheckboxOption_html_afe14c161494dad905597e75661c7b6a0"><div class="ttname"><a href="structftxui_1_1CheckboxOption.html#afe14c161494dad905597e75661c7b6a0">ftxui::CheckboxOption::transform</a></div><div class="ttdeci">std::function&lt; Element(const EntryState &amp;)&gt; transform</div><div class="ttdef"><b>Definition</b> <a href="component__options_8hpp_source.html#l00129">component_options.hpp:129</a></div></div>
<div class="ttc" id="astructftxui_1_1Event_html_ad3ab0b5bcc923c4b994080d45b97e36b"><div class="ttname"><a href="structftxui_1_1Event.html#ad3ab0b5bcc923c4b994080d45b97e36b">ftxui::Event::Return</a></div><div class="ttdeci">static const Event Return</div><div class="ttdef"><b>Definition</b> <a href="event_8hpp_source.html#l00049">event.hpp:49</a></div></div>
<div class="ttc" id="astructftxui_1_1Mouse_html_a03bfec859eac87be20f8952c1eb89de0a9d4d8b0b72fc2659da772d761a3c5ecb"><div class="ttname"><a href="structftxui_1_1Mouse.html#a03bfec859eac87be20f8952c1eb89de0a9d4d8b0b72fc2659da772d761a3c5ecb">ftxui::Mouse::Left</a></div><div class="ttdeci">@ Left</div><div class="ttdef"><b>Definition</b> <a href="mouse_8hpp_source.html#l00010">mouse.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Mouse_html_a099c889d2b948b264c7a665b66e3a9b6a05f4abb2322aa023aba9570c327aff25"><div class="ttname"><a href="structftxui_1_1Mouse.html#a099c889d2b948b264c7a665b66e3a9b6a05f4abb2322aa023aba9570c327aff25">ftxui::Mouse::Pressed</a></div><div class="ttdeci">@ Pressed</div><div class="ttdef"><b>Definition</b> <a href="mouse_8hpp_source.html#l00020">mouse.hpp:20</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

222
en/v4.1.1/classes.html Normal file
View File

@@ -0,0 +1,222 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Data Structure Index</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classes.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">Data Structure Index</div></div>
</div><!--header-->
<div class="contents">
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a></div>
<div class="classindex">
<dl class="classindex even">
<dt class="alphachar"><a id="letter_A" name="letter_A">A</a></dt>
<dd><a class="el" href="structftxui_1_1AnimatedColorOption.html">AnimatedColorOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="namespaceftxui.html#structftxui_1_1AnimatedColorsOption">AnimatedColorsOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="namespaceftxui.html#classftxui_1_1AnimationTask">AnimationTask</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1animation_1_1Animator.html">Animator</a> (<a class="el" href="namespaceftxui_1_1animation.html">ftxui::animation</a>)</dd><dd><a class="el" href="classftxui_1_1AutoReset.html">AutoReset</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_B" name="letter_B">B</a></dt>
<dd><a class="el" href="namespaceftxui_1_1flexbox__helper.html#structftxui_1_1flexbox__helper_1_1Block">Block</a> (<a class="el" href="namespaceftxui_1_1flexbox__helper.html">ftxui::flexbox_helper</a>)</dd><dd><a class="el" href="structftxui_1_1Box.html">Box</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1ButtonOption.html">ButtonOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_C" name="letter_C">C</a></dt>
<dd><a class="el" href="structftxui_1_1Canvas.html">Canvas</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1CapturedMouseInterface.html">CapturedMouseInterface</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1CheckboxOption.html">CheckboxOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1Color.html">Color</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="namespaceftxui.html#structftxui_1_1ColorInfo">ColorInfo</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ComponentBase.html">ComponentBase</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ConstRef.html">ConstRef</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ConstStringListRef.html">ConstStringListRef</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ConstStringRef.html">ConstStringRef</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1Screen_1_1Cursor.html">Screen::Cursor</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_D" name="letter_D">D</a></dt>
<dd><a class="el" href="namespaceftxui.html#structftxui_1_1Dimensions">Dimensions</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_E" name="letter_E">E</a></dt>
<dd><a class="el" href="namespaceftxui_1_1box__helper.html#structftxui_1_1box__helper_1_1Element">Element</a> (<a class="el" href="namespaceftxui_1_1box__helper.html">ftxui::box_helper</a>)</dd><dd><a class="el" href="namespaceftxui.html#structftxui_1_1EntryState">EntryState</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1Event.html">Event</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_F" name="letter_F">F</a></dt>
<dd><a class="el" href="structftxui_1_1FlexboxConfig.html">FlexboxConfig</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_G" name="letter_G">G</a></dt>
<dd><a class="el" href="namespaceftxui_1_1flexbox__helper.html#structftxui_1_1flexbox__helper_1_1Global">Global</a> (<a class="el" href="namespaceftxui_1_1flexbox__helper.html">ftxui::flexbox_helper</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_I" name="letter_I">I</a></dt>
<dd><a class="el" href="namespaceftxui.html#structftxui_1_1InputOption">InputOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_L" name="letter_L">L</a></dt>
<dd><a class="el" href="structftxui_1_1LinearGradient.html">LinearGradient</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1Loop.html">Loop</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_M" name="letter_M">M</a></dt>
<dd><a class="el" href="namespaceftxui.html#structftxui_1_1MenuEntryOption">MenuEntryOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1MenuOption.html">MenuOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1Mouse.html">Mouse</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_N" name="letter_N">N</a></dt>
<dd><a class="el" href="classftxui_1_1Node.html">Node</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1NodeDecorator.html">NodeDecorator</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_O" name="letter_O">O</a></dt>
<dd><a class="el" href="classftxui_1_1TerminalInputParser.html#unionftxui_1_1TerminalInputParser_1_1Output_8____unnamed3____">TerminalInputParser::Output.__unnamed3__</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_P" name="letter_P">P</a></dt>
<dd><a class="el" href="classftxui_1_1animation_1_1Params.html">Params</a> (<a class="el" href="namespaceftxui_1_1animation.html">ftxui::animation</a>)</dd><dd><a class="el" href="structftxui_1_1Pixel.html">Pixel</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ScreenInteractive_1_1Private.html">ScreenInteractive::Private</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_R" name="letter_R">R</a></dt>
<dd><a class="el" href="structftxui_1_1RadioboxOption.html">RadioboxOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ReceiverImpl.html">ReceiverImpl</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1Ref.html">Ref</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1Requirement.html">Requirement</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_S" name="letter_S">S</a></dt>
<dd><a class="el" href="classftxui_1_1Screen.html">Screen</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1ScreenInteractive.html">ScreenInteractive</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1SenderImpl.html">SenderImpl</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="namespaceftxui.html#structftxui_1_1SliderOption">SliderOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1Node.html#structftxui_1_1Node_1_1Status">Node::Status</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="structftxui_1_1LinearGradient.html#structftxui_1_1LinearGradient_1_1Stop">LinearGradient::Stop</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1StringRef.html">StringRef</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_T" name="letter_T">T</a></dt>
<dd><a class="el" href="classftxui_1_1Table.html">Table</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1TableSelection.html">TableSelection</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd><dd><a class="el" href="classftxui_1_1TerminalInputParser.html">TerminalInputParser</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_U" name="letter_U">U</a></dt>
<dd><a class="el" href="structftxui_1_1UnderlineOption.html">UnderlineOption</a> (<a class="el" href="namespaceftxui.html">ftxui</a>)</dd></dl>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: AutoReset&lt; T &gt; Class Template Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1AutoReset.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">AutoReset&lt; T &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: CapturedMouseInterface Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1CapturedMouseInterface.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">CapturedMouseInterface Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Color Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1Color.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">Color Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ComponentBase Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ComponentBase.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">ComponentBase Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ConstRef&lt; T &gt; Class Template Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ConstRef.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">ConstRef&lt; T &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ConstStringListRef Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ConstStringListRef.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">ConstStringListRef Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ConstStringRef Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ConstStringRef.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">ConstStringRef Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Loop Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1Loop.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">Loop Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Node Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1Node.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">Node Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: NodeDecorator Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1NodeDecorator.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">NodeDecorator Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ReceiverImpl&lt; T &gt; Class Template Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ReceiverImpl.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">ReceiverImpl&lt; T &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Ref&lt; T &gt; Class Template Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1Ref.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">Ref&lt; T &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Screen Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1Screen.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">Screen Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ScreenInteractive Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ScreenInteractive.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">ScreenInteractive Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: ScreenInteractive::Private Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1ScreenInteractive_1_1Private.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">ScreenInteractive::Private Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: SenderImpl&lt; T &gt; Class Template Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1SenderImpl.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">SenderImpl&lt; T &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: StringRef Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1StringRef.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">StringRef Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Table Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1Table.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">Table Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: TableSelection Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1TableSelection.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">TableSelection Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: TerminalInputParser Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1TerminalInputParser.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">TerminalInputParser Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Animator Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1animation_1_1Animator.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">Animator Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,168 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: Params Class Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classftxui_1_1animation_1_1Params.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">Params Class Reference</div></div>
</div><!--header-->
<div class="contents">
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,185 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/clear_under.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('clear__under_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">clear_under.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="clear__under_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a17a89519e6b87e12b1e5811a702f7847" id="r_a17a89519e6b87e12b1e5811a702f7847"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html#a17a89519e6b87e12b1e5811a702f7847">clear_under</a> (<a class="el" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> element)</td></tr>
<tr class="memdesc:a17a89519e6b87e12b1e5811a702f7847"><td class="mdescLeft">&#160;</td><td class="mdescRight">Before drawing |child|, clear the pixels below. This is useful in. <br /></td></tr>
<tr class="separator:a17a89519e6b87e12b1e5811a702f7847"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
var clear__under_8cpp =
[
[ "clear_under", "clear__under_8cpp.html#a17a89519e6b87e12b1e5811a702f7847", null ]
];

View File

@@ -0,0 +1,226 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/dom/clear_under.cpp Source File</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('clear__under_8cpp_source.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">clear_under.cpp</div></div>
</div><!--header-->
<div class="contents">
<a href="clear__under_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &lt;memory&gt;</span> <span class="comment">// for make_shared</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;utility&gt;</span> <span class="comment">// for move</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;<a class="code" href="elements_8hpp.html">ftxui/dom/elements.hpp</a>&quot;</span> <span class="comment">// for Element, clear_under</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;<a class="code" href="node_8hpp.html">ftxui/dom/node.hpp</a>&quot;</span> <span class="comment">// for Node</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &quot;<a class="code" href="node__decorator_8hpp.html">ftxui/dom/node_decorator.hpp</a>&quot;</span> <span class="comment">// for NodeDecorator</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">ftxui/screen/box.hpp</a>&quot;</span> <span class="comment">// for Box</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;<a class="code" href="screen_8hpp.html">ftxui/screen/screen.hpp</a>&quot;</span> <span class="comment">// for Pixel, Screen</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceftxui.html">ftxui</a> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">using </span><a class="code hl_class" href="classftxui_1_1Screen.html">ftxui::Screen</a>;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">class </span>ClearUnder : <span class="keyword">public</span> NodeDecorator {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">public</span>:</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keyword">using </span><a class="code hl_function" href="classftxui_1_1NodeDecorator.html#a7e9d74ba5d480d87e8bfcaf2df66fbbe">NodeDecorator::NodeDecorator</a>;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keywordtype">void</span> Render(Screen&amp; screen)<span class="keyword"> override </span>{</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> y = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">y_min</a>; y &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">y_max</a>; ++y) {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> x = <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">x_min</a>; x &lt;= <a class="code hl_variable" href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">box_</a>.<a class="code hl_variable" href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">x_max</a>; ++x) {</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> screen.PixelAt(x, y) = Pixel();</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> }</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> }</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_function" href="classftxui_1_1Node.html#a7e286fe14880614686ceeec84a9a9702">Node::Render</a>(screen);</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> }</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>};</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"></span> </div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment">/// @brief Before drawing |child|, clear the pixels below. This is useful in</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"></span><span class="comment">// combinaison with dbox.</span><span class="comment"></span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment">/// @see ftxui::dbox</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment">/// @ingroup dom</span></div>
<div class="foldopen" id="foldopen00032" data-start="{" data-end="}">
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="namespaceftxui.html#a17a89519e6b87e12b1e5811a702f7847"> 32</a></span><span class="comment"></span><a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> <a class="code hl_function" href="namespaceftxui.html#a17a89519e6b87e12b1e5811a702f7847">clear_under</a>(<a class="code hl_typedef" href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">Element</a> element) {</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">return</span> std::make_shared&lt;ClearUnder&gt;(std::move(element));</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span>}</div>
</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span>} <span class="comment">// namespace ftxui</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="comment">// Copyright 2020 Arthur Sonzogni. All rights reserved.</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="comment">// Use of this source code is governed by the MIT license that can be found in</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="comment">// the LICENSE file.</span></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="aclassftxui_1_1NodeDecorator_html_a7e9d74ba5d480d87e8bfcaf2df66fbbe"><div class="ttname"><a href="classftxui_1_1NodeDecorator.html#a7e9d74ba5d480d87e8bfcaf2df66fbbe">ftxui::NodeDecorator::NodeDecorator</a></div><div class="ttdeci">NodeDecorator(Element child)</div><div class="ttdef"><b>Definition</b> <a href="node__decorator_8hpp_source.html#l00015">node_decorator.hpp:15</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_a7e286fe14880614686ceeec84a9a9702"><div class="ttname"><a href="classftxui_1_1Node.html#a7e286fe14880614686ceeec84a9a9702">ftxui::Node::Render</a></div><div class="ttdeci">virtual void Render(Screen &amp;screen)</div><div class="ttdoc">Display an element on a ftxui::Screen.</div><div class="ttdef"><b>Definition</b> <a href="node_8cpp_source.html#l00029">node.cpp:29</a></div></div>
<div class="ttc" id="aclassftxui_1_1Node_html_aa7e7d30102945911407723a5cbcdfabc"><div class="ttname"><a href="classftxui_1_1Node.html#aa7e7d30102945911407723a5cbcdfabc">ftxui::Node::box_</a></div><div class="ttdeci">Box box_</div><div class="ttdef"><b>Definition</b> <a href="node_8hpp_source.html#l00055">node.hpp:55</a></div></div>
<div class="ttc" id="aclassftxui_1_1Screen_html"><div class="ttname"><a href="classftxui_1_1Screen.html">ftxui::Screen</a></div><div class="ttdoc">A rectangular grid of Pixel.</div><div class="ttdef"><b>Definition</b> <a href="screen_8hpp_source.html#l00057">screen.hpp:57</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="anamespaceftxui_html"><div class="ttname"><a href="namespaceftxui.html">ftxui</a></div><div class="ttdef"><b>Definition</b> <a href="animation_8hpp_source.html#l00009">animation.hpp:9</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a17a89519e6b87e12b1e5811a702f7847"><div class="ttname"><a href="namespaceftxui.html#a17a89519e6b87e12b1e5811a702f7847">ftxui::clear_under</a></div><div class="ttdeci">Element clear_under(Element element)</div><div class="ttdoc">Before drawing |child|, clear the pixels below. This is useful in.</div><div class="ttdef"><b>Definition</b> <a href="#l00032">clear_under.cpp:32</a></div></div>
<div class="ttc" id="anamespaceftxui_html_a2bc31f2d685189e5c61d2293a1f51b4f"><div class="ttname"><a href="namespaceftxui.html#a2bc31f2d685189e5c61d2293a1f51b4f">ftxui::Element</a></div><div class="ttdeci">std::shared_ptr&lt; Node &gt; Element</div><div class="ttdef"><b>Definition</b> <a href="elements_8hpp_source.html#l00019">elements.hpp:19</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="anode__decorator_8hpp_html"><div class="ttname"><a href="node__decorator_8hpp.html">node_decorator.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="astructftxui_1_1Box_html_a5f0bb6d8a3e66525c3e6264cb8288e43"><div class="ttname"><a href="structftxui_1_1Box.html#a5f0bb6d8a3e66525c3e6264cb8288e43">ftxui::Box::x_max</a></div><div class="ttdeci">int x_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00008">box.hpp:8</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_a7941ddc7e35fffb8864af1e922814401"><div class="ttname"><a href="structftxui_1_1Box.html#a7941ddc7e35fffb8864af1e922814401">ftxui::Box::y_min</a></div><div class="ttdeci">int y_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00009">box.hpp:9</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ad033aea530fbbcf5bcd6cd98d882e3a5"><div class="ttname"><a href="structftxui_1_1Box.html#ad033aea530fbbcf5bcd6cd98d882e3a5">ftxui::Box::y_max</a></div><div class="ttdeci">int y_max</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00010">box.hpp:10</a></div></div>
<div class="ttc" id="astructftxui_1_1Box_html_ae0951dcafafdc96ac1d8361c672d47e2"><div class="ttname"><a href="structftxui_1_1Box.html#ae0951dcafafdc96ac1d8361c672d47e2">ftxui::Box::x_min</a></div><div class="ttdeci">int x_min</div><div class="ttdef"><b>Definition</b> <a href="box_8hpp_source.html#l00007">box.hpp:7</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

61
en/v4.1.1/clipboard.js Normal file
View File

@@ -0,0 +1,61 @@
/**
The code below is based on the Doxygen Awesome project, see
https://github.com/jothepro/doxygen-awesome-css
MIT License
Copyright (c) 2021 - 2022 jothepro
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
let clipboard_title = "Copy to clipboard"
let clipboard_icon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg>`
let clipboard_successIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>`
let clipboard_successDuration = 1000
$(function() {
if(navigator.clipboard) {
const fragments = document.getElementsByClassName("fragment")
for(const fragment of fragments) {
const clipboard_div = document.createElement("div")
clipboard_div.classList.add("clipboard")
clipboard_div.innerHTML = clipboard_icon
clipboard_div.title = clipboard_title
$(clipboard_div).click(function() {
const content = this.parentNode.cloneNode(true)
// filter out line number and folded fragments from file listings
content.querySelectorAll(".lineno, .ttc, .foldclosed").forEach((node) => { node.remove() })
let text = content.textContent
// remove trailing newlines and trailing spaces from empty lines
text = text.replace(/^\s*\n/gm,'\n').replace(/\n*$/,'')
navigator.clipboard.writeText(text);
this.classList.add("success")
this.innerHTML = clipboard_successIcon
window.setTimeout(() => { // switch back to normal icon after timeout
this.classList.remove("success")
this.innerHTML = clipboard_icon
}, clipboard_successDuration);
})
fragment.insertBefore(clipboard_div, fragment.firstChild)
}
}
})

BIN
en/v4.1.1/closed.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 B

View File

@@ -0,0 +1,178 @@
<!-- HTML header for doxygen 1.8.14-->
<!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="cache-control" content="max-age=86400"/>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>FTXUI: src/ftxui/component/collapsible.cpp File Reference</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>
<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_extra.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 style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">FTXUI
&#160;<span id="projectnumber">4.1.1</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&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('collapsible_8cpp.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="summary">
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">collapsible.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p><a href="collapsible_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespaceftxui.html">ftxui</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
</div>
<script>
document.addEventListener('DOMContentLoaded', function() {
const projectNumber = document.getElementById('projectnumber');
if (!projectNumber) {
console.warn('Doxygen element with ID "projectnumber" not found. Cannot add version switcher.');
return;
}
const versions = ["main", "v6.1.9", "v6.1.8", "v6.1.7", "v6.1.6", "v6.1.5", "v6.1.4", "v6.1.3", "v6.1.2", "v6.1.1", "v6.1.0", "v6.0.2", "v6.0.1", "v6.0.0", "v5.0.0", "v4.1.1", "v4.1.0", "v4.0.0", "v3.0.0", "v2.0.0", "v0.9", "v0.11", "v0.10"];
const version_paths = {"main": "../../index.html", "v6.1.9": "../v6.1.9/index.html", "v6.1.8": "../v6.1.8/index.html", "v6.1.7": "../v6.1.7/index.html", "v6.1.6": "../v6.1.6/index.html", "v6.1.5": "../v6.1.5/index.html", "v6.1.4": "../v6.1.4/index.html", "v6.1.3": "../v6.1.3/index.html", "v6.1.2": "../v6.1.2/index.html", "v6.1.1": "../v6.1.1/index.html", "v6.1.0": "../v6.1.0/index.html", "v6.0.2": "../v6.0.2/index.html", "v6.0.1": "../v6.0.1/index.html", "v6.0.0": "../v6.0.0/index.html", "v5.0.0": "../v5.0.0/index.html", "v4.1.1": "index.html", "v4.1.0": "../v4.1.0/index.html", "v4.0.0": "../v4.0.0/index.html", "v3.0.0": "../v3.0.0/index.html", "v2.0.0": "../v2.0.0/index.html", "v0.9": "../v0.9/index.html", "v0.11": "../v0.11/index.html", "v0.10": "../v0.10/index.html"};
const currentVersion = "v4.1.1";
// Sort versions: 'main' first, then others numerically descending.
versions.sort((a, b) => {
if (a === 'main') return -1;
if (b === 'main') return 1;
return b.localeCompare(a, undefined, { numeric: true, sensitivity: 'base' });
});
const select = document.createElement('select');
select.onchange = function() {
const selectedVersion = this.value;
// Navigate directly to the pre-calculated relative path.
if (selectedVersion !== currentVersion) {
window.location.href = version_paths[selectedVersion];
}
};
versions.forEach(v => {
const option = document.createElement('option');
option.value = v;
option.textContent = v;
if (v === currentVersion) {
option.selected = true;
}
select.appendChild(option);
});
// Replace the Doxygen project number element with our dropdown.
projectNumber.replaceWith(select);
// Apply some styling to make it look good.
Object.assign(select.style, {
backgroundColor: 'rgba(0, 0, 0, 0.8)',
color: 'white',
border: '1px solid rgba(255, 255, 255, 0.2)',
padding: '5px',
borderRadius: '5px',
fontSize: '14px',
fontFamily: 'inherit',
marginLeft: '10px',
cursor: 'pointer'
});
});
</script>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More