sseeker.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #ifndef _SSEEKER_H
  2. #define _SSEEKER_H
  3. #include "pslider.h"
  4. #include <api/syscb/callbacks/corecbi.h>
  5. #define SSEEKER_PARENT PSliderWnd
  6. #define SSEEKER_XMLPARENT PSliderWnd
  7. #define STOP 0
  8. #define PLAY 1
  9. class SSeeker : public SSEEKER_PARENT, public CoreCallbackI {
  10. public:
  11. SSeeker();
  12. virtual ~SSeeker();
  13. virtual int onInit();
  14. virtual int setXuiParam(int _xuihandle, int attrid, const wchar_t *name, const wchar_t *val);
  15. virtual void lock();
  16. virtual void unlock();
  17. virtual int scriptDivisor() { return 256; }
  18. enum {
  19. SSEEKER_SETINTERVAL=0,
  20. };
  21. protected:
  22. /*static */void CreateXMLParameters(int master_handle);
  23. virtual int onSetFinalPosition();
  24. // from BaseWnd
  25. virtual void timerCallback(int id);
  26. // from CoreCallbackI
  27. virtual int corecb_onSeeked(int newpos);
  28. virtual int corecb_onStarted();
  29. virtual int corecb_onStopped();
  30. int status;
  31. private:
  32. static XMLParamPair params[];
  33. int update_interval;
  34. int locked;
  35. int xuihandle;
  36. };
  37. extern const wchar_t seekBarXuiStr[];
  38. extern char seekBarXuiSvcName[];
  39. class SeekBarXuiSvc : public XuiObjectSvc<SSeeker, seekBarXuiStr, seekBarXuiSvcName> {};
  40. #endif