Browse Source

Doc Updated

gh-pages
Eugenio Parodi 2 years ago
parent
commit
e60be0d032
  1. 12
      _modules/TermTk/TTkWidgets/TTkTerminal/terminal.html
  2. 275
      _modules/TermTk/TTkWidgets/TTkTerminal/terminalview.html
  3. 135
      _modules/TermTk/TTkWidgets/image.html
  4. 1
      _sources/autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.rst.txt
  5. 8
      _sources/autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.rst.txt
  6. 6
      _sources/info/installing.rst.txt
  7. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.debugterminal.html
  8. 10
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.html
  9. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.mode.html
  10. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal.html
  11. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen.html
  12. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html
  13. 5
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html
  14. 158
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.html
  15. 5
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html
  16. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html
  17. 1
      autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.vt102.html
  18. 2
      autogen.TermTk/TermTk.TTkWidgets.image.html
  19. 13
      genindex.html
  20. 6
      info/installing.html
  21. BIN
      objects.inv
  22. 5
      py-modindex.html
  23. 2
      searchindex.js

12
_modules/TermTk/TTkWidgets/TTkTerminal/terminal.html

@ -144,9 +144,10 @@
<span class="sd"> &#39;&#39;&#39;</span>
<span class="vm">__slots__</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;_terminalView&#39;</span><span class="p">,</span>
<span class="c1"># Exported methods</span>
<span class="s1">&#39;runShell&#39;</span><span class="p">,</span>
<span class="s1">&#39;termWrite&#39;</span><span class="p">,</span>
<span class="c1"># Exported Signals</span>
<span class="s1">&#39;titleChanged&#39;</span><span class="p">,</span> <span class="s1">&#39;bell&#39;</span><span class="p">,</span> <span class="s1">&#39;terminalClosed&#39;</span><span class="p">,</span> <span class="s1">&#39;textSelected&#39;</span><span class="p">)</span>
<span class="s1">&#39;titleChanged&#39;</span><span class="p">,</span> <span class="s1">&#39;bell&#39;</span><span class="p">,</span> <span class="s1">&#39;terminalClosed&#39;</span><span class="p">,</span> <span class="s1">&#39;textSelected&#39;</span><span class="p">,</span>
<span class="s1">&#39;termData&#39;</span><span class="p">,</span> <span class="s1">&#39;termResized&#39;</span><span class="p">)</span>
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="n">TTkAbstractScrollArea</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="k">if</span> <span class="s1">&#39;parent&#39;</span> <span class="ow">in</span> <span class="n">kwargs</span><span class="p">:</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="s1">&#39;parent&#39;</span><span class="p">)</span>
@ -155,12 +156,15 @@
<span class="bp">self</span><span class="o">.</span><span class="n">setViewport</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="p">)</span>
<span class="c1"># Export Methods</span>
<span class="bp">self</span><span class="o">.</span><span class="n">runShell</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">runShell</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termWrite</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">termWrite</span>
<span class="c1"># Export Signals</span>
<span class="bp">self</span><span class="o">.</span><span class="n">bell</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">bell</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">termData</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termResized</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">termResized</span>
<span class="bp">self</span><span class="o">.</span><span class="n">titleChanged</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">titleChanged</span>
<span class="bp">self</span><span class="o">.</span><span class="n">bell</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">bell</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textSelected</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">textSelected</span>
<span class="bp">self</span><span class="o">.</span><span class="n">terminalClosed</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">(</span><span class="n">TTkTerminal</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_terminalView</span><span class="o">.</span><span class="n">terminalClosed</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="k">lambda</span> <span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">terminalClosed</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="bp">self</span><span class="p">))</span>

275
_modules/TermTk/TTkWidgets/TTkTerminal/terminalview.html

