Ignore:
Timestamp:
09/08/09 00:39:15 (10 years ago)
Author:
orlandov
Message:

Ticket #79: Move the container display and examine popup code from World to Hud

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/game/scripts/hud.py

    r270 r277  
    2121from scripts.context_menu import ContextMenu 
    2222from scripts import inventory 
     23from scripts.popups import ExaminePopup, ContainerGUI 
    2324 
    2425class Hud(object): 
     
    5556        self.loadGameCallback = callbacks['loadGame'] 
    5657        self.quitCallback     = callbacks['quitGame'] 
     58 
     59        self.box_container = None 
     60        self.examine_box = None 
    5761 
    5862        self.actionsBox = self.hud.findChild(name="actionsBox") 
     
    491495        self.addAction(text) 
    492496         
     497    def createBoxGUI(self, title): 
     498        """Creates a window to display the contents of a box 
     499           @type title: string 
     500           @param title: The title for the window 
     501           @return: None""" 
     502        if self.box_container: 
     503            # if it has already been created, just show it 
     504            self.box_container.showContainer() 
     505        else: 
     506            # otherwise create it then show it 
     507            data = ["dagger01", "empty", "empty", "empty", "empty", 
     508                    "empty", "empty", "empty", "empty"] 
     509            self.box_container = ContainerGUI(self.engine, unicode(title), data) 
     510            def close_and_delete(): 
     511                self.hideContainer() 
     512            events = {'takeAllButton':close_and_delete, 
     513                      'closeButton':close_and_delete} 
     514            self.box_container.container_gui.mapEvents(events) 
     515            self.box_container.showContainer() 
     516 
     517    def hideContainer(self): 
     518        """Hide the container box 
     519           @return: None""" 
     520        if self.box_container: 
     521            self.box_container.hideContainer() 
     522 
     523    def createExamineBox(self, title, desc): 
     524        """Create an examine box. It displays some textual description of an 
     525           object 
     526           @type title: string 
     527           @param title: The title of the examine box 
     528           @type desc: string 
     529           @param desc: The main body of the examine box 
     530           @return: None""" 
     531 
     532        if self.examine_box: 
     533            self.examine_box.closePopUp() 
     534        self.examine_box = ExaminePopup(self.engine, title, desc) 
     535        self.examine_box.showPopUp() 
Note: See TracChangeset for help on using the changeset viewer.