"Wayne Watson" <sierra_mtnv...@sbcglobal.net> wrote
The question here is how is sdict being used here in terms
of its need within the GUI? Probably if I had written the
program from scratch, I would have made all these
variables global to Sentinel_GUI.
Most programmers try to avoid global variables as a
general principle. In this case the programmer has
opted for a dict and is then able to pass the values
around with a single variable, as in:
def DisplaySettings(self):
print "OSett self = ", self, "type =", type(self) <<---debug
code
sdict = {} <<-------- local sdict
sdict[ "ok" ] = False <<---- ok
... more sdict ...
dialog = DisplaySettingsDialog( self.master, sdict )
class DisplaySettingsDialog(tkSimpleDialog.Dialog):
def __init__(self, parent, sdict):
self.sdict = sdict <<-------
tkSimpleDialog.Dialog.__init__(self, parent)
You could use globals if both classes were in the samemodule,
or import the module wherever they values were needed. But
by keeping the values in a dict and keeping the dict as a
class variable the programmer potentially has more control
over access.
Thats the only reason I can see for it - after all of 2 minutes
reading the code :-)...
--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor