ZKSlideText.h 997 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * ZKSlideText.h
  3. *
  4. * Created on: Dec 28, 2017
  5. * Author: guoxs
  6. */
  7. #ifndef _CONTROL_ZKSLIDETEXT_H_
  8. #define _CONTROL_ZKSLIDETEXT_H_
  9. #include "ZKTextView.h"
  10. class ZKSlideTextPrivate;
  11. class ZKSlideText : public ZKTextView {
  12. ZK_DECLARE_PRIVATE(ZKSlideText)
  13. public:
  14. ZKSlideText(ZKBase *pParent);
  15. virtual ~ZKSlideText();
  16. void setTextList(const std::vector<string> &textList);
  17. void clearTextList();
  18. const std::string& getText(int index) const;
  19. class ITextUnitClickListener {
  20. public:
  21. virtual ~ITextUnitClickListener() { }
  22. virtual void onTextUnitClick(ZKSlideText *pSlideText, const std::string &text) = 0;
  23. };
  24. void setTextUnitClickListener(ITextUnitClickListener *pListener);
  25. protected:
  26. ZKSlideText(ZKBase *pParent, ZKBasePrivate *pBP);
  27. virtual const char* getClassName() const { return ZK_SLIDETEXT; }
  28. virtual void onDraw(ZKCanvas *pCanvas);
  29. virtual bool onTouchEvent(const MotionEvent &ev);
  30. virtual void onTimer(int id);
  31. };
  32. #endif /* _CONTROL_ZKSLIDETEXT_H_ */