Merge branch 'master' of git://git.assembla.com/free_poker_tools
This commit is contained in:
		
						commit
						53e7ed44b1
					
				| 
						 | 
					@ -169,6 +169,24 @@ class Popup:
 | 
				
			||||||
            temp = temp + " " + stat
 | 
					            temp = temp + " " + stat
 | 
				
			||||||
        return temp + "\n"
 | 
					        return temp + "\n"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Import:
 | 
				
			||||||
 | 
					    def __init__(self, node):
 | 
				
			||||||
 | 
					        self.interval    = node.getAttribute("interval")
 | 
				
			||||||
 | 
					        self.callFpdbHud = node.getAttribute("callFpdbHud")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __str__(self):
 | 
				
			||||||
 | 
					        return "    interval = %s\n    callFpdbHud = %s\n" % (self.interval, self.callFpdbHud)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tv:
 | 
				
			||||||
 | 
					    def __init__(self, node):
 | 
				
			||||||
 | 
					        self.combinedStealFold = node.getAttribute("combinedStealFold")
 | 
				
			||||||
 | 
					        self.combined2B3B      = node.getAttribute("combined2B3B")
 | 
				
			||||||
 | 
					        self.combinedPostflop  = node.getAttribute("combinedPostflop")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def __str__(self):
 | 
				
			||||||
 | 
					        return ("    combinedStealFold = %s\n    combined2B3B = %s\n    combinedPostflop = %s\n" % 
 | 
				
			||||||
 | 
					                (self.combinedStealFold, self.combined2B3B, self.combinedPostflop) )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class Config:
 | 
					class Config:
 | 
				
			||||||
    def __init__(self, file = None):
 | 
					    def __init__(self, file = None):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -200,6 +218,7 @@ class Config:
 | 
				
			||||||
                    sys.stderr.write("No HUD_config_xml found.  Exiting")
 | 
					                    sys.stderr.write("No HUD_config_xml found.  Exiting")
 | 
				
			||||||
                    sys.exit()
 | 
					                    sys.exit()
 | 
				
			||||||
        try:
 | 
					        try:
 | 
				
			||||||
 | 
					            print "Reading configuration file %s\n" % (file)
 | 
				
			||||||
            doc = xml.dom.minidom.parse(file)
 | 
					            doc = xml.dom.minidom.parse(file)
 | 
				
			||||||
        except:
 | 
					        except:
 | 
				
			||||||
            print "Error parsing %s.  See error log file." % (file)
 | 
					            print "Error parsing %s.  See error log file." % (file)
 | 
				
			||||||
