示例#1
0
 def paintBars(self,canvas):
     if self.size[0]-1 > 0 and self.size[1] -1 > 0:
         canvas.drawLine((self.size[0]-1,0), height=self.size[1]-1, char='a')
         canvas.drawLine((0,self.size[1]-1), width=self.size[0]-1, char='a')
         offset = mul(self.offset, (-1,-1))
         hs = (self.contentSize.min[0]+offset[0])/float(self.size[0]-1)
         he = ((offset[0]+(self.size[0]-1))-self.contentSize.max[0])/float(self.size[0]-1)
         vs = (self.contentSize.min[1]+offset[1])/float(self.size[1]-1)
         ve = ((offset[1]+(self.size[1]-1))-self.contentSize.max[1])/float(self.size[1]-1)
         if ve <= 0:
             canvas.drawLine((self.size[0]-1,int(vs)), height=int(math.ceil(ve-vs+(self.size[1]-1))), char='{')
         if he <= 0:
             canvas.drawLine((int(hs),self.size[1]-1), width=int(math.ceil(he-hs+(self.size[0]-1))), char='{')
示例#2
0
 def onCommand(self, command):
     offset = mul(self.offset, (-1,-1))
     print command
     if command == self.canvas.terminfo.tigets('kcuu1'):#up
         print 'u'
         if offset[1] > self.contentSize.min[1]:
             self.offset[1] += 1
     elif command == self.canvas.terminfo.tigets('kcud1'):#down
         print 'd'
         if offset[1]+self.size[1]-1 < self.contentSize.max[1]:
             self.offset[1] -= 1
     elif command == self.canvas.terminfo.tigets('kcub1'):#left
         print 'l'
         if offset[0] > self.contentSize.min[0]:
             self.offset[0] += 1
     elif command == self.canvas.terminfo.tigets('kcuf1'):#right
         print 'r'
         if offset[0]+self.size[0]-1 < self.contentSize.max[0]:
             self.offset[0] -= 1
     self.repaint()