def placeAllows(self):
screen = self.top.getScreen()
panelName = self.top.getNextWidgetName()
screen.addPanel( panelName, CyTranslator().getText("TXT_KEY_PEDIA_ALLOWS", ()), "", false, true, self.top.X_ITEMS_PANE, self.Y_ALLOWS, self.W_MAIN_PANE, self.H_REQUIRES, PanelStyles.PANEL_STYLE_BLUE50 )
for i in xrange(gc.getNumUnitClassInfos()):
item = gc.getUnitClassInfo(i).getDefaultUnitIndex()
if CyGame().getActiveCivilizationType() > -1:
item = gc.getCivilizationInfo(CyGame().getActiveCivilizationType()).getCivilizationUnits(i)
if item == -1: continue
bFound = False
Info = gc.getUnitInfo(item)
if Info.getPrereqAndBonus() == self.iBonus:
bFound = True
else:
for j in xrange(gc.getNUM_UNIT_PREREQ_OR_BONUSES()):
if Info.getPrereqOrBonuses(j) == self.iBonus:
bFound = True
break
if bFound:
szButton = Info.getButton()
if self.top.iActivePlayer > -1:
szButton = gc.getPlayer(self.top.iActivePlayer).getUnitButton(item)
screen.attachImageButton(panelName, "", szButton, GenericButtonSizes.BUTTON_SIZE_CUSTOM, WidgetTypes.WIDGET_PEDIA_JUMP_TO_UNIT, item, 1, False )
for i in xrange(gc.getNumBuildingClassInfos()):
item = gc.getBuildingClassInfo(i).getDefaultBuildingIndex()
if CyGame().getActiveCivilizationType() > -1:
item = gc.getCivilizationInfo(CyGame().getActiveCivilizationType()).getCivilizationBuildings(i)
if item == -1: continue
bFound = False
Info = gc.getBuildingInfo(item)
if Info.getPrereqAndBonus() == self.iBonus:
bFound = True
else:
for j in xrange(gc.getNUM_BUILDING_PREREQ_OR_BONUSES()):
if Info.getPrereqOrBonuses(j) == self.iBonus:
bFound = True
break
if bFound:
screen.attachImageButton(panelName, "", Info.getButton(), GenericButtonSizes.BUTTON_SIZE_CUSTOM, WidgetTypes.WIDGET_PEDIA_JUMP_TO_BUILDING, item, 1, False )
for item in xrange(gc.getNumRouteInfos()):
bFound = False
Info = gc.getRouteInfo(item)
if Info.getPrereqBonus() == self.iBonus:
bFound = True
else:
for j in xrange(gc.getNUM_ROUTE_PREREQ_OR_BONUSES()):
if Info.getPrereqOrBonus(j) == self.iBonus:
bFound = True
break
if bFound:
screen.attachImageButton(panelName, "", Info.getButton(), GenericButtonSizes.BUTTON_SIZE_CUSTOM, WidgetTypes.WIDGET_PYTHON, 6788, item, False)