mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[apps/probability] Clean (add a page index in snapshot)
Change-Id: I1631136cf4912225b88d26cd3cd9d36fa91db5f0
This commit is contained in:
@@ -75,11 +75,11 @@ App::App(Container * container, Snapshot * snapshot) :
|
||||
{
|
||||
switch (snapshot->activePage()) {
|
||||
case Snapshot::Page::Parameters:
|
||||
m_stackViewController.pushModel(&m_parametersController, KDColorWhite, Palette::PurpleBright, Palette::PurpleBright);
|
||||
m_stackViewController.push(&m_parametersController, KDColorWhite, Palette::PurpleBright, Palette::PurpleBright);
|
||||
break;
|
||||
case Snapshot::Page::Calculations:
|
||||
m_stackViewController.pushModel(&m_parametersController, KDColorWhite, Palette::PurpleBright, Palette::PurpleBright);
|
||||
m_stackViewController.pushModel(&m_calculationController, KDColorWhite, Palette::SubTab, Palette::SubTab);
|
||||
m_stackViewController.push(&m_parametersController, KDColorWhite, Palette::PurpleBright, Palette::PurpleBright);
|
||||
m_stackViewController.push(&m_calculationController, KDColorWhite, Palette::SubTab, Palette::SubTab);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -14,7 +14,6 @@ public:
|
||||
|
||||
/* Push creates a new StackView and adds it */
|
||||
void push(ViewController * vc, KDColor textColor = Palette::SubTab, KDColor backgroundColor = KDColorWhite, KDColor separatorColor = Palette::GreyBright);
|
||||
void pushModel(ViewController * vc, KDColor textColor = Palette::SubTab, KDColor backgroundColor = KDColorWhite, KDColor separatorColor = Palette::GreyBright);
|
||||
void pop();
|
||||
|
||||
int depth();
|
||||
@@ -69,6 +68,7 @@ private:
|
||||
static constexpr uint8_t k_maxNumberOfChildren = 4;
|
||||
Frame m_childrenFrame[k_maxNumberOfChildren];
|
||||
uint8_t m_numberOfChildren;
|
||||
bool m_isVisible;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -69,7 +69,8 @@ StackViewController::StackViewController(Responder * parentResponder, ViewContro
|
||||
bool displayFirstStackHeader, KDColor textColor, KDColor backgroundColor, KDColor separatorColor) :
|
||||
ViewController(parentResponder),
|
||||
m_view(ControllerView(displayFirstStackHeader)),
|
||||
m_numberOfChildren(0)
|
||||
m_numberOfChildren(0),
|
||||
m_isVisible(false)
|
||||
{
|
||||
pushModel(Frame(rootViewController, textColor, backgroundColor, separatorColor));
|
||||
rootViewController->setParentResponder(this);
|
||||
@@ -82,19 +83,19 @@ const char * StackViewController::title() {
|
||||
|
||||
void StackViewController::push(ViewController * vc, KDColor textColor, KDColor backgroundColor, KDColor separatorColor) {
|
||||
Frame frame = Frame(vc, textColor, backgroundColor, separatorColor);
|
||||
/* Load stack view */
|
||||
m_view.pushStack(frame);
|
||||
/* Add the frame to the model */
|
||||
pushModel(frame);
|
||||
if (!m_isVisible) {
|
||||
return;
|
||||
}
|
||||
/* Load stack view */
|
||||
m_view.pushStack(frame);
|
||||
setupActiveViewController();
|
||||
if (m_numberOfChildren > 1) {
|
||||
m_childrenFrame[m_numberOfChildren-2].viewController()->viewDidDisappear();
|
||||
}
|
||||
}
|
||||
|
||||
void StackViewController::pushModel(ViewController * vc, KDColor textColor, KDColor backgroundColor, KDColor separatorColor) {
|
||||
pushModel(Frame(vc, textColor, backgroundColor, separatorColor));
|
||||
}
|
||||
void StackViewController::pop() {
|
||||
m_view.popStack();
|
||||
assert(m_numberOfChildren > 0);
|
||||
@@ -150,6 +151,7 @@ void StackViewController::viewWillAppear() {
|
||||
m_view.setContentView(vc->view());
|
||||
vc->viewWillAppear();
|
||||
}
|
||||
m_isVisible = true;
|
||||
}
|
||||
|
||||
void StackViewController::viewDidDisappear() {
|
||||
@@ -160,4 +162,5 @@ void StackViewController::viewDidDisappear() {
|
||||
for (int i = 0; i < m_numberOfChildren; i++) {
|
||||
m_view.popStack();
|
||||
}
|
||||
m_isVisible = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user