Modified files:
* Configuration.py
* HUD_config.xml.example
* HUD_main.py
Instead of tweaking aggregation settings directly in code, make the
values configurable through HUD_config.xml; use the newly created
<hud_ui> element for this. Retain coding convention and key-value
names as they are.
guiautoimport: import traceback
fpdb_simple/GuiPlayerStats: deal with multiple sites with players with matching names
HUD_main: error file is again HUD-error not fpdb-error-log.
Also fixes popups not closing correctly.
General cleanup in the HUD closing code. Closing a HUD
is now managed by the HUD_Main object--this should ensure
that no objects are left dangling.
Eliminated special query to get actual seat by
incorporating in to stat_dict query. Provided for
graceful skipping of hands when there is an error
in a query in the read_stdin() thread. Left
intermediate prints for use of others.
Add site name to list of windows being HUDed,
fix weird call convention to the "del" operator, which is not a function.
call clean_title() on hud titles being killed, so we actually kill (deep) tables and such
HUD:
Add function "kill_hud_menu", which is now called from the Kill This HUD menu option, to avoid a potential loop in kill_hud()
Record the handle of the HUD's destroy signal, use it to un-register, before performing a kill, also avoiding potential loop there
Do not allow kill_hud() to be called twice in the same HUD object, return doing nothing if deleted is already set on it (that should totally solve the loop problem)
GuiAutoImport: run HUD_run_me instead of HUD_main
HUD_main: Add HUD_removed() function, called by HUD when an individual HUD is closed, eliminates polling them every update; use 'in' operator instead of has_key
HUD: clean up code that deals with lack of font descriptor in config, and notification of what font was selected
HUD: clean up unnecessary use of keys() functions, and 'in' vs has_key
HUD: restore previous definition of reposition_windows(), although i can't make it error at will anymore
Tables: cleanup with keys() and in operator
fpdb: no longer raise an error on duplicate tab, since we currently depend on that, it's not an error, right?
i can see using this for table info, debug info, buy-in info maybe, but i wanted some place i could write to directly and see things in real time rather than depending on the logs