Savanni D'Gerinel
c075b7ed6e
Just barely get the data saveable again
...
Starting to see some pretty serious limitations already.
2024-01-17 22:59:20 -05:00
Savanni D'Gerinel
56d0a53666
Fix how DayEdit deals with the weight field
2024-01-17 22:35:13 -05:00
Savanni D'Gerinel
b00acc64a3
Set up the ActionGroup component
2024-01-17 22:13:55 -05:00
Savanni D'Gerinel
104760c754
Be able to switch into edit mode
2024-01-15 23:27:55 -05:00
Savanni D'Gerinel
1e6555ef61
Create a day detail view
...
DayDetail, the component, I used to use as a view. Now I'm swapping
things out so that DayDetailView handles the view itself. The DayDetail
component will still show the details of the day, but I'll create a
DayEditComponent which is dedicated to showing the edit interface for
everything in a day.
The swapping will now happen in DayDetailView, not in DayDetail or an
even deeper component.
2024-01-15 15:53:01 -05:00
Savanni D'Gerinel
2e2ff6b47e
Create a Singleton component and use it to simplify the weight view
2024-01-15 13:20:23 -05:00
Savanni D'Gerinel
2d22397382
Bump the dashboard version
2024-01-09 08:10:58 -05:00
Savanni D'Gerinel
2c7666304a
Fix the year in the current date view
2024-01-09 08:10:02 -05:00
Savanni D'Gerinel
0007522b26
Extract the Weight and Time Distance widgets
2024-01-01 23:58:55 -05:00
Savanni D'Gerinel
b7b9b1b29f
Create an EditView "component"
...
This is a super tiny data structure that covers an edit mode, a view
mode, and an unconfigured mode. It's mostly a container so that views
don't have to preserve everything directly.
2024-01-01 23:49:31 -05:00
Savanni D'Gerinel
2e3d5fc5a4
Clean up the parameters to TextEntry and populate the field
2024-01-01 22:57:59 -05:00
Savanni D'Gerinel
a25b76d230
Create a validated text entry widget
...
I move the weight edit view into the validated text entry widget, and I
work on some of the unfortunate logic in the weight blur function. I've
left behind a lot of breadcrumbs for things that still need to be done.
2023-12-31 11:18:15 -05:00
Savanni D'Gerinel
9970161c30
Set up a lot of the files necessary for a desktop app
2023-12-29 13:13:22 -05:00
Savanni D'Gerinel
7bd4885b09
Save new information to the day detail view and to the historical view
2023-12-29 09:24:37 -05:00
Savanni D'Gerinel
b5dcee3737
Update the historical view when a change happens in the db
2023-12-28 22:47:47 -05:00
Savanni D'Gerinel
0c3ae062c8
Save real data to the database. Load data on app start.
2023-12-28 22:46:44 -05:00
Savanni D'Gerinel
f422e233a1
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 22:43:56 -05:00
Savanni D'Gerinel
7a6e902fdd
Create placeholders in the historical view for days that are unpopulated.
2023-12-28 22:36:44 -05:00
Savanni D'Gerinel
6d9e2ea382
Switch to the updated emseries record type
2023-12-28 22:36:40 -05:00
Savanni D'Gerinel
04a48574d3
Develop a pattern to detect clicking outside of a focused child
...
Be able to respond to blur events and potentially be able to record weight.
2023-12-28 22:34:09 -05:00
Savanni D'Gerinel
e13e7cf4c3
Create a widget that can show the weight view and edit modes
2023-12-28 22:31:11 -05:00
Savanni D'Gerinel
383f809191
Open and style the day detail view and add it to the navigation stack
2023-12-28 22:31:07 -05:00
Savanni D'Gerinel
d269924827
Refactorings and dead code removal
2023-12-28 22:20:30 -05:00
Savanni D'Gerinel
8049859816
Clean up showing the welcome and historical screens
...
Swapping is now done in dedicated functions instead of a big pattern
match.
After selecting a database, the app window will apply the configuration
by opening the database, saving the path to configuration, and switching
to the historical view.
2023-12-28 21:45:55 -05:00
Savanni D'Gerinel
ac343a2af6
Switch from channel-based communication to async calls into the core
2023-12-28 19:09:12 -05:00
Savanni D'Gerinel
5cd0e822c6
Update to adwaita 1.4, and add a navigation page stack
2023-12-28 13:21:42 -05:00
Savanni D'Gerinel
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
Savanni D'Gerinel
e30668ca8e
Drop DateTimeTz from fitnesstrax
2023-12-28 12:51:50 -05:00
Savanni D'Gerinel
149587f0bd
Bind the ID to the record instead of keeping them separate
2023-12-27 16:13:47 -05:00
Savanni D'Gerinel
d2f4ec97c0
Rename UniqueId to RecordId
2023-12-26 15:39:17 -05:00
Savanni D'Gerinel
c94b7db484
Stop using DateTimeTz
2023-12-26 15:37:53 -05:00
Savanni D'Gerinel
85e2494c3b
Add a test application that demonstrates chrono and timezone processing
2023-12-26 13:33:18 -05:00
Savanni D'Gerinel
af8f9b0244
Generate some random data and feed it into hte historical view
2023-12-24 19:13:49 -05:00
Savanni D'Gerinel
1b3ca7439d
Add styling to the day summary
2023-12-24 12:00:12 -05:00
Savanni D'Gerinel
3dc8be0d26
Render a weight record
2023-12-22 18:53:29 -05:00
Savanni D'Gerinel
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
Savanni D'Gerinel
3a728a51b4
Extract the application loop from the main file
2023-12-22 15:17:22 -05:00
Savanni D'Gerinel
f19090311b
Extract all of the UI components into dedicated files
2023-12-22 15:17:22 -05:00
Savanni D'Gerinel
dedcc76df0
Mild cleanups
2023-12-22 15:16:03 -05:00
Savanni D'Gerinel
6678ab9852
Documentation
2023-12-22 14:28:23 -05:00
Savanni D'Gerinel
9c200f555c
Set up app invocation and response handling
2023-12-22 14:08:16 -05:00
Savanni D'Gerinel
3ca8bf64cc
Set up message passing between app window and an app thread
2023-12-19 18:05:22 -05:00
Savanni D'Gerinel
87994012fa
Save the database path to settings and attempt to open the database on start
2023-12-19 10:59:33 -05:00
Savanni D'Gerinel
50268ffadc
Actually be able to open the database
2023-12-19 10:46:53 -05:00
Savanni D'Gerinel
beedeba8dc
Style the welcome screen
2023-12-19 10:10:02 -05:00
Savanni D'Gerinel
db188ea75a
Allow the user to create a new file
2023-12-19 00:37:51 -05:00
Savanni D'Gerinel
104ffc5782
Set up callbacks to make the save button sensitive to the file selection
2023-12-19 00:31:36 -05:00
Savanni D'Gerinel
38db3d6780
Elaborate upon and format the welcome dialog
2023-12-18 21:14:08 -05:00
Savanni D'Gerinel
0dd0a5f7cc
Set up some of the content of the welcome view
2023-12-18 20:04:55 -05:00
Savanni D'Gerinel
acdf9ec150
Add the window header bar
2023-12-18 19:08:32 -05:00