display dialog when .example config has been copied, this could work 'out-of-the-box' if the user already has gtk??

This commit is contained in:
sqlcoder 2010-01-31 12:24:32 +00:00
parent bbc84fef14
commit 6f0ea2580b
2 changed files with 29 additions and 17 deletions

View File

@ -67,17 +67,17 @@ def get_config(file_name, fallback = True):
config_path = os.path.join(exec_dir, file_name) config_path = os.path.join(exec_dir, file_name)
# print "config_path=", config_path # print "config_path=", config_path
if os.path.exists(config_path): # there is a file in the cwd if os.path.exists(config_path): # there is a file in the cwd
return config_path # so we use it return (config_path,False) # so we use it
else: # no file in the cwd, look where it should be in the first place else: # no file in the cwd, look where it should be in the first place
default_dir = get_default_config_path() default_dir = get_default_config_path()
config_path = os.path.join(default_dir, file_name) config_path = os.path.join(default_dir, file_name)
# print "config path 2=", config_path # print "config path 2=", config_path
if os.path.exists(config_path): if os.path.exists(config_path):
return config_path return (config_path,False)
# No file found # No file found
if not fallback: if not fallback:
return False return (False,False)
# OK, fall back to the .example file, should be in the start dir # OK, fall back to the .example file, should be in the start dir
if os.path.exists(file_name + ".example"): if os.path.exists(file_name + ".example"):
@ -85,10 +85,8 @@ def get_config(file_name, fallback = True):
print "" print ""
check_dir(default_dir) check_dir(default_dir)
shutil.copyfile(file_name + ".example", config_path) shutil.copyfile(file_name + ".example", config_path)
msg = "No %s found in %s or %s\n" % (file_name, exec_dir, default_dir) \ msg = "No %s found\n in %s\n or %s\n" % (file_name, exec_dir, default_dir) \
+ "Config file has been created at %s.\n" % config_path \ + "Config file has been created at %s.\n" % config_path
+ "Edit your screen_name and hand history path in the supported_sites "\
+ "section of the \nPreferences window (Main menu) before trying to import hands."
print msg print msg
logging.info(msg) logging.info(msg)
file_name = config_path file_name = config_path
@ -101,10 +99,10 @@ def get_config(file_name, fallback = True):
print "No %s found, cannot fall back. Exiting.\n" % file_name print "No %s found, cannot fall back. Exiting.\n" % file_name
sys.stderr.write("No %s found, cannot fall back. Exiting.\n" % file_name) sys.stderr.write("No %s found, cannot fall back. Exiting.\n" % file_name)
sys.exit() sys.exit()
return file_name return (file_name,True)
def get_logger(file_name, config = "config", fallback = False, log_dir=None): def get_logger(file_name, config = "config", fallback = False, log_dir=None):
conf_file = get_config(file_name, fallback = fallback) (conf_file,copied) = get_config(file_name, fallback = fallback)
if conf_file: if conf_file:
try: try:
if log_dir is None: if log_dir is None:
@ -445,6 +443,7 @@ class Config:
# we check the existence of "file" and try to recover if it doesn't exist # we check the existence of "file" and try to recover if it doesn't exist
# self.default_config_path = self.get_default_config_path() # self.default_config_path = self.get_default_config_path()
self.example_copy = False
if file is not None: # config file path passed in if file is not None: # config file path passed in
file = os.path.expanduser(file) file = os.path.expanduser(file)
if not os.path.exists(file): if not os.path.exists(file):
@ -452,7 +451,7 @@ class Config:
sys.stderr.write("Configuration file %s not found. Using defaults." % (file)) sys.stderr.write("Configuration file %s not found. Using defaults." % (file))
file = None file = None
if file is None: file = get_config("HUD_config.xml", True) if file is None: (file,self.example_copy) = get_config("HUD_config.xml", True)
self.file = file self.file = file
self.dir_self = get_exec_path() self.dir_self = get_exec_path()

View File

@ -696,6 +696,11 @@ class fpdb:
"""Loads profile from the provided path name.""" """Loads profile from the provided path name."""
self.config = Configuration.Config(file=options.config, dbname=options.dbname) self.config = Configuration.Config(file=options.config, dbname=options.dbname)
log = Configuration.get_logger("logging.conf", "fpdb", log_dir=self.config.dir_log) log = Configuration.get_logger("logging.conf", "fpdb", log_dir=self.config.dir_log)
if self.config.example_copy:
self.info_box( "Config file"
, "has been created at:\n%s.\n" % self.config.file
+ "Edit your screen_name and hand history path in the supported_sites "
+ "section of the Preferences window (Main menu) before trying to import hands.")
self.settings = {} self.settings = {}
self.settings['global_lock'] = self.lock self.settings['global_lock'] = self.lock
if (os.sep=="/"): if (os.sep=="/"):
@ -963,16 +968,24 @@ This program is licensed under the AGPL3, see docs"""+os.sep+"agpl-3.0.txt")
self.window.show() self.window.show()
self.window.present() self.window.present()
def info_box(self, str1, str2):
diapath = gtk.MessageDialog( parent=None, flags=0, type=gtk.MESSAGE_INFO
, buttons=(gtk.BUTTONS_OK), message_format=str1 )
diapath.format_secondary_text(str2)
response = diapath.run()
diapath.destroy()
return response
def warning_box(self, str, diatitle="FPDB WARNING"): def warning_box(self, str, diatitle="FPDB WARNING"):
diaWarning = gtk.Dialog(title=diatitle, parent=None, flags=0, buttons=(gtk.STOCK_OK,gtk.RESPONSE_OK)) diaWarning = gtk.Dialog(title=diatitle, parent=None, flags=0, buttons=(gtk.STOCK_OK,gtk.RESPONSE_OK))
label = gtk.Label(str) label = gtk.Label(str)
diaWarning.vbox.add(label) diaWarning.vbox.add(label)
label.show() label.show()
response = diaWarning.run() response = diaWarning.run()
diaWarning.destroy() diaWarning.destroy()
return response return response
def validate_config(self): def validate_config(self):
hhbase = self.config.get_import_parameters().get("hhArchiveBase") hhbase = self.config.get_import_parameters().get("hhArchiveBase")