diff --git a/apps/expression_editor/expression_editor_view.cpp b/apps/expression_editor/expression_editor_view.cpp index 5d1047e53..fe825654e 100644 --- a/apps/expression_editor/expression_editor_view.cpp +++ b/apps/expression_editor/expression_editor_view.cpp @@ -7,6 +7,7 @@ ExpressionEditorView::ExpressionEditorView(Responder * parentResponder, Poincare SolidColorView(KDColorWhite), m_scrollableExpressionViewWithCursor(parentResponder, expressionLayout, cursor) { + m_serializerTextView.setText("Hello"); } void ExpressionEditorView::cursorPositionChanged() { @@ -14,7 +15,20 @@ void ExpressionEditorView::cursorPositionChanged() { m_scrollableExpressionViewWithCursor.scrollToCursor(); } +void ExpressionEditorView::setText(const char * text) { + m_serializerTextView.setText(text); +} + +View * ExpressionEditorView::subviewAtIndex(int index) { + assert(index >= 0 && index < 2); + if (index == 0) { + return &m_scrollableExpressionViewWithCursor; + } + return &m_serializerTextView; +} + void ExpressionEditorView::layoutSubviews() { + m_serializerTextView.setFrame(KDRect(0, 0, bounds().width(), 20)); m_scrollableExpressionViewWithCursor.setFrame(KDRect( k_margin, k_margin, @@ -24,7 +38,7 @@ void ExpressionEditorView::layoutSubviews() { } KDSize ExpressionEditorView::minimalSizeForOptimalDisplay() const { - return m_scrollableExpressionViewWithCursor.minimalSizeForOptimalDisplay(); + return KDSize(300, 220); } diff --git a/apps/expression_editor/expression_editor_view.h b/apps/expression_editor/expression_editor_view.h index 49116463e..def2ec2b5 100644 --- a/apps/expression_editor/expression_editor_view.h +++ b/apps/expression_editor/expression_editor_view.h @@ -11,17 +11,16 @@ class ExpressionEditorView : public SolidColorView { public: ExpressionEditorView(Responder * parentResponder, Poincare::ExpressionLayout * expressionLayout, Poincare::ExpressionLayoutCursor * cursor); void cursorPositionChanged(); - int numberOfSubviews() const override { return 1; } + void setText(const char * text); + int numberOfSubviews() const override { return 2; } ScrollableExpressionViewWithCursor * scrollableExpressionViewWithCursor() { return &m_scrollableExpressionViewWithCursor; } - View * subviewAtIndex(int index) override { - assert(index == 0); - return &m_scrollableExpressionViewWithCursor; - } + View * subviewAtIndex(int index) override; void layoutSubviews() override; KDSize minimalSizeForOptimalDisplay() const override; private: constexpr static KDCoordinate k_margin = 10; ScrollableExpressionViewWithCursor m_scrollableExpressionViewWithCursor; + BufferTextView m_serializerTextView; }; }