Merge branch 'master' into hudfix

This commit is contained in:
Mika Bostrom 2009-11-28 10:58:23 +02:00
commit 81e77ebfcf
6 changed files with 158 additions and 145 deletions

View File

@ -312,8 +312,8 @@ class Filters(threading.Thread):
self.cbAllLimits.set_active(False)
if not self.limits[limit]:
if limit.isdigit():
if self.cbFl is not None:
self.cbFl.set_active(False)
if self.cbFL is not None:
self.cbFL.set_active(False)
else:
if self.cbNL is not None:
self.cbNL.set_active(False)
@ -329,7 +329,9 @@ class Filters(threading.Thread):
if self.limits[limit]:
for cb in self.cbLimits.values():
cb.set_active(False)
if self.cbNL is not None:
self.cbNL.set_active(False)
if self.cbFL is not None:
self.cbFL.set_active(False)
elif limit == "fl":
if not self.limits[limit]:

View File

@ -152,14 +152,17 @@ class GuiGraphViewer (threading.Thread):
if not sitenos:
#Should probably pop up here.
print "No sites selected - defaulting to PokerStars"
self.db.rollback()
return
if not playerids:
print "No player ids found"
self.db.rollback()
return
if not limits:
print "No limits found"
self.db.rollback()
return
#Set graph properties

View File

@ -159,10 +159,14 @@ class HUD_main(object):
# function idle_func() to be run by the gui thread, at its leisure.
def idle_func():
gtk.gdk.threads_enter()
# try:
self.hud_dict[table_name].update(new_hand_id, config)
# The HUD could get destroyed in the above call ^^, which leaves us with a KeyError here vv
# if we ever get an error we need to expect ^^ then we need to handle it vv - Eric
try:
[aw.update_gui(new_hand_id) for aw in self.hud_dict[table_name].aux_windows]
# finally:
except KeyError:
pass
finally:
gtk.gdk.threads_leave()
return False
@ -198,7 +202,7 @@ class HUD_main(object):
try:
(table_name, max, poker_game, type, site_id, site_name, tour_number, tab_number) = \
self.db_connection.get_table_info(new_hand_id)
except Exception, err:
except Exception, err: # TODO: we need to make this a much less generic Exception lulz
print "db error: skipping %s" % new_hand_id
sys.stderr.write("Database error: could not find hand %s.\n" % new_hand_id)
continue
@ -256,7 +260,7 @@ class HUD_main(object):
if hasattr(tablewindow, 'number'):
self.create_HUD(new_hand_id, tablewindow, temp_key, max, poker_game, type, stat_dict, cards)
else:
sys.stderr.write('Table "%s" no longer exists\n', table_name)
sys.stderr.write('Table "%s" no longer exists\n' % table_name)
self.db_connection.connection.rollback()

View File

@ -530,7 +530,8 @@ class Hud:
def update(self, hand, config):
self.hand = hand # this is the last hand, so it is available later
if os.name == 'nt':
self.update_table_position()
if self.update_table_position() == False: # we got killed by finding our table was gone
return
for s in self.stat_dict:
try:

View File

@ -57,9 +57,13 @@ class Table(Table_Window):
self.window = hwnd
break
try:
if self.window == None:
print "Window %s not found. Skipping." % search_string
return None
except AttributeError:
print "self.window doesn't exist? why?"
return None
(x, y, width, height) = win32gui.GetWindowRect(hwnd)
print "x = %s y = %s width = %s height = %s" % (x, y, width, height)
@ -149,4 +153,3 @@ class Table(Table_Window):
def win_enum_handler(hwnd, titles):
titles[hwnd] = win32gui.GetWindowText(hwnd)

View File

@ -548,7 +548,7 @@ class Importer:
if self.callHud:
#print "call to HUD here. handsId:",handsId
#pipe the Hands.id out to the HUD
print "fpdb_import: sending hand to hud", handsId, "pipe =", self.caller.pipe_to_hud
# print "fpdb_import: sending hand to hud", handsId, "pipe =", self.caller.pipe_to_hud
self.caller.pipe_to_hud.stdin.write("%s" % (handsId) + os.linesep)
except Exceptions.DuplicateError:
duplicates += 1