| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 | #ifndef _SA_H#define _SA_H#include <api/wnd/wndclass/qpaintwnd.h>#include <api/service/svc_enum.h>#include <api/service/svcs/svc_skinfilter.h>#define SA_TIMER_UPDATE 1#define SA_PARENT QuickPaintWnd// {CE4F97BE-77B0-4e19-9956-D49833C96C27}static const GUID visGuid = { 0xce4f97be, 0x77b0, 0x4e19, { 0x99, 0x56, 0xd4, 0x98, 0x33, 0xc9, 0x6c, 0x27 } };#include <api/script/objects/guiobj.h>class VisScriptController : public GuiObjectScriptController {  public:    virtual const wchar_t *getClassName();    virtual const wchar_t *getAncestorClassName();    virtual ScriptObjectController *getAncestorController() { return guiController; }    virtual int getNumFunctions();    virtual const function_descriptor_struct *getExportedFunctions();    virtual GUID getClassGuid();    virtual ScriptObject *instantiate();    virtual void destroy(ScriptObject *o);    virtual void *encapsulate(ScriptObject *o);    virtual void deencapsulate(void *o);  private:    static function_descriptor_struct exportedFunction[];    };extern VisScriptController *visController;class SAWnd : public SA_PARENT, public DependentViewerI {public:	SAWnd();	virtual ~SAWnd();	int onInit();	int onRightButtonUp(int x, int y);  int onLeftButtonDown(int x, int y);  virtual int setXuiParam(int _xuihandle, int attrid, const wchar_t *p, const wchar_t *s);  virtual int getPreferences(int what);  void setChannel(int c);  void setFlipH(int v);  void setFlipV(int v);  int wantAutoContextMenu() { return 0; }  virtual int onQuickPaint(BltCanvas *c, int w, int h, int newone);  virtual void setBandColor(int band, ARGB32 col);  virtual void setOscColor(int n, ARGB32 col);  virtual void setPeakColor(ARGB32 col);  virtual void setMode(int mode);  virtual int getMode();  virtual void nextMode();  virtual void getQuickPaintSize(int *w, int *h);   virtual void getQuickPaintSource(RECT *r);   virtual int wantNegativeHeight() { return 1; }  virtual int wantFilters() { return 1; }  virtual const wchar_t *getFiltersGroup() { return filtergroup; }protected:	/*static */void CreateXMLParameters(int master_handle);private:	int *specData;  int  palette[256];  int realtime;  int xuihandle;  enum {    SA_SETCOLORALLBANDS=0,    SA_SETCOLORBAND1,    SA_SETCOLORBAND2,    SA_SETCOLORBAND3,    SA_SETCOLORBAND4,    SA_SETCOLORBAND5,    SA_SETCOLORBAND6,    SA_SETCOLORBAND7,    SA_SETCOLORBAND8,    SA_SETCOLORBAND9,    SA_SETCOLORBAND10,    SA_SETCOLORBAND11,    SA_SETCOLORBAND12,    SA_SETCOLORBAND13,    SA_SETCOLORBAND14,    SA_SETCOLORBAND15,    SA_SETCOLORBAND16,    SA_SETCOLORBANDPEAK,    SA_SETCOLORALLOSC,    SA_SETCOLOROSC1,    SA_SETCOLOROSC2,    SA_SETCOLOROSC3,    SA_SETCOLOROSC4,    SA_SETCOLOROSC5,    SA_SETCHANNEL,    SA_SETFLIPH,    SA_SETFLIPV,    SA_SETMODE,    SA_SETGAMMA,		SA_SETFALLOFF,		SA_SETPEAKFALLOFF,		SA_SETBANDWIDTH,		SA_FPS,		SA_COLORING,		SA_PEAKS,		SA_OSCDRAWSTYLE,  };	static XMLParamPair params[];  int config_safalloff;  int config_sa_peak_falloff;  int config_sa;  int config_safire;  int config_sa_peaks;  int flip_h, flip_v;  int channel;  StringW filtergroup;  int bx[75];int t_bx[75];float t_vx[75];  PtrList<svc_skinFilter>filters;  SkinFilterEnum *sfe;#ifdef WASABI_COMPILE_CONFIG  int saveconfsa;  StringW confsaname;#endif  int off;  virtual int viewer_onEvent(api_dependent *item, const GUID *classguid, int event, intptr_t param, void *ptr, size_t ptrlen);public:  static scriptVar script_onFrame(SCRIPT_FUNCTION_PARAMS, ScriptObject *o);  static scriptVar script_setRealtime(SCRIPT_FUNCTION_PARAMS, ScriptObject *o, scriptVar r);  static scriptVar script_getRealtime(SCRIPT_FUNCTION_PARAMS, ScriptObject *o);  static scriptVar script_vcpu_setMode(SCRIPT_FUNCTION_PARAMS, ScriptObject *o, scriptVar a);  static scriptVar script_vcpu_getMode(SCRIPT_FUNCTION_PARAMS, ScriptObject *o);  static scriptVar script_vcpu_nextMode(SCRIPT_FUNCTION_PARAMS, ScriptObject *o);};extern const wchar_t visXuiStr[];extern char visXuiSvcName[];class VisXuiSvc : public XuiObjectSvc<SAWnd, visXuiStr, visXuiSvcName> {};#endif
 |