# Stage 1.9

- Add AppInit Flags and AppFlags to COntrol some Individual Stuff (Not using default can run into a crash report if things get used that are disabled)
- Create a Test Settings Menu
- Make Some Menu functions Public
- Add ScrollTo Animation
- Make ContainerApi fully public
- Remove an else statement (now need to find a way to not set the pos twice)
-
This commit is contained in:
2025-02-09 21:40:31 +01:00
parent fc8291555e
commit ca26189f52
11 changed files with 207 additions and 60 deletions

View File

@ -23,19 +23,23 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
#include <pd/common/app.hpp>
#include <pd/controls/hid.hpp>
#include <pd/maths/tween.hpp>
#include <pd/overlays/overlay.hpp>
#include <pd/controls/hid.hpp>
#include <pd/ui7/ui7.hpp>
namespace PD {
class SettingsMenu : public Overlay {
public:
SettingsMenu() {
SettingsMenu(PD::App* app) {
too++;
if (too > 1) {
Kill();
return;
}
app_ref = app;
app->FeatureDisable(PD::App::AppFLags_UserLoop);
flymgr.From(vec2(0, 240)).To(vec2(0, 115)).In(0.3f).As(flymgr.EaseInQuad);
}
~SettingsMenu() { too--; }
@ -44,10 +48,12 @@ class SettingsMenu : public Overlay {
void Rem() {
rem = true;
app_ref->FeatureEnable(App::AppFLags_UserLoop);
flymgr.From(vec2(0, 115)).To(vec2(0, 240)).In(0.2f).As(flymgr.EaseOutQuad);
}
private:
PD::App* app_ref = nullptr;
/// Section is used to determinate what
/// should be displayed on the top screen
int section = 0;
@ -57,5 +63,8 @@ class SettingsMenu : public Overlay {
// Some Animation
bool rem = false;
Tween<vec2> flymgr;
// Custom UI7 Context
UI7::Context::Ref ctx;
};
} // namespace PD