Browse Source

FIX Canvas error paint with transparent widget and removed unused references

pull/177/head
Eugenio Parodi 2 years ago
parent
commit
2ffbb3e8e8
  1. 10
      TermTk/TTkCore/canvas.py
  2. 3
      TermTk/TTkWidgets/widget.py

10
TermTk/TTkCore/canvas.py

@ -36,21 +36,19 @@ class TTkCanvas:
:param height: the height of the Canvas
'''
__slots__ = (
'_widget',
'_width', '_height', '_newWidth', '_newHeight',
'_theme',
'_data', '_colors',
'_bufferedData', '_bufferedColors',
'_visible', '_transparent', '_doubleBuffer')
def __init__(self, *args, **kwargs):
self._widget = kwargs.get('widget', None)
self._visible = True
self._transparent = False
self._doubleBuffer = False
self._width = 0
self._height = 0
self._data = [[0]]
self._colors = [[TTkColor.RST]]
self._data = [[]]
self._colors = [[]]
self._newWidth = kwargs.get('width', 0 )
self._newHeight = kwargs.get('height', 0 )
self.updateSize()
@ -63,8 +61,6 @@ class TTkCanvas:
def setTransparent(self, tr):
self._transparent = tr
def getWidget(self): return self._widget
def enableDoubleBuffer(self):
self._doubleBuffer = True
self._bufferedData, self._bufferedColors = self.copyBuffers()
@ -638,7 +634,7 @@ class TTkCanvas:
if bx+bw<0 or by+bh<0 or bx>=cw or by>=ch: return
if x+w<=bx or y+h<=by or bx+bw<=x or by+bh<=y: return
if (0,0,cw,ch)==geom==bound and (cw,ch)==canvas.size():
if (0,0,cw,ch)==geom==bound and (cw,ch)==canvas.size() and not canvas._transparent:
# fast Copy
# the canvas match exactly on top of the current one
for y in range(h):

3
TermTk/TTkWidgets/widget.py

@ -153,7 +153,6 @@ class TTkWidget(TMouseEvents,TKeyEvents, TDragEvents):
self._processStyleEvent(TTkWidget._S_DEFAULT)
self._canvas = TTkCanvas(
widget = self,
width = self._width ,
height = self._height )
@ -167,8 +166,6 @@ class TTkWidget(TMouseEvents,TKeyEvents, TDragEvents):
self._parent.layout().addWidget(self)
self._parent.update(repaint=True, updateLayout=True)
self.update(repaint=True, updateLayout=True)
def __del__(self):
''' .. caution:: Don't touch this! '''
# TTkLog.debug("DESTRUCTOR")

Loading…
Cancel
Save