Files
Upsilon/apps/expression_editor/expression_editor_view.h
Léa Saviot 59c957b5fb [expression_editor] DIRTY COMMIT to display a layout value computation.
Change-Id: I7a548afe4df9c863f5b5716a819f42141f7fb5c2
2018-01-15 11:58:06 +01:00

31 lines
1.1 KiB
C++

#ifndef EXPRESSION_EDITOR_EXPRESSION_EDITOR_VIEW_H
#define EXPRESSION_EDITOR_EXPRESSION_EDITOR_VIEW_H
#include <escher.h>
#include "expression_and_layout.h"
#include "scrollable_expression_view_with_cursor.h"
namespace ExpressionEditor {
class ExpressionEditorView : public SolidColorView {
public:
ExpressionEditorView(Responder * parentResponder, Poincare::ExpressionLayout * expressionLayout, Poincare::ExpressionLayoutCursor * cursor);
void cursorPositionChanged();
void setText(const char * text);
void setResult(Poincare::ExpressionLayout * result);
int numberOfSubviews() const override { return 3; }
ScrollableExpressionViewWithCursor * scrollableExpressionViewWithCursor() { 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;
ExpressionView m_resultExpressionView;
BufferTextView m_serializerTextView;
};
}
#endif