#xLink = self.DX_LINK / 2;
# K-Mod
xLink = 0
if self.iLanguageLoaded != CyGame().getCurrentLanguage():
self.LABEL_WIDTH_LIST[:] = []
width_list = []
for i in self.ORDER_LIST:
width_list.append(CyInterface().determineWidth(localText.getText(self.TXT_KEY_DICT[i], ()).upper()) + 20)
total_width = sum(width_list) + CyInterface().determineWidth(localText.getText("TXT_KEY_PEDIA_SCREEN_EXIT", ()).upper()) + 20;
for i in width_list:
self.LABEL_WIDTH_LIST.append((self.X_EXIT * i + total_width/2) / total_width)
self.iLanguageLoaded = CyGame().getCurrentLanguage()
# K-Mod end (except that I've used LABEL_WIDTH_DICT below)
for i in range (len (self.ORDER_LIST)):
szScreen = self.ORDER_LIST[i]
# BUG - Glance Tab - start
if szScreen == "GLANCE" and not AdvisorOpt.isShowGlance():
continue # skip the GLANCE label
# BUG - Glance Tab - end
szTextId = self.getNextWidgetName()
if (self.iScreen != self.SCREEN_DICT[szScreen]):
screen.setText (szTextId, "", u"<font=4>" + localText.getText (self.TXT_KEY_DICT[szScreen], ()).upper() + u"</font>", CvUtil.FONT_CENTER_JUSTIFY, xLink + self.LABEL_WIDTH_LIST[i]/2, self.Y_LINK, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_FOREIGN_ADVISOR, self.SCREEN_DICT[szScreen], -1)
else:
screen.setText (szTextId, "", u"<font=4>" + localText.getColorText (self.TXT_KEY_DICT[szScreen], (), gc.getInfoTypeForString ("COLOR_YELLOW")).upper() + u"</font>", CvUtil.FONT_CENTER_JUSTIFY, xLink + self.LABEL_WIDTH_LIST[i]/2, self.Y_LINK, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_FOREIGN_ADVISOR, -1, -1)
xLink += self.LABEL_WIDTH_LIST[i]
def drawActive (self, bInitial):
def drawLinks (self):
screen = self.getScreen()
xLink = self.DX_LINK / 2;
for i in range (len (self.ORDER_LIST)):
szTextId = self.getNextWidgetName()
szScreen = self.ORDER_LIST[i]
if (self.iScreen != self.SCREEN_DICT[szScreen]):
screen.setText (szTextId, "", u"<font=4>" + localText.getText (self.TXT_KEY_DICT[szScreen], ()).upper() + u"</font>", CvUtil.FONT_CENTER_JUSTIFY, xLink, self.Y_LINK, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_FOREIGN_ADVISOR, self.SCREEN_DICT[szScreen], -1)
else:
screen.setText (szTextId, "", u"<font=4>" + localText.getColorText (self.TXT_KEY_DICT[szScreen], (), gc.getInfoTypeForString ("COLOR_YELLOW")).upper() + u"</font>", CvUtil.FONT_CENTER_JUSTIFY, xLink, self.Y_LINK, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_FOREIGN_ADVISOR, -1, -1)
# xLink += self.DX_LINK
Is self.drawLinks() added to drawContents?
# Drawing Leaderheads
def drawContents(self, bInitial):
if (self.iScreen < 0):
return
self.deleteAllWidgets()
screen = self.getScreen()
# Header...
screen.setLabel(self.getNextWidgetName(), "", self.SCREEN_TITLE, CvUtil.FONT_CENTER_JUSTIFY, self.W_SCREEN / 2, self.Y_TITLE, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_GENERAL, -1, -1 )
if (self.REV_SCREEN_DICT.has_key(self.iScreen)):
self.DRAW_DICT[self.REV_SCREEN_DICT[self.iScreen]] (bInitial)
else:
return
## Platy Foreign Start ##
# Link to other Foreign advisor screens
self.drawLinks()
## Platy Foreign End ##
def drawActive (self, bInitial):
CvForeignAdvisor.CvForeignAdvisor.drawActive (self)
xLink = 0
if self.iLanguageLoaded != CyGame().getCurrentLanguage():
self.LABEL_WIDTH_LIST[:] = []
width_list = []
for i in self.ORDER_LIST:
width_list.append(CyInterface().determineWidth(localText.getText(self.TXT_KEY_DICT[i], ()).upper()) + 20)
total_width = sum(width_list) + CyInterface().determineWidth(localText.getText("TXT_KEY_PEDIA_SCREEN_EXIT", ()).upper()) + 20;
for i in width_list:
self.LABEL_WIDTH_LIST.append((self.X_EXIT * i + total_width/2) / total_width)
self.iLanguageLoaded = CyGame().getCurrentLanguage()
# K-Mod end (except that I've used LABEL_WIDTH_DICT below)
for i in range (len (self.ORDER_LIST)):
szScreen = self.ORDER_LIST[i]
# BUG - Glance Tab - start
if szScreen == "GLANCE" and not AdvisorOpt.isShowGlance():
continue # skip the GLANCE label
# BUG - Glance Tab - end
szTextId = self.getNextWidgetName()
if (self.iScreen != self.SCREEN_DICT[szScreen]):
screen.setText (szTextId, "", u"<font=4>" + localText.getText (self.TXT_KEY_DICT[szScreen], ()).upper() + u"</font>", CvUtil.FONT_CENTER_JUSTIFY, xLink + self.LABEL_WIDTH_LIST[i]/2, self.Y_LINK, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_FOREIGN_ADVISOR, self.SCREEN_DICT[szScreen], -1)
else:
screen.setText (szTextId, "", u"<font=4>" + localText.getColorText (self.TXT_KEY_DICT[szScreen], (), gc.getInfoTypeForString ("COLOR_YELLOW")).upper() + u"</font>", CvUtil.FONT_CENTER_JUSTIFY, xLink + self.LABEL_WIDTH_LIST[i]/2, self.Y_LINK, 0, FontTypes.TITLE_FONT, WidgetTypes.WIDGET_FOREIGN_ADVISOR, -1, -1)
xLink += self.LABEL_WIDTH_LIST[i]
Yeah it is too messy....
I suggest you use my Foreign Advisor screen and plug in K-Mod changes to wherever applicable.