How leo4bits/whiteboard works
This is a Tkinter whiteboard for drawing and editing canvas objects, with undo/redo history persisted in JSON. The main workflow is to choose a drawing or editing tool, interact with the canvas, and record changes for later undo or redo. The excerpts show the UI wiring and portions of the interaction and persistence logic; omitted source may contain additional details, and no README was provided.
Main entry points: main.py Tkinter UI · FuncDataProcessing.py JSON Operations · function.py Drawing Tools · picture_button UI Images
Components 9
Whiteboard UI
- Tkinter UI
main.py - UI Images
picture_button - Branding Images
Picture
Canvas Tools
- Drawing Tools
function.py - Erase and Move
function.py - Undo and Redo
function.py
History Storage
- JSON Operations
FuncDataProcessing.py - History Data
data_id.json
Other components
- User
Connections 11
- User → Tkinter UI: uses controls
- Tkinter UI → UI Images: loads icons
- Tkinter UI → Branding Images: loads branding
- Tkinter UI → Drawing Tools: dispatches draw
- Tkinter UI → Erase and Move: dispatches edit
- Tkinter UI → Undo and Redo: dispatches history
- Tkinter UI → JSON Operations: resets data
- Drawing Tools → JSON Operations: records objects
- Erase and Move → JSON Operations: updates erased items
- Undo and Redo → JSON Operations: reads and rewrites
- JSON Operations → History Data: reads and writes