Update UI.py and UtilPack.py

This commit is contained in:
2024-12-03 01:00:05 +09:00
parent 3d1c2a8c3d
commit 1e59aefafa
2 changed files with 35 additions and 8 deletions

24
UI.py
View File

@@ -20,6 +20,10 @@ class MyApp(QMainWindow):
def closeEvent(self, event):
self.saveINI()
event.accept()
def resizeEvent(self, event):
self.GetFitSize(self.label_Image.size())
print( self.label_Image.size() )
def initUI(self):
@@ -101,6 +105,13 @@ class MyApp(QMainWindow):
return layout
def GetFitSize(self, szTarget):
szDesktop = self.screen().size()
szWindow = self.size()
print(f"{szDesktop}, {szWindow}")
def on_click_SrcAdd(self):
# 폴더 선택 창을 띄움
@@ -115,6 +126,9 @@ class MyApp(QMainWindow):
# 폴더 내의 자식 폴더 목록을 가져온다.
listFolders = util.ListSubDirectories(folder_path)
# 선택한 폴더도 리스트에 추가한다.
listFolders.append(folder_path)
for folder in listFolders:
# 폴더 내의 파일 목록을 가져온다.
listFiles = util.ListContainFiles(folder)
@@ -156,7 +170,9 @@ class MyApp(QMainWindow):
if not items:
return
selItemText = ""
for item in items:
selItemText = item.text()
row = self.list_SrcPath.row(item)
self.list_SrcPath.takeItem(row)
@@ -184,19 +200,16 @@ class MyApp(QMainWindow):
# 일단 zip 만...
if fileExt.lower() in [".zip", ".cbz"]:
listContents = util.GetZipContentList(pathTarget)
print("zip")
elif fileExt.lower() == ".rar":
listContents = []
elif True == os.path.isdir(pathTarget):
print("folder")
listContents = util.ListFileExtRcr(pathTarget, [".jpg", ".jpeg", ".png", ".webp"])
self.list_Infos.addItem( QListWidgetItem(pathTarget) )
self.list_Infos.addItem( QListWidgetItem( f"{len(listContents)}" ) )
self.list_Items.clear()
self.list_Items.addItems( listContents )
self.list_Items.addItems( sorted( listContents ) )
def on_Item_SelChanged_Items(self):
@@ -216,13 +229,10 @@ class MyApp(QMainWindow):
elif True == os.path.isdir(pathTarget):
if True == os.path.exists(selItemText):
pixmap.load(selItemText)
szLabel = self.label_Image.size()
self.label_Image.setPixmap(pixmap)
if __name__ == '__main__':
app = QApplication(sys.argv)

View File

@@ -1,11 +1,14 @@
import os
import time
import uuid
import rarfile
import zipfile
import shutil
import difflib
import subprocess
from pathlib import Path
m_dbgLevel = 0
listDbgStr = []
@@ -270,5 +273,19 @@ def PrintJSONTree(data, indent=0):
PrintJSONTree(item, indent)
else:
print(' ' * indent + str(data))
def IsPathWithin(base_path: str, target_path: str) -> bool:
base = Path(base_path).resolve()
target = Path(target_path).resolve()
return target.is_relative_to(base)
# 랜덤 UUID 생성
def UUIDGenRandom():
random_uuid = uuid.uuid4()
return random_uuid
# 이름을 기반으로 UUID 생성
def UUIDGenName(SeedName):
namespace_uuid = uuid.uuid5(uuid.NAMESPACE_DNS, SeedName)
return namespace_uuid