| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
These will be recreated in an app used for testing the Api.
|
|
|
|
|
| |
This helps with consistency (use of snake case) while keeping the method
names short ("btn" is used instead of "button").
|
| |
|
|
|
|
|
| |
The main loop was reordered for a little optimisation as we cannot set
free standingly(?) anymore the render interval to 0.
|
|
|
|
|
|
|
|
|
| |
value when returning from render(), btnpressed() or bgrefresh().
This can help free system ressources when apps do not need to be running
anymore. The AppAttributes::destroy_on_exit is currently ignored to give
apps more freedom.
The main_clock app has had some changes done to test the new features.
|
|
|
|
| |
This helps with compartmentalisation and organisation.
|
|
|
|
|
| |
This change allows app_settings to be used under the new app
architecture.
|
|
|
|
|
| |
This is done to allow each app to be able to set their own app
attributes without having them be overshadowed by BaseApp's defaults.
|
|
|
|
|
|
|
|
|
| |
and create classes for home_menu and main_clock apps.
This commit has a lot of changes as multiple parts of the project had to be
changed to support running apps that are based on the BaseApp class. It
could not have been done in multiple commits as the progam would not be
able to build and thus I would not be able to test the changes.
|
|
|
|
| |
They have been moved to a new file, to provide better encapulation.
|
|
|
|
|
|
|
|
| |
It is derived by each app. This allows finally allocating space for an
app's variable when it is opened.
On the other hand, currently, destruction of apps is not fully
implemented. This commit is also done to save a snapshot of something that
works.
|
|
|
|
|
| |
It is uneeded because of falling to the next case present in switch
statements.
|
|
|
|
| |
Did a small oversight where I wrote "month" instead of "day".
|
|
|
|
|
| |
#pragma once will be used in every header file from now on. Changes will
be made for the other header files.
|
| |
|
|
|
|
| |
Set between 24 hour and 12 hour format.
|
| |
|
|
|
|
|
| |
This allows to not save the settings, to avoid time drift, when just
looking at them.
|
| |
|
|
|
|
|
| |
Avoid displaying the first option again when something else has been
selected.
|
| |
|
| |
|
|
|
|
| |
Implement menu option that allows setting the current time.
|
| |
|
|
|
|
| |
This allows add to implement double clicking, for instance.
|
|
|
|
|
| |
Also commit settings.json updates made by VSCode.
This commit was done to have a clean working tree.
|
| |
|
|
|
|
|
| |
This allows to "debloat" the space for others apps, which are not
always loaded in memory, unlike home_menu.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This is to lower power consumption by having the apps set the lowest
performance they need.
|
| |
|
| |
|
| |
|
|
|
|
| |
I had to modify the OLED library to correctly work with newlines.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
When the value references an out of bounds memory address, line 47 in
same file may cause hardfault/segmentation fault.
|
|
|
|
|
|
|
|
|
|
|
| |
It is currently very basic as functions will be added to it when the time
comes. The idea is to have a method to, for example, show notifications
(and store them in a list with metadata) to the user or also to easily
show a message box overlaying the current display.
Private class members will permit encapsulations of variables related
to these features and limit the privilage that each app has on the
device.
|
|
|
|
|
|
|
| |
Stop using APPS_DATA. Dynamic allocation allows to avoid having memory
used by unloaded apps, thus giving more memory to running apps. Make
sure to correctly deallocate with `delete` to avoid memory leaks!
Exceptions to allocate memory will have to be handled...
|
| |
|
|
|
|
|
|
|
|
| |
A large number of changes had to be made to use C++. "extern C" had to
be added for a few headers not adapted to C++. See
https://github.com/raspberrypi/pico-sdk/pull/106 for fix in affected
files. They will be removed when the pull request is merged in
pico-sdk's master branch.
|
|
|
|
|
|
|
|
|
| |
Buttons are now detected and reported to the current running application
(demoed in main_clock and home_menu with `oledWriteString(oled, 0,0,2,
&data[0], FONT_6x8, 0, 1);`). I start to see the limitations with
APP_DATA. It will be dropped in a futur commit after moving each app
into its own namespace. Variables will be allocated dynamically on app
init.
|