io_coat3D: fixing exchange_folder.txt bug

This commit is contained in:
Kalle-Samuli Riihikoski
2020-11-22 14:17:47 +02:00
parent 860f646176
commit b4ca385ac9
2 changed files with 32 additions and 20 deletions

View File

@ -45,6 +45,7 @@ import ntpath
import re import re
import shutil import shutil
import pathlib import pathlib
import stat
import time import time
@ -266,8 +267,15 @@ class SCENE_OT_folder(bpy.types.Operator):
coat3D = bpy.context.scene.coat3D coat3D = bpy.context.scene.coat3D
if(os.path.isdir(coat3D.exchangeFolder)): if(os.path.isdir(coat3D.exchangeFolder)):
foundExchangeFolder= True foundExchangeFolder= True
else: if(platform == 'win32' or platform == 'darwin'):
foundExchangeFolder = False exchangeFile = os.path.expanduser("~") + os.sep + 'Documents' + os.sep + '3DC2Blender' + os.sep + '3DC2Blender'
else:
exchangeFile = os.path.expanduser("~") + os.sep + '3DC2Blender' + os.sep + '3DC2Blender'
if(coat3D.exchangeFolder.rfind('Exchange') >= 0):
file = open(exchangeFile, 'w')
file.write(coat3D.exchangeFolder)
file.close()
return {'FINISHED'} return {'FINISHED'}

View File

@ -14,26 +14,30 @@ def InitFolders():
# 1. ################################################################# # 1. #################################################################
if(platform == 'win32' or platform == 'darwin'): if(platform == 'win32' or platform == 'darwin'):
exchangeFile = os.path.expanduser("~") + os.sep + 'Documents' + os.sep + '3DC2Blender' + os.sep + 'Exchange_folder.txt' DC2Folder = os.path.expanduser("~") + os.sep + 'Documents' + os.sep + '3DC2Blender'
else: else:
exchangeFile = os.path.expanduser("~") + os.sep + '3DC2Blender' + os.sep + 'Exchange_folder.txt' DC2Folder = os.path.expanduser("~") + os.sep + '3DC2Blender'
if(os.path.isfile(exchangeFile)):
folderPath = '' exchangeFolderFile = DC2Folder + os.sep + 'Exchange_folder.txt'
folderPathh = open(exchangeFile) if(not os.path.isdir(DC2Folder)):
for line in folderPathh: os.mkdir(DC2Folder)
folderPath = line
if(not os.path.isfile(exchangeFolderFile)):
file = open(exchangeFolderFile, 'w')
file.close()
else:
savedExchangePath = ''
folderPath = open(exchangeFolderFile)
for line in folderPath:
savedExchangePath = line
break break
folderPathh.close() folderPath.close()
if(os.path.isdir(os.path.abspath(folderPath)) and folderPath.rfind('Exchange') >= 0): if(os.path.isdir(os.path.abspath(savedExchangePath)) and savedExchangePath.rfind('Exchange') >= 0):
coat3D.exchangeFolder = folderPath coat3D.exchangeFolder = savedExchangePath
return True, coat3D.exchangeFolder return True, coat3D.exchangeFolder
else:
try:
os.makedirs(os.path.dirname(exchangeFile))
except:
pass
# 2. ################################################################# # 2. #################################################################
@ -50,7 +54,7 @@ def InitFolders():
Blender_folder = ("%s%sBlender"%(exchangeFolder,os.sep)) Blender_folder = ("%s%sBlender"%(exchangeFolder,os.sep))
if(not(os.path.isdir(Blender_folder))): if(not(os.path.isdir(Blender_folder))):
os.makedirs(Blender_folder) os.makedirs(Blender_folder, mode = 0o666)
Blender_folder1 = os.path.join(Blender_folder,"run.txt") Blender_folder1 = os.path.join(Blender_folder,"run.txt")
file = open(Blender_folder1, "w") file = open(Blender_folder1, "w")
file.close() file.close()
@ -101,13 +105,13 @@ def set_working_folders():
else: else:
folder_objects = os.path.expanduser("~") + os.sep + 'Documents' + os.sep + '3DC2Blender' + os.sep + 'ApplinkObjects' folder_objects = os.path.expanduser("~") + os.sep + 'Documents' + os.sep + '3DC2Blender' + os.sep + 'ApplinkObjects'
if(not(os.path.isdir(folder_objects))): if(not(os.path.isdir(folder_objects))):
os.makedirs(folder_objects) os.makedirs(folder_objects, mode = 0o666)
else: else:
if (coat3D.defaultfolder != '' and os.path.isdir(coat3D.defaultfolder)): if (coat3D.defaultfolder != '' and os.path.isdir(coat3D.defaultfolder)):
return coat3D.defaultfolder return coat3D.defaultfolder
else: else:
folder_objects = os.path.expanduser("~") + os.sep + '3DC2Blender' + os.sep + 'ApplinkObjects' folder_objects = os.path.expanduser("~") + os.sep + '3DC2Blender' + os.sep + 'ApplinkObjects'
if(not(os.path.isdir(folder_objects))): if(not(os.path.isdir(folder_objects))):
os.makedirs(folder_objects) os.makedirs(folder_objects, mode = 0o666)
return folder_objects return folder_objects