notepad / app.py
water-water's picture
Update app.py
f5d54c4 verified
import gradio as gr
# Dictionary to store notes in memory
notes = {}
def save_note(note_number, content):
if note_number:
notes[int(note_number)] = content
return f"Note {note_number} saved!", {str(k): v for k, v in notes.items()}
return "Please enter a valid note number.", {str(k): v for k, v in notes.items()}
def load_note(note_number):
if note_number and int(note_number) in notes:
return notes[int(note_number)]
return ""
def clear_notes():
notes.clear()
return "All notes cleared!", {}, ""
with gr.Blocks() as demo:
gr.Markdown("## 📝 Simple Gradio Notepad")
with gr.Row():
note_number = gr.Number(label="Note Number", precision=0)
load_button = gr.Button("Load Note")
clear_button = gr.Button("Clear All Notes")
note_content = gr.Textbox(lines=10, label="Note Content", placeholder="Write your note here...")
save_button = gr.Button("Save Note")
status_output = gr.Textbox(label="Status", interactive=False)
notes_display = gr.JSON(label="Current Notes (in memory)")
# Function bindings
save_button.click(save_note, inputs=[note_number, note_content], outputs=[status_output, notes_display])
load_button.click(load_note, inputs=note_number, outputs=note_content)
clear_button.click(clear_notes, outputs=[status_output, notes_display, note_content])
demo.launch()