Browse Source

Merge dc52edb574 into 0006afdf5d

pull/519/merge
slook 2 weeks ago committed by GitHub
parent
commit
2361a5de2b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 6
      libs/pyTermTk/TermTk/TTkCore/canvas.py
  2. 4
      libs/pyTermTk/TermTk/TTkTheme/draw_ascii.py
  3. 4
      libs/pyTermTk/TermTk/TTkTheme/draw_utf8.py
  4. 11
      libs/pyTermTk/TermTk/TTkWidgets/scrollbar.py

6
libs/pyTermTk/TermTk/TTkCore/canvas.py

@ -381,20 +381,20 @@ class TTkCanvas():
for ix in vlines:
self._set(y+iy, x+ix, gg[0x0A], color)
def drawScroll(self, pos, size, slider, orientation, color=TTkColor.RST):
def drawScroll(self, pos, size, slider, orientation, color=TTkColor.RST, borderColor=TTkColor.RST):
if not self._visible: return
x,y = pos
f,t = slider # slider from-to position
if orientation == TTkK.HORIZONTAL:
for i in range(x+1,x+size-1): # H line
self._set(y,x+i, TTkCfg.theme.hscroll[1], color)
self._set(y,x+i, TTkCfg.theme.hscroll[1], borderColor)
for i in range(f,t): # Slider
self._set(y,x+i, TTkCfg.theme.hscroll[2], color)
self._set(y,x+size-1, TTkCfg.theme.hscroll[3], color) # Right Arrow
self._set(y,x, TTkCfg.theme.hscroll[0], color) # Left Arrow
else:
for i in range(y+1,y+size-1): # V line
self._set(y+i,x, TTkCfg.theme.vscroll[1], color)
self._set(y+i,x, TTkCfg.theme.vscroll[1], borderColor)
for i in range(f,t): # Slider
self._set(y+i,x, TTkCfg.theme.vscroll[2], color)
self._set(y+size-1,x, TTkCfg.theme.vscroll[3], color) # Down Arrow

4
libs/pyTermTk/TermTk/TTkTheme/draw_ascii.py

@ -85,8 +85,8 @@ class TTkTheme():
radiobox = (' ','X')
checkbox = (' ','X','/')
hscroll = ('<','-','X','>')
vscroll = ('^','|','X','v')
hscroll = ('<','-','+','>')
vscroll = ('^','|','+','v')
tree = (' ','+','-',' ',
'|','|','v','^',)

4
libs/pyTermTk/TermTk/TTkTheme/draw_utf8.py

@ -141,8 +141,8 @@ class TTkTheme():
radiobox = ('','')
checkbox = ('','','')
hscroll = ('','','','')
vscroll = ('','','','')
hscroll = ('','','','')
vscroll = ('','','','')
tree = ('','','',' ',
'','','','')

11
libs/pyTermTk/TermTk/TTkWidgets/scrollbar.py

@ -36,9 +36,10 @@ class TTkScrollBar(TTkWidget):
'''TTkScrollBar'''
classStyle = {
'default': {'color': TTkColor.RST},
'default': {'color': TTkColor.fg('#AAAACC'), 'borderColor': TTkColor.fg('#004080')},
'disabled': {'color': TTkColor.fg('#888888')},
'focus': {'color': TTkColor.fg('#cccc00')},
'focus': {'color': TTkColor.fg('#cccc00'), 'borderColor': TTkColor.fg('#AAAA88')},
'hover': {'color': TTkColor.fg('#0088FF'), 'borderColor': TTkColor.fg('#6666BB')},
}
__slots__ = (
@ -103,7 +104,8 @@ class TTkScrollBar(TTkWidget):
'''
def paintEvent(self, canvas):
style = self.currentStyle()
color = style['color']
color = style.get('color', TTkColor.RST)
borderColor = style.get('borderColor', color)
if self._orientation == TTkK.VERTICAL:
size=self._height
@ -123,7 +125,8 @@ class TTkScrollBar(TTkWidget):
# convert i screen coordinates
aa = asciiDrawingSize * a // (self._maximum - self._minimum)
bb = aa + asciiStep
canvas.drawScroll(pos=(0,0),size=size,slider=(aa+1,bb+1),orientation=self._orientation, color=color)
canvas.drawScroll(pos=(0,0),size=size,slider=(aa+1,bb+1),orientation=self._orientation,
color=color,borderColor=borderColor)
# Update the screen position coordinates
self._screenPgDown = ( 1 , aa+1 )
self._screenScroller = ( aa+1 , bb+1)

Loading…
Cancel
Save