Browse Source

Improved doc + extra bits

pull/137/head
Eugenio Parodi 3 years ago
parent
commit
1567607a2c
  1. 6
      TermTk/TTkCore/filebuffer.py
  2. 6
      TermTk/TTkTestWidgets/keypressview.py
  3. 56
      TermTk/TTkWidgets/texedit.py
  4. 7
      docs/source/conf.py
  5. 11
      tutorial/ttkDesigner/textEdit/README.rst

6
TermTk/TTkCore/filebuffer.py

@ -74,7 +74,7 @@ class TTkFileBuffer():
self._width=0
self._buffer = [None]*self._numW
self._pages = [None]
self._fd = open(self._filename)
self._fd = open(self._filename, 'r', errors='replace')
threading.Thread(target=self.createIndex).start()
def __del__(self):
@ -156,7 +156,7 @@ class TTkFileBuffer():
id = 0
rr = re.compile(regex, re.IGNORECASE if ignoreCase else 0)
TTkLog.debug(f"Search RE: {regex}")
with open(self._filename) as infile:
with open(self._filename, 'r', errors='replace') as infile:
for line in infile:
ma = rr.search(line)
if ma:
@ -166,7 +166,7 @@ class TTkFileBuffer():
def search(self, txt):
indexes = []
with open(self._filename) as infile:
with open(self._filename, 'r', errors='replace') as infile:
for line in infile:
if txt in line:
indexes.append(id)

6
TermTk/TTkTestWidgets/keypressview.py

@ -85,8 +85,12 @@ class TTkKeyPressView(TTkWidget):
self._anim.start()
def _pushFade(self, fade: float):
for i,k in enumerate(self._keys):
for k in self._keys:
k[0] -= fade
# Apply the main fade to the current key
if self._keys:
self._keys[-1][0] = 1-fade
for i,k in enumerate(self._keys):
if k[0] <= 0:
self._keys.pop(i)
self.update()

56
TermTk/TTkWidgets/texedit.py

@ -600,8 +600,7 @@ class TTkTextEdit(TTkAbstractScrollArea):
Demo: `textedit.py <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/demo/showcase/textedit.py>`_
(`Try Online <https://ceccopierangiolieugenio.github.io/pyTermTk/sandbox/sandbox.html?fileUri=https://raw.githubusercontent.com/ceccopierangiolieugenio/pyTermTk/main/demo/showcase/textedit.py>`__)
`ttkdesigner Tutorial <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/tutorial/ttkDesigner/textEdit/textEdit.rst>`_
`ttkdesigner Tutorial <https://github.com/ceccopierangiolieugenio/pyTermTk/blob/main/tutorial/ttkDesigner/textEdit>`_
:param lineNumber: Show the line number on the left, defaults to **False**
:type lineNumber: bool, optional
@ -653,103 +652,103 @@ class TTkTextEdit(TTkAbstractScrollArea):
.. py:method:: clear()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.clear`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.clear`
.. py:method:: setText(text)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setText`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setText`
.. py:method:: append(text)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.append`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.append`
.. py:method:: isReadOnly()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.isReadOnly`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.isReadOnly`
.. py:method:: setReadOnly(ro)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setReadOnly`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setReadOnly`
.. py:method:: document()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.document`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.document`
.. py:method:: wrapWidth()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.wrapWidth`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.wrapWidth`
.. py:method:: setWrapWidth(width)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setWrapWidth`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setWrapWidth`
.. py:method:: multiLine()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.multiLine`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.multiLine`
.. py:method:: lineWrapMode()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.lineWrapMode`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.lineWrapMode`
.. py:method:: setLineWrapMode(mode)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setLineWrapMode`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setLineWrapMode`
.. py:method:: wordWrapMode()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.wordWrapMode`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.wordWrapMode`
.. py:method:: setWordWrapMode(mode)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setWordWrapMode`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setWordWrapMode`
.. py:method:: textCursor()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.textCursor`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.textCursor`
.. py:method:: setColor(color)
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setColor`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.setColor`
.. py:method:: cut()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.cut`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.cut`
.. py:method:: copy()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.copy`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.copy`
.. py:method:: paste()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.paste`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.paste`
.. py:method:: undo()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.undo`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.undo`
.. py:method:: redo()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.redo`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.redo`
.. py:method:: isUndoAvailable()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.isUndoAvailable`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.isUndoAvailable`
.. py:method:: isRedoAvailable()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.isRedoAvailable`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.isRedoAvailable`
.. py:method:: toAnsi()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.toAnsi`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.toAnsi`
.. py:method:: toRawText()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.toRawText`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.toRawText`
.. py:method:: toPlainText()
This method forward to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.toPlainText`
This method is forwarded to :class:`~TermTk.TTkWidgets.texedit.TTkTextEditView.toPlainText`
'''
__slots__ = (
@ -827,11 +826,14 @@ class TTkTextEdit(TTkAbstractScrollArea):
return self._textEditView
def getLineNumber(self):
'''getLineNumber'''
return self._lineNumberView.isVisible()
def setLineNumber(self, ln):
'''setLineNumber'''
self._lineNumberView.setVisible(ln)
def setDocument(self, document):
'''setDocument'''
self._textEditView.setDocument(document)
self._lineNumberView.setTextWrap(self._textEditView._textWrap)

7
docs/source/conf.py

@ -126,7 +126,12 @@ autodocgen_config = {
'write_documented_items_output_file': 'autodocgen_documented_items.txt',
# customize autodoc on a per-module basis
'autodoc_options_decider': {},
# 'autodoc_options_decider': {},
# 'autodoc_options_decider': {'members':True, 'inherited-members':True},
# Can you believe I had to debug autodoc to figure out this FUCKING thing?
# People are complainig to the lack of documentation of pyTermTk
# but aat least i hacve examples that cover most use cases
'autodoc_options_decider': lambda app, what, fullname, obj, docstring, defaultOptions, extra: {'members': True, 'inherited-members':True},
# choose a different title for specific modules, e.g. the toplevel one
#'module_title_decider': lambda modulename: 'API Reference' if modulename=='TermTk' else modulename,

11
tutorial/ttkDesigner/textEdit/README.rst

@ -25,13 +25,12 @@ Start a new project
===================
- Create a new Window (**File** -> **New** -> **New Window**)
- Set the window params required:
- Set your favourite window params:
- Resize
- title
- Name - (This is the unique name that will be used to identify this Widget_)
- Window flags (i.e. Maximize)
- Layout to TTkGridLayout_ (This will allow all the components to be placed in a grid aligned to the content of the window_)
- Your preferred size
- Some catcy Title
- An Amazing Name - (This is the unique name that will be used to identify this Widget_)
- Change the Layout to TTkGridLayout_ (This will allow all the components to be placed in a grid aligned to the content of the window_)
- Add the "Maximize Button" through the Window Flags (I forgot to add this step in the video)
.. raw:: html

Loading…
Cancel
Save