mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-18 16:27:34 +01:00
[apps/escher] Move ModalViewEmptyController to escher
This commit is contained in:
@@ -39,7 +39,6 @@ apps_src += $(addprefix apps/,\
|
||||
shift_alpha_lock_view.cpp \
|
||||
suspend_timer.cpp \
|
||||
title_bar_view.cpp \
|
||||
variable_box_empty_controller.cpp \
|
||||
)
|
||||
|
||||
tests_src += apps/exam_mode_configuration_official.cpp
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
namespace Code {
|
||||
|
||||
VariableBoxEmptyController::VariableBoxEmptyView::VariableBoxEmptyView() :
|
||||
::VariableBoxEmptyController::VariableBoxEmptyView()
|
||||
::ModalViewEmptyController::ModalViewEmptyView()
|
||||
{
|
||||
initMessageViews();
|
||||
m_message.setMessage(I18n::Message::NoWordAvailableHere);
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
#ifndef APPS_CODE_VARIABLE_BOX_EMPTY_CONTROLLER_H
|
||||
#define APPS_CODE_VARIABLE_BOX_EMPTY_CONTROLLER_H
|
||||
|
||||
#include <apps/variable_box_empty_controller.h>
|
||||
#include <escher/modal_view_empty_controller.h>
|
||||
|
||||
namespace Code {
|
||||
|
||||
class VariableBoxEmptyController : public ::VariableBoxEmptyController {
|
||||
class VariableBoxEmptyController : public ModalViewEmptyController {
|
||||
public:
|
||||
VariableBoxEmptyController() :
|
||||
::VariableBoxEmptyController(),
|
||||
ModalViewEmptyController(),
|
||||
m_view()
|
||||
{}
|
||||
// View Controller
|
||||
View * view() override { return &m_view; }
|
||||
private:
|
||||
class VariableBoxEmptyView : public ::VariableBoxEmptyController::VariableBoxEmptyView {
|
||||
class VariableBoxEmptyView : public ModalViewEmptyController::ModalViewEmptyView {
|
||||
public:
|
||||
constexpr static int k_numberOfMessages = 1;
|
||||
VariableBoxEmptyView();
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#include <assert.h>
|
||||
|
||||
MathVariableBoxEmptyController::MathVariableBoxEmptyView::MathVariableBoxEmptyView() :
|
||||
VariableBoxEmptyView(),
|
||||
ModalViewEmptyView(),
|
||||
m_layoutExample(0.5f, 0.5f, KDColorBlack, Palette::WallScreen)
|
||||
{
|
||||
initMessageViews();
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
#ifndef APPS_MATH_VARIABLE_BOX_EMPTY_CONTROLLER_H
|
||||
#define APPS_MATH_VARIABLE_BOX_EMPTY_CONTROLLER_H
|
||||
|
||||
#include <escher/modal_view_empty_controller.h>
|
||||
#include <poincare/layout.h>
|
||||
#include "variable_box_empty_controller.h"
|
||||
|
||||
class MathVariableBoxEmptyController : public VariableBoxEmptyController {
|
||||
class MathVariableBoxEmptyController : public ModalViewEmptyController {
|
||||
public:
|
||||
MathVariableBoxEmptyController() :
|
||||
VariableBoxEmptyController(),
|
||||
ModalViewEmptyController(),
|
||||
m_view()
|
||||
{}
|
||||
enum class Type {
|
||||
@@ -20,7 +20,7 @@ public:
|
||||
View * view() override { return &m_view; }
|
||||
void viewDidDisappear() override;
|
||||
private:
|
||||
class MathVariableBoxEmptyView : public VariableBoxEmptyView {
|
||||
class MathVariableBoxEmptyView : public ModalViewEmptyController::ModalViewEmptyView {
|
||||
public:
|
||||
constexpr static int k_numberOfMessages = 4;
|
||||
MathVariableBoxEmptyView();
|
||||
|
||||
@@ -47,6 +47,7 @@ escher_src += $(addprefix escher/src/,\
|
||||
message_text_view.cpp \
|
||||
metric.cpp \
|
||||
modal_view_controller.cpp \
|
||||
modal_view_empty_controller.cpp \
|
||||
nested_menu_controller.cpp \
|
||||
palette.cpp \
|
||||
pointer_text_view.cpp \
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#ifndef APPS_VARIABLE_BOX_EMPTY_CONTROLLER_H
|
||||
#define APPS_VARIABLE_BOX_EMPTY_CONTROLLER_H
|
||||
#ifndef ESCHER_EMPTY_MODAL_VIEW_EMPTY_CONTROLLER_H
|
||||
#define ESCHER_EMPTY_MODAL_VIEW_EMPTY_CONTROLLER_H
|
||||
|
||||
#include <escher/bordered.h>
|
||||
#include <escher/expression_view.h>
|
||||
#include <escher/message_text_view.h>
|
||||
#include <escher/view_controller.h>
|
||||
|
||||
class VariableBoxEmptyController : public ViewController {
|
||||
class ModalViewEmptyController : public ViewController {
|
||||
public:
|
||||
VariableBoxEmptyController() : ViewController(nullptr) {}
|
||||
ModalViewEmptyController() : ViewController(nullptr) {}
|
||||
void setMessages(I18n::Message * messages);
|
||||
// View Controller
|
||||
DisplayParameter displayParameter() override { return DisplayParameter::DoNotShowOwnTitle; }
|
||||
protected:
|
||||
class VariableBoxEmptyView : public View, public Bordered {
|
||||
class ModalViewEmptyView : public View, public Bordered {
|
||||
public:
|
||||
constexpr static const KDFont * k_font = KDFont::SmallFont;
|
||||
void initMessageViews();
|
||||
@@ -28,7 +28,7 @@ protected:
|
||||
virtual int numberOfMessageTextViews() const = 0;
|
||||
virtual MessageTextView * messageTextViewAtIndex(int index) = 0;
|
||||
bool hasExpressionView() const {
|
||||
return const_cast<VariableBoxEmptyView *>(this)->expressionView() != nullptr;
|
||||
return const_cast<ModalViewEmptyView *>(this)->expressionView() != nullptr;
|
||||
}
|
||||
virtual ExpressionView * expressionView() { return nullptr; }
|
||||
};
|
||||
@@ -1,12 +1,11 @@
|
||||
#include "variable_box_empty_controller.h"
|
||||
#include <poincare/layout_helper.h>
|
||||
#include <escher/modal_view_empty_controller.h>
|
||||
#include <apps/i18n.h>
|
||||
#include <assert.h>
|
||||
|
||||
const KDColor VariableBoxEmptyController::VariableBoxEmptyView::k_backgroundColor;
|
||||
const KDColor ModalViewEmptyController::ModalViewEmptyView::k_backgroundColor;
|
||||
|
||||
// VariableBoxEmptyController::VariableBoxEmptyView
|
||||
void VariableBoxEmptyController::VariableBoxEmptyView::initMessageViews() {
|
||||
// ModalViewEmptyController::ModalViewEmptyView
|
||||
void ModalViewEmptyController::ModalViewEmptyView::initMessageViews() {
|
||||
const int numberOfMessageViews = numberOfMessageTextViews();
|
||||
for (int i = 0; i < numberOfMessageViews; i++) {
|
||||
MessageTextView * message = messageTextViewAtIndex(i);
|
||||
@@ -22,23 +21,23 @@ void VariableBoxEmptyController::VariableBoxEmptyView::initMessageViews() {
|
||||
}
|
||||
}
|
||||
|
||||
void VariableBoxEmptyController::VariableBoxEmptyView::setMessages(I18n::Message * message) {
|
||||
void ModalViewEmptyController::ModalViewEmptyView::setMessages(I18n::Message * message) {
|
||||
const int numberOfMessageViews = numberOfMessageTextViews();
|
||||
for (int i = 0; i < numberOfMessageViews; i++) {
|
||||
messageTextViewAtIndex(i)->setMessage(message[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void VariableBoxEmptyController::VariableBoxEmptyView::drawRect(KDContext * ctx, KDRect rect) const {
|
||||
void ModalViewEmptyController::ModalViewEmptyView::drawRect(KDContext * ctx, KDRect rect) const {
|
||||
ctx->fillRect(bounds(), k_backgroundColor);
|
||||
drawBorderOfRect(ctx, bounds(), Palette::GreyBright);
|
||||
}
|
||||
|
||||
int VariableBoxEmptyController::VariableBoxEmptyView::numberOfSubviews() const {
|
||||
int ModalViewEmptyController::ModalViewEmptyView::numberOfSubviews() const {
|
||||
return numberOfMessageTextViews() + hasExpressionView();
|
||||
}
|
||||
|
||||
View * VariableBoxEmptyController::VariableBoxEmptyView::subviewAtIndex(int index) {
|
||||
View * ModalViewEmptyController::ModalViewEmptyView::subviewAtIndex(int index) {
|
||||
if (hasExpressionView()) {
|
||||
if (index == k_expressionViewRowIndex) {
|
||||
return expressionView();
|
||||
@@ -48,7 +47,7 @@ View * VariableBoxEmptyController::VariableBoxEmptyView::subviewAtIndex(int inde
|
||||
return messageTextViewAtIndex(index);
|
||||
}
|
||||
|
||||
void VariableBoxEmptyController::VariableBoxEmptyView::layoutSubviews(bool force) {
|
||||
void ModalViewEmptyController::ModalViewEmptyView::layoutSubviews(bool force) {
|
||||
const int numberOfMessageViews = numberOfMessageTextViews();
|
||||
const bool hasExpression = hasExpressionView();
|
||||
KDCoordinate width = bounds().width() - 2 * k_separatorThickness;
|
||||
@@ -75,8 +74,8 @@ void VariableBoxEmptyController::VariableBoxEmptyView::layoutSubviews(bool force
|
||||
}
|
||||
}
|
||||
|
||||
// VariableBoxEmptyController
|
||||
// ModalViewEmptyController
|
||||
|
||||
void VariableBoxEmptyController::setMessages(I18n::Message * messages) {
|
||||
static_cast<VariableBoxEmptyView *>(view())->setMessages(messages);
|
||||
void ModalViewEmptyController::setMessages(I18n::Message * messages) {
|
||||
static_cast<ModalViewEmptyView *>(view())->setMessages(messages);
|
||||
}
|
||||
Reference in New Issue
Block a user