@ -128,35 +128,24 @@
<span class="n">__all__</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;TTkTerminalView&#39;</span><span class="p">]</span>
<span class="kn">import</span> <span class="nn">os</span><span class="o">,</span> <span class="nn">pty</span><span class="o">,</span> <span class="nn">threading</span>
<span class="kn">import</span> <span class="nn">struct</span><span class="o">,</span> <span class="nn">fcntl</span><span class="o">,</span> <span class="nn">termios</span>
<span class="kn">import</span> <span class="nn">re</span>
<span class="kn">from</span> <span class="nn">dataclasses</span> <span class="kn">import</span> <span class="n">dataclass</span>
<span class="kn">import</span> <span class="nn">re</span>
<span class="kn">from</span> <span class="nn">select</span> <span class="kn">import</span> <span class="n">select</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.canvas</span> <span class="kn">import</span> <span class="n">TTkCanvas</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.color</span> <span class="kn">import</span> <span class="n">TTkColor</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.log</span> <span class="kn">import</span> <span class="n">TTkLog</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.constant</span> <span class="kn">import</span> <span class="n">TTkK</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.cfg</span> <span class="kn">import</span> <span class="n">TTkCfg</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.string</span> <span class="kn">import</span> <span class="n">TTkString</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.signal</span> <span class="kn">import</span> <span class="n">pyTTkSignal</span><span class="p">,</span> <span class="n">pyTTkSlot</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.helper</span> <span class="kn">import</span> <span class="n">TTkHelper</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkGui.clipboard</span> <span class="kn">import</span> <span class="n">TTkClipboard</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkGui.textwrap1</span> <span class="kn">import</span> <span class="n">TTkTextWrap</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkGui.textcursor</span> <span class="kn">import</span> <span class="n">TTkTextCursor</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkGui.textdocument</span> <span class="kn">import</span> <span class="n">TTkTextDocument</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkLayouts.gridlayout</span> <span class="kn">import</span> <span class="n">TTkGridLayout</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkAbstract.abstractscrollarea</span> <span class="kn">import</span> <span class="n">TTkAbstractScrollArea</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkAbstract.abstractscrollview</span> <span class="kn">import</span> <span class="n">TTkAbstractScrollView</span><span class="p">,</span> <span class="n">TTkAbstractScrollViewGridLayout</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkWidgets.widget</span> <span class="kn">import</span> <span class="n">TTkWidget</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkAbstract.abstractscrollview</span> <span class="kn">import</span> <span class="n">TTkAbstractScrollView</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkWidgets.TTkTerminal.terminal_screen</span> <span class="kn">import</span> <span class="n">_TTkTerminalScreen</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkWidgets.TTkTerminal.mode</span> <span class="kn">import</span> <span class="n">TTkTerminalModes</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkWidgets.TTkTerminal.vt102</span> <span class="kn">import</span> <span class="n">TTkVT102</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.TTkTerm.colors</span> <span class="kn">import</span> <span class="n">TTkTermColor</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.TTkTerm.colors_ansi_map</span> <span class="kn">import</span> <span class="n">ansiMap16</span><span class="p">,</span> <span class="n">ansiMap256</span>
@ -195,48 +184,43 @@
<span class="n">reportMove</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span>
<span class="n">sgrMode</span><span class="p">:</span> <span class="nb">bool</span> <span class="o">=</span> <span class="kc">False</span>
<span class="vm">__slots__</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;_shell&#39;</span><span class="p">,</span> <span class="s1">&#39;_fd&#39;</span><span class="p">,</span> <span class="s1">&#39;_inout&#39;</span><span class="p">,</span> <span class="s1">&#39;_pid&#39;</span><span class="p">,</span>
<span class="s1">&#39;_quit_pipe&#39;</span><span class="p">,</span> <span class="s1">&#39;_resize_pipe&#39;</span><span class="p">,</span>
<span class="s1">&#39;_mode_normal&#39;</span>
<span class="s1">&#39;_clipboard&#39;</span><span class="p">,</span> <span class="s1">&#39;_selecting&#39;</span><span class="p">,</span>
<span class="s1">&#39;_buffer_lines&#39;</span><span class="p">,</span> <span class="s1">&#39;_buffer_screen&#39;</span><span class="p">,</span>
<span class="s1">&#39;_keyboard&#39;</span><span class="p">,</span> <span class="s1">&#39;_mouse&#39;</span><span class="p">,</span> <span class="s1">&#39;_terminal&#39;</span><span class="p">,</span>
<span class="s1">&#39;_screen_current&#39;</span><span class="p">,</span> <span class="s1">&#39;_screen_normal&#39;</span><span class="p">,</span> <span class="s1">&#39;_screen_alt&#39;</span><span class="p">,</span>
<span class="c1"># Signals</span>
<span class="s1">&#39;titleChanged&#39;</span><span class="p">,</span> <span class="s1">&#39;bell&#39;</span><span class="p">,</span> <span class="s1">&#39;terminalClosed&#39;</span><span class="p">,</span> <span class="s1">&#39;textSelected&#39;</span><span class="p">)</span>
<span class="vm">__slots__</span> <span class="o">=</span> <span class="p">(</span>
<span class="s1">&#39;_termLoop&#39;</span><span class="p">,</span> <span class="s1">&#39;_newSize&#39;</span><span class="p">,</span>
<span class="s1">&#39;_clipboard&#39;</span><span class="p">,</span> <span class="s1">&#39;_selecting&#39;</span><span class="p">,</span>
<span class="s1">&#39;_buffer_lines&#39;</span><span class="p">,</span> <span class="s1">&#39;_buffer_screen&#39;</span><span class="p">,</span>
<span class="s1">&#39;_keyboard&#39;</span><span class="p">,</span> <span class="s1">&#39;_mouse&#39;</span><span class="p">,</span> <span class="s1">&#39;_terminal&#39;</span><span class="p">,</span>
<span class="s1">&#39;_screen_current&#39;</span><span class="p">,</span> <span class="s1">&#39;_screen_normal&#39;</span><span class="p">,</span> <span class="s1">&#39;_screen_alt&#39;</span><span class="p">,</span>
<span class="c1"># Signals</span>
<span class="s1">&#39;bell&#39;</span><span class="p">,</span>
<span class="s1">&#39;titleChanged&#39;</span><span class="p">,</span> <span class="s1">&#39;terminalClosed&#39;</span><span class="p">,</span> <span class="s1">&#39;textSelected&#39;</span><span class="p">,</span>
<span class="s1">&#39;termData&#39;</span><span class="p">,</span><span class="s1">&#39;termResized&#39;</span><span class="p">)</span>
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="bp">self</span><span class="o">.</span><span class="n">bell</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">terminalClosed</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">titleChanged</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">(</span><span class="nb">str</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textSelected</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">(</span><span class="nb">str</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_shell</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;SHELL&#39;</span><span class="p">,</span> <span class="s1">&#39;sh&#39;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_fd</span> <span class="o">=</span> <span class="kc">None</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span> <span class="o">=</span> <span class="kc">None</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_pid</span> <span class="o">=</span> <span class="kc">None</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_mode_normal</span> <span class="o">=</span> <span class="kc">True</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span> <span class="o">=</span> <span class="kc">None</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span> <span class="o">=</span> <span class="kc">None</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">(</span><span class="nb">str</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termResized</span> <span class="o">=</span> <span class="n">pyTTkSignal</span><span class="p">(</span><span class="nb">int</span><span class="p">,</span><span class="nb">int</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span> <span class="o">=</span> <span class="kc">None</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_terminal</span> <span class="o">=</span> <span class="n">TTkTerminalView</span><span class="o">.</span><span class="n">_Terminal</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_keyboard</span> <span class="o">=</span> <span class="n">TTkTerminalView</span><span class="o">.</span><span class="n">_Keyboard</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_mouse</span> <span class="o">=</span> <span class="n">TTkTerminalView</span><span class="o">.</span><span class="n">_Mouse</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_buffer_lines</span> <span class="o">=</span> <span class="p">[</span><span class="n">TTkString</span><span class="p">()]</span>
<span class="c1"># self._screen_normal = _TTkTerminalNormalScreen()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_normal</span> <span class="o">=</span> <span class="n">_TTkTerminalScreen</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_alt</span> <span class="o">=</span> <span class="n">_TTkTerminalScreen</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_current</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_screen_normal</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_clipboard</span> <span class="o">=</span> <span class="n">TTkClipboard</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_selecting</span> <span class="o">=</span> <span class="kc">False</span>
<span class="c1"># self._screen_normal.bell.connect(lambda : _termLog.debug(&quot;BELL!!! 🔔🔔🔔&quot;))</span>
<span class="c1"># self._screen_alt.bell.connect( lambda : _termLog.debug(&quot;BELL!!! 🔔🔔🔔&quot;))</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_normal</span><span class="o">.</span><span class="n">bell</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">bell</span><span class="o">.</span><span class="n">emit</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_alt</span><span class="o">.</span><span class="n">bell</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span> <span class="bp">self</span><span class="o">.</span><span class="n">bell</span><span class="o">.</span><span class="n">emit</span><span class="p">)</span>
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_termLoop</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_loopGenerator</span><span class="p">()</span>
<span class="nb">next</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_termLoop</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_termLoop</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="s2">&quot;&quot;</span><span class="p">)</span>
<span class="c1"># self._screen_alt._CSI_MAP |= self._CSI_MAP</span>
<span class="c1"># self._screen_current._CSI_MAP |= self._CSI_MAP</span>
<span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">size</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_alt</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
@ -244,7 +228,6 @@
<span class="bp">self</span><span class="o">.</span><span class="n">setFocusPolicy</span><span class="p">(</span><span class="n">TTkK</span><span class="o">.</span><span class="n">ClickFocus</span> <span class="o">+</span> <span class="n">TTkK</span><span class="o">.</span><span class="n">TabFocus</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">enableWidgetCursor</span><span class="p">()</span>
<span class="n">TTkHelper</span><span class="o">.</span><span class="n">quitEvent</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_quit</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">viewChanged</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_viewChangedHandler</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_normal</span><span class="o">.</span><span class="n">bufferedLinesChanged</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_screenChanged</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_alt</span><span class="o">.</span><span class="n">bufferedLinesChanged</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_screenChanged</span><span class="p">)</span>
@ -269,149 +252,54 @@
<div class="viewcode-block" id="TTkTerminalView.close"><a class="viewcode-back" href="../../../../autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html#TermTk.TTkWidgets.TTkTerminal.terminalview.TTkTerminalView.close">[docs]</a> <span class="k">def</span> <span class="nf">close</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_quit</span><span class="p">()</span></div>
<span class="k">def</span> <span class="nf">_resizeScreen</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">size</span><span class="p">()</span>
<span class="k">if</span> <span class="n">w</span><span class="o">&lt;=</span><span class="mi">0</span> <span class="ow">or</span> <span class="n">h</span><span class="o">&lt;=</span><span class="mi">0</span><span class="p">:</span> <span class="k">return</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_current</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_fd</span><span class="p">:</span>
<span class="c1"># s = struct.pack(&#39;HHHH&#39;, 0, 0, 0, 0)</span>
<span class="c1"># t = fcntl.ioctl(sys.stdout.fileno(), termios.TIOCGWINSZ, s)</span>
<span class="c1"># print(struct.unpack(&#39;HHHH&#39;, t))</span>
<span class="n">s</span> <span class="o">=</span> <span class="n">struct</span><span class="o">.</span><span class="n">pack</span><span class="p">(</span><span class="s1">&#39;HHHH&#39;</span><span class="p">,</span> <span class="n">h</span><span class="p">,</span> <span class="n">w</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">t</span> <span class="o">=</span> <span class="n">fcntl</span><span class="o">.</span><span class="n">ioctl</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_fd</span><span class="p">,</span> <span class="n">termios</span><span class="o">.</span><span class="n">TIOCSWINSZ</span><span class="p">,</span> <span class="n">s</span><span class="p">)</span>
<span class="c1"># termios.tcsetwinsize(self._fd,(h,w))</span>
<div class="viewcode-block" id="TTkTerminalView.resizeEvent"><a class="viewcode-back" href="../../../../autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html#TermTk.TTkWidgets.TTkTerminal.terminalview.TTkTerminalView.resizeEvent">[docs]</a> <span class="k">def</span> <span class="nf">resizeEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">w</span><span class="p">:</span> <span class="nb">int</span><span class="p">,</span> <span class="n">h</span><span class="p">:</span> <span class="nb">int</span><span class="p">):</span>
<span class="k">if</span> <span class="p">(</span> <span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span> <span class="ow">and</span>
<span class="p">(</span> <span class="bp">self</span><span class="o">.</span><span class="n">_screen_current</span><span class="o">.</span><span class="n">_w</span> <span class="o">!=</span> <span class="n">w</span> <span class="ow">or</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_current</span><span class="o">.</span><span class="n">_h</span> <span class="o">!=</span> <span class="n">h</span> <span class="p">)</span> <span class="p">):</span>
<span class="n">os</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="sa">b</span><span class="s1">&#39;resize&#39;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span> <span class="o">=</span> <span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="c1"># self._screen_alt.resize(w,h)</span>
<span class="c1"># self._screen_normal.resize(w,h)</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Resize Terminal: </span><span class="si">{</span><span class="n">w</span><span class="si">=}</span><span class="s2"> </span><span class="si">{</span><span class="n">h</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termResized</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="k">return</span> <span class="nb">super</span><span class="p">()</span><span class="o">.</span><span class="n">resizeEvent</span><span class="p">(</span><span class="n">w</span><span class="p">,</span> <span class="n">h</span><span class="p">)</span></div>
<span class="k">def</span> <span class="nf">runShell</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">program</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_shell</span> <span class="o">=</span> <span class="n">program</span> <span class="k">if</span> <span class="n">program</span> <span class="k">else</span> <span class="bp">self</span><span class="o">.</span><span class="n">_shell</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_pid</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_fd</span> <span class="o">=</span> <span class="n">pty</span><span class="o">.</span><span class="n">fork</span><span class="p">()</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pid</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
<span class="k">def</span> <span class="nf">_spawnTerminal</span><span class="p">(</span><span class="n">argv</span><span class="o">=</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">_shell</span><span class="p">],</span> <span class="n">env</span><span class="o">=</span><span class="n">os</span><span class="o">.</span><span class="n">environ</span><span class="p">):</span>
<span class="n">os</span><span class="o">.</span><span class="n">execvpe</span><span class="p">(</span><span class="n">argv</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">argv</span><span class="p">,</span> <span class="n">env</span><span class="p">)</span>
<span class="c1"># threading.Thread(target=_spawnTerminal).start()</span>
<span class="c1"># TTkHelper.quit()</span>
<span class="n">_spawnTerminal</span><span class="p">()</span>
<span class="kn">import</span> <span class="nn">sys</span>
<span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">()</span>
<span class="c1"># os.execvpe(argv[0], argv, env)</span>
<span class="c1"># os.execvpe(argv[0], argv, env)</span>
<span class="c1"># self._proc = subprocess.Popen(self._shell)</span>
<span class="c1"># _termLog.debug(f&quot;Terminal PID={self._proc.pid=}&quot;)</span>
<span class="c1"># self._proc.wait()</span>
<span class="k">else</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">fdopen</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_fd</span><span class="p">,</span> <span class="s2">&quot;w+b&quot;</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">name</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">ttyname</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_fd</span><span class="p">)</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">_pid</span><span class="si">=}</span><span class="s2"> </span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">_fd</span><span class="si">=}</span><span class="s2"> </span><span class="si">{</span><span class="n">name</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">pipe</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">pipe</span><span class="p">()</span>
<span class="n">threading</span><span class="o">.</span><span class="n">Thread</span><span class="p">(</span><span class="n">target</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">loop</span><span class="p">,</span><span class="n">args</span><span class="o">=</span><span class="p">[</span><span class="bp">self</span><span class="p">])</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
<span class="c1"># def _wait(v, pid=self._pid):</span>
<span class="c1"># TTkLog.debug(f&quot;Wait Terminal {v=} {self._pid=}&quot;)</span>
<span class="c1"># status = os.wait()</span>
<span class="c1"># TTkLog.debug(f&quot;In parent process- {status=} {self._pid=}&quot;)</span>
<span class="c1"># TTkLog.debug(f&quot;Terminated child&#39;s process id: {status[0]}&quot;)</span>
<span class="c1"># TTkLog.debug(f&quot;Signal number that killed the child process: {status[1]}&quot;)</span>
<span class="c1"># threading.Thread(target=_wait,args=[self]).start()</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">size</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">resizeEvent</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="c1"># xterm escape sequences from:</span>
<span class="c1"># https://invisible-island.net/xterm/ctlseqs/ctlseqs.html</span>
<span class="c1"># https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h3-Functions-using-CSI-_-ordered-by-the-final-character_s_</span>
<span class="n">re_CURSOR</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s1">&#39;^\[((\d*)(;(\d*))*)([@^`A-Za-z])&#39;</span><span class="p">)</span>
<span class="n">re_CURSOR</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="sa">r</span><span class="s1">&#39;^\[((\d*)(;(\d*))*)([@^`A-Za-z])&#39;</span><span class="p">)</span>
<span class="c1"># https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h3-Functions-using-CSI-_-ordered-by-the-final-character_s_</span>
<span class="c1"># Basic Re for CSI Ps matches:</span>
<span class="c1"># CSI : Control Sequence Introducer &quot;&lt;ESC&gt;[&quot; = &#39;\033[&#39;</span>
<span class="c1"># Ps : A single (usually optional) numeric parameter, composed of one or more digits.</span>
<span class="c1"># fn : the single char defining the function</span>
<span class="n">re_CSI_Ps_fu</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s1">&#39;^\[(\d*)([@ABCDEFGIJKLMPSTXZ^`abcdeghinqx])&#39;</span><span class="p">)</span>
<span class="n">re_CSI_Ps_Ps_fu</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s1">&#39;^\[(\d*);(\d*)([Hf])&#39;</span><span class="p">)</span>
<span class="n">re_CSI_Ps_fu</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="sa">r</span><span class="s1">&#39;^\[(\d*)([@ABCDEFGIJKLMPSTXZ^`abcdeghinqx])&#39;</span><span class="p">)</span>
<span class="n">re_CSI_Ps_Ps_fu</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="sa">r</span><span class="s1">&#39;^\[(\d*);(\d*)([Hf])&#39;</span><span class="p">)</span>
<span class="n">re_DEC_SET_RST</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s1">&#39;^\[(\??)(\d+)([lh])&#39;</span><span class="p">)</span>
<span class="n">re_DEC_SET_RST</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="sa">r</span><span class="s1">&#39;^\[(\??)(\d+)([lh])&#39;</span><span class="p">)</span>
<span class="c1"># re_CURSOR_1 = re.compile(r&#39;^(\d+)([ABCDEFGIJKLMPSTXZHf])&#39;)</span>
<span class="n">re_OSC_ps_Pt</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s1">&#39;^(\d*);(.*)$&#39;</span><span class="p">)</span>
<span class="n">re_OSC_ps_Pt</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="sa">r</span><span class="s1">&#39;^(\d*);(.*)$&#39;</span><span class="p">)</span>
<span class="n">re_XTWINOPS</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="s1">&#39;^&#39;</span><span class="p">)</span>
<span class="n">re_XTWINOPS</span> <span class="o">=</span> <span class="n">re</span><span class="o">.</span><span class="n">compile</span><span class="p">(</span><span class="sa">r</span><span class="s1">&#39;^&#39;</span><span class="p">)</span>
<span class="nd">@pyTTkSlot</span><span class="p">()</span>
<span class="k">def</span> <span class="nf">_quit</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pid</span><span class="p">:</span>
<span class="n">os</span><span class="o">.</span><span class="n">kill</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_pid</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span>
<span class="n">os</span><span class="o">.</span><span class="n">kill</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_pid</span><span class="p">,</span><span class="mi">15</span><span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span><span class="p">:</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">os</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span> <span class="sa">b</span><span class="s1">&#39;quit&#39;</span><span class="p">)</span>
<span class="k">except</span><span class="p">:</span>
<span class="k">pass</span>
<span class="k">def</span> <span class="nf">_inputGenerator</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">while</span> <span class="n">rs</span> <span class="o">:=</span> <span class="n">select</span><span class="p">(</span> <span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">,</span><span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span><span class="p">[</span><span class="mi">0</span><span class="p">]],</span> <span class="p">[],</span> <span class="p">[])[</span><span class="mi">0</span><span class="p">]:</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="ow">in</span> <span class="n">rs</span><span class="p">:</span>
<span class="c1"># os.close(self._quit_pipe[0])</span>
<span class="n">os</span><span class="o">.</span><span class="n">close</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_quit_pipe</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
<span class="c1"># os.close(self._resize_pipe[0])</span>
<span class="n">os</span><span class="o">.</span><span class="n">close</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
<span class="n">os</span><span class="o">.</span><span class="n">close</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_fd</span><span class="p">)</span>
<span class="k">return</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="ow">in</span> <span class="n">rs</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_resizeScreen</span><span class="p">()</span>
<span class="n">os</span><span class="o">.</span><span class="n">read</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_resize_pipe</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="mi">100</span><span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inout</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">rs</span><span class="p">:</span>
<span class="k">continue</span>
<span class="c1"># _termLog.debug(f&quot;Select - {rs=}&quot;)</span>
<span class="k">for</span> <span class="n">r</span> <span class="ow">in</span> <span class="n">rs</span><span class="p">:</span>
<span class="k">if</span> <span class="n">r</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">:</span>
<span class="k">continue</span>
<span class="k">def</span> <span class="nf">termWrite</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="p">):</span>
<span class="k">if</span> <span class="n">data</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_termLoop</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">_fl</span> <span class="o">=</span> <span class="n">fcntl</span><span class="o">.</span><span class="n">fcntl</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">,</span> <span class="n">fcntl</span><span class="o">.</span><span class="n">F_GETFL</span><span class="p">)</span>
<span class="n">fcntl</span><span class="o">.</span><span class="n">fcntl</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">,</span> <span class="n">fcntl</span><span class="o">.</span><span class="n">F_SETFL</span><span class="p">,</span> <span class="n">_fl</span> <span class="o">|</span> <span class="n">os</span><span class="o">.</span><span class="n">O_NONBLOCK</span><span class="p">)</span> <span class="c1"># Set the input as NONBLOCK to read the full sequence</span>
<span class="n">out</span> <span class="o">=</span> <span class="sa">b</span><span class="s2">&quot;&quot;</span>
<span class="k">while</span> <span class="n">_out</span> <span class="o">:=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">read</span><span class="p">():</span>
<span class="n">out</span> <span class="o">+=</span> <span class="n">_out</span>
<span class="n">fcntl</span><span class="o">.</span><span class="n">fcntl</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">,</span> <span class="n">fcntl</span><span class="o">.</span><span class="n">F_SETFL</span><span class="p">,</span> <span class="n">_fl</span><span class="p">)</span>
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Error: </span><span class="si">{</span><span class="n">e</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">terminalClosed</span><span class="o">.</span><span class="n">emit</span><span class="p">()</span>
<span class="k">return</span>
<span class="c1"># out = out.decode(&#39;utf-8&#39;,&#39;ignore&#39;)</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">out</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">decode</span><span class="p">()</span>
<span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">e</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Failed to decode </span><span class="si">{</span><span class="n">out</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="n">out</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">decode</span><span class="p">(</span><span class="s1">&#39;utf-8&#39;</span><span class="p">,</span><span class="s1">&#39;ignore&#39;</span><span class="p">)</span>
<span class="k">yield</span> <span class="n">out</span>
<span class="k">def</span> <span class="nf">loop</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">_</span><span class="p">):</span>
<span class="k">def</span> <span class="nf">_loopGenerator</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="k">def</span> <span class="nf">_checkSize</span><span class="p">():</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span><span class="p">:</span>
<span class="n">TTkLog</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_alt</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="o">*</span><span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_screen_normal</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="o">*</span><span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_newSize</span> <span class="o">=</span> <span class="kc">None</span>
<span class="k">yield</span>
<span class="n">SGR_SET</span> <span class="o">=</span> <span class="n">TTkTermColor</span><span class="o">.</span><span class="n">SGR_SET</span> <span class="c1"># Precacing those variables to</span>
<span class="n">SGR_RST</span> <span class="o">=</span> <span class="n">TTkTermColor</span><span class="o">.</span><span class="n">SGR_RST</span> <span class="c1"># speedup the search</span>
<span class="n">inputgenerator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inputGenerator</span><span class="p">()</span>
<span class="n">leftUnhandled</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span>
<span class="k">for</span> <span class="n">out</span> <span class="ow">in</span> <span class="n">inputgenerator</span><span class="p">:</span>
<span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
<span class="n">_checkSize</span><span class="p">()</span>
<span class="c1"># Entry Point 1</span>
<span class="n">out</span> <span class="o">=</span> <span class="k">yield</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">out</span><span class="p">:</span> <span class="k">return</span>
<span class="n">_checkSize</span><span class="p">()</span>
<span class="n">sout</span> <span class="o">=</span> <span class="p">(</span><span class="n">leftUnhandled</span><span class="o">+</span><span class="n">out</span><span class="p">)</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\033</span><span class="s1">&#39;</span><span class="p">)</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">leftUnhandled</span><span class="si">=}</span><span class="s2"> - </span><span class="si">{</span><span class="n">sout</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
@ -582,23 +470,23 @@
<span class="bp">self</span><span class="o">.</span><span class="n">_terminal</span><span class="o">.</span><span class="n">DCSstring</span> <span class="o">+=</span> <span class="n">dcs</span>
<span class="k">return</span> <span class="kc">False</span><span class="p">,</span> <span class="s2">&quot;&quot;</span>
<span class="k">def</span> <span class="nf">__processDCSInputGenerator</span><span class="p">(</span><span class="nb">slice</span><span class="p">):</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span> <span class="o">=</span> <span class="n">__processDCSEscapeGenerator</span><span class="p">()</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">ret</span><span class="p">:</span>
<span class="c1"># If the terminator is not in the current escaped slices</span>
<span class="c1"># I need to fetch from the input until I got all of them</span>
<span class="c1"># This is not the nicest thing but it save a bunch of extra</span>
<span class="c1"># hcecks at any input just to find if we are in DCS mode or not</span>
<span class="k">for</span> <span class="n">out</span> <span class="ow">in</span> <span class="n">inputgenerator</span><span class="p">:</span>
<span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
<span class="c1"># Entry Point 2</span>
<span class="n">out</span> <span class="o">=</span> <span class="k">yield</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">out</span><span class="p">:</span> <span class="k">return</span> <span class="p">(),</span> <span class="s2">&quot;&quot;</span>
<span class="n">sout</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\033</span><span class="s1">&#39;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_terminal</span><span class="o">.</span><span class="n">DCSstring</span> <span class="o">+=</span> <span class="n">sout</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
<span class="n">escapeGenerator</span> <span class="o">=</span> <span class="p">(</span><span class="n">i</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">sout</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span> <span class="o">=</span> <span class="n">__processDCSEscapeGenerator</span><span class="p">()</span>
<span class="k">if</span> <span class="n">ret</span><span class="p">:</span>
<span class="k">return</span> <span class="n">escapeGenerator</span><span class="p">,</span> <span class="nb">slice</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span> <span class="o">=</span> <span class="n">__processDCSEscapeGenerator</span><span class="p">()</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">ret</span><span class="p">:</span>
<span class="n">escapeGenerator</span><span class="p">,</span> <span class="nb">slice</span> <span class="o">=</span> <span class="n">__processDCSInputGenerator</span><span class="p">()</span>
<span class="k">if</span> <span class="n">ret</span><span class="p">:</span> <span class="k">break</span>
<span class="k">if</span> <span class="ow">not</span> <span class="nb">slice</span><span class="p">:</span>
<span class="k">continue</span>
@ -850,26 +738,26 @@
<span class="k">return</span> <span class="n">ret</span><span class="p">,</span> <span class="n">_slice</span><span class="p">,</span> <span class="n">__oscString</span>
<span class="k">return</span> <span class="kc">False</span><span class="p">,</span> <span class="s2">&quot;&quot;</span><span class="p">,</span> <span class="n">__oscString</span>
<span class="k">def</span> <span class="nf">__processOSCInputGenerator</span><span class="p">(</span><span class="n">__oscString</span><span class="p">:</span><span class="nb">str</span><span class="p">):</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">oscString</span> <span class="o">=</span> <span class="n">__checkOSCBell</span><span class="p">(</span><span class="nb">slice</span><span class="p">,</span><span class="n">oscString</span><span class="p">)</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">ret</span><span class="p">:</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">oscString</span> <span class="o">=</span> <span class="n">__processOSCEscapeGenerator</span><span class="p">(</span><span class="n">oscString</span><span class="p">)</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">ret</span><span class="p">:</span>
<span class="c1"># If the terminator is not in the current escaped slices</span>
<span class="c1"># I need to fetch from the input until I got all of them</span>
<span class="c1"># This is not the nicest thing but it save a bunch of extra</span>
<span class="c1"># hcecks at any input just to find if we are in OSC mode or not</span>
<span class="k">for</span> <span class="n">out</span> <span class="ow">in</span> <span class="n">inputgenerator</span><span class="p">:</span>
<span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
<span class="c1"># Entry Point 3</span>
<span class="n">out</span> <span class="o">=</span> <span class="k">yield</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">out</span><span class="p">:</span> <span class="k">return</span> <span class="p">(),</span> <span class="s2">&quot;&quot;</span>
<span class="n">sout</span> <span class="o">=</span> <span class="n">out</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">&#39;</span><span class="se">\033</span><span class="s1">&#39;</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_terminal</span><span class="o">.</span><span class="n">DCSstring</span> <span class="o">+=</span> <span class="n">sout</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
<span class="n">escapeGenerator</span> <span class="o">=</span> <span class="p">(</span><span class="n">i</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">sout</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span>
<span class="n">ret</span><span class="p">,</span> <span class="n">_slice</span><span class="p">,</span> <span class="n">__oscString</span> <span class="o">=</span> <span class="n">__processOSCEscapeGenerator</span><span class="p">(</span><span class="n">__oscString</span><span class="p">)</span>
<span class="k">if</span> <span class="n">ret</span><span class="p">:</span>
<span class="k">return</span> <span class="n">escapeGenerator</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">__oscString</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">oscString</span> <span class="o">=</span> <span class="n">__checkOSCBell</span><span class="p">(</span><span class="nb">slice</span><span class="p">,</span><span class="n">oscString</span><span class="p">)</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">ret</span><span class="p">:</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">oscString</span> <span class="o">=</span> <span class="n">__processOSCEscapeGenerator</span><span class="p">(</span><span class="n">oscString</span><span class="p">)</span>
<span class="k">if</span> <span class="ow">not</span> <span class="n">ret</span><span class="p">:</span>
<span class="n">escapeGenerator</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">oscString</span> <span class="o">=</span> <span class="n">__processOSCInputGenerator</span><span class="p">(</span><span class="n">oscString</span><span class="p">)</span>
<span class="n">ret</span><span class="p">,</span> <span class="nb">slice</span><span class="p">,</span> <span class="n">oscString</span> <span class="o">=</span> <span class="n">__processOSCEscapeGenerator</span><span class="p">(</span><span class="n">oscString</span><span class="p">)</span>
<span class="k">if</span> <span class="n">ret</span><span class="p">:</span> <span class="k">break</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;OSC: </span><span class="si">{</span><span class="n">oscString</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
@ -918,15 +806,12 @@
<span class="k">def</span> <span class="nf">pasteEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">txt</span><span class="p">:</span><span class="nb">str</span><span class="p">):</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminal</span><span class="o">.</span><span class="n">bracketedMode</span><span class="p">:</span>
<span class="n">txt</span> <span class="o">=</span> <span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[200~&quot;</span><span class="o">+</span><span class="n">txt</span><span class="o">+</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[201~&quot;</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">txt</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="n">txt</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="k">return</span> <span class="kc">True</span>
<div class="viewcode-block" id="TTkTerminalView.keyEvent"><a class="viewcode-back" href="../../../../autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html#TermTk.TTkWidgets.TTkTerminal.terminalview.TTkTerminalView.keyEvent">[docs]</a> <span class="k">def</span> <span class="nf">keyEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">evt</span><span class="p">):</span>
<span class="c1"># _termLog.debug(f&quot;Key: {evt.code=}&quot;)</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Key: </span><span class="si">{</span><span class="nb">str</span><span class="p">(</span><span class="n">evt</span><span class="p">)</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">:</span>
<span class="k">return</span> <span class="kc">False</span>
<span class="k">if</span> <span class="n">evt</span><span class="o">.</span><span class="n">type</span> <span class="o">==</span> <span class="n">TTkK</span><span class="o">.</span><span class="n">SpecialKey</span><span class="p">:</span>
<span class="k">if</span> <span class="n">evt</span><span class="o">.</span><span class="n">mod</span> <span class="o">==</span> <span class="n">TTkK</span><span class="o">.</span><span class="n">ControlModifier</span> <span class="ow">and</span> <span class="n">evt</span><span class="o">.</span><span class="n">key</span> <span class="o">==</span> <span class="n">TTkK</span><span class="o">.</span><span class="n">Key_V</span><span class="p">:</span>
<span class="n">txt</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_clipboard</span><span class="o">.</span><span class="n">text</span><span class="p">()</span>
@ -937,16 +822,16 @@
<span class="n">TTkK</span><span class="o">.</span><span class="n">Key_Down</span><span class="p">:</span> <span class="sa">b</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">OB&quot;</span><span class="p">,</span>
<span class="n">TTkK</span><span class="o">.</span><span class="n">Key_Right</span><span class="p">:</span> <span class="sa">b</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">OC&quot;</span><span class="p">,</span>
<span class="n">TTkK</span><span class="o">.</span><span class="n">Key_Left</span><span class="p">:</span> <span class="sa">b</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">OD&quot;</span><span class="p">}</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">evt</span><span class="o">.</span><span class="n">key</span><span class="p">):</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">code</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="n">code</span><span class="p">)</span>
<span class="k">return</span> <span class="kc">True</span>
<span class="c1"># if evt.key == TTkK.Key_Enter:</span>
<span class="c1"># _termLog.debug(f&quot;Key: Enter&quot;)</span>
<span class="c1"># # self._inout.write(b&#39;\n&#39;)</span>
<span class="c1"># # self._inout.write(evt.code.encode())</span>
<span class="c1"># # self.termData.emit(b&#39;\n&#39;)</span>
<span class="c1"># # self.termData.emit(evt.code.encode())</span>
<span class="k">else</span><span class="p">:</span> <span class="c1"># Input char</span>
<span class="n">_termLog</span><span class="o">.</span><span class="n">debug</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Key: </span><span class="si">{</span><span class="n">evt</span><span class="o">.</span><span class="n">key</span><span class="si">=}</span><span class="s2">&quot;</span><span class="p">)</span>
<span class="c1"># self._inout.write(evt.key.encode())</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">evt</span><span class="o">.</span><span class="n">code</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="c1"># self.termData.emit(evt.key.encode())</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="n">evt</span><span class="o">.</span><span class="n">code</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="k">return</span> <span class="kc">True</span></div>
<span class="c1"># Extended coordinates</span>
@ -1023,8 +908,6 @@
<span class="c1"># report position in pixels rather than character cells.</span>
<span class="k">def</span> <span class="nf">_sendMouse</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">evt</span><span class="p">):</span>
<span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="p">:</span>
<span class="k">return</span> <span class="kc">False</span>
<span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_mouse</span><span class="o">.</span><span class="n">reportPress</span><span class="p">:</span>
<span class="k">return</span> <span class="kc">False</span>
<span class="k">if</span> <span class="p">(</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_mouse</span><span class="o">.</span><span class="n">reportDrag</span> <span class="ow">and</span>
@ -1053,7 +936,7 @@
<span class="n">TTkK</span><span class="o">.</span><span class="n">WHEEL_Down</span><span class="p">:(</span><span class="n">k</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span><span class="s1">&#39;M&#39;</span><span class="p">)}</span><span class="o">.</span><span class="n">get</span><span class="p">(</span>
<span class="n">evt</span><span class="o">.</span><span class="n">evt</span><span class="p">,(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="s1">&#39;M&#39;</span><span class="p">))</span>
<span class="c1"># _termLog.mouse(f&#39;Mouse: &lt;ESC&gt;[&lt;{k+km};{x};{y}{pr}&#39;)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="sa">f</span><span class="s1">&#39;</span><span class="se">\033</span><span class="s1">[&lt;</span><span class="si">{</span><span class="n">k</span><span class="o">+</span><span class="n">km</span><span class="si">}</span><span class="s1">;</span><span class="si">{</span><span class="n">x</span><span class="si">}</span><span class="s1">;</span><span class="si">{</span><span class="n">y</span><span class="si">}{</span><span class="n">pr</span><span class="si">}</span><span class="s1">&#39;</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="sa">f</span><span class="s1">&#39;</span><span class="se">\033</span><span class="s1">[&lt;</span><span class="si">{</span><span class="n">k</span><span class="o">+</span><span class="n">km</span><span class="si">}</span><span class="s1">;</span><span class="si">{</span><span class="n">x</span><span class="si">}</span><span class="s1">;</span><span class="si">{</span><span class="n">y</span><span class="si">}{</span><span class="n">pr</span><span class="si">}</span><span class="s1">&#39;</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">head</span> <span class="o">=</span> <span class="p">{</span>
<span class="n">TTkK</span><span class="o">.</span><span class="n">Press</span><span class="p">:</span> <span class="sa">b</span><span class="s1">&#39;</span><span class="se">\033</span><span class="s1">[M &#39;</span><span class="p">,</span>
@ -1068,7 +951,7 @@
<span class="n">bah</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">x</span><span class="o">+</span><span class="mi">32</span><span class="p">)</span><span class="o">%</span><span class="mh">0xff</span><span class="p">)</span>
<span class="n">bah</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">y</span><span class="o">+</span><span class="mi">32</span><span class="p">)</span><span class="o">%</span><span class="mh">0xff</span><span class="p">)</span>
<span class="c1"># _termLog.mouse(f&#39;Mouse: &#39;+bah.decode().replace(&#39;\033&#39;,&#39;&lt;ESC&gt;&#39;))</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">bah</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="n">bah</span><span class="p">)</span>
<span class="k">return</span> <span class="kc">True</span>
<div class="viewcode-block" id="TTkTerminalView.mousePressEvent"><a class="viewcode-back" href="../../../../autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html#TermTk.TTkWidgets.TTkTerminal.terminalview.TTkTerminalView.mousePressEvent">[docs]</a> <span class="k">def</span> <span class="nf">mousePressEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">evt</span><span class="p">):</span>
@ -1156,9 +1039,9 @@
<span class="k">def</span> <span class="nf">_CSI_n_DSR</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">ps</span><span class="p">,</span> <span class="n">_</span><span class="p">):</span>
<span class="n">x</span><span class="p">,</span><span class="n">y</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_screen_current</span><span class="o">.</span><span class="n">getCursor</span><span class="p">()</span>
<span class="k">if</span> <span class="n">ps</span><span class="o">==</span><span class="mi">6</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[</span><span class="si">{</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="si">}</span><span class="s2">;</span><span class="si">{</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="si">}</span><span class="s2">R&quot;</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[</span><span class="si">{</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="si">}</span><span class="s2">;</span><span class="si">{</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="si">}</span><span class="s2">R&quot;</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="k">elif</span> <span class="n">ps</span><span class="o">==</span><span class="mi">5</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_inout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[0n&quot;</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="bp">self</span><span class="o">.</span><span class="n">termData</span><span class="o">.</span><span class="n">emit</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="se">\033</span><span class="s2">[0n&quot;</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span>
<span class="c1"># CSI Ps ; Ps ; Ps t</span>
<span class="c1"># Window manipulation (XTWINOPS), dtterm, extended by xterm.</span>

135
_modules/TermTk/TTkWidgets/image.html

@ -129,6 +129,7 @@
<span class="n">__all__</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;TTkImage&#39;</span><span class="p">]</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.color</span> <span class="kn">import</span> <span class="n">TTkColor</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.canvas</span> <span class="kn">import</span> <span class="n">TTkCanvas</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkCore.string</span> <span class="kn">import</span> <span class="n">TTkString</span>
<span class="kn">from</span> <span class="nn">TermTk.TTkWidgets.widget</span> <span class="kn">import</span> <span class="n">TTkWidget</span>
@ -136,13 +137,45 @@
<span class="n">FULLBLOCK</span> <span class="o">=</span> <span class="mh">0x00</span>
<span class="n">HALFBLOCK</span> <span class="o">=</span> <span class="mh">0x01</span>
<span class="n">QUADBLOCK</span> <span class="o">=</span> <span class="mh">0x02</span>
<span class="c1"># SEXBLOCK = 0x03</span>
<span class="n">SEXBLOCK</span> <span class="o">=</span> <span class="mh">0x03</span>
<span class="vm">__slots__</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;_data&#39;</span><span class="p">,</span> <span class="s1">&#39;_rasterType&#39;</span><span class="p">)</span>
<span class="n">_quadMap</span> <span class="o">=</span><span class="p">[</span>
<span class="c1"># 0x00 0x01 0x02 0x03</span>
<span class="s1">&#39; &#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span>
<span class="c1"># 0x04 0x05 0x06 0x07</span>
<span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span>
<span class="c1"># 0x08 0x09 0x0A 0x0B</span>
<span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span>
<span class="c1"># 0x0C 0x0D 0x0E 0x0F</span>
<span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">]</span>
<span class="n">_sexMap</span> <span class="o">=</span> <span class="p">[</span>
<span class="c1"># 0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07</span>
<span class="s1">&#39; &#39;</span><span class="p">,</span> <span class="s1">&#39;🬀&#39;</span><span class="p">,</span> <span class="s1">&#39;🬁&#39;</span><span class="p">,</span> <span class="s1">&#39;🬂&#39;</span><span class="p">,</span> <span class="s1">&#39;🬃&#39;</span><span class="p">,</span> <span class="s1">&#39;🬄&#39;</span><span class="p">,</span> <span class="s1">&#39;🬅&#39;</span><span class="p">,</span> <span class="s1">&#39;🬆&#39;</span><span class="p">,</span>
<span class="c1"># 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F</span>
<span class="s1">&#39;🬇&#39;</span><span class="p">,</span> <span class="s1">&#39;🬈&#39;</span><span class="p">,</span> <span class="s1">&#39;🬉&#39;</span><span class="p">,</span> <span class="s1">&#39;🬊&#39;</span><span class="p">,</span> <span class="s1">&#39;🬋&#39;</span><span class="p">,</span> <span class="s1">&#39;🬌&#39;</span><span class="p">,</span> <span class="s1">&#39;🬍&#39;</span><span class="p">,</span> <span class="s1">&#39;🬎&#39;</span><span class="p">,</span>
<span class="c1"># 0x10 0x11 0x12 0x13 0x14 0x15 0x16 0x17</span>
<span class="s1">&#39;🬏&#39;</span><span class="p">,</span> <span class="s1">&#39;🬐&#39;</span><span class="p">,</span> <span class="s1">&#39;🬑&#39;</span><span class="p">,</span> <span class="s1">&#39;🬒&#39;</span><span class="p">,</span> <span class="s1">&#39;🬓&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;🬔&#39;</span><span class="p">,</span> <span class="s1">&#39;🬕&#39;</span><span class="p">,</span>
<span class="c1"># 0x18 0x19 0x1A 0x1B 0x1C 0x1D 0x1E 0x1F</span>
<span class="s1">&#39;🬖&#39;</span><span class="p">,</span> <span class="s1">&#39;🬗&#39;</span><span class="p">,</span> <span class="s1">&#39;🬘&#39;</span><span class="p">,</span> <span class="s1">&#39;🬙&#39;</span><span class="p">,</span> <span class="s1">&#39;🬚&#39;</span><span class="p">,</span> <span class="s1">&#39;🬛&#39;</span><span class="p">,</span> <span class="s1">&#39;🬜&#39;</span><span class="p">,</span> <span class="s1">&#39;🬝&#39;</span><span class="p">,</span>
<span class="c1"># 0x20 0x21 0x22 0x23 0x24 0x25 0x26 0x27</span>
<span class="s1">&#39;🬞&#39;</span><span class="p">,</span> <span class="s1">&#39;🬟&#39;</span><span class="p">,</span> <span class="s1">&#39;🬠&#39;</span><span class="p">,</span> <span class="s1">&#39;🬡&#39;</span><span class="p">,</span> <span class="s1">&#39;🬢&#39;</span><span class="p">,</span> <span class="s1">&#39;🬣&#39;</span><span class="p">,</span> <span class="s1">&#39;🬤&#39;</span><span class="p">,</span> <span class="s1">&#39;🬥&#39;</span><span class="p">,</span>
<span class="c1"># 0x28 0x29 0x2A 0x2B 0x2C 0x2D 0x2E 0x2F</span>
<span class="s1">&#39;🬦&#39;</span><span class="p">,</span> <span class="s1">&#39;🬧&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;🬨&#39;</span><span class="p">,</span> <span class="s1">&#39;🬩&#39;</span><span class="p">,</span> <span class="s1">&#39;🬪&#39;</span><span class="p">,</span> <span class="s1">&#39;🬫&#39;</span><span class="p">,</span> <span class="s1">&#39;🬬&#39;</span><span class="p">,</span>
<span class="c1"># 0x30 0x31 0x32 0x33 0x34 0x35 0x36 0x37</span>
<span class="s1">&#39;🬭&#39;</span><span class="p">,</span> <span class="s1">&#39;🬮&#39;</span><span class="p">,</span> <span class="s1">&#39;🬯&#39;</span><span class="p">,</span> <span class="s1">&#39;🬰&#39;</span><span class="p">,</span> <span class="s1">&#39;🬱&#39;</span><span class="p">,</span> <span class="s1">&#39;🬲&#39;</span><span class="p">,</span> <span class="s1">&#39;🬳&#39;</span><span class="p">,</span> <span class="s1">&#39;🬴&#39;</span><span class="p">,</span>
<span class="c1"># 0x38 0x39 0x3A 0x3B 0x3C 0x3D 0x3E 0x3F</span>
<span class="s1">&#39;🬵&#39;</span><span class="p">,</span> <span class="s1">&#39;🬶&#39;</span><span class="p">,</span> <span class="s1">&#39;🬷&#39;</span><span class="p">,</span> <span class="s1">&#39;🬸&#39;</span><span class="p">,</span> <span class="s1">&#39;🬹&#39;</span><span class="p">,</span> <span class="s1">&#39;🬺&#39;</span><span class="p">,</span> <span class="s1">&#39;🬻&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">]</span>
<span class="vm">__slots__</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;_data&#39;</span><span class="p">,</span> <span class="s1">&#39;_rasterType&#39;</span><span class="p">,</span> <span class="s1">&#39;_canvasImage&#39;</span><span class="p">)</span>
<span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">):</span>
<span class="n">TTkWidget</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">*</span><span class="n">args</span><span class="p">,</span> <span class="o">**</span><span class="n">kwargs</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;rasteriser&#39;</span> <span class="p">,</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">QUADBLOCK</span> <span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_data</span> <span class="o">=</span> <span class="n">kwargs</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;data&#39;</span> <span class="p">,</span> <span class="p">[]</span> <span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_canvasImage</span> <span class="o">=</span> <span class="n">TTkCanvas</span><span class="p">()</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_data</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">setData</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_data</span><span class="p">)</span>
@ -151,11 +184,18 @@
<span class="n">w</span> <span class="o">=</span> <span class="nb">min</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_data</span><span class="p">)</span>
<span class="n">h</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_data</span><span class="p">)</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">==</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">FULLBLOCK</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="n">w</span><span class="p">,</span><span class="n">h</span>
<span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">==</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">HALFBLOCK</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="o">//</span><span class="mi">2</span><span class="p">)</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="o">//</span><span class="mi">2</span>
<span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">==</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">QUADBLOCK</span><span class="p">:</span>
<span class="bp">self</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="o">//</span><span class="mi">2</span><span class="p">,</span><span class="n">h</span><span class="o">//</span><span class="mi">2</span><span class="p">)</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="n">w</span><span class="o">//</span><span class="mi">2</span><span class="p">,</span><span class="n">h</span><span class="o">//</span><span class="mi">2</span>
<span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">==</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">SEXBLOCK</span><span class="p">:</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span> <span class="o">=</span> <span class="n">w</span><span class="o">//</span><span class="mi">2</span><span class="p">,</span><span class="n">h</span><span class="o">//</span><span class="mi">3</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_canvasImage</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="o">*</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">size</span><span class="p">()))</span>
<span class="bp">self</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_canvasImage</span><span class="o">.</span><span class="n">resize</span><span class="p">(</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_canvasImage</span><span class="o">.</span><span class="n">updateSize</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">_drawImage</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_canvasImage</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">update</span><span class="p">()</span>
<span class="k">def</span> <span class="nf">setRasteriser</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">rasteriser</span><span class="p">):</span>
@ -203,19 +243,66 @@
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x04</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x08</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="c1"># 0x00 0x01 0x02 0x03</span>
<span class="n">quad</span> <span class="o">=</span> <span class="p">[</span> <span class="s1">&#39; &#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span>
<span class="c1"># 0x04 0x05 0x06 0x07</span>
<span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span>
<span class="c1"># 0x08 0x09 0x0A 0x0B</span>
<span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span>
<span class="c1"># 0x0C 0x0D 0x0E 0x0F</span>
<span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">]</span>
<span class="k">return</span> <span class="n">TTkString</span><span class="p">()</span> <span class="o">+</span> \
<span class="p">(</span><span class="n">TTkColor</span><span class="o">.</span><span class="n">bg</span><span class="p">(</span><span class="sa">f</span><span class="s1">&#39;#</span><span class="si">{</span><span class="n">c1</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}</span><span class="s1">&#39;</span><span class="p">)</span> <span class="o">+</span>
<span class="n">TTkColor</span><span class="o">.</span><span class="n">fg</span><span class="p">(</span><span class="sa">f</span><span class="s1">&#39;#</span><span class="si">{</span><span class="n">c2</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c2</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c2</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}</span><span class="s1">&#39;</span><span class="p">))</span> <span class="o">+</span> \
<span class="n">TTkImage</span><span class="o">.</span><span class="n">_quadMap</span><span class="p">[</span><span class="n">ch</span><span class="p">]</span>
<span class="k">if</span> <span class="n">deltaR</span> <span class="o">&gt;=</span> <span class="n">deltaG</span> <span class="ow">and</span> <span class="n">deltaR</span> <span class="o">&gt;=</span> <span class="n">deltaB</span><span class="p">:</span>
<span class="c1"># Use Red as splitter</span>
<span class="k">return</span> <span class="n">splitReduce</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
<span class="k">elif</span> <span class="n">deltaG</span> <span class="o">&gt;=</span> <span class="n">deltaB</span> <span class="ow">and</span> <span class="n">deltaG</span> <span class="o">&gt;=</span> <span class="n">deltaR</span><span class="p">:</span>
<span class="c1"># Use Green as splitter</span>
<span class="k">return</span> <span class="n">splitReduce</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="k">else</span><span class="p">:</span>
<span class="c1"># Use Blue as splitter</span>
<span class="k">return</span> <span class="n">splitReduce</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">_reduceSex</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">e</span><span class="p">,</span><span class="n">f</span><span class="p">):</span>
<span class="c1"># quadblitter notcurses like</span>
<span class="n">l</span> <span class="o">=</span> <span class="p">(</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">,</span><span class="n">d</span><span class="p">,</span><span class="n">e</span><span class="p">,</span><span class="n">f</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">delta</span><span class="p">(</span><span class="n">i</span><span class="p">):</span>
<span class="k">return</span> <span class="nb">max</span><span class="p">(</span><span class="n">v</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="k">for</span> <span class="n">v</span> <span class="ow">in</span> <span class="n">l</span><span class="p">)</span> <span class="o">-</span> <span class="nb">min</span><span class="p">(</span><span class="n">v</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="k">for</span> <span class="n">v</span> <span class="ow">in</span> <span class="n">l</span><span class="p">)</span>
<span class="n">deltaR</span> <span class="o">=</span> <span class="n">delta</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
<span class="n">deltaG</span> <span class="o">=</span> <span class="n">delta</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
<span class="n">deltaB</span> <span class="o">=</span> <span class="n">delta</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">midColor</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">):</span>
<span class="k">return</span> <span class="p">((</span><span class="n">c1</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">+</span><span class="n">c2</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span><span class="o">//</span><span class="mi">2</span><span class="p">,(</span><span class="n">c1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">c2</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span><span class="o">//</span><span class="mi">2</span><span class="p">,(</span><span class="n">c1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">+</span><span class="n">c2</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span><span class="o">//</span><span class="mi">2</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">closer</span><span class="p">(</span><span class="n">a</span><span class="p">,</span><span class="n">b</span><span class="p">,</span><span class="n">c</span><span class="p">):</span>
<span class="k">return</span> \
<span class="p">(</span> <span class="p">(</span><span class="n">a</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">-</span><span class="n">c</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span><span class="o">**</span><span class="mi">2</span> <span class="o">+</span> <span class="p">(</span><span class="n">a</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">-</span><span class="n">c</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span><span class="o">**</span><span class="mi">2</span> <span class="o">+</span> <span class="p">(</span><span class="n">a</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">-</span><span class="n">c</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span><span class="o">**</span><span class="mi">2</span> <span class="p">)</span> <span class="o">&gt;</span> \
<span class="p">(</span> <span class="p">(</span><span class="n">b</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">-</span><span class="n">c</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span><span class="o">**</span><span class="mi">2</span> <span class="o">+</span> <span class="p">(</span><span class="n">b</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">-</span><span class="n">c</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span><span class="o">**</span><span class="mi">2</span> <span class="o">+</span> <span class="p">(</span><span class="n">b</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">-</span><span class="n">c</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span><span class="o">**</span><span class="mi">2</span> <span class="p">)</span>
<span class="k">def</span> <span class="nf">splitReduce</span><span class="p">(</span><span class="n">i</span><span class="p">):</span>
<span class="n">s</span> <span class="o">=</span> <span class="nb">sorted</span><span class="p">(</span><span class="n">l</span><span class="p">,</span><span class="n">key</span><span class="o">=</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span><span class="n">x</span><span class="p">[</span><span class="n">i</span><span class="p">])</span>
<span class="n">mid</span> <span class="o">=</span> <span class="p">(</span><span class="n">s</span><span class="p">[</span><span class="mi">5</span><span class="p">][</span><span class="n">i</span><span class="p">]</span><span class="o">+</span><span class="n">s</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="n">i</span><span class="p">])</span><span class="o">//</span><span class="mi">2</span>
<span class="k">if</span> <span class="n">s</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="n">i</span><span class="p">]</span> <span class="o">&lt;</span> <span class="n">mid</span><span class="p">:</span>
<span class="k">if</span> <span class="n">s</span><span class="p">[</span><span class="mi">2</span><span class="p">][</span><span class="n">i</span><span class="p">]</span> <span class="o">&gt;</span> <span class="n">mid</span><span class="p">:</span>
<span class="n">c1</span> <span class="o">=</span> <span class="n">midColor</span><span class="p">(</span><span class="n">s</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">s</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
<span class="n">c2</span> <span class="o">=</span> <span class="n">midColor</span><span class="p">(</span><span class="n">s</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span><span class="n">s</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">c1</span> <span class="o">=</span> <span class="n">midColor</span><span class="p">(</span><span class="n">s</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span><span class="n">s</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span>
<span class="n">c1</span> <span class="o">=</span> <span class="n">midColor</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">s</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span>
<span class="n">c2</span> <span class="o">=</span> <span class="n">s</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">c1</span> <span class="o">=</span> <span class="n">s</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
<span class="n">c2</span> <span class="o">=</span> <span class="n">midColor</span><span class="p">(</span><span class="n">s</span><span class="p">[</span><span class="mi">1</span><span class="p">],</span><span class="n">s</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span>
<span class="n">c2</span> <span class="o">=</span> <span class="n">midColor</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">s</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span>
<span class="n">ch</span> <span class="o">=</span> <span class="mh">0x01</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x02</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">1</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x04</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x08</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x10</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">4</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="n">ch</span> <span class="o">|=</span> <span class="mh">0x20</span> <span class="k">if</span> <span class="n">closer</span><span class="p">(</span><span class="n">c1</span><span class="p">,</span><span class="n">c2</span><span class="p">,</span><span class="n">l</span><span class="p">[</span><span class="mi">5</span><span class="p">])</span> <span class="k">else</span> <span class="mi">0</span>
<span class="k">return</span> <span class="n">TTkString</span><span class="p">()</span> <span class="o">+</span> \
<span class="p">(</span><span class="n">TTkColor</span><span class="o">.</span><span class="n">bg</span><span class="p">(</span><span class="sa">f</span><span class="s1">&#39;#</span><span class="si">{</span><span class="n">c1</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}</span><span class="s1">&#39;</span><span class="p">)</span> <span class="o">+</span>
<span class="n">TTkColor</span><span class="o">.</span><span class="n">fg</span><span class="p">(</span><span class="sa">f</span><span class="s1">&#39;#</span><span class="si">{</span><span class="n">c2</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c2</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}{</span><span class="n">c2</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="si">:</span><span class="s1">02X</span><span class="si">}</span><span class="s1">&#39;</span><span class="p">))</span> <span class="o">+</span> \
<span class="n">quad</span><span class="p">[</span><span class="n">ch</span><span class="p">]</span>
<span class="n">TTkImage</span><span class="o">.</span><span class="n">_sexMap</span><span class="p">[</span><span class="n">ch</span><span class="p">]</span>
<span class="k">if</span> <span class="n">deltaR</span> <span class="o">&gt;=</span> <span class="n">deltaG</span> <span class="ow">and</span> <span class="n">deltaR</span> <span class="o">&gt;=</span> <span class="n">deltaB</span><span class="p">:</span>
<span class="c1"># Use Red as splitter</span>
@ -234,8 +321,9 @@
<span class="k">for</span> <span class="n">i</span><span class="p">,</span><span class="n">pixel</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">row</span><span class="p">):</span>
<span class="n">h</span><span class="p">,</span><span class="n">s</span><span class="p">,</span><span class="n">l</span> <span class="o">=</span> <span class="n">TTkColor</span><span class="o">.</span><span class="n">rgb2hsl</span><span class="p">(</span><span class="n">pixel</span><span class="p">)</span>
<span class="n">row</span><span class="p">[</span><span class="n">i</span><span class="p">]</span> <span class="o">=</span> <span class="n">TTkColor</span><span class="o">.</span><span class="n">hsl2rgb</span><span class="p">(((</span><span class="n">h</span><span class="o">+</span><span class="n">deg</span><span class="p">)</span><span class="o">%</span><span class="mi">360</span><span class="p">,</span><span class="n">s</span><span class="p">,</span><span class="n">l</span><span class="p">))</span>
<span class="bp">self</span><span class="o">.</span><span class="n">setData</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_data</span><span class="p">)</span>
<div class="viewcode-block" id="TTkImage.paintEvent"><a class="viewcode-back" href="../../../autogen.TermTk/TermTk.TTkWidgets.image.html#TermTk.TTkWidgets.image.TTkImage.paintEvent">[docs]</a> <span class="k">def</span> <span class="nf">paintEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">canvas</span><span class="p">):</span>
<span class="k">def</span> <span class="nf">_drawImage</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">canvas</span><span class="p">):</span>
<span class="n">img</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_data</span>
<span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">==</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">FULLBLOCK</span><span class="p">:</span>
<span class="k">for</span> <span class="n">y</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">img</span><span class="p">)):</span>
@ -257,7 +345,22 @@
<span class="n">pos</span><span class="o">=</span><span class="p">(</span><span class="n">x</span><span class="o">//</span><span class="mi">2</span><span class="p">,</span><span class="n">y</span><span class="o">//</span><span class="mi">2</span><span class="p">),</span>
<span class="n">text</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_reduceQuad</span><span class="p">(</span>
<span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="p">,</span> <span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="p">][</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="p">,</span>
<span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="p">,</span> <span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">][</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="p">))</span></div></div>
<span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="p">,</span> <span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">][</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="p">))</span>
<span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_rasterType</span> <span class="o">==</span> <span class="n">TTkImage</span><span class="o">.</span><span class="n">SEXBLOCK</span><span class="p">:</span>
<span class="k">for</span> <span class="n">y</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">img</span><span class="p">)</span><span class="o">-</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">):</span>
<span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">min</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="p">])</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="nb">len</span><span class="p">(</span><span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">])</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="nb">len</span><span class="p">(</span><span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">2</span><span class="p">])</span><span class="o">-</span><span class="mi">1</span><span class="p">),</span> <span class="mi">2</span><span class="p">):</span>
<span class="n">canvas</span><span class="o">.</span><span class="n">drawText</span><span class="p">(</span>
<span class="n">pos</span><span class="o">=</span><span class="p">(</span><span class="n">x</span><span class="o">//</span><span class="mi">2</span><span class="p">,</span><span class="n">y</span><span class="o">//</span><span class="mi">3</span><span class="p">),</span>
<span class="n">text</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_reduceSex</span><span class="p">(</span>
<span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="p">,</span> <span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="p">][</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="p">,</span>
<span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="p">,</span> <span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">1</span><span class="p">][</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="p">,</span>
<span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">2</span><span class="p">][</span><span class="n">x</span><span class="p">]</span> <span class="p">,</span> <span class="n">img</span><span class="p">[</span><span class="n">y</span><span class="o">+</span><span class="mi">2</span><span class="p">][</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">]</span> <span class="p">))</span>
<div class="viewcode-block" id="TTkImage.paintEvent"><a class="viewcode-back" href="../../../autogen.TermTk/TermTk.TTkWidgets.image.html#TermTk.TTkWidgets.image.TTkImage.paintEvent">[docs]</a> <span class="k">def</span> <span class="nf">paintEvent</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">canvas</span><span class="p">:</span> <span class="n">TTkCanvas</span><span class="p">):</span>
<span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">size</span><span class="p">()</span>
<span class="n">s</span> <span class="o">=</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="n">w</span><span class="p">,</span><span class="n">h</span><span class="p">)</span>
<span class="n">canvas</span><span class="o">.</span><span class="n">paintCanvas</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_canvasImage</span><span class="p">,</span><span class="n">s</span><span class="p">,</span><span class="n">s</span><span class="p">,</span><span class="n">s</span><span class="p">)</span></div></div>
</pre></div>
</div>

1
_sources/autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.rst.txt

@ -16,6 +16,7 @@ TermTk.TTkWidgets.TTkTerminal
TermTk.TTkWidgets.TTkTerminal.terminal_screen
TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1
TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI
TermTk.TTkWidgets.TTkTerminal.terminalhelper
TermTk.TTkWidgets.TTkTerminal.terminalview
TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC
TermTk.TTkWidgets.TTkTerminal.vt102

8
_sources/autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.rst.txt

@ -0,0 +1,8 @@
TermTk.TTkWidgets.TTkTerminal.terminalhelper
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. automodule:: TermTk.TTkWidgets.TTkTerminal.terminalhelper
.. currentmodule:: TermTk.TTkWidgets.TTkTerminal.terminalhelper

6
_sources/info/installing.rst.txt

@ -120,7 +120,7 @@ Showcase
* messagebox `messagebox.py <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/messagebox.py>`_ (`tryItOnline <https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?filePath=demo/showcase/messagebox.py>`_)
* splitter `splitter.py <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/splitter.py>`_ (`tryItOnline <https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?filePath=demo/showcase/splitter.py>`_)
* Windows `windowsflags.py <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/windowsflags.py>`_ (`tryItOnline <https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?filePath=demo/showcase/windowsflags.py>`_)
* Tooltip `test.ui.026.toolTip.py <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/tests/test.ui.026.toolTip.py>`_ (`tryItOnline <https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?fileUri=https://raw.githubusercontent.com/ceccopierangiolieugenio/pyTermTk/main/tests/test.ui.026.toolTip.py>`_)
* Tooltip `test.ui.026.toolTip.py <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/tests/t.ui/test.ui.026.toolTip.py>`_ (`tryItOnline <https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?fileUri=https://raw.githubusercontent.com/ceccopierangiolieugenio/pyTermTk/main/tests/t.ui/test.ui.026.toolTip.py>`_)
.. code:: bash
@ -147,9 +147,9 @@ Showcase
# Demo - Windows
python3 demo/showcase/windowsflags.py
# Demo - Tooltip
python3 tests/test.ui.026.toolTip.py
python3 tests/t.ui/test.ui.026.toolTip.py
# Text edit with "Pygments" highlight integrated
# it require pygments
# pip install pygments
python3 tests/test.ui.018.TextEdit.Pygments.py README.md
python3 tests/t.ui/test.ui.018.TextEdit.Pygments.py README.md

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.debugterminal.html

@ -89,6 +89,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

10
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.html

@ -86,6 +86,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>
@ -144,13 +145,16 @@
<tr class="row-even"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html#module-TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html#module-TermTk.TTkWidgets.TTkTerminal.terminalview" title="TermTk.TTkWidgets.TTkTerminal.terminalview"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.terminalview</span></code></a></p></td>
<tr class="row-odd"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html#module-TermTk.TTkWidgets.TTkTerminal.terminalhelper" title="TermTk.TTkWidgets.TTkTerminal.terminalhelper"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.terminalhelper</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html#module-TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC" title="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</span></code></a></p></td>
<tr class="row-even"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html#module-TermTk.TTkWidgets.TTkTerminal.terminalview" title="TermTk.TTkWidgets.TTkTerminal.terminalview"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.terminalview</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html#module-TermTk.TTkWidgets.TTkTerminal.vt102" title="TermTk.TTkWidgets.TTkTerminal.vt102"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.vt102</span></code></a></p></td>
<tr class="row-odd"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html#module-TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC" title="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</span></code></a></p></td>
<td><p></p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html#module-TermTk.TTkWidgets.TTkTerminal.vt102" title="TermTk.TTkWidgets.TTkTerminal.vt102"><code class="xref py py-obj docutils literal notranslate"><span class="pre">TermTk.TTkWidgets.TTkTerminal.vt102</span></code></a></p></td>
<td><p></p></td>
</tr>
</tbody>

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.mode.html

@ -89,6 +89,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal.html

@ -89,6 +89,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen.html

@ -86,6 +86,7 @@
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html

@ -86,6 +86,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

5
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html

@ -23,7 +23,7 @@
<script src="../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="TermTk.TTkWidgets.TTkTerminal.terminalview" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html" />
<link rel="next" title="TermTk.TTkWidgets.TTkTerminal.terminalhelper" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html" />
<link rel="prev" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html" />
</head>
@ -86,6 +86,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>
@ -128,7 +129,7 @@
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html" class="btn btn-neutral float-left" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="TermTk.TTkWidgets.TTkTerminal.terminalview.html" class="btn btn-neutral float-right" title="TermTk.TTkWidgets.TTkTerminal.terminalview" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
<a href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html" class="btn btn-neutral float-right" title="TermTk.TTkWidgets.TTkTerminal.terminalhelper" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>

158
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.html

@ -0,0 +1,158 @@
<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>TermTk.TTkWidgets.TTkTerminal.terminalhelper &mdash; pyTermTk 0.36.0-a
documentation</title>
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/theme_overrides.css" type="text/css" />
<link rel="stylesheet" href="../_static/ttk.css" type="text/css" />
<link rel="shortcut icon" href="https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/www/favicon.ico"/>
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js"></script>
<script src="../_static/jquery.js"></script>
<script src="../_static/underscore.js"></script>
<script src="../_static/_sphinx_javascript_frameworks_compat.js"></script>
<script src="../_static/doctools.js"></script>
<script src="../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="TermTk.TTkWidgets.TTkTerminal.terminalview" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html" />
<link rel="prev" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../index.html" class="icon icon-home"> pyTermTk
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Tutorials</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/000-examples.html">pyTermTk - &lt; <strong>the Examples</strong> &gt;</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/001-helloworld.html">pyTermTk - Hello World</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/002-layout.html">pyTermTk - Layouts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/003-signalslots.html">pyTermTk - Signal &amp; Slots</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/004-logging.html">pyTermTk - Logging</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/005-calculator.html">pyTermTk - Your first Calculator</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorial/ttkDesigner/textEdit/README.html">ttkDesigner - Your first TextEditor</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Features</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../info/features/index.html">Features</a></li>
<li class="toctree-l1"><a class="reference internal" href="../info/features/crosscompatible.html">Cross Compatibility</a></li>
<li class="toctree-l1"><a class="reference internal" href="../info/features/widgets.html">Widgets</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Dev</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../info/installing.html">Installation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../info/installing.html#quickstart">Quickstart</a></li>
<li class="toctree-l1"><a class="reference internal" href="../info/debug.html">Debug</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">API Reference</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkAbstract.html">TermTk.TTkAbstract</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkCore.html">TermTk.TTkCore</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkCore.TTkTerm.html">TermTk.TTkCore.TTkTerm</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkGui.html">TermTk.TTkGui</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkLayouts.html">TermTk.TTkLayouts</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkTemplates.html">TermTk.TTkTemplates</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkTestWidgets.html">TermTk.TTkTestWidgets</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkTheme.html">TermTk.TTkTheme</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkTypes.html">TermTk.TTkTypes</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkUiTools.html">TermTk.TTkUiTools</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkWidgets.html">TermTk.TTkWidgets</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkWidgets.TTkModelView.html">TermTk.TTkWidgets.TTkModelView</a></li>
<li class="toctree-l1"><a class="reference internal" href="TermTk.TTkWidgets.TTkPickers.html">TermTk.TTkWidgets.TTkPickers</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.html">TermTk.TTkWidgets.TTkTerminal</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.debugterminal.html">TermTk.TTkWidgets.TTkTerminal.debugterminal</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.mode.html">TermTk.TTkWidgets.TTkTerminal.mode</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal.html">TermTk.TTkWidgets.TTkTerminal.terminal</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">pyTermTk</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html" class="icon icon-home"></a> &raquo;</li>
<li><a href="TermTk.TTkWidgets.html">TermTk.TTkWidgets</a> &raquo;</li>
<li><a href="TermTk.TTkWidgets.TTkTerminal.html">TermTk.TTkWidgets.TTkTerminal</a> &raquo;</li>
<li>TermTk.TTkWidgets.TTkTerminal.terminalhelper</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="module-TermTk.TTkWidgets.TTkTerminal.terminalhelper">
<span id="termtk-ttkwidgets-ttkterminal-terminalhelper"></span><h1>TermTk.TTkWidgets.TTkTerminal.terminalhelper<a class="headerlink" href="#module-TermTk.TTkWidgets.TTkTerminal.terminalhelper" title="Permalink to this heading"></a></h1>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html" class="btn btn-neutral float-left" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="TermTk.TTkWidgets.TTkTerminal.terminalview.html" class="btn btn-neutral float-right" title="TermTk.TTkWidgets.TTkTerminal.terminalview" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2021, Eugenio Parodi.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>

5
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html

@ -24,7 +24,7 @@
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html" />
<link rel="prev" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html" />
<link rel="prev" title="TermTk.TTkWidgets.TTkTerminal.terminalhelper" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html" />
</head>
<body class="wy-body-for-nav">
@ -86,6 +86,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.terminalview</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#ttkterminalview">TTkTerminalView</a></li>
</ul>
@ -679,7 +680,7 @@ this need to be overridden in the widget.</p>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html" class="btn btn-neutral float-left" title="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html" class="btn btn-neutral float-left" title="TermTk.TTkWidgets.TTkTerminal.terminalhelper" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html" class="btn btn-neutral float-right" title="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html

@ -86,6 +86,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.vt102.html">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

1
autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.vt102.html

@ -86,6 +86,7 @@
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalhelper.html">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview.html">TermTk.TTkWidgets.TTkTerminal.terminalview</a></li>
<li class="toctree-l2"><a class="reference internal" href="TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC.html">TermTk.TTkWidgets.TTkTerminal.terminalview_CSI_DEC</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">TermTk.TTkWidgets.TTkTerminal.vt102</a></li>

2
autogen.TermTk/TermTk.TTkWidgets.image.html

@ -515,7 +515,7 @@
<dl class="py method">
<dt class="sig sig-object py" id="TermTk.TTkWidgets.image.TTkImage.paintEvent">
<span class="sig-name descname"><span class="pre">paintEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">canvas</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/TermTk/TTkWidgets/image.html#TTkImage.paintEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#TermTk.TTkWidgets.image.TTkImage.paintEvent" title="Permalink to this definition"></a></dt>
<span class="sig-name descname"><span class="pre">paintEvent</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">canvas</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><a class="reference internal" href="TermTk.TTkCore.canvas.html#TermTk.TTkCore.canvas.TTkCanvas" title="TermTk.TTkCore.canvas.TTkCanvas"><span class="pre">TTkCanvas</span></a></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/TermTk/TTkWidgets/image.html#TTkImage.paintEvent"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#TermTk.TTkWidgets.image.TTkImage.paintEvent" title="Permalink to this definition"></a></dt>
<dd><p>Paint Event callback,
this need to be overridden in the widget.</p>
</dd></dl>

13
genindex.html

@ -3491,6 +3491,8 @@
<li><a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1.html#module-TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1">TermTk.TTkWidgets.TTkTerminal.terminal_screen_C1</a>
</li>
<li><a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html#module-TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</a>
</li>
<li><a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.html#module-TermTk.TTkWidgets.TTkTerminal.terminalhelper">TermTk.TTkWidgets.TTkTerminal.terminalhelper</a>
</li>
<li><a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalview.html#module-TermTk.TTkWidgets.TTkTerminal.terminalview">TermTk.TTkWidgets.TTkTerminal.terminalview</a>
</li>
@ -7993,8 +7995,6 @@
<li><a href="autogen.TermTk/TermTk.TTkWidgets.resizableframe.html#module-TermTk.TTkWidgets.resizableframe">module</a>
</li>
</ul></li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li>
TermTk.TTkWidgets.scrollarea
@ -8002,6 +8002,8 @@
<li><a href="autogen.TermTk/TermTk.TTkWidgets.scrollarea.html#module-TermTk.TTkWidgets.scrollarea">module</a>
</li>
</ul></li>
</ul></td>
<td style="width: 33%; vertical-align: top;"><ul>
<li>
TermTk.TTkWidgets.scrollbar
@ -8182,6 +8184,13 @@
<ul>
<li><a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html#module-TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI">module</a>
</li>
</ul></li>
<li>
TermTk.TTkWidgets.TTkTerminal.terminalhelper
<ul>
<li><a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.html#module-TermTk.TTkWidgets.TTkTerminal.terminalhelper">module</a>
</li>
</ul></li>
<li>

6
info/installing.html

@ -213,7 +213,7 @@ python3 demo/ttkode.py
<li><p>messagebox <a class="reference external" href="https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/messagebox.py">messagebox.py</a> (<a class="reference external" href="https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?filePath=demo/showcase/messagebox.py">tryItOnline</a>)</p></li>
<li><p>splitter <a class="reference external" href="https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/splitter.py">splitter.py</a> (<a class="reference external" href="https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?filePath=demo/showcase/splitter.py">tryItOnline</a>)</p></li>
<li><p>Windows <a class="reference external" href="https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/windowsflags.py">windowsflags.py</a> (<a class="reference external" href="https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?filePath=demo/showcase/windowsflags.py">tryItOnline</a>)</p></li>
<li><p>Tooltip <a class="reference external" href="https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/tests/test.ui.026.toolTip.py">test.ui.026.toolTip.py</a> (<a class="reference external" href="https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?fileUri=https://raw.githubusercontent.com/ceccopierangiolieugenio/pyTermTk/main/tests/test.ui.026.toolTip.py">tryItOnline</a>)</p></li>
<li><p>Tooltip <a class="reference external" href="https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/tests/t.ui/test.ui.026.toolTip.py">test.ui.026.toolTip.py</a> (<a class="reference external" href="https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?fileUri=https://raw.githubusercontent.com/ceccopierangiolieugenio/pyTermTk/main/tests/t.ui/test.ui.026.toolTip.py">tryItOnline</a>)</p></li>
</ul>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Demo - Text Editor</span>
python3 demo/showcase/textedit.py
@ -238,12 +238,12 @@ python3 demo/showcase/splitter.py
<span class="c1"># Demo - Windows</span>
python3 demo/showcase/windowsflags.py
<span class="c1"># Demo - Tooltip</span>
python3 tests/test.ui.026.toolTip.py
python3 tests/t.ui/test.ui.026.toolTip.py
<span class="c1"># Text edit with &quot;Pygments&quot; highlight integrated</span>
<span class="c1"># it require pygments</span>
<span class="c1"># pip install pygments</span>
python3 tests/test.ui.018.TextEdit.Pygments.py README.md
python3 tests/t.ui/test.ui.018.TextEdit.Pygments.py README.md
</pre></div>
</div>
</section>

BIN
objects.inv

Binary file not shown.

5
py-modindex.html

@ -892,6 +892,11 @@
<td>&#160;&#160;&#160;
<a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI.html#module-TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI"><code class="xref">TermTk.TTkWidgets.TTkTerminal.terminal_screen_CSI</code></a></td><td>
<em></em></td></tr>
<tr class="cg-1">
<td></td>
<td>&#160;&#160;&#160;
<a href="autogen.TermTk/TermTk.TTkWidgets.TTkTerminal.terminalhelper.html#module-TermTk.TTkWidgets.TTkTerminal.terminalhelper"><code class="xref">TermTk.TTkWidgets.TTkTerminal.terminalhelper</code></a></td><td>
<em></em></td></tr>
<tr class="cg-1">
<td></td>
<td>&#160;&#160;&#160;

2
searchindex.js

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save