How skakke/todolist_uke4 works
This is a PyQt desktop to-do list with SQLite-backed accounts and shared tasks. The main workflow is login, load a user’s owned and shared tasks, then add, share, or delete tasks. The README also documents initial table creation and account provisioning. The UI files and database schema are visible in the tree, but their full contents were not sampled, so the graph omits details beyond documented behavior and observed calls.
Main entry points: database.py Database operations · main_window.py Task window · login_window.py Login window · app.py App controller
Components 13
Application flow
- Application entry
src/main.py - App controller
src/app.py - Login window
src/login_window.py - Login UI
src/login_window.ui
Task management
- Task window
src/main_window.py - Task UI
src/main_window.ui - Task model
src/gjoremaal.py
Accounts and setup
- User model
src/bruker.py - Schema setup
src/lagetabeller.py - Account provisioning
src/opprette_brukere.py
Persistent storage
- Database operations
src/database.py - SQLite database
todolist.db
Other components
- User
Connections 18
- User → Login window: enters credentials
- Application entry → App controller: starts
- App controller → Login window: creates and shows
- Login window → Login UI: loads
- Login window → Database operations: checks credentials
- Database operations → SQLite database: queries accounts
- Database operations → User model: constructs user
- Login window → App controller: signals success
- App controller → Task window: creates after login
- Task window → Task UI: loads
- Task window → Database operations: loads, adds, shares, deletes tasks
- Task window → Database operations: queries user list
- Database operations → SQLite database: reads and writes tasks
- Database operations → Task model: constructs loaded tasks
- Task window → Task model: creates task objects
- Schema setup → Database operations: calls table creation
- Database operations → SQLite database: creates tables
- Account provisioning → SQLite database: inserts hashed accounts