* src/Utils.py (find_folder): new method
* src/gramps_main.py: Use Utils.find_file and Utils.find_folder to enable using unicode names for gramps databases svn: r5406
This commit is contained in:
parent
86fa385a9b
commit
fd10da84a2
@ -8,6 +8,10 @@
|
|||||||
* src/plugins/Check.py (encoding) dont encode a utf-8 string as again,
|
* src/plugins/Check.py (encoding) dont encode a utf-8 string as again,
|
||||||
(cleanup_missing_photos) Use Utils.find_file to fix encoding problems
|
(cleanup_missing_photos) Use Utils.find_file to fix encoding problems
|
||||||
|
|
||||||
|
* src/Utils.py (find_folder): new method
|
||||||
|
* src/gramps_main.py: Use Utils.find_file and Utils.find_folder to enable
|
||||||
|
using unicode names for gramps databases
|
||||||
|
|
||||||
2005-11-17 Martin Hawlisch <Martin.Hawlisch@gmx.de>
|
2005-11-17 Martin Hawlisch <Martin.Hawlisch@gmx.de>
|
||||||
* src/gramps.glade,
|
* src/gramps.glade,
|
||||||
src/TipOfDay.py: Add window title
|
src/TipOfDay.py: Add window title
|
||||||
|
@ -286,6 +286,29 @@ def find_file( filename):
|
|||||||
# not found
|
# not found
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
|
def find_folder( filename):
|
||||||
|
# try the filename we got
|
||||||
|
try:
|
||||||
|
fname = filename
|
||||||
|
if os.path.isdir( filename):
|
||||||
|
return( filename)
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
# Build list of elternate encodings
|
||||||
|
encodings = [sys.getfilesystemencoding(), locale.getpreferredencoding(), 'UTF-8', 'ISO-8859-1']
|
||||||
|
encodings = list(sets.Set(encodings))
|
||||||
|
for enc in encodings:
|
||||||
|
try:
|
||||||
|
fname = filename.encode(enc)
|
||||||
|
if os.path.isdir( fname):
|
||||||
|
return fname
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
# not found
|
||||||
|
return ''
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
@ -522,7 +522,7 @@ class Gramps(GrampsDBCallback.GrampsDBCallback):
|
|||||||
self.open_recent.set_submenu(recent_menu)
|
self.open_recent.set_submenu(recent_menu)
|
||||||
|
|
||||||
def recent_callback(self,obj,filename,filetype):
|
def recent_callback(self,obj,filename,filetype):
|
||||||
if os.path.exists(filename):
|
if Utils.find_file(filename):
|
||||||
DbPrompter.open_native(self,filename,filetype)
|
DbPrompter.open_native(self,filename,filetype)
|
||||||
else:
|
else:
|
||||||
ErrorDialog(_('File does not exist'),
|
ErrorDialog(_('File does not exist'),
|
||||||
@ -1289,12 +1289,12 @@ class Gramps(GrampsDBCallback.GrampsDBCallback):
|
|||||||
mode = "w"
|
mode = "w"
|
||||||
filename = os.path.normpath(os.path.abspath(filename))
|
filename = os.path.normpath(os.path.abspath(filename))
|
||||||
|
|
||||||
if os.path.isdir(filename):
|
if Utils.find_folder(filename):
|
||||||
ErrorDialog(_('Cannot open database'),
|
ErrorDialog(_('Cannot open database'),
|
||||||
_('The selected file is a directory, not '
|
_('The selected file is a directory, not '
|
||||||
'a file.\nA GRAMPS database must be a file.'))
|
'a file.\nA GRAMPS database must be a file.'))
|
||||||
return 0
|
return 0
|
||||||
elif os.path.exists(filename):
|
elif Utils.find_file(filename):
|
||||||
if not os.access(filename,os.R_OK):
|
if not os.access(filename,os.R_OK):
|
||||||
ErrorDialog(_('Cannot open database'),
|
ErrorDialog(_('Cannot open database'),
|
||||||
_('You do not have read access to the selected '
|
_('You do not have read access to the selected '
|
||||||
|
Loading…
Reference in New Issue
Block a user