CVS: anygui/lib/anygui/backends tkgui.py,1.82,1.83
Samuele Pedroni <[email protected]> Tue, 10 Sep 2002 13:17:23 -0700
| Newsgroups | gmane.comp.python.anygui.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/anygui/anygui/lib/anygui/backends
In directory usw-pr-cvs1:/tmp/cvs-serv21619/backends
Modified Files:
tkgui.py
Log Message:
* wrapper.widget now uses None to signal widget absence. Replaced widget presence detection exception checking control flows with if <>.widget/if not <>.widget
* fixed tk bug: geometry x,y can be negative => capture re adjusted
Index: tkgui.py
===================================================================
RCS file: /cvsroot/anygui/anygui/lib/anygui/backends/tkgui.py,v
retrieving revision 1.82
retrieving revision 1.83
diff -C2 -r1.82 -r1.83
*** tkgui.py 25 Aug 2002 05:26:25 -0000 1.82
--- tkgui.py 10 Sep 2002 20:17:21 -0000 1.83
***************
*** 25,29 ****
import Tkinter, re
from anygui.Applications import AbstractApplication
! from anygui.Wrappers import AbstractWrapper, DummyWidget, isDummy
from anygui.Events import *
from anygui.Windows import Window
--- 25,29 ----
import Tkinter, re
from anygui.Applications import AbstractApplication
! from anygui.Wrappers import AbstractWrapper
from anygui.Events import *
from anygui.Windows import Window
***************
*** 79,83 ****
def __str__(self):
! if self.noWidget():
widg = "NOWIDGET"
else:
--- 79,83 ----
def __str__(self):
! if not self.widget:
widg = "NOWIDGET"
else:
***************
*** 86,117 ****
--- 86,125 ----
def setX(self, x):
+ if not self.widget: return
if not self.visible: return
self.widget.place(x=x)
def setY(self, y):
+ if not self.widget: return
if not self.visible: return
self.widget.place(y=y)
def setWidth(self, width):
+ if not self.widget: return
if not self.visible: return
self.widget.place(width=width)
def setHeight(self, height):
+ if not self.widget: return
if not self.visible: return
self.widget.place(height=height)
def setPosition(self, x, y):
+ if not self.widget: return
if not self.visible: return
self.widget.place(x=x, y=y)
def setSize(self, width, height):
+ if not self.widget: return
if not self.visible: return
self.widget.place(width=width, height=height)
def setGeometry(self, x, y, width, height):
+ if not self.widget: return
if not self.visible: return
self.widget.place(x=x, y=y, width=width, height=height)
def setVisible(self, visible):
+ if not self.widget: return
if not visible:
self.widget.place_forget()
***************
*** 129,135 ****
return
parent = container.wrapper.widget
! try:
! assert parent.isDummy()
! except (AttributeError, AssertionError):
self.destroy()
self.create(parent)
--- 137,141 ----
return
parent = container.wrapper.widget
! if parent:
self.destroy()
self.create(parent)
***************
*** 137,140 ****
--- 143,147 ----
def setEnabled(self, enabled):
+ if not self.widget: return
if enabled: newstate = Tkinter.NORMAL
else: newstate = Tkinter.DISABLED
***************
*** 145,148 ****
--- 152,156 ----
def setText(self, text):
+ if not self.widget: return
try:
self.widget.configure(text=text)
***************
*** 152,155 ****
--- 160,164 ----
def getText(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
try:
return self.widget.cget('text')
***************
*** 175,178 ****
--- 184,188 ----
def setText(self, text):
+ if not self.widget: return
self.widget.configure(text=text)
***************
*** 183,186 ****
--- 193,197 ----
def setText(self, text):
+ if not self.widget: return
self.widget.configure(text=text)
***************
*** 277,280 ****
--- 288,292 ----
def setText(self, text):
+ if not self.widget: return
disabled=0
if self.widget.cget('state') != Tkinter.NORMAL:
***************
*** 287,299 ****
--- 299,315 ----
def getText(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return self.widget.get()
def setEditable(self, editable):
+ if not self.widget: return # @@@ really needed?
self.editable=editable
def setSelection(self, selection):
+ if not self.widget: return
self.widget.selection_range(*selection)
def getSelection(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
if self.widget.select_present():
start = self.widget.index('sel.first')
***************
*** 338,341 ****
--- 354,358 ----
def getText(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return self.widget.get(1.0, Tkinter.END)[:-1] # Remove the extra newline. (Always?)
***************
*** 355,358 ****
--- 372,376 ----
def getSelection(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
try:
start = self.widget.index('sel.first')
***************
*** 368,371 ****
--- 386,390 ----
def setText(self, text):
+ if not self.widget: return
disabled=0
if self.widget.cget('state') != Tkinter.NORMAL:
***************
*** 378,381 ****
--- 397,401 ----
def setSelection(self, selection):
+ if not self.widget: return
start, end = selection
self.widget.tag_remove('sel', '1.0', 'end')
***************
*** 391,394 ****
--- 411,415 ----
def setEditable(self, editable):
+ if not self.widget: return # @@@ really needed?
self.editable=editable
***************
*** 406,409 ****
--- 427,431 ----
def setItems(self, items):
+ if not self.widget: return
self.widget.delete(0, Tkinter.END)
self.items = items[:]
***************
*** 412,422 ****
--- 434,447 ----
def getItems(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return self.items
def setSelection(self, selection):
+ if not self.widget: return
self.widget.select_clear(0, Tkinter.END)
self.widget.select_set(selection)
def getSelection(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
selection = self.widget.curselection()[0]
try:
***************
*** 442,445 ****
--- 467,471 ----
def setOn(self, on):
+ if not self.widget: return
if on:
self.widget.select()
***************
*** 448,451 ****
--- 474,478 ----
def getOn(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return self._var.get()
***************
*** 469,475 ****
--- 496,504 ----
def getOn(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return self._var.get() == int(self.widget.cget('value'))
def setGroup(self, group):
+ if not self.widget: return
if group is None:
self._var = Tkinter.IntVar()
***************
*** 487,493 ****
--- 516,524 ----
def setValue(self, value):
+ if not self.widget: return
self.widget.configure(value=int(value))
def getValue(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return int(self.widget.cget('value'))
***************
*** 511,514 ****
--- 542,546 ----
def getOn(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
return self._var.get() == int(self.widget.cget('onvalue'))
***************
*** 539,543 ****
def internalProd(self):
! # Should check for None, but not properly implemented yet...
try: self.proxy.container
except AttributeError: return
--- 571,575 ----
def internalProd(self):
! # @@@ Should check for None, but not properly implemented yet...
try: self.proxy.container
except AttributeError: return
***************
*** 579,584 ****
def getGeometry(self):
g = self.widget.geometry()
! m = re.match('^(\d+)x(\d+)\+(\d+)\+(\d+)', g) # Hm...
w = int(m.group(1))
h = int(m.group(2))
--- 611,619 ----
def getGeometry(self):
+ assert self.widget,"?! wrapper getXxx w/o widget"
g = self.widget.geometry()
! # geometry x,y can be negative
! m = re.match('^(\d+)x(\d+)\+(-?\d+)\+(-?\d+)', g) # Hm...
! assert m,"geometry capture mismatch" # @@@
w = int(m.group(1))
h = int(m.group(2))
***************
*** 588,607 ****
--- 623,647 ----
def setX(self, x):
+ if not self.widget: return
ox, y, w, h = self.getGeometry()
self.setGeometry(x, y, w, h)
def setY(self, y):
+ if not self.widget: return
x, oy, w, h = self.getGeometry()
self.setGeometry(x, y, w, h)
def setWidth(self, width):
+ if not self.widget: return
x, y, ow, h = self.getGeometry()
self.setGeometry(x, y, width, h)
def setHeight(self, height):
+ if not self.widget: return
x, y, w, oh = self.getGeometry()
self.setGeometry(x, y, w, height)
def setPosition(self, x, y):
+ if not self.widget: return
ox, oy, w, h = self.getGeometry()
geometry = "%dx%d+%d+%d" % (w, h, x, y)
***************
*** 609,612 ****
--- 649,653 ----
def setSize(self, width, height):
+ if not self.widget: return
x, y, ow, oh = self.getGeometry()
geometry = "%dx%d+%d+%d" % (width, height, x, y)
***************
*** 614,617 ****
--- 655,659 ----
def setGeometry(self, x, y, width, height):
+ if not self.widget: return
geometry = "%dx%d+%d+%d" % (width, height, x, y)
self.widget.geometry(geometry)
***************
*** 619,633 ****
def setTitle(self, title):
self.widget.title(title)
def setContainer(self, container):
if container is None: return
! try:
! assert(self.widget.isDummy())
self.create()
- except (AttributeError):
- self.create()
- except (AssertionError):
- pass
self.proxy.push(blocked=['container'])
# Ensure contents are properly created.
--- 661,671 ----
def setTitle(self, title):
+ if not self.widget: return
self.widget.title(title)
def setContainer(self, container):
if container is None: return
! if not self.widget:
self.create()
self.proxy.push(blocked=['container'])
# Ensure contents are properly created.
***************
*** 636,639 ****
--- 674,678 ----
def setVisible(self, visible):
+ if not self.widget: return
if visible: self.widget.deiconify()
else: self.widget.withdraw()
***************
*** 645,649 ****
def __str__(self):
! if self.noWidget():
widg = "NOWIDGET"
else:
--- 684,688 ----
def __str__(self):
! if not self.widget:
widg = "NOWIDGET"
else:
***************
*** 660,664 ****
def createIfNeeded(self):
! if self.noWidget(): self.create()
def tryRebuild(self):
--- 699,703 ----
def createIfNeeded(self):
! if not self.widget: self.create()
def tryRebuild(self):
***************
*** 673,677 ****
if self.proxy.container is None:
return
! self.widget = DummyWidget()
self.proxy.container.wrapper.rebuild()
else:
--- 712,716 ----
if self.proxy.container is None:
return
! self.widget = None
self.proxy.container.wrapper.rebuild()
else:
***************
*** 710,717 ****
def setContainer(self,container):
if container is None:
! if not self.noWidget():
self.widget.destroy()
return
! if container.wrapper.noWidget():
return
container.wrapper.rebuild()
--- 749,756 ----
def setContainer(self,container):
if container is None:
! if self.widget:
self.widget.destroy()
return
! if not container.wrapper.widget:
return
container.wrapper.rebuild()
***************
*** 731,737 ****
if self.proxy.container is None:
return
! if self.proxy.container.wrapper.noWidget():
return
! if self.noWidget():
return
self.widget.delete(0,'end')
--- 770,776 ----
if self.proxy.container is None:
return
! if not self.proxy.container.wrapper.widget:
return
! if not self.widget:
return
self.widget.delete(0,'end')
***************
*** 746,753 ****
def setContainer(self,container):
if container is None:
! if not self.noWidget():
self.widget.destroy()
return
! if container.wrapper.noWidget():
return
self.createIfNeeded()
--- 785,792 ----
def setContainer(self,container):
if container is None:
! if self.widget:
self.widget.destroy()
return
! if not container.wrapper.widget:
return
self.createIfNeeded()
-------------------------------------------------------
This sf.net email is sponsored by: OSDN - Tired of that same old
cell phone? Get a new here for FREE!
https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390