UIEditField.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #pragma once
  2. #include "UIWidget.h"
  3. #include <TurboBadger/tb_editfield.h>
  4. namespace Atomic
  5. {
  6. enum TEXT_ALIGN
  7. {
  8. TEXT_ALIGN_LEFT, ///< Aligned left
  9. TEXT_ALIGN_RIGHT, ///< Aligned right
  10. TEXT_ALIGN_CENTER ///< Aligned center
  11. };
  12. enum UI_EDIT_TYPE {
  13. UI_EDIT_TYPE_TEXT = tb::EDIT_TYPE_TEXT,
  14. UI_EDIT_TYPE_SEARCH = tb::EDIT_TYPE_SEARCH,
  15. UI_EDIT_TYPE_PASSWORD = tb::EDIT_TYPE_PASSWORD,
  16. UI_EDIT_TYPE_EMAIL = tb::EDIT_TYPE_EMAIL,
  17. UI_EDIT_TYPE_PHONE = tb::EDIT_TYPE_PHONE,
  18. UI_EDIT_TYPE_URL = tb::EDIT_TYPE_URL,
  19. UI_EDIT_TYPE_NUMBER = tb::EDIT_TYPE_NUMBER
  20. };
  21. class UIEditField : public UIWidget
  22. {
  23. OBJECT(UIEditField)
  24. public:
  25. UIEditField(Context* context, bool createWidget = true);
  26. virtual ~UIEditField();
  27. void AppendText(const String& text);
  28. void SetTextAlign(TEXT_ALIGN align);
  29. void SetEditType(UI_EDIT_TYPE type);
  30. void SetReadOnly(bool readonly);
  31. void ScrollTo(int x, int y);
  32. void SetWrapping(bool wrap);
  33. bool GetWrapping();
  34. protected:
  35. virtual bool OnEvent(const tb::TBWidgetEvent &ev);
  36. private:
  37. };
  38. }