-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathselectpath.py
40 lines (30 loc) · 1.27 KB
/
selectpath.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
'''
Author: Paoger
Date: 2024-01-19 15:58:11
LastEditors: Paoger
LastEditTime: 2024-01-20 18:30:01
Description:
Copyright (c) 2024 by Paoger, All Rights Reserved.
'''
import os
import glob
from kivy.logger import Logger
from kivymd.app import MDApp
from onelinelistpath import OneLineListPath
#切换到上一级目录
def toUperLevelDir(curDir):
Logger.debug(f"X-Chess selectpath:toUperLevelDir {curDir=}")
app = MDApp.get_running_app()
app.root.ids['id_screenselectpath'].ids['id_btn_back'].disabled = True
upDir = os.path.dirname(curDir)
Logger.debug(f"X-Chess id_screenselectpath:toUperLevelDir {upDir=}")
app.sel_path = upDir
app.root.ids['id_screenselectpath'].ids['id_cur_path'].text = upDir
seachdir = app.root.ids['id_screenselectpath'].ids['id_cur_path'].text
seachdir = os.path.join(seachdir,'*')
subdirs = [name for name in glob.glob(seachdir) if os.path.isdir(name)]
app.root.ids['id_screenselectpath'].ids.id_dir_list.clear_widgets()
for sd in subdirs:
last_level_dir = os.path.basename(sd)
app.root.ids['id_screenselectpath'].ids.id_dir_list.add_widget(OneLineListPath(text=f"{last_level_dir}",font_style="Overline"))
app.root.ids['id_screenselectpath'].ids['id_btn_back'].disabled = False