[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnue common/src/cursing/Button.py common/src/cu...
From: |
Jason Cater |
Subject: |
gnue common/src/cursing/Button.py common/src/cu... |
Date: |
Thu, 14 Nov 2002 20:44:29 -0500 |
CVSROOT: /cvsroot/gnue
Module name: gnue
Changes by: Jason Cater <address@hidden> 02/11/14 20:44:28
Modified files:
common/src/cursing: Button.py Frame.py ScreenContainer.py
StatusBar.py TextBox.py sio.py
forms/src/GFObjects: GFButton.py
forms/src/uidrivers/curses: UIdriver.py
Log message:
more work in curses driver
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/cursing/Button.py.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/cursing/Frame.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/cursing/ScreenContainer.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/cursing/StatusBar.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/cursing/TextBox.py.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/common/src/cursing/sio.py.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFObjects/GFButton.py.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/curses/UIdriver.py.diff?tr1=1.19&tr2=1.20&r1=text&r2=text
Patches:
Index: gnue/common/src/cursing/Button.py
diff -c gnue/common/src/cursing/Button.py:1.7
gnue/common/src/cursing/Button.py:1.8
*** gnue/common/src/cursing/Button.py:1.7 Thu Nov 7 11:37:03 2002
--- gnue/common/src/cursing/Button.py Thu Nov 14 20:44:28 2002
***************
*** 102,108 ****
raise "No container!"
if HaveFocus:
self.SetColor(sio.C_BUTTON_FOCUS)
! self.HiLight()
else:
self.SetColor(sio.C_BUTTON)
self.LoLight()
--- 102,108 ----
raise "No container!"
if HaveFocus:
self.SetColor(sio.C_BUTTON_FOCUS)
! self.LoLight()
else:
self.SetColor(sio.C_BUTTON)
self.LoLight()
Index: gnue/common/src/cursing/Frame.py
diff -c gnue/common/src/cursing/Frame.py:1.8
gnue/common/src/cursing/Frame.py:1.9
*** gnue/common/src/cursing/Frame.py:1.8 Mon Nov 11 00:59:59 2002
--- gnue/common/src/cursing/Frame.py Thu Nov 14 20:44:28 2002
***************
*** 83,88 ****
--- 83,92 ----
def Show(self):
return self.PARENT.RaiseFrame(self)
+ def Hide(self):
+ self.VISIBLE = 0
+ ## self.PARENT.Paint()
+
def _PaintBorder(self):
GDebug.printMesg(2,'(!!!) PaintBorder')
if not self.BORDER:
***************
*** 108,116 ****
self.SCREEN.SetColor(color)
def Paint(self, *args, **parms):
! self._PaintBorder()
! self._PaintDropShadow()
! ScreenContainer.Paint(self,*args, **parms)
def Height(self):
return self.R2- self._Y
--- 112,121 ----
self.SCREEN.SetColor(color)
def Paint(self, *args, **parms):
! if self.VISIBLE:
! self._PaintBorder()
! self._PaintDropShadow()
! ScreenContainer.Paint(self,*args, **parms)
def Height(self):
return self.R2- self._Y
Index: gnue/common/src/cursing/ScreenContainer.py
diff -c gnue/common/src/cursing/ScreenContainer.py:1.8
gnue/common/src/cursing/ScreenContainer.py:1.9
*** gnue/common/src/cursing/ScreenContainer.py:1.8 Mon Nov 11 00:59:59 2002
--- gnue/common/src/cursing/ScreenContainer.py Thu Nov 14 20:44:28 2002
***************
*** 103,112 ****
--- 103,114 ----
del self.Metrics[child]
def RaiseFrame(self, frame):
+ self._CurrentFocus = None
self._CurrentFrame = frame
frame.VISIBLE = 1
self.FrameStackOrder.pop(self.Frames.index(frame))
self.FrameStackOrder.insert(0,frame)
+ frame.Paint()
def AddControl(self, control):
"""
***************
*** 268,335 ****
activate = 0
- ## def Run(self):
- ## """Run"""
- ## self.Paint()
- ##
- ## # myControlStackIndex
- ## myCsi = self.STARTPOINT
- ## # Sanity check the Csi
- ## if myCsi == None:
- ## myCsi = 0
- ##
- ## # event loop runs forever
- ## while 1:
- ## activate = 0
- ##
- ## # if breakUp is set to TermInfoTrue, return ControlStackIndex
- ## # less one.
- ## if self.breakUp :
- ## self.breakUp = 0
- ## return myCsi-1
- ##
- ## # Sanity check the Control Stack index (again!), reset index to
- ## # zero on exception.
- ## try:
- ## myCtl = self.Controls[myCsi]
- ## except:
- ## myCsi = 0
- ## try:
- ## myCtl = self.Controls[myCsi]
- ## except:
- ## print "WARNING: No widgets!!"
- ## return
- ##
- ## # if nextControl is not at the initial state: ie. in the "loaded"
- ## # state:
- ## if self.nextCtl != None:
- ## # get and set the next desired ControlStackIndex based on
- ## # the next queued up control
- ## myCsi = self.Controls.index(self.nextCtl)
- ## # reassign myCtl control to the next desired.
- ## myCtl = self.nextCtl
- ## # reset the next Control value to None
- ## self.nextCtl = None
- ## # My control is set and ready, mark it to be activated.
- ## activate = 1
- ##
- ## # if this control has explicitly been set to 'non-active' with
- ## # Control.DeActivate or Control.SetActiveState then don't
- ## # initialize it.
- ## if myCtl.active == 0:
- ## # assign the next active control stack index to myCsi
- ## myCsi = self.__GetNextActiveCtlIndex(myCsi)
- ##
- ## # Otherwise, we have an 'active' Control!
- ## # "only go to the control if it can get focus"
- ## elif myCtl.CANGETFOCUS:
- ## # call system level gotfocus
- ## c = self.SetFocus(myCtl, activate)
- ## if c != None:
- ## myCsi = c
- ##
- ## activate = 0
-
def SetFocus(self, myCtl, activate=1, run=1):
--- 270,275 ----
***************
*** 352,364 ****
# do system level run
if myCtl.ExecMethod( "SYSRUN", activate,
self.eventY, self.eventX) :
! return myCsi
else:
# otherwise, _just_ do system level run
if myCtl.ExecMethod("SYSRUN", activate,
self.eventY, self.eventX) :
! return myCsi
def _LoseFocus(self, myCtl):
--- 292,304 ----
# do system level run
if myCtl.ExecMethod( "SYSRUN", activate,
self.eventY, self.eventX) :
! return 0
else:
# otherwise, _just_ do system level run
if myCtl.ExecMethod("SYSRUN", activate,
self.eventY, self.eventX) :
! return 0
def _LoseFocus(self, myCtl):
Index: gnue/common/src/cursing/StatusBar.py
diff -c gnue/common/src/cursing/StatusBar.py:1.2
gnue/common/src/cursing/StatusBar.py:1.3
*** gnue/common/src/cursing/StatusBar.py:1.2 Thu Nov 7 11:37:03 2002
--- gnue/common/src/cursing/StatusBar.py Thu Nov 14 20:44:28 2002
***************
*** 130,137 ****
GDebug.printMesg(1,'Visible, so adding %s' % caption)
Container = self.PARENT.Screen()
! #Container.SetColor(sio.C_STATUSBAR_FIELD)
! Container.PrintAt(self._ABSY,X,caption)#,
curses.color_pair(sio.C_STATUSBAR_FIELD))
--- 130,142 ----
GDebug.printMesg(1,'Visible, so adding %s' % caption)
Container = self.PARENT.Screen()
! Container.SetColor(sio.C_STATUSBAR_FIELD)
! y,x = Container.GetYX()
! Container.PrintAt(self._ABSY,X,caption) #,
curses.color_pair(sio.C_STATUSBAR_FIELD))
!
! Container.GotoYX(y,x)
!
!
Index: gnue/common/src/cursing/TextBox.py
diff -c gnue/common/src/cursing/TextBox.py:1.9
gnue/common/src/cursing/TextBox.py:1.10
*** gnue/common/src/cursing/TextBox.py:1.9 Thu Nov 7 11:37:03 2002
--- gnue/common/src/cursing/TextBox.py Thu Nov 14 20:44:28 2002
***************
*** 90,108 ****
self.Paint(0,0,0)
while 1:
ch = Container.GetChar()
if self.PARENT.BreakOrder(ch) :
! ## try:
! ## curses.curs_set(0)
! ## except:
! ## pass
! return
ch = self.PARENT.KeystrokeHook(ch)
if ch == None:
! ## try:
! ## curses.curs_set(0)
! ## except:
! continue
else:
Depth = self.DEPTH
--- 90,116 ----
self.Paint(0,0,0)
while 1:
ch = Container.GetChar()
+ curses.curs_set(1)
if self.PARENT.BreakOrder(ch) :
! try:
! curses.curs_set(0)
! except:
! pass
! return 1
ch = self.PARENT.KeystrokeHook(ch)
if ch == None:
! # try:
! # curses.curs_set(0)
! # except:
! # pass
! continue
! elif ch == -1:
! try:
! curses.curs_set(0)
! except:
! pass
! return
else:
Depth = self.DEPTH
***************
*** 196,202 ****
curses.curs_set(0)
self.SetColor(sio.C_TEXTBOX)
Container = self.PARENT.Screen()
! self.Paint(None, None, None)
def GotFocus(self, v1, v2, v3):
self.SetColor(sio.C_TEXTBOX_FOCUS)
--- 204,211 ----
curses.curs_set(0)
self.SetColor(sio.C_TEXTBOX)
Container = self.PARENT.Screen()
! if self.PARENT.VISIBLE:
! self.Paint(0,0,0)
def GotFocus(self, v1, v2, v3):
self.SetColor(sio.C_TEXTBOX_FOCUS)
***************
*** 205,213 ****
Container.GotoYX(self._ABSY, self._ABSX+ self.DEPTH)
self.Paint(None, None, None)
! def SetValue(self, newText):
self.TEXT = newText
! self.Paint(0,0,0)
def GetValue(self):
return self.TEXT
--- 214,223 ----
Container.GotoYX(self._ABSY, self._ABSX+ self.DEPTH)
self.Paint(None, None, None)
! def SetValue(self, newText, repaint=1):
self.TEXT = newText
! if self.PARENT.VISIBLE:
! self.Paint(0,0,0)
def GetValue(self):
return self.TEXT
Index: gnue/common/src/cursing/sio.py
diff -c gnue/common/src/cursing/sio.py:1.6 gnue/common/src/cursing/sio.py:1.7
*** gnue/common/src/cursing/sio.py:1.6 Fri Oct 11 19:44:12 2002
--- gnue/common/src/cursing/sio.py Thu Nov 14 20:44:28 2002
***************
*** 38,44 ****
import curses
C_SCREEN = 1
! C_STATUSBAR = 2
C_TITLEBAR = 3
C_MENUBAR = 4
C_MENUBAR_FOCUS = 5
--- 38,44 ----
import curses
C_SCREEN = 1
!
C_TITLEBAR = 3
C_MENUBAR = 4
C_MENUBAR_FOCUS = 5
***************
*** 130,136 ****
if curses.has_colors ():
curses.init_pair(C_SCREEN, curses.COLOR_WHITE,curses.COLOR_BLUE)
- curses.init_pair(C_STATUSBAR, curses.COLOR_WHITE,curses.COLOR_BLUE)
curses.init_pair(C_TITLEBAR, curses.COLOR_WHITE,curses.COLOR_BLUE)
curses.init_pair(C_MENUBAR, curses.COLOR_YELLOW,curses.COLOR_BLUE)
curses.init_pair(C_MENUBAR_FOCUS,
curses.COLOR_BLUE,curses.COLOR_WHITE)
--- 130,135 ----
***************
*** 269,274 ****
--- 268,275 ----
if self.AutoRefresh :
self.s.refresh()
+ def GetYX(self):
+ return self.s.getyx()
def Print(self, String, Mods = None):
"""
Index: gnue/forms/src/GFObjects/GFButton.py
diff -c gnue/forms/src/GFObjects/GFButton.py:1.9
gnue/forms/src/GFObjects/GFButton.py:1.10
*** gnue/forms/src/GFObjects/GFButton.py:1.9 Tue Sep 17 20:27:50 2002
--- gnue/forms/src/GFObjects/GFButton.py Thu Nov 14 20:44:28 2002
***************
*** 36,41 ****
--- 36,47 ----
GFTabStop.__init__(self, parent, 'GFButton')
self.label = ""
self._inits = [self.initialize]
+ self._validTriggers ={ 'PRE-FOCUSOUT': 'Pre-FocusOut',
+ 'POST-FOCUSOUT': 'Post-FocusOut',
+ 'PRE-FOCUSIN': 'Pre-FocusIn',
+ 'POST-FOCUSIN': 'Post-FocusIn',
+ 'ON-SWITCH': 'On-Switch' }
+
def initialize(self):
self._block = self.findParentOfType('GFBlock')
Index: gnue/forms/src/uidrivers/curses/UIdriver.py
diff -c gnue/forms/src/uidrivers/curses/UIdriver.py:1.19
gnue/forms/src/uidrivers/curses/UIdriver.py:1.20
*** gnue/forms/src/uidrivers/curses/UIdriver.py:1.19 Mon Nov 11 01:00:00 2002
--- gnue/forms/src/uidrivers/curses/UIdriver.py Thu Nov 14 20:44:28 2002
***************
*** 93,98 ****
--- 93,100 ----
self._disableSplash = disableSplash
GFUserInterfaceBase.__init__(self,eventController)
+ self._objectMapping = {}
+
global _EVENTPROCESSOR
_EVENTPROCESSOR = self.dispatchEvent
***************
*** 252,259 ****
## self.mainWindow.panel.SetSize(formSize)
## self._pageList[0].Show(1)
! ## # Only one page at a time can be visible
! ## self.visiblePage = self._pageList[0]
## if _NOTEBOOK: # Adjust sizes
## _NOTEBOOK.SetSize(formSize)
--- 254,261 ----
## self.mainWindow.panel.SetSize(formSize)
## self._pageList[0].Show(1)
! # Only one page at a time can be visible
! self.visiblePage = self._pageList[0]
## if _NOTEBOOK: # Adjust sizes
## _NOTEBOOK.SetSize(formSize)
***************
*** 265,270 ****
--- 267,274 ----
## self.mainWindow.CenterOnScreen()
+ self.mainWindow.KeystrokeHook =
keyboardEvtHandler(_EVENTPROCESSOR)._processEvent
+
#############################################################################
#
***************
*** 312,317 ****
--- 316,322 ----
# fully activated
#
def mainLoop(self):
+ pass
self.mainWindow.Run()
def _setStatusBar(self,tip, statusValue, insertValue, currentRecord,
maxRecord, currentPage, maxPage):
***************
*** 328,342 ****
if currentPage and maxPage:
self.statusBar.SetText(4,string.strip("%s/%s" % (currentPage,maxPage)))
!
!
#
# gotoPage
#
# makes the requested page visible on the screen
#
def gotoPage(self, event):
! pass
## if not _NOTEBOOK:
## self.visiblePage.Show(FALSE)
## self.visiblePage = self._formToUI[event.data][0]
--- 333,351 ----
if currentPage and maxPage:
self.statusBar.SetText(4,string.strip("%s/%s" % (currentPage,maxPage)))
!
!
#
# gotoPage
#
# makes the requested page visible on the screen
#
def gotoPage(self, event):
! self.visiblePage.Hide()
! self.visiblePage = self._objectMapping[event.data]
! sys.stderr.write('\n\ngotoPage\n')
! self.visiblePage.Show()
!
## if not _NOTEBOOK:
## self.visiblePage.Show(FALSE)
## self.visiblePage = self._formToUI[event.data][0]
***************
*** 444,449 ****
--- 453,459 ----
pass # self.Destroy()
def indexedFocus(self, index):
+ sys.stderr.write('IndexedFocus %s\n' % self.widgets[index])
widget = self.widgets[index]
widget.PARENT.SetFocus(widget,run=0)
***************
*** 586,593 ****
newWidget = Frame(event.container, y, x, y+height-1, x+width-1 ,
object._parent.title)
###newWidget.DeActivate(0)
event.interface._pageList.append(newWidget)
! #### newWidget.KeystrokeHook =
keyboardEvtHandler(_EVENTPROCESSOR)._processEvent
return newWidget
--- 596,606 ----
newWidget = Frame(event.container, y, x, y+height-1, x+width-1 ,
object._parent.title)
###newWidget.DeActivate(0)
event.interface._pageList.append(newWidget)
+ event.interface._objectMapping[object] = newWidget
+ event.interface._objectMapping[newWidget] = object
! ####
! newWidget.KeystrokeHook =
keyboardEvtHandler(_EVENTPROCESSOR)._processEvent
return newWidget
***************
*** 636,644 ****
def _createWidget(self, event, spacer):
object = event.object
! newWidget = Dialog(event.container, 0, 0, event.interface._screen.MAXROW,
event.interface._screen.MAXCOL )
! return newWidget
#####################################################################
--- 649,657 ----
def _createWidget(self, event, spacer):
object = event.object
! ## newWidget = Dialog(event.container, 0, 0,
event.interface._screen.MAXROW, event.interface._screen.MAXCOL )
! ## return newWidget
#####################################################################
***************
*** 745,751 ****
uiBaseEvtHandler.__init__(self, [], eventProcessor)
def _processEvent(self, keystroke):
! return keystroke
action = None
##object = _eventObjTowxWindow(event)
--- 758,764 ----
uiBaseEvtHandler.__init__(self, [], eventProcessor)
def _processEvent(self, keystroke):
! ####return keystroke
action = None
##object = _eventObjTowxWindow(event)