2.3.2024
To Do List
Bugs
Manually created files are named .txt here, application created files are named .dat
- The carbohydrate's unit "b" in a data record is not aceppted but also no error is shown!
- The carbohydrate's unit "grams" in a data record is recognized but not used in the data display.
- The carbohydrate's unit "KE" in a data record is recognized but not used in the data display.
- The carbohydrate's unit used in data display is always the one given in the configuration file.
There is no calculation from the value's uint in the data record to the unit used in the data display.
- Values from .txt file must be checked for being valid.
- Check all and every element read on it's validity.
- When using at least two Contour devices of different types for reading data in one Glucotux session using the second device will fail.
Fix Problems
- Month display is 28 day long, not as log as the shown month!
- If no year is given in a .txt file show the user a dialog for information and putting in a year.
Giving a year is mandatory to leave / close the dialog.
- If a .txt file contains a transition from december to january increment the year in the first dataset of january.
- Add a new file extension for meter data files. So these data may be saved in separate files optionally for better identification.
- Create four new toolbars (from left to right, right of the existing) :
empty
display shifting buttons
empty
quit button
Around Development and Implementation
- Create and implement a couple of automatted unit tests.
- Create and implement a couple of automatted regression tests.
- Desktop and start menu starter.
- Create deb package.
- Create rpm package.
- Create package for ArchLinux based systems.
- GTK+ 3 integration into above packages.
- Installation tests.
Reading Data from Glucometers
- Show dialog requesting to connect the glucometer.
This Dialog should close automaticly when a glucometer is detected.
Removed, progressbar used.
- Do the reading in an own thread.
- Show a progressbar while waitng for and reading from a glucometer.
- Show a dialog signaling the end of reading and showing the result.
Configuration
Configuration is done via a simple .conf file.
- Write configuration file.
- When saving the file after editing create backup copy.
- Add bounds for insulin, carbohydrates, weight.
- When reading check for read errors and if all data is valid.
Logo, Icons
- Disable buttons and menue items that do not lead to a function
(Done by using conditional compilation).
- Create a nice logo ;-)
- Copy icons to a standard path when running the application the first time or if they are not found there.
File
- When a file is selected in the file open dialog show data in the week's grafic display.
- If a file is given with the "-i" option read the file and show data in the week's grafic display.
- If no file is given with the "-i" option on application's start read last opened file and show data in the week's grafic display.
Read any older files.
Removed, see next entries.
- CLI application for converting first version data file (
R 1 Glucose 201706102136 233mg/dL N
) to current version data file.
- CLI application for converting second version data file (
201807062015 3 2 O Carb R 1
, timestamp without seconds) to current version data file.
- CLI application for converting third version data file (
20190409181531 148 mg/dL TN Glucose R 1
, timestamp with seconds) to current version data file.
- CLI application for converting fourth version data file (
202112010625 5.0 1 Insulin R 2
, double for value) to current version data file.
- CLI application for converting fifth version data file (
1638379860|20|1||I|R|in den rechten Arm
, '|' as separator, timestamp as string) to current version data file.
- Write all existing values into one file.
- Write all values [from date ... to date] into a file.
- Combine a set of files into one dataset sorted ascending by time and then double lines removed.
- Write data in csv format to a file.
- Add a checksum to every line in a data file to prevent errors due to manual manipulation.
- Add a checksum to a data file to prevent errors due to manual manipulation.
Checksum may be a md5 hash for example.
Grafic User Interface
Gadgets
- Button, menu entry (and Shortkey) to clear internal data.
- Button and menu entry (File / Update) for display update (read new data from opened file).
- Command line argument "--maximize" to start the application in maximized (not full screen) mode.
Shortkeys
- Shortkey (F5) for display update (read new data from opened file).
- Shortkeys for all buttons in toolbar.
Localization
- German
- English
- Set German or English from system localization
Gernan in German speaking countries, English everywhere else.
- More languages to come with the help of native speakers.
Help
- Write documentation / users manual,
don't forget file formats in appendices.
- If possible open inline help.
- Open the PDF documentation file.
- Use tool tips.
Toolbar
- Button for display of current day.
- Button for display of current week.
- Button for display of current month.
- Button for display using start and end date (opens a calendar dialog).
Input Widget
for blood glucose, insulin, carbohydrates and weight:
- Date
- Time
- Blood Glucose
- Insulin
- Carbohydrates
- Weight
- Comment
This is a feature that may be implemented in the future or if someone requests for it.
Move display
The curve presented on the display should be movable without changing the number of days displayed.
- Move display using shortkeys, "Shift" key pressed,
"<" and ">" keys first,
arrow keys next.
- Move the display by mouse, left mouse key pressed.
- Move display by using icons in the tool bar :
go-first
go-last
go-previous
go-next
Select display start (and end) time
- Select start time for daily display.
- Select start time for weekly display.
- Select start time for monthly display.
- Select start time and end time for range display
(for future use).
Curve Displays
- One curve per data type.
- Selected data type in one display.
- Select data by configuration (file).
Daily Display
- Blood glucose
- Insulin
- Carbohydrates
- Weight
Weekly Display
- Blood glucose
- Insulin
- Carbohydrates
- Weight
Monthly Display
- Blood glucose
- Insulin
- Carbohydrates
- Weight
"From - To" Display (for future use)
- Blood glucose
- Insulin
- Carbohydrates
- Weight
Show data from display location
To get specific data from display there has to be a vertical line displayed to
select the date and time of the data of interest.
The line should be movable by mouse or shortkeys.
Data is shown in a small dialog near the line for the nearest in ten minutes around
the position of the line.
Data to show are :
- Date
- Time
- Insulin
- Carbohydrates
- Weight
- Comment
Handling, Implementation
- Draw the line, starting in the middle of the display.
- Show the data display, first from the pixel's dataset.
- Get dataset from around the pixel.
- Move line using shortkeys,
"<" and ">" keys first,
arrow keys next.
Move the line by mouse, left mouse key pressed.
Removed, function is used otherwise.
- Catch the mouse some pixels around the line.
Text Display
- Display data as human readable text in a scrollable window
- Text window overlays grafic data display exactly
- Switching the window on and off is done by the menu entrty or the tool button, not by window controls
- If possible there should be no window tilte bar
- Enable copy and paste in the window mentioned above
3D Display
Show selected data (s.a.) in a 3D display one curve behind the other.
Blood Glucose, Insulin, Carbohydrates, Weight
selectable with checkboxes
Documentation
PDF
Documentation file is written using LibreOffice and then exported to pdf format.
- Menus
- Dialogs
- Messages
- Configuration
- File formats
Webpage
- Update homepage
- Menus
- Dialogs
- Messages
- Configuration
- File formats
- ToDo list for developers (created from ToDo.md)
Markdown
Check documentation in the files
- README.md
- GUI.md
- ReleaseNotes.md
- LICENSE
- ToDo.md
GUI.md
- Menus
- Dialogs
- Messages
- Configuration
- File formats
© Uwe Jantzen 2.03.24