| 
						 | 
					@ -221,26 +240,34 @@ class Config:
 | 
				
			||||||
            site = Site(node = site_node)
 | 
					            site = Site(node = site_node)
 | 
				
			||||||
            self.supported_sites[site.site_name] = site
 | 
					            self.supported_sites[site.site_name] = site
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        s_games = doc.getElementsByTagName("supported_games")
 | 
					#        s_games = doc.getElementsByTagName("supported_games")
 | 
				
			||||||
        for game_node in doc.getElementsByTagName("game"):
 | 
					        for game_node in doc.getElementsByTagName("game"):
 | 
				
			||||||
            game = Game(node = game_node)
 | 
					            game = Game(node = game_node)
 | 
				
			||||||
            self.supported_games[game.game_name] = game
 | 
					            self.supported_games[game.game_name] = game
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
        s_dbs = doc.getElementsByTagName("supported_databases")
 | 
					#        s_dbs = doc.getElementsByTagName("supported_databases")
 | 
				
			||||||
        for db_node in doc.getElementsByTagName("database"):
 | 
					        for db_node in doc.getElementsByTagName("database"):
 | 
				
			||||||
            db = Database(node = db_node)
 | 
					            db = Database(node = db_node)
 | 
				
			||||||
            self.supported_databases[db.db_name] = db
 | 
					            self.supported_databases[db.db_name] = db
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        s_dbs = doc.getElementsByTagName("mucked_windows")
 | 
					#       s_dbs = doc.getElementsByTagName("mucked_windows")
 | 
				
			||||||
        for mw_node in doc.getElementsByTagName("mw"):
 | 
					        for mw_node in doc.getElementsByTagName("mw"):
 | 
				
			||||||
            mw = Mucked(node = mw_node)
 | 
					            mw = Mucked(node = mw_node)
 | 
				
			||||||
            self.mucked_windows[mw.name] = mw
 | 
					            self.mucked_windows[mw.name] = mw
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        s_dbs = doc.getElementsByTagName("popup_windows")
 | 
					#        s_dbs = doc.getElementsByTagName("popup_windows")
 | 
				
			||||||
        for pu_node in doc.getElementsByTagName("pu"):
 | 
					        for pu_node in doc.getElementsByTagName("pu"):
 | 
				
			||||||
            pu = Popup(node = pu_node)
 | 
					            pu = Popup(node = pu_node)
 | 
				
			||||||
            self.popup_windows[pu.name] = pu
 | 
					            self.popup_windows[pu.name] = pu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for imp_node in doc.getElementsByTagName("import"):
 | 
				
			||||||
 | 
					            imp = Import(node = imp_node)
 | 
				
			||||||
 | 
					            self.imp = imp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        for tv_node in doc.getElementsByTagName("tv"):
 | 
				
			||||||
 | 
					            tv = Tv(node = tv_node)
 | 
				
			||||||
 | 
					            self.tv = tv
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def get_site_node(self, site):
 | 
					    def get_site_node(self, site):
 | 
				
			||||||
        for site_node in self.doc.getElementsByTagName("site"):
 | 
					        for site_node in self.doc.getElementsByTagName("site"):
 | 
				
			||||||
            if site_node.getAttribute("site_name") == site:
 | 
					            if site_node.getAttribute("site_name") == site:
 | 
				
			||||||
| 
						 | 
					@ -285,56 +312,94 @@ class Config:
 | 
				
			||||||
        if name == None: name = 'fpdb'
 | 
					        if name == None: name = 'fpdb'
 | 
				
			||||||
        db = {}
 | 
					        db = {}
 | 
				
			||||||
        try:
 | 
					        try:
 | 
				
			||||||
            db['databaseName'] = name
 | 
					            db['db-databaseName'] = name
 | 
				
			||||||
            db['host'] = self.supported_databases[name].db_ip
 | 
					            db['db-host'] = self.supported_databases[name].db_ip
 | 
				
			||||||
            db['user'] = self.supported_databases[name].db_user
 | 
					            db['db-user'] = self.supported_databases[name].db_user
 | 
				
			||||||
            db['password'] = self.supported_databases[name].db_pass
 | 
					            db['db-password'] = self.supported_databases[name].db_pass
 | 
				
			||||||
            db['server'] = self.supported_databases[name].db_server
 | 
					            db['db-server'] = self.supported_databases[name].db_server
 | 
				
			||||||
            if   string.lower(self.supported_databases[name].db_server) == 'mysql':
 | 
					            if   string.lower(self.supported_databases[name].db_server) == 'mysql':
 | 
				
			||||||
                db['backend'] = 2
 | 
					                db['db-backend'] = 2
 | 
				
			||||||
            elif string.lower(self.supported_databases[name].db_server) == 'postgresql':
 | 
					            elif string.lower(self.supported_databases[name].db_server) == 'postgresql':
 | 
				
			||||||
                db['backend'] = 3
 | 
					                db['db-backend'] = 3
 | 
				
			||||||
            else: db['backend'] = 0 # this is big trouble
 | 
					            else: db['db-backend'] = None # this is big trouble
 | 
				
			||||||
        except:
 | 
					        except:
 | 
				
			||||||
            pass
 | 
					            pass
 | 
				
			||||||
        return db
 | 
					        return db
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def get_tv_parameters(self):
 | 
				
			||||||
 | 
					        tv = {}
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
 | 
					            tv['combinedStealFold'] = self.tv.combinedStealFold
 | 
				
			||||||
 | 
					            tv['combined2B3B']      = self.tv.combined2B3B
 | 
				
			||||||
 | 
					            tv['combinedPostflop']  = self.tv.combinedPostflop
 | 
				
			||||||
 | 
					        except: # Default tv parameters
 | 
				
			||||||
 | 
					            tv['combinedStealFold'] = True
 | 
				
			||||||
 | 
					            tv['combined2B3B']      = True
 | 
				
			||||||
 | 
					            tv['combinedPostflop']  = True
 | 
				
			||||||
 | 
					        return tv
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    def get_import_parameters(self):
 | 
				
			||||||
 | 
					        imp = {}
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
 | 
					            imp['imp-callFpdbHud'] = self.imp.callFpdbHud
 | 
				
			||||||
 | 
					            imp['hud-defaultInterval']    = int(self.imp.interval)
 | 
				
			||||||
 | 
					        except: # Default import parameters
 | 
				
			||||||
 | 
					            imp['imp-callFpdbHud'] = True
 | 
				
			||||||
 | 
					            imp['hud-defaultInterval']    = 10
 | 
				
			||||||
 | 
					        return imp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def get_default_paths(self, site = "PokerStars"):
 | 
				
			||||||
 | 
					        paths = {}
 | 
				
			||||||
 | 
					        try:
 | 
				
			||||||
 | 
					            paths['hud-defaultPath']        = os.path.expanduser(self.supported_sites[site].HH_path)
 | 
				
			||||||
 | 
					            paths['bulkImport-defaultPath'] = os.path.expanduser(self.supported_sites[site].HH_path)
 | 
				
			||||||
 | 
					        except:
 | 
				
			||||||
 | 
					            paths['hud-defaultPath']        = "default"
 | 
				
			||||||
 | 
					            paths['bulkImport-defaultPath'] = "default"
 | 
				
			||||||
 | 
					        return paths
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__== "__main__":
 | 
					if __name__== "__main__":
 | 
				
			||||||
    c = Config()
 | 
					    c = Config()
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    print "\n----------- SUPPORTED SITES -----------"
 | 
					    print "\n----------- SUPPORTED SITES -----------"
 | 
				
			||||||
    for s in c.supported_sites.keys():
 | 
					    for s in c.supported_sites.keys():
 | 
				
			||||||
        print c.supported_sites[s]
 | 
					        print c.supported_sites[s]
 | 
				
			||||||
 | 
					 | 
				
			||||||
    print "----------- END SUPPORTED SITES -----------"
 | 
					    print "----------- END SUPPORTED SITES -----------"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    print "\n----------- SUPPORTED GAMES -----------"
 | 
					    print "\n----------- SUPPORTED GAMES -----------"
 | 
				
			||||||
    for game in c.supported_games.keys():
 | 
					    for game in c.supported_games.keys():
 | 
				
			||||||
        print c.supported_games[game]
 | 
					        print c.supported_games[game]
 | 
				
			||||||
 | 
					 | 
				
			||||||
    print "----------- END SUPPORTED GAMES -----------"
 | 
					    print "----------- END SUPPORTED GAMES -----------"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    print "\n----------- SUPPORTED DATABASES -----------"
 | 
					    print "\n----------- SUPPORTED DATABASES -----------"
 | 
				
			||||||
    for db in c.supported_databases.keys():
 | 
					    for db in c.supported_databases.keys():
 | 
				
			||||||
        print c.supported_databases[db]
 | 
					        print c.supported_databases[db]
 | 
				
			||||||
 | 
					 | 
				
			||||||
    print "----------- END SUPPORTED DATABASES -----------"
 | 
					    print "----------- END SUPPORTED DATABASES -----------"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    print "\n----------- MUCKED WINDOW FORMATS -----------"
 | 
					    print "\n----------- MUCKED WINDOW FORMATS -----------"
 | 
				
			||||||
    for w in c.mucked_windows.keys():
 | 
					    for w in c.mucked_windows.keys():
 | 
				
			||||||
        print c.mucked_windows[w]
 | 
					        print c.mucked_windows[w]
 | 
				
			||||||
 | 
					 | 
				
			||||||
    print "----------- END MUCKED WINDOW FORMATS -----------"
 | 
					    print "----------- END MUCKED WINDOW FORMATS -----------"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
    print "\n----------- POPUP WINDOW FORMATS -----------"
 | 
					    print "\n----------- POPUP WINDOW FORMATS -----------"
 | 
				
			||||||
    for w in c.popup_windows.keys():
 | 
					    for w in c.popup_windows.keys():
 | 
				
			||||||
        print c.popup_windows[w]
 | 
					        print c.popup_windows[w]
 | 
				
			||||||
 | 
					 | 
				
			||||||
    print "----------- END MUCKED WINDOW FORMATS -----------"
 | 
					    print "----------- END MUCKED WINDOW FORMATS -----------"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    print "\n----------- IMPORT -----------"
 | 
				
			||||||
 | 
					    print c.imp
 | 
				
			||||||
 | 
					    print "----------- END IMPORT -----------"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    print "\n----------- TABLE VIEW -----------"
 | 
				
			||||||
 | 
					    print c.tv
 | 
				
			||||||
 | 
					    print "----------- END TABLE VIEW -----------"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    c.edit_layout("PokerStars", 6, locations=( (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6) ))
 | 
					    c.edit_layout("PokerStars", 6, locations=( (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6) ))
 | 
				
			||||||
    c.save(file="testout.xml")
 | 
					    c.save(file="testout.xml")
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    print c.get_db_parameters()
 | 
					    print "db    = ", c.get_db_parameters()
 | 
				
			||||||
 | 
					    print "tv    = ", c.get_tv_parameters()
 | 
				
			||||||
 | 
					    print "imp   = ", c.get_import_parameters()
 | 
				
			||||||
 | 
					    print "paths = ", c.get_default_paths("PokerStars")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -33,6 +33,7 @@ import GuiTableViewer
 | 
				
			||||||
import GuiAutoImport
 | 
					import GuiAutoImport
 | 
				
			||||||
import GuiGraphViewer
 | 
					import GuiGraphViewer
 | 
				
			||||||
import FpdbSQLQueries
 | 
					import FpdbSQLQueries
 | 
				
			||||||
 | 
					import Configuration
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class fpdb:
 | 
					class fpdb:
 | 
				
			||||||
	def tab_clicked(self, widget, tab_name):
 | 
						def tab_clicked(self, widget, tab_name):
 | 
				
			||||||
| 
						 | 
					@ -256,71 +257,16 @@ class fpdb:
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	def load_profile(self, filename):
 | 
						def load_profile(self, filename):
 | 
				
			||||||
		"""Loads profile from the provided path name. also see load_default_profile"""
 | 
							"""Loads profile from the provided path name. also see load_default_profile"""
 | 
				
			||||||
		self.obtain_global_lock()
 | 
							self.settings = {}
 | 
				
			||||||
		file=open(filename, "rU")
 | 
					 | 
				
			||||||
		lines=file.readlines()
 | 
					 | 
				
			||||||
		print "Opened and read profile file", filename
 | 
					 | 
				
			||||||
		self.profile=filename
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		self.settings={'db-host':"localhost", 'db-backend':2, 'db-databaseName':"fpdb", 'db-user':"fpdb"}
 | 
					 | 
				
			||||||
		if (os.sep=="/"):
 | 
							if (os.sep=="/"):
 | 
				
			||||||
			self.settings['os']="linuxmac"
 | 
								self.settings['os']="linuxmac"
 | 
				
			||||||
		else:
 | 
							else:
 | 
				
			||||||
			self.settings['os']="windows"
 | 
								self.settings['os']="windows"
 | 
				
			||||||
		self.settings['tv-combinedStealFold']=True
 | 
					
 | 
				
			||||||
		self.settings['tv-combined2B3B']=True
 | 
							self.settings.update(self.config.get_db_parameters())
 | 
				
			||||||
		self.settings['imp-callFpdbHud']=True
 | 
							self.settings.update(self.config.get_tv_parameters())
 | 
				
			||||||
		
 | 
							self.settings.update(self.config.get_import_parameters())
 | 
				
			||||||
		if self.settings['os']=="windows":
 | 
							self.settings.update(self.config.get_default_paths())
 | 
				
			||||||
			self.settings['bulkImport-defaultPath']="C:\\Program Files\\PokerStars\\HandHistory\\filename.txt"
 | 
					 | 
				
			||||||
			self.settings['hud-defaultPath']="C:\\Program Files\\PokerStars\\HandHistory\\"
 | 
					 | 
				
			||||||
		else:
 | 
					 | 
				
			||||||
			self.settings['bulkImport-defaultPath'] = os.path.expanduser("~") + "/.wine/drive_c/Program Files/PokerStars/HandHistory/filename.txt"
 | 
					 | 
				
			||||||
			self.settings['hud-defaultPath'] = os.path.expanduser("~")+"/.wine/drive_c/Program Files/PokerStars/HandHistory/"
 | 
					 | 
				
			||||||
			
 | 
					 | 
				
			||||||
		self.settings['hud-defaultInterval']=10
 | 
					 | 
				
			||||||
		
 | 
					 | 
				
			||||||
		for i in range(len(lines)):
 | 
					 | 
				
			||||||
			if lines[i].startswith("db-backend="):
 | 
					 | 
				
			||||||
				self.settings['db-backend']=int(lines[i][11:-1])
 | 
					 | 
				
			||||||
			elif lines[i].startswith("db-host="):
 | 
					 | 
				
			||||||
				self.settings['db-host']=lines[i][8:-1]
 | 
					 | 
				
			||||||
			elif lines[i].startswith("db-databaseName="):
 | 
					 | 
				
			||||||
				self.settings['db-databaseName']=lines[i][16:-1]
 | 
					 | 
				
			||||||
			elif lines[i].startswith("db-user="):
 | 
					 | 
				
			||||||
				self.settings['db-user']=lines[i][8:-1]
 | 
					 | 
				
			||||||
			elif lines[i].startswith("db-password="):
 | 
					 | 
				
			||||||
				self.settings['db-password']=lines[i][12:-1]
 | 
					 | 
				
			||||||
			elif lines[i].startswith("imp-callFpdbHud="):
 | 
					 | 
				
			||||||
				if lines[i].find("True")!=-1:
 | 
					 | 
				
			||||||
					self.settings['imp-callFpdbHud']=True
 | 
					 | 
				
			||||||
				else:
 | 
					 | 
				
			||||||
					self.settings['imp-callFpdbHud']=False
 | 
					 | 
				
			||||||
			elif lines[i].startswith("tv-combinedPostflop="):
 | 
					 | 
				
			||||||
				if lines[i].find("True")!=-1:
 | 
					 | 
				
			||||||
					self.settings['tv-combinedPostflop']=True
 | 
					 | 
				
			||||||
				else:
 | 
					 | 
				
			||||||
					self.settings['tv-combinedPostflop']=False
 | 
					 | 
				
			||||||
			elif lines[i].startswith("tv-combinedStealFold="):
 | 
					 | 
				
			||||||
				if lines[i].find("True")!=-1:
 | 
					 | 
				
			||||||
					self.settings['tv-combinedStealFold']=True
 | 
					 | 
				
			||||||
				else:
 | 
					 | 
				
			||||||
					self.settings['tv-combinedStealFold']=False
 | 
					 | 
				
			||||||
			elif lines[i].startswith("tv-combined2B3B="):
 | 
					 | 
				
			||||||
				if lines[i].find("True")!=-1:
 | 
					 | 
				
			||||||
					self.settings['tv-combined2B3B']=True
 | 
					 | 
				
			||||||
				else:
 | 
					 | 
				
			||||||
					self.settings['tv-combined2B3B']=False
 | 
					 | 
				
			||||||
			elif lines[i].startswith("bulkImport-defaultPath="):
 | 
					 | 
				
			||||||
				if lines[i][23:-1]!="default":
 | 
					 | 
				
			||||||
					self.settings['bulkImport-defaultPath']=lines[i][23:-1]
 | 
					 | 
				
			||||||
			elif lines[i].startswith("hud-defaultPath="):
 | 
					 | 
				
			||||||
				if lines[i][15:-1]!="default":
 | 
					 | 
				
			||||||
					self.settings['hud-defaultPath']=lines[i][16:-1]
 | 
					 | 
				
			||||||
			elif lines[i].startswith("#"):
 | 
					 | 
				
			||||||
				pass #comment - dont parse
 | 
					 | 
				
			||||||
			else:
 | 
					 | 
				
			||||||
				raise fpdb_simple.FpdbError("invalid line in profile file: "+lines[i]+"   if you don't know what to do just remove it from "+filename)
 | 
					 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
		if self.db!=None:
 | 
							if self.db!=None:
 | 
				
			||||||
			self.db.disconnect()
 | 
								self.db.disconnect()
 | 
				
			||||||
| 
						 | 
					@ -355,8 +301,7 @@ class fpdb:
 | 
				
			||||||
	#end def not_implemented
 | 
						#end def not_implemented
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	def obtain_global_lock(self):
 | 
						def obtain_global_lock(self):
 | 
				
			||||||
		#print "todo: implement obtain_global_lock (users: pls ignore this)"
 | 
							print "todo: implement obtain_global_lock (users: pls ignore this)"
 | 
				
			||||||
		pass
 | 
					 | 
				
			||||||
	#end def obtain_global_lock
 | 
						#end def obtain_global_lock
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	def quit(self, widget, data):
 | 
						def quit(self, widget, data):
 | 
				
			||||||
| 
						 | 
					@ -421,12 +366,13 @@ This program is licensed under the AGPL3, see docs"""+os.sep+"agpl-3.0.txt")
 | 
				
			||||||
	def __init__(self):
 | 
						def __init__(self):
 | 
				
			||||||
		self.threads=[]
 | 
							self.threads=[]
 | 
				
			||||||
		self.db=None
 | 
							self.db=None
 | 
				
			||||||
 | 
							self.config = Configuration.Config()
 | 
				
			||||||
		self.load_default_profile()
 | 
							self.load_default_profile()
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
		self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
 | 
							self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
 | 
				
			||||||
		self.window.connect("delete_event", self.delete_event)
 | 
							self.window.connect("delete_event", self.delete_event)
 | 
				
			||||||
		self.window.connect("destroy", self.destroy)
 | 
							self.window.connect("destroy", self.destroy)
 | 
				
			||||||
		self.window.set_title("Free Poker DB - version: alpha8, p137")
 | 
							self.window.set_title("Free Poker DB - version: alpha6+, p124 or higher")
 | 
				
			||||||
		self.window.set_border_width(1)
 | 
							self.window.set_border_width(1)
 | 
				
			||||||
		self.window.set_size_request(1020,400)
 | 
							self.window.set_size_request(1020,400)
 | 
				
			||||||
		self.window.set_resizable(True)
 | 
							self.window.set_resizable(True)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user