mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
52 lines
1.0 KiB
C++
52 lines
1.0 KiB
C++
#include "app.h"
|
|
#include <assert.h>
|
|
|
|
namespace OnBoarding {
|
|
|
|
App * App::Snapshot::unpack(Container * container) {
|
|
return new (container->currentAppBuffer()) App(this);
|
|
}
|
|
|
|
App::Descriptor * App::Snapshot::descriptor() {
|
|
static Descriptor descriptor;
|
|
return &descriptor;
|
|
}
|
|
|
|
App::App(Snapshot * snapshot) :
|
|
::App(snapshot, &m_languageController),
|
|
m_languageController(&m_modalViewController),
|
|
m_logoController()
|
|
{
|
|
}
|
|
|
|
int App::numberOfTimers() {
|
|
return firstResponder() == &m_logoController;
|
|
}
|
|
|
|
Timer * App::timerAtIndex(int i) {
|
|
assert(i == 0);
|
|
return &m_logoController;
|
|
}
|
|
|
|
bool App::processEvent(Ion::Events::Event e) {
|
|
if (e == Ion::Events::Home) {
|
|
return true;
|
|
}
|
|
if (e == Ion::Events::OnOff) {
|
|
reinitOnBoarding();
|
|
}
|
|
return ::App::processEvent(e);
|
|
}
|
|
|
|
void App::didBecomeActive(Window * window) {
|
|
::App::didBecomeActive(window);
|
|
reinitOnBoarding();
|
|
}
|
|
|
|
void App::reinitOnBoarding() {
|
|
m_languageController.resetSelection();
|
|
displayModalViewController(&m_logoController, 0.5f, 0.5f);
|
|
}
|
|
|
|
}
|