1
0

seqband.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef _SEQBAND_H
  2. #define _SEQBAND_H
  3. #include "pslider.h"
  4. #include <api/syscb/callbacks/corecbi.h>
  5. #define SEQBAND_PARENT PSliderWnd
  6. #define SEQBAND_XMLPARENT PSliderWnd
  7. class SEQBand : public SEQBAND_PARENT, public CoreCallbackI {
  8. public:
  9. SEQBand(); // band=0-9
  10. virtual ~SEQBand();
  11. virtual int onInit();
  12. virtual int onResize();
  13. virtual int setXuiParam(int xuihandle, int attrid, const wchar_t *name, const wchar_t *strval);
  14. virtual void setBand(int b);
  15. virtual int onLeftButtonDown(int x, int y);
  16. virtual int onMouseMove(int x, int y); // only called when mouse captured
  17. virtual int onLeftButtonUp(int x, int y);
  18. virtual int childNotify(ifc_window *child, int msg, intptr_t param1=0, intptr_t param2=0);
  19. enum {
  20. SEQBAND_SETPARAM=0,
  21. SEQBAND_SETBAND,
  22. };
  23. protected:
  24. /*static */void CreateXMLParameters(int master_handle);
  25. virtual int onSetPosition();
  26. virtual int corecb_onEQBandChange(int band, int newval);
  27. int band, isactive;
  28. int discard_next_event;
  29. private:
  30. static XMLParamPair params[];
  31. int xuihandle;
  32. };
  33. extern const wchar_t eqBandXuiStr[];
  34. extern char eqBandXuiSvcName[];
  35. class EqBandXuiSvc : public XuiObjectSvc<SEQBand, eqBandXuiStr, eqBandXuiSvcName> {};
  36. #endif