Advertisement
deadx2

Untitled

Aug 7th, 2017
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 18.21 KB | None | 0 0
  1. import uimg, grp, nonplayer, math, constInfo, time, item, uiToolTip, uiCommon, event, chat
  2.  
  3. pos_x = [52, (52+110), (52+(110*2)), (52+(110*3)), (52+(110*4)), 52, (52+110)]
  4. pos_y = [90, 90, 90, 90, 90, 120, 120]
  5.  
  6. class AchievementWindow(uimg.ScriptWindow):
  7.    
  8.     def __init__(self):
  9.         uimg.ScriptWindow.__init__(self)
  10.         self.isLoaded = False
  11.         self.__LoadWindow()
  12.        
  13.     def __LoadWindow(self):
  14.         try:
  15.             pyScrLoader = uimg.PythonScriptLoader()
  16.             pyScrLoader.LoadScriptFile(self, "UIScript/Achievement.py")
  17.         except:
  18.             import exception
  19.             exception.Abort("AchievementWindow.LoadWindow.LoadObject")
  20.            
  21.         self.categorys = [
  22.             ["|cffe6d0a2Poziom", 1],
  23.             ["|cffe6d0a2Twoja Droga", 2],
  24.             ["|cffe6d0a2Biolog", 3],
  25.             ["|cffe6d0a2Pupile", 4],
  26.             ["|cffe6d0a2Wyzwania", 5],
  27.             ["|cffe6d0a2Zabójstwa", 6],
  28.             ["|cffe6d0a2Inne", 7],
  29.         ]
  30.  
  31.         self.categorysName = [
  32.             ["|cffe6d0a2Podsumowanie", 0],
  33.             ["|cffe6d0a2Poziom", 1],
  34.             ["|cffe6d0a2Twoja Droga", 2],
  35.             ["|cffe6d0a2Biolog", 3],
  36.             ["|cffe6d0a2Pupile", 4],
  37.             ["|cffe6d0a2Wyzwania", 5],
  38.             ["|cffe6d0a2Zabójstwa", 6],
  39.             ["|cffe6d0a2Inne", 7],
  40.         ]
  41.        
  42.  
  43.         self.category = 0
  44.         self.categoryName = "|cffe6d0a2Podsumowanie"
  45.         self.type = 0
  46.         self.achievementsPos = 0
  47.         self.progress = {}
  48.        
  49.         self.BindObjects()
  50.         self.BindEvents()
  51.         self.isLoaded = True
  52.    
  53.     def BindObjects(self):
  54.         self.board = self.GetChild("board")
  55.        
  56.         self.PokazJebaneSkille = uimg.Button()
  57.         self.PokazJebaneSkille.SetParent(self.board)
  58.         self.PokazJebaneSkille.SetPosition(250, 40)
  59.         self.PokazJebaneSkille.SetUpVisual("illumina/skill_system/btn_skile_01.tga")
  60.         self.PokazJebaneSkille.SetOverVisual("illumina/skill_system/btn_skile_02.tga")
  61.         self.PokazJebaneSkille.SetDownVisual("illumina/skill_system/btn_skile_03.tga")
  62.     #   self.PokazJebaneSkille.SetText("Umiejetnosci")
  63.         self.PokazJebaneSkille.SetEvent(self.PokazTeSkille)
  64.         self.PokazJebaneSkille.Show()
  65.        
  66.         self.elements = {
  67.             'windows' : {'home' : self.GetChild("HomeWindow"), 'achievements' : self.GetChild("AchievementsWindow")},
  68.             'objects' : {
  69.                 'shopButton' : self.GetChild("AchievementshopButton"),
  70.         #       'leftArrow' : self.GetChild("LeftArrow"), 'rightArrow' : self.GetChild("RightArrow"),
  71.                 'home' : {
  72.                     'box_0' : AchievementBox(), 'box_1' : AchievementBox(), 'box_2' : AchievementBox(), 'box_3' : AchievementBox(),
  73.                     'last_box_0' : AchievementLastFinished(), 'last_box_1' : AchievementLastFinished(), 'last_box_2' : AchievementLastFinished(), 'last_box_3' : AchievementLastFinished(), 'last_box_4' : AchievementLastFinished(), 'last_box_5' : AchievementLastFinished(), 'last_box_6' : AchievementLastFinished(),
  74.                     'last_window' : self.GetChild("bgLastAchievements"),
  75.                     'upArrow' : self.GetChild("UpArrow"), 'downArrow' : self.GetChild("DownArrow"),
  76.                     'upArrowLast' : self.GetChild("LastUpArrow"), 'downArrowLast' : self.GetChild("LastDownArrow"),
  77.                 },
  78.                 'achievements' : {
  79.                     'scrollbar' : self.GetChild("ScrollBar"),
  80.                     'box_0' : AchievementBox(), 'box_1' : AchievementBox(), 'box_2' : AchievementBox(), 'box_3' : AchievementBox(), 'box_4' : AchievementBox(),
  81.                     'btn_type_0' : self.GetChild("Type0Button"), 'btn_type_1' : self.GetChild("Type1Button"), 'btn_type_2' : self.GetChild("Type2Button"),
  82.                     'type_1' : [], 'type_2' : [],
  83.                 },
  84.             }
  85.         }
  86.         self.arrows = {'categorys' : 0, 'global_achievements' : 0, 'last_achievements' : 0}
  87.        
  88.     def ThinBoard(self, parent, moveable, x, y, width, heigh, center):
  89.         thin = uimg.ThinBoard()
  90.         if parent != None:
  91.             thin.SetParent(parent)
  92.         if moveable == TRUE:
  93.             thin.AddFlag('movable')
  94.             thin.AddFlag('float')
  95.         thin.SetSize(width, heigh)
  96.         thin.SetPosition(x, y)
  97.         if center == TRUE:
  98.             thin.SetCenterPosition()
  99.         thin.Show()
  100.         return thin
  101.    
  102.     def BindEvents(self):
  103.         self.globalProgress = AchievementProgressBar()
  104.         #self.globalProgress = uimg.ThinBoard()
  105.         self.globalProgress.SetParent(self.board)
  106.         self.globalProgress.SetSize(440, 30)
  107.         self.globalProgress.SetPosition(0, 46+9)
  108.         self.globalProgress.SetWindowHorizontalAlignCenter()
  109.         self.globalProgress.SetText('|cffa08784Całość wykonanych osiągnięć ')
  110.         self.globalProgress.SetProgress(10, 155)
  111.         self.globalProgress.Show()
  112.        
  113.         self.board.SetCloseEvent(uimg.__mem_func__(self.Close))
  114.         self.shopButton = AchievementShopWindow()
  115.         self.elements['objects']['shopButton'].SetEvent(uimg.__mem_func__(self.shopButton.Open))
  116.        
  117.     #   self.elements['objects']['leftArrow'].SetEvent(uimg.__mem_func__(self.__OnClickArrow), 'CATEGORY_LEFT')
  118.     #   self.elements['objects']['rightArrow'].SetEvent(uimg.__mem_func__(self.__OnClickArrow), 'CATEGORY_RIGHT')
  119.        
  120.         self.elements['objects']['home']['upArrow'].SetEvent(uimg.__mem_func__(self.__OnClickArrow), 'GLOBAL_UP')
  121.         self.elements['objects']['home']['downArrow'].SetEvent(uimg.__mem_func__(self.__OnClickArrow), 'GLOBAL_DOWN')
  122.        
  123.         self.elements['objects']['home']['upArrowLast'].SetEvent(uimg.__mem_func__(self.__OnClickArrow), 'LAST_UP')
  124.         self.elements['objects']['home']['downArrowLast'].SetEvent(uimg.__mem_func__(self.__OnClickArrow), 'LAST_DOWN')
  125.        
  126.         self.elements['objects']['achievements']['scrollbar'].SetScrollEvent(uimg.__mem_func__(self.__OnScroll))
  127.        
  128.         self.elements['objects']['achievements']['box_0'].Open(self.elements['windows']['achievements'], -10, 40)
  129.         self.elements['objects']['achievements']['box_1'].Open(self.elements['windows']['achievements'], -10, 40+40+20)
  130.         self.elements['objects']['achievements']['box_2'].Open(self.elements['windows']['achievements'], -10, 40+(40+20)*2)
  131.         self.elements['objects']['achievements']['box_3'].Open(self.elements['windows']['achievements'], -10, 40+(40+20)*3)
  132.         self.elements['objects']['achievements']['box_4'].Open(self.elements['windows']['achievements'], -10, 40+(40+20)*4)
  133.        
  134.         self.elements['objects']['home']['box_0'].Open(self.elements['windows']['home'], -120, 40)
  135.         self.elements['objects']['home']['box_1'].Open(self.elements['windows']['home'], -120, 40+58+14)
  136.         self.elements['objects']['home']['box_2'].Open(self.elements['windows']['home'], -120, 40+(58+14)*2)
  137.         self.elements['objects']['home']['box_3'].Open(self.elements['windows']['home'], -120, 40+(58+14)*3)
  138.        
  139.         self.elements['objects']['home']['last_box_0'].Open(self.elements['objects']['home']['last_window'], 0, 42)
  140.         self.elements['objects']['home']['last_box_1'].Open(self.elements['objects']['home']['last_window'], 0, 42+30+7)
  141.         self.elements['objects']['home']['last_box_2'].Open(self.elements['objects']['home']['last_window'], 0, 42+(30+7)*2)
  142.         self.elements['objects']['home']['last_box_3'].Open(self.elements['objects']['home']['last_window'], 0, 42+(30+7)*3)
  143.         self.elements['objects']['home']['last_box_4'].Open(self.elements['objects']['home']['last_window'], 0, 42+(30+7)*4)
  144.         self.elements['objects']['home']['last_box_5'].Open(self.elements['objects']['home']['last_window'], 0, 42+(30+7)*5)
  145.         self.elements['objects']['home']['last_box_6'].Open(self.elements['objects']['home']['last_window'], 0, 42+(30+7)*6)
  146.        
  147.         for i in xrange(3):
  148.             self.elements['objects']['achievements']['btn_type_%d' % i].SetEvent(uimg.__mem_func__(self.SetType), i)
  149.  
  150.     def __del__(self):
  151.         uimg.ScriptWindow.__del__(self)
  152.        
  153.     def SetCategory(self, category):
  154.         self.achievementsPos = 0
  155.         self.category = category
  156.         self.categoryName = self.categorysName[category][0]
  157.         self.RefreshCategorys()
  158.         if self.category == 0:
  159.             self.elements['windows']['achievements'].Hide()
  160.             self.elements['windows']['home'].Show()
  161.             self.arrows['global_achievements'] = 0
  162.             self.RefreshGlobalProgress()
  163.             self.RefreshLastFinished()
  164.         else:
  165.             self.CreateTypes()
  166.             self.elements['windows']['home'].Hide()
  167.             self.elements['windows']['achievements'].Show()
  168.             self.SetType(0)
  169.            
  170.     def CreateTypes(self):
  171.         self.elements['objects']['achievements']['type_1'] = []
  172.         self.elements['objects']['achievements']['type_2'] = []
  173.         try:
  174.             for i in xrange(len(constInfo.Achievements["achievements"][self.category])):
  175.                 if constInfo.Achievements["achievements"][self.category][i][0] < constInfo.Achievements["achievements"][self.category][i][1]:
  176.                     self.elements['objects']['achievements']['type_1'].append(constInfo.Achievements["achievements"][self.category][i])
  177.                 elif constInfo.Achievements["achievements"][self.category][i][0] >= constInfo.Achievements["achievements"][self.category][i][1]:
  178.                     self.elements['objects']['achievements']['type_2'].append(constInfo.Achievements["achievements"][self.category][i])
  179.         except:
  180.             pass
  181.  
  182.     def __OnClickArrow(self, arrow):
  183.         if arrow == 'CATEGORY_LEFT':
  184.             self.arrows['categorys'] -= 1
  185.             self.RefreshCategorys()
  186.         elif arrow == 'CATEGORY_RIGHT':
  187.             self.arrows['categorys'] += 1
  188.             self.RefreshCategorys()
  189.         elif arrow == 'GLOBAL_UP':
  190.             self.arrows['global_achievements'] -= 1
  191.             self.RefreshGlobalProgress()
  192.         elif arrow == 'GLOBAL_DOWN':
  193.             self.arrows['global_achievements'] += 1
  194.             self.RefreshGlobalProgress()
  195.         elif arrow == 'LAST_UP':
  196.             self.arrows['last_achievements'] -= 1
  197.             self.RefreshLastFinished()
  198.         elif arrow == 'LAST_DOWN':
  199.             self.arrows['last_achievements'] += 1
  200.             self.RefreshLastFinished()
  201.            
  202.     def PokazTeSkille(self):
  203.         event.QuestButtonClick(constInfo.Okienko)
  204.            
  205.  
  206.     def SetType(self, type):
  207.         for i in xrange(3):
  208.             self.elements['objects']['achievements']['btn_type_%d' % i].SetUp()
  209.         self.elements['objects']['achievements']['btn_type_%d' % type].Down()
  210.         self.type = type
  211.         self.achievementsPos = 0
  212.         self.elements['objects']['achievements']['scrollbar'].SetPos(0)
  213.         self.RefreshAchievements()
  214.        
  215.     def RefreshGlobalProgress(self):
  216.         self.SetGlobalProgress()
  217.         try:
  218.             for i in xrange(4):
  219.                 self.elements['objects']['home']['box_%d' % i].Hide()
  220.         except:
  221.             pass
  222.         try:
  223.             for i in xrange(min(4, len(self.categorys))):
  224.                 curCategory = self.categorys[self.arrows['global_achievements'] + i][1]
  225.                 self.elements['objects']['home']['box_%d' % i].SetContent(0, self.progress['current_category_%d' % curCategory], self.progress['max_category_%d' % curCategory], 0)
  226.                 self.elements['objects']['home']['box_%d' % i].SetTitle(self.categorys[curCategory-1][0])
  227.                 self.elements['objects']['home']['box_%d' % i].Show()
  228.         except:
  229.             pass
  230.        
  231.         if (self.categorys > 4):
  232.             if (self.arrows['global_achievements'] <= 0):
  233.                 self.elements['objects']['home']['downArrow'].Show()
  234.                 self.elements['objects']['home']['upArrow'].Hide()
  235.             elif (self.arrows['global_achievements']+4 < len(self.categorys)):
  236.                 self.elements['objects']['home']['downArrow'].Show()
  237.                 self.elements['objects']['home']['upArrow'].Show()
  238.             elif (self.arrows['global_achievements']+4 >= len(self.categorys)):
  239.                 self.elements['objects']['home']['downArrow'].Hide()
  240.                 self.elements['objects']['home']['upArrow'].Show()
  241.         else:
  242.             self.elements['objects']['home']['upArrow'].Hide()
  243.             self.elements['objects']['home']['downArrow'].Hide()
  244.            
  245.     def RefreshLastFinished(self):
  246.         for i in xrange(7):
  247.             self.elements['objects']['home']['last_box_%d' % i].Hide()
  248.  
  249.         try:
  250.             for i in xrange(min(7, len(constInfo.Achievements['last_achievements']))):
  251.                 curAchievement = constInfo.Achievements['last_achievements'][(len(constInfo.Achievements['last_achievements'])-1) - (self.arrows['last_achievements'] + i)]
  252.                 if curAchievement[0] == 2 or curAchievement[0] == 3 or curAchievement[0] == 4:
  253.                     self.elements['objects']['home']['last_box_%d' % i].SetText(self.GetDescByCat(curAchievement[0]) % (curAchievement[1], nonplayer.GetMonsterName(curAchievement[3])))
  254.                 else:
  255.                     self.elements['objects']['home']['last_box_%d' % i].SetText(self.GetDescByCat(curAchievement[0]) % curAchievement[1])
  256.                 self.elements['objects']['home']['last_box_%d' % i].SetPoints(curAchievement[2])
  257.                 self.elements['objects']['home']['last_box_%d' % i].Show()
  258.         except:
  259.             pass
  260.            
  261.         if (len(constInfo.Achievements['last_achievements']) > 7):
  262.             if (self.arrows['last_achievements'] <= 0):
  263.                 self.elements['objects']['home']['downArrowLast'].Show()
  264.                 self.elements['objects']['home']['upArrowLast'].Hide()
  265.             elif (self.arrows['last_achievements']+7 < len(constInfo.Achievements['last_achievements'])):
  266.                 self.elements['objects']['home']['downArrowLast'].Show()
  267.                 self.elements['objects']['home']['upArrowLast'].Show()
  268.             elif (self.arrows['last_achievements']+7 >= len(constInfo.Achievements['last_achievements'])):
  269.                 self.elements['objects']['home']['downArrowLast'].Hide()
  270.                 self.elements['objects']['home']['upArrowLast'].Show()
  271.         else:
  272.             self.elements['objects']['home']['upArrowLast'].Hide()
  273.             self.elements['objects']['home']['downArrowLast'].Hide()
  274.        
  275.     def RefreshCategorys_new(self):
  276.         scrolledId = self.arrows['categorys']
  277.         self.elements['objects'] = self.CreateCategoryButton(self.board, 35+18+111, 94, self.arrows['categorys' : 0], self.SetCategory)
  278.         self.elements['objects'].Show()
  279.  
  280.  
  281.     def RefreshCategorys(self):
  282.         try:
  283.             for i in xrange(8):
  284.                 self.elements['objects']['category_%d' % i].Hide()
  285.         except:
  286.             pass
  287.         try:
  288.             tmpCategorys = [["|cffe6d0a2Podsumowanie", 0]]
  289.             tmpCategorys += self.categorys
  290.             for i in xrange(min(8, len(tmpCategorys))):
  291.                 scrolledId = i + self.arrows['categorys']
  292.             #   self.elements['objects']['category_%d' % i] = self.CreateCategoryButton(self.board, 35+18+111*i, 94, tmpCategorys[scrolledId][0], self.SetCategory, tmpCategorys[scrolledId][1])
  293.                 self.elements['objects']['category_%d' % i] = self.CreateCategoryButton(self.board, pos_x[i], pos_y[i], tmpCategorys[scrolledId][0], self.SetCategory, tmpCategorys[scrolledId][1])
  294.             #   self.elements['objects']['category_%d' % i+1] = self.CreateCategoryButton(self.board, 35+18+111, 94, tmpCategorys[scrolledId][0], self.SetCategory, tmpCategorys[scrolledId][1])
  295.                 self.elements['objects']['category_%d' % i].Show()
  296.             #   self.elements['objects']['category_%d' % i+2] = self.CreateCategoryButton(self.board, 18+111, 94, tmpCategorys[scrolledId][0], self.SetCategory, tmpCategorys[scrolledId][1])
  297.             #   self.elements['objects']['category_%d' % i+2].Show()
  298.                
  299.                 if self.categoryName == tmpCategorys[scrolledId][0]:
  300.                     self.elements['objects']['category_%d' % i].Down()
  301.                 self.elements['objects']['category_%d' % i].Show()
  302.         except:
  303.             pass
  304.         '''
  305.         if (len(tmpCategorys) > 5):
  306.             if (self.arrows['categorys'] <= 0):
  307.                 self.elements['objects']['rightArrow'].Show()
  308.                 self.elements['objects']['leftArrow'].Hide()
  309.             elif (self.arrows['categorys']+5 < len(tmpCategorys)):
  310.                 self.elements['objects']['leftArrow'].Show()
  311.                 self.elements['objects']['rightArrow'].Show()
  312.             elif (self.arrows['categorys']+5 >= len(tmpCategorys)):
  313.                 self.elements['objects']['rightArrow'].Hide()
  314.                 self.elements['objects']['leftArrow'].Show()
  315.         else:
  316.             self.elements['objects']['leftArrow'].Hide()
  317.             self.elements['objects']['rightArrow'].Hide()
  318.         '''
  319.     def RefreshAchievements(self):
  320.         self.CreateTypes()
  321.         for i in xrange(7):
  322.             self.elements['objects']['achievements']['box_%d' % i].Hide()
  323.  
  324.         try:
  325.             if self.type == 0:
  326.                 achievements = constInfo.Achievements["achievements"][self.category]
  327.             elif self.type == 1:
  328.                 achievements = self.elements['objects']['achievements']['type_1']
  329.             elif self.type == 2:
  330.                 achievements = self.elements['objects']['achievements']['type_2']
  331.                
  332.             for i in xrange(7):
  333.                 curAchievement = achievements[self.achievementsPos + i]
  334.                 self.elements['objects']['achievements']['box_%d' % i].SetContent(self.category, curAchievement[0], curAchievement[1], curAchievement[2], curAchievement[3])
  335.                 self.elements['objects']['achievements']['box_%d' % i].Show()
  336.         except:
  337.             self.elements['objects']['achievements']['scrollbar'].Hide()
  338.             return
  339.            
  340.         if len(achievements) <= 7:
  341.             self.elements['objects']['achievements']['scrollbar'].Hide()
  342.         else:
  343.             self.elements['objects']['achievements']['scrollbar'].SetMiddleBarSize(float(7)/float(len(achievements)))
  344.             self.elements['objects']['achievements']['scrollbar'].Show()
  345.            
  346.     def __OnScroll(self):
  347.         try:
  348.             if self.type == 0:
  349.                 achievementslen = len(constInfo.Achievements["achievements"][self.category])
  350.             elif self.type == 1:
  351.                 achievementslen = len(self.elements['objects']['achievements']['type_1'])
  352.             elif self.type == 2:
  353.                 achievementslen = len(self.elements['objects']['achievements']['type_2'])
  354.             self.achievementsPos = int(self.elements['objects']['achievements']['scrollbar'].GetPos() * (achievementslen-5))
  355.         except:
  356.             pass
  357.         self.RefreshAchievements()
  358.        
  359.     def SetGlobalProgress(self):
  360.         Finished,inProgress = 0,0
  361.         for i in xrange(len(self.categorys)):
  362.             self.progress['current_category_%d' % self.categorys[i][1]] = 0
  363.             self.progress['max_category_%d' % self.categorys[i][1]] = 0
  364.         for cat in constInfo.Achievements["achievements"]:
  365.             for i in xrange(len(constInfo.Achievements["achievements"][cat])):
  366.                 inProgress += 1
  367.                 if constInfo.Achievements["achievements"][cat][i][0] >= constInfo.Achievements["achievements"][cat][i][1]:
  368.                     self.progress['current_category_%d' % cat] += 1
  369.                     Finished += 1
  370.             self.progress['max_category_%d' % cat] = len(constInfo.Achievements["achievements"][cat])
  371.         self.globalProgress.SetProgress(Finished, inProgress)
  372.        
  373.     def SetAchievementFinisehd(self, category, valueReached, points, mobVnum):
  374.         firstLine = 'Has alcanzado un logro:'
  375.         if category == 2 or category == 3 or category == 4:
  376.             secondLine = self.GetDescByCat(category) % (valueReached, nonplayer.GetMonsterName(mobVnum))
  377.         else:
  378.             secondLine = self.GetDescByCat(category) % valueReached
  379.         thirdLine = '|cffa08784Punkty: %d' % points
  380.         self.finishedAchievement = FinishedAchievementDialog()
  381.         self.finishedAchievement.SetFirstLineText(firstLine)
  382.         self.finishedAchievement.SetSecondLineText(secondLine)
  383.         self.finishedAchievement.SetThirdLineText(thirdLine)
  384.         self.finishedAchievement.Open(10)
  385.        
  386.     def GetDescByCat(self, category):
  387.         return ("Subir al nivel %d","Matar a %dx %s","Matar a %dx %s","Romper %dx %s","|cffa08784Jugar |cffa07970%d |cffa08784minutos","Matar %dx jugadores")[category-1]
  388.        
  389.     def CreateCategoryButton(self, parent, x, y, text, func, arg):
  390.         Button = uimg.RadioButton()
  391.         Button.SetParent(parent)
  392.         Button.SetUpVisual("illumina/inne/btn_kod2_long_01.tga")
  393.         Button.SetOverVisual("illumina/inne/btn_kod2_long_02.tga")
  394.         Button.SetDownVisual("illumina/inne/btn_kod2_long_03.tga")
  395.         Button.SetText(text)
  396.  
  397.         Button.SetEvent(uimg.__mem_func__(func), arg)
  398.         Button.SetPosition(x, y)
  399.         #Button.Down()
  400.         Button.Show()
  401.         return Button
  402.        
  403.     def Destroy(self):
  404.         self.Close()
  405.         self.ClearDictionary()
  406.        
  407.     def Open(self):
  408.         if not self.isLoaded:
  409.             self.__LoadWindow()
  410.        
  411.         self.SetCategory(0)
  412.         self.SetCenterPosition()
  413.         self.SetTop()
  414.         self.Show()
  415.        
  416.     def Close(self):
  417.         self.Hide()
  418.         return TRUE
  419.        
  420.     def OnPressEscapeKey(self):
  421.         self.Close()
  422.         return TRUE
  423.        
  424.     def OnPressExitKey(self):
  425.         self.Close()
  426.         return TRUE
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement