#ifndef TextField_h
#define TextField_h
#include "GraphicsTypes.h"
#include "PlatformString.h"
#include "TextDirection.h"
#include "Widget.h"
#ifdef __OBJC__
@class WebCoreTextFieldController;
#else
class WebCoreTextFieldController;
#endif
namespace WebCore {
class Color;
class TextField : public Widget {
public:
enum Type { Normal, Password, Search };
TextField(Type);
~TextField();
void setColors(const Color& background, const Color& foreground);
void setAlignment(HorizontalAlignment);
void setCursorPosition(int);
int cursorPosition() const;
void setEdited(bool);
bool edited() const;
void setFont(const Font&);
void setMaxLength(int);
int maxLength() const;
void setReadOnly(bool);
bool isReadOnly() const;
void setText(const String&);
String text() const;
void setWritingDirection(TextDirection);
void selectAll();
bool hasSelectedText() const;
int selectionStart() const;
String selectedText() const;
void setSelection(int, int);
IntSize sizeForCharacterWidth(int numCharacters) const;
int baselinePosition(int height) const;
virtual FocusPolicy focusPolicy() const;
virtual bool checksDescendantsForFocus() const;
Type type() const { return m_type; }
void setLiveSearch(bool liveSearch);
void setAutoSaveName(const String& name);
void setMaxResults(int maxResults);
void setPlaceholderString(const String& placeholder);
void addSearchResult();
private:
Type m_type;
WebCoreTextFieldController *m_controller;
};
}
#endif