view src/parpg/gui/charactercreationview.py @ 150:3fc7cfa80771

Modified InventoryGrid to set a name for each slot containing the index. Added getSlot method to InventoryGrid. Renamed InventoryGUI class to CharacterGUI. Added InventoryGUI class which handles the inventory part of the CharacterGUI. An InventoryGUI instance is now created in CharacterGUI.
author KarstenBock@gmx.net
date Wed, 05 Oct 2011 12:59:22 +0200
parents d60f1dab8469
children
line wrap: on
line source

from fife.extensions import pychan
from fife.extensions.pychan.widgets import Label, HBox

from parpg import vfs
from parpg.gui.spinner import IntSpinner

class CharacterCreationView(object):
    def __init__(self, xml_script_path='gui/character_creation.xml'):
        xml_file = vfs.VFS.open(xml_script_path)
        self.gui = pychan.loadXML(xml_file)
    
    def createStatisticList(self, statistics):
        statistics_list = self.gui.findChild(name='statisticsList')
        # Start with an empty list.
        statistics_list.removeAllChildren()
        for statistic in statistics:
            name = statistic.long_name
            hbox = HBox()
            hbox.opaque = 0
            label = Label(text=name)
            spinner = IntSpinner(lower_limit=0, upper_limit=100)
            hbox.addChildren(label, spinner)
            statistics_list.addChildren(hbox)
    
    def createTraitsList(self, traits):
        pass
    
    def updateMessageArea(self, message):
        message_area = self.gui.findChild(name='messageArea')
        message_area.text = unicode(message)