Update UI.py and UtilPack.py
This commit is contained in:
24
UI.py
24
UI.py
@@ -21,6 +21,10 @@ class MyApp(QMainWindow):
|
||||
self.saveINI()
|
||||
event.accept()
|
||||
|
||||
def resizeEvent(self, event):
|
||||
self.GetFitSize(self.label_Image.size())
|
||||
print( self.label_Image.size() )
|
||||
|
||||
|
||||
def initUI(self):
|
||||
layout = self.MakeUI()
|
||||
@@ -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):
|
||||
@@ -217,12 +230,9 @@ class MyApp(QMainWindow):
|
||||
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)
|
||||
|
||||
|
||||
17
UtilPack.py
17
UtilPack.py
@@ -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 = []
|
||||
@@ -271,4 +274,18 @@ def PrintJSONTree(data, indent=0):
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user