Commit Graph

401 Commits

Author SHA1 Message Date
26fc8dae9a Save real data to the database. Load data on app start. 2023-12-28 13:58:43 -05:00
d4dc493297 Record data to the database
This isn't recording real data. It's basically discarding all
information from the weight edit field. But it is creating a record.
2023-12-28 13:57:56 -05:00
68c5ab0958 Create placeholders in the historical view for days that are unpopulated. 2023-12-28 13:56:33 -05:00
57034e48d5 Fix tests 2023-12-28 13:56:31 -05:00
e730d36cc9 Switch to an the updated emseries record type 2023-12-28 13:54:59 -05:00
cb2f21341d Be able to respond to blur events and potentially be able to record weight 2023-12-28 13:54:53 -05:00
64c4e971f8 Develop a pattern to detect clicking outside of a focused child 2023-12-28 13:53:02 -05:00
e84c49c343 Create a widget that can show the weight view and edit modes 2023-12-28 13:53:02 -05:00
5b8b612758 Completely switch daydetail to navigation and remove the modal 2023-12-28 13:52:49 -05:00
84fe6fbd8f Open and style the day detail modal 2023-12-28 13:50:09 -05:00
5cd0e822c6 Update to adwaita 1.4, and add a navigation page stack 2023-12-28 13:21:42 -05:00
fe5e4ed044 Save the views as their original widgets
This allows me to directly reference functions that occur on those
widgets without losing them behind a gtk::Widget upcast or needing to
later downcast them.
2023-12-28 12:59:29 -05:00
e30668ca8e Drop DateTimeTz from fitnesstrax 2023-12-28 12:51:50 -05:00
149587f0bd Bind the ID to the record instead of keeping them separate 2023-12-27 16:13:47 -05:00
d2f4ec97c0 Rename UniqueId to RecordId 2023-12-26 15:39:17 -05:00
c94b7db484 Stop using DateTimeTz 2023-12-26 15:37:53 -05:00
85e2494c3b Add a test application that demonstrates chrono and timezone processing 2023-12-26 13:33:18 -05:00
af8f9b0244 Generate some random data and feed it into hte historical view 2023-12-24 19:13:49 -05:00
1b3ca7439d Add styling to the day summary 2023-12-24 12:00:12 -05:00
3dc8be0d26 Render a weight record 2023-12-22 18:53:29 -05:00
43cd408e2c Start elaborating upon the HistoricalView
I've created the DaySummary structure and set up a list view to go into
the historical view. One hard-coded date is visible as a placeholder to
start filling things into the day summary.
2023-12-22 17:32:45 -05:00
3a728a51b4 Extract the application loop from the main file 2023-12-22 15:17:22 -05:00
f19090311b Extract all of the UI components into dedicated files 2023-12-22 15:17:22 -05:00
dedcc76df0 Mild cleanups 2023-12-22 15:16:03 -05:00
6678ab9852 Documentation 2023-12-22 14:28:23 -05:00
9c200f555c Set up app invocation and response handling 2023-12-22 14:08:16 -05:00
3ca8bf64cc Set up message passing between app window and an app thread 2023-12-19 18:05:22 -05:00
87994012fa Save the database path to settings and attempt to open the database on start 2023-12-19 10:59:33 -05:00
50268ffadc Actually be able to open the database 2023-12-19 10:46:53 -05:00
beedeba8dc Style the welcome screen 2023-12-19 10:10:02 -05:00
db188ea75a Allow the user to create a new file 2023-12-19 00:37:51 -05:00
104ffc5782 Set up callbacks to make the save button sensitive to the file selection 2023-12-19 00:31:36 -05:00
38db3d6780 Elaborate upon and format the welcome dialog 2023-12-18 21:14:08 -05:00
0dd0a5f7cc Set up some of the content of the welcome view 2023-12-18 20:04:55 -05:00
acdf9ec150 Add the window header bar 2023-12-18 19:08:32 -05:00
0ebdcd7c2a Add some commentary 2023-12-18 18:36:22 -05:00
baf652173c Set up the main views for the window, as well as the redraw policy
Whenever we change views, we need to call the redraw function. That
function will handle dropping the old view and populating the new one.
2023-12-18 18:30:41 -05:00
c4befcc6de Add the CSS style context to the main window 2023-12-18 11:59:56 -05:00
a7d6d82ec2 Set up an environment variable to toggle between dev and production schemas 2023-12-07 09:56:10 -05:00
f3a453d151 Set up a development gsettings schema 2023-12-07 09:45:56 -05:00
b9aa434278 Remove types that are not implemented yet
I've gone *years* without these types, mostly because I wasn't doing
these workouts. I can go longer.
2023-12-06 23:55:12 -05:00
83a4839b1d Implement the timestamp function 2023-12-06 23:52:46 -05:00
0e0d67a9ac Split Fitnesstrax into two crates 2023-12-06 23:52:33 -05:00
e5fb605816 Create a test that verifies that a series can be made for a TraxRecord 2023-12-06 23:52:33 -05:00
f9db002464 Make the series open function accept anything that can be a path reference 2023-12-06 23:52:28 -05:00
0ac9bb74a6 Set up the bare minimum of a GUI app, opening only a single window 2023-12-06 23:52:28 -05:00
f034dfcb8b Set up the basic data structures of a new fitnesstrax app. 2023-12-06 23:52:28 -05:00
7abb33c4fe Work out how the session filter and the handlers can function 2023-11-21 09:57:35 -05:00
581979fc54 Make some test endpoints and prototype an authentication filter 2023-11-20 23:30:10 -05:00
bf93625225 Create a placeholder for the Visions server 2023-11-20 00:03:16 -05:00