#ifndef CODE_EDIT_CELL_H #define CODE_EDIT_CELL_H #include #include #include #include #include namespace Code { class ConsoleEditCell : public HighlightCell, public Responder { public: ConsoleEditCell(Responder * parentResponder = nullptr, InputEventHandlerDelegate * inputEventHandlerDelegate = nullptr, TextFieldDelegate * delegate = nullptr); // View int numberOfSubviews() const override; View * subviewAtIndex(int index) override; void layoutSubviews(bool force = false) override; // Responder void didBecomeFirstResponder() override; /* HighlightCell */ Responder * responder() override { return this; } // Edit cell void setEditing(bool isEditing); const char * text() const override { return m_textField.text(); } void setText(const char * text); bool insertText(const char * text); void setPrompt(const char * prompt); const char * promptText() const { return m_promptView.text(); } private: PointerTextView m_promptView; TextField m_textField; }; } #endif