home *** CD-ROM | disk | FTP | other *** search
- //----------------------------------------------------------------------------------------
- //
- // simpledragvolume.m
- //
- //----------------------------------------------------------------------------------------
- // Use like this :
- // #define SDRAG_VOLUME_VAR MyVar
- // #include "simpledragvolume.m"
- //
- //
- // _MyVarInit(GuiObject o); // init
- // _MyVarSetMaxDistance(Int nPixels); // set 100% pixel distance
- //
-
-
-
- Global GuiObject _##SDRAG_VOLUME_VAR##Object;
- Global Int _##SDRAG_VOLUME_VAR##Clicked;
- Global Int _##SDRAG_VOLUME_VAR##Y;
- Global Int _##SDRAG_VOLUME_VAR##V;
- Global Int _##SDRAG_VOLUME_VAR##Max;
-
- Function _##SDRAG_VOLUME_VAR##Init(GuiObject o);
- Function _##SDRAG_VOLUME_VAR##Update(int vol);
- Function _##SDRAG_VOLUME_VAR##SetMaxDistance(int pixels);
- Function _##SDRAG_VOLUME_VAR##UpdateY(int y);
-
- _##SDRAG_VOLUME_VAR##Init(GuiObject o) {
- _##SDRAG_VOLUME_VAR##Object = o;
- }
-
- _##SDRAG_VOLUME_VAR##Object.onLeftButtonDown(int x, int y) {
- _##SDRAG_VOLUME_VAR##Clicked = 1;
- _##SDRAG_VOLUME_VAR##Y = y;
- _##SDRAG_VOLUME_VAR##V = getVolume();
- }
-
- _##SDRAG_VOLUME_VAR##Object.onMouseMove(int x, int y) {
- if (_##SDRAG_VOLUME_VAR##Clicked) {
- _##SDRAG_VOLUME_VAR##updateY(y);
- }
- }
-
- _##SDRAG_VOLUME_VAR##Object.onLeftButtonUp(int x, int y) {
- _##SDRAG_VOLUME_VAR##Clicked = 0;
- }
-
- _##SDRAG_VOLUME_VAR##SetMaxDistance(int npix) {
- _##SDRAG_VOLUME_VAR##Max = npix;
- }
-
- _##SDRAG_VOLUME_VAR##UpdateY(int y) {
- float p = (_##SDRAG_VOLUME_VAR##Y - y) / _##SDRAG_VOLUME_VAR##Max;
- SetVolume(_##SDRAG_VOLUME_VAR##V + p * 255); // range is checked
- }
-
-