Vega strike Python Modules doc  0.5.1
Documentation of the " Modules " folder of Vega strike
 All Data Structures Namespaces Files Functions Variables
DialogBox Class Reference

Data Structures

class  Button
 
class  Item
 
class  List
 
class  Row
 
class  Space
 
class  Text
 
class  TextInput
 

Public Member Functions

def __init__
 
def handleButton
 
def calculateWidth
 
def create
 
def close
 
def keyDown
 
def undraw
 
def draw
 

Data Fields

 elements
 
 bg
 
 bglink
 
 roomid
 
 callback
 
 idname
 
 id
 
 totalheight
 
 totalwidth
 
 bgsize
 
 lastKeyTarget
 

Detailed Description

Definition at line 85 of file dialog_box.py.

Constructor & Destructor Documentation

def __init__ (   self,
  elements,
  callback 
)

Definition at line 278 of file dialog_box.py.

279  def __init__(self,elements,callback):
280  self.elements=elements
281  self.bg=None
282  self.bglink=None
283  self.roomid=0
284  self.callback=callback
285  DialogBox.Item.next_id+=1
286  self.idname='dialog_bg_'+str(DialogBox.Item.next_id)
287  self.id=None

Member Function Documentation

def calculateWidth (   self)

Definition at line 294 of file dialog_box.py.

References DialogBox.elements.

295  def calculateWidth(self):
296  totalheight=0.
297  totalwidth=0.
298  for el in self.elements:
299  totalheight+=el.height()
300  wid=el.width()
301  if wid>totalwidth:
302  totalwidth=wid
303  self.totalheight=totalheight
304  self.totalwidth=totalwidth
def close (   self,
  success = False 
)

Definition at line 328 of file dialog_box.py.

References DialogBox.Button.handleButton(), DialogBox.TextInput.handleButton(), and DialogBox.handleButton().

329  def close(self,success=False):
330  if success:
331  self.handleButton('OK')
332  else:
self.handleButton('Cancel')
def create (   self,
  roomid 
)

Definition at line 305 of file dialog_box.py.

References DialogBox.bg, DialogBox.calculateWidth(), dialog_box.makeRect(), DialogBox.roomid, DialogBox.totalheight, and DialogBox.totalwidth.

306  def create(self,roomid):
307  if VS.isserver():
308  return
309  self.calculateWidth()
310  x=self.totalwidth/-2.
311  y=self.totalheight/2.
312  room=GUI.GUIRoom(roomid)
313  self.roomid=roomid
314  if not self.bg:
315  rect = makeRect(x-0.01,y+0.01,self.totalwidth+0.02,self.totalheight+0.02)
316  size=rect.getHotRect()
317  self.bgsize=size
318  #print str(rect)
319  #print (x,y,self.totalwidth,self.totalheight)
320  self.bg=GUI.GUIStaticText(room,self.idname,'',rect,
321  color=GUI.GUIColor(0.6,0.6,0.6,1.0), bgcolor=GUI.GUIColor(0.2, 0.2, 0.2, 0.8))
322  self.bglink=GUI.GUIMouseOver(room,'Dialog box',self.idname,rect)
323  for el in self.elements:
324  hei=el.height()
325  #print "*** Creating "+repr(el)+" at y "+str(y)+", height "+str(hei)
326  el.create(self,room,x,y,self.totalwidth,hei)
327  y-=hei
def draw (   self)

Definition at line 350 of file dialog_box.py.

351  def draw(self):
352  if not VS.isserver():
353  self.lastKeyTarget=GUI.GUIRootSingleton.keyTarget
354  GUI.GUIRootSingleton.keyTarget=self
355  #debug.warn("Targetting keys to "+str(self))
356  self.bg.show()
357  self.bg.draw()
358  self.bglink.show()
359  self.bglink.draw()
360  map(lambda x:x.draw(), self.elements)
361 
def handleButton (   self,
  id 
)

Definition at line 288 of file dialog_box.py.

References DialogBox.callback, and DialogBox.elements.

289  def handleButton(self,id):
290  values=[id]
291  for el in self.elements:
292  el.getValues(values)
293  self.callback(self,values)
def keyDown (   self,
  key 
)

Definition at line 333 of file dialog_box.py.

References FileWrapper.close(), StringIO.close(), Shelf.close(), Chunk.close(), _Subfile.close(), SGMLParser.close(), openrsrc.close(), URLopener.close(), _socketobject.close(), SSLFakeSocket.close(), _Hqxcoderengine.close(), SSLFakeFile.close(), FileInput.close(), TemporaryFileWrapper.close(), _fileobject.close(), _Rlecoderengine.close(), Wave_read.close(), HTTPResponse.close(), BinHex.close(), GzipFile.close(), Telnet.close(), Au_read.close(), OpenerDirector.close(), _Hqxdecoderengine.close(), DialogBox.close(), SgmlopParser.close(), Aifc_read.close(), _Rledecoderengine.close(), HTTPConnection.close(), ExpatParser.close(), BaseHandler.close(), Au_write.close(), Wave_write.close(), ZipFile.close(), HexBin.close(), TestSGMLParser.close(), file_wrapper.close(), FTP.close(), Unmarshaller.close(), SMTP.close(), ftpwrapper.close(), HTTP.close(), addbase.close(), addclosehook.close(), and debug.debug.

334  def keyDown(self,key):
335  debug.debug("dialog box got key: %i" % key)
336  if key == 13 or key == 10: #should be some kind of return
337  self.close(True)
338  elif key == 27: #escape is always 27, isn't it?
339  self.close(False)
def undraw (   self)

Definition at line 340 of file dialog_box.py.

References DialogBox.elements, and DialogBox.lastKeyTarget.

341  def undraw(self):
342  if not VS.isserver():
343  GUI.GUIRootSingleton.keyTarget=self.lastKeyTarget
344  #debug.warn("Targetting keys to "+str(self.lastKeyTarget))
345  self.bg.hide()
346  self.bg.undraw()
347  self.bglink.hide()
348  self.bglink.undraw()
349  map(lambda x:x.undraw(), self.elements)

Field Documentation

bg

Definition at line 280 of file dialog_box.py.

bglink

Definition at line 281 of file dialog_box.py.

bgsize

Definition at line 316 of file dialog_box.py.

callback

Definition at line 283 of file dialog_box.py.

elements

Definition at line 279 of file dialog_box.py.

id

Definition at line 286 of file dialog_box.py.

idname

Definition at line 285 of file dialog_box.py.

lastKeyTarget

Definition at line 352 of file dialog_box.py.

roomid

Definition at line 282 of file dialog_box.py.

totalheight

Definition at line 302 of file dialog_box.py.

totalwidth

Definition at line 303 of file dialog_box.py.


The documentation for this class was generated from the following file: