Update 'CARDPUTER CircuitPython/projects/text_editor.py'
This commit is contained in:
@@ -27,7 +27,7 @@ try:
|
||||
sdcard = sdcardio.SDCard(spi, cs)
|
||||
vfs = storage.VfsFat(sdcard)
|
||||
|
||||
storage.mount(vfs, "/sd") # access files on sd card here
|
||||
storage.mount(vfs, "/sd", readonly=False) # access files on sd card here
|
||||
SD_status = "SD Card Mounted"
|
||||
except OSError:
|
||||
SD_status = "No SD card found"
|
||||
@@ -52,7 +52,7 @@ board.DISPLAY.root_group = intro_text_area
|
||||
intro_text_area.append(text_area)
|
||||
|
||||
filename_text = ""
|
||||
save_text = "Save File - Enter Filename\nIf file exists, it will be overwritten"
|
||||
save_text = "Save File - Enter Filename\nOverwriting Enabled"
|
||||
save_group = label.Label(terminalio.FONT, text=save_text, color="C3B")
|
||||
save_group.x = 10
|
||||
save_group.y = 10
|
||||
@@ -61,10 +61,17 @@ filename_group.x = 0
|
||||
filename_group.y = 60
|
||||
save_group.append(filename_group)
|
||||
|
||||
open_text = "open file"
|
||||
open_group = label.Label(terminalio.FONT, text=open_text)
|
||||
files_text = ""
|
||||
open_text = "Open File - Select using arrow keys"
|
||||
open_group = label.Label(terminalio.FONT, text=open_text, color="C3B")
|
||||
open_group.x = 10
|
||||
open_group.y = 10
|
||||
files_group = label.Label(terminalio.FONT, text=files_text)
|
||||
files_group.x = 0
|
||||
files_group.y = 30
|
||||
open_group.append(files_group)
|
||||
|
||||
open_cursor = 0
|
||||
|
||||
while True:
|
||||
key = keyb.scan()
|
||||
@@ -93,6 +100,15 @@ while True:
|
||||
elif key == "CTRLO":
|
||||
board.DISPLAY.root_group = open_group
|
||||
page="open"
|
||||
files_text = ""
|
||||
index = 0
|
||||
for file in os.listdir("/sd"):
|
||||
filename = str(file)
|
||||
if index == open_cursor:
|
||||
filename = "> " + filename
|
||||
files_text = files_text + filename+"\n"
|
||||
index += 1
|
||||
files_group.text = files_text
|
||||
|
||||
elif key == "ESC":
|
||||
if page == "editor":
|
||||
@@ -117,11 +133,21 @@ while True:
|
||||
|
||||
## The save file menu - for typing the filename
|
||||
elif page == "save":
|
||||
if key == "\n":
|
||||
pass # handle saving the file
|
||||
if key == "DOWN":
|
||||
filename_text = filename_text + "."
|
||||
filename_group.text = filename_text
|
||||
elif key == "\n":
|
||||
with open("/sd/"+filename_text, "w") as f:
|
||||
f.write(text)
|
||||
f.close()
|
||||
board.DISPLAY.root_group = intro_text_area
|
||||
page = "editor"
|
||||
elif not keyb.is_alphanumeric(key):
|
||||
pass # dont allow special characters to be entered
|
||||
else:
|
||||
filename_text = filename_text+key
|
||||
filename_group.text=filename_text
|
||||
|
||||
## The open file menu - for selecting a file
|
||||
elif page == "open":
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user