class Core::Portable::TextEditView

class TextEditView:
    public Core::Portable::ContainerView,
    public Core::Portable::ViewController,
    public Core::Portable::IKeyboardInputReceiver,
    public Core::Portable::IParamObserver
{
public:
    // fields

    Parameter* textParam;
    Parameter CStringPtr prompt = nullptr;
    Parameter CStringPtr TextInput::ICompletionCallback* callback = nullptr);

    // methods

    BEGIN_CORE_CLASS('TxEV', TextEditView);
    void setKeyboardMode(Skin::KeyboardLayout::Mode mode);
    void setKeyboardCapitalizationMode(Skin::KeyboardCapitalization::Mode mode);
    View* createView(CStringPtr type);
    void* getObjectForView(CStringPtr name, CStringPtr type);
    void addView(View* view);
    bool onWheelInput(const WheelEvent& e);
    Text& getText();
    void textChanged();
    void textInputDone(bool canceled);
    int getCursorIndex() const;
    void setCursorIndex(int index);
    void paramChanged(Parameter* p, int msg);
};

Inherited Members

public:
    // typedefs

    typedef int32 TypeID;
    typedef CString256 Text;

    // fields

    static const TypeID kTypeID =  'IPaO';

    // methods

    virtual void addView(VC* view);
    virtual void removeView(VC* view);
    const ConstVector<VC*>& getChildren() const;
    void draw(const DrawEvent& e);
    DECLARE_CORE_CLASS('CntV', ContainerView, View) const;
    PROPERTY_POINTER(IViewOwner, owner, Owner);
    virtual void resizeToChildren();

    View* findView(
        const Point& where,
        bool deep = true,
        const ViewFilter* filter = nullptr
    ) const;

    View* findView(const ViewFilter& filter, bool deep = true) const;

    template <class T>
    T* findView(CStringPtr name, bool deep = true) const;

    bool isChildView(const View* view, bool deep = true) const;
    void addView(View* view);
    void removeView(View* view);
    virtual ContainerView* asContainer();
    bool onTouchInput(const TouchEvent& e);
    virtual void onIdle();
    virtual void* castTo(TypeID typeId) = 0;
    DECLARE_CORE_CLASS_('VCtl', ViewController);
    virtual View* createView(CStringPtr type) = 0;
    virtual void* getObjectForView(CStringPtr name, CStringPtr type) = 0;
    virtual Text& getText() = 0;
    virtual void textChanged() = 0;
    virtual void textInputDone(bool canceled) = 0;
    virtual int getCursorIndex() const = 0;
    virtual void setCursorIndex(int index) = 0;
    virtual void paramChanged(Parameter* p, int msg) = 0;