private unsafe static byte DrawSliderBackGround(objxinxi *obj, SLIDER_PARAM *pSliRam) { byte result; switch (pSliRam->BackType) { case 0: if (pSliRam->BkPicID >= GuiSlider.myapp.app.picqyt) { result = 0; return(result); } Readdata.Readdata_ReadPic(ref GuiSlider.myapp.brush.pic, (int)pSliRam->BkPicID); break; case 1: GuiSlider.myapp.brush.backcolor = pSliRam->BkPicID; break; case 2: if (pSliRam->BkPicID >= GuiSlider.myapp.app.picqyt) { result = 0; return(result); } GuiSlider.myapp.brush.x = obj->redian.x; GuiSlider.myapp.brush.y = obj->redian.y; Readdata.Readdata_ReadPic(ref GuiSlider.myapp.brush.pic, (int)pSliRam->BkPicID); break; } GuiSlider.myapp.brush.sta = pSliRam->BackType; Showpic.Showpic_Clearspa((int)obj->redian.x, (int)obj->redian.y, (int)(obj->redian.endx - obj->redian.x + 1), (int)(obj->redian.endy - obj->redian.y + 1)); result = 1; return(result); }
private unsafe static byte DrawSliderCursor(objxinxi *obj, SLIDER_PARAM *pSliRam, ushort *CurXPos, ushort *CurXEnd, ushort *CurYPos, ushort *CurYEnd) { if (pSliRam->Mode > 0) { byte b = (byte)(pSliRam->CursorHig / 2); * CurXPos = (ushort)((obj->redian.endx - obj->redian.x + 1 - (ushort)pSliRam->CursorWid) / 2 + obj->redian.x); * CurXEnd = (ushort)(*CurXPos + (ushort)pSliRam->CursorWid - 1); * CurYEnd = (ushort)(pSliRam->TouchPos + (ushort)b); * CurYPos = (ushort)(*CurYEnd - (ushort)pSliRam->CursorHig + 1); } else { byte b = (Convert.ToByte(pSliRam->CursorWid / 2)); * CurYPos = (ushort)((obj->redian.endy - obj->redian.y + 1 - (ushort)pSliRam->CursorHig) / 2 + obj->redian.y); * CurYEnd = (ushort)(*CurYPos + (ushort)pSliRam->CursorHig - 1); * CurXPos = (ushort)(pSliRam->TouchPos - (ushort)b); * CurXEnd = (ushort)(*CurXPos + (ushort)pSliRam->CursorWid - 1); } byte result; if (pSliRam->CursorType > 0) { if (pSliRam->CuPicID >= GuiSlider.myapp.app.picqyt) { result = 0; return(result); } GuiSlider.myapp.brush.sta = 2; Readdata.Readdata_ReadPic(ref GuiSlider.myapp.brush.pic, (int)pSliRam->CuPicID); GuiSlider.myapp.brush.x = *CurXPos; GuiSlider.myapp.brush.y = *CurYPos; } else { GuiSlider.myapp.brush.sta = 1; GuiSlider.myapp.brush.backcolor = pSliRam->CuPicID; } Showpic.Showpic_Clearspa((int)(*CurXPos), (int)(*CurYPos), (int)pSliRam->CursorWid, (int)pSliRam->CursorHig); result = 1; return(result); }
private unsafe static byte ClearSliderCursor(objxinxi *obj, SLIDER_PARAM *pSliRam, ushort *CurXPos, ushort *CurXEnd, ushort *CurYPos, ushort *CurYEnd) { ushort num = 0; ushort num2 = 0; ushort num3 = 0; ushort num4 = 0; if (pSliRam->Mode > 0) { num = *CurXPos; num3 = *CurXEnd; if (*CurYEnd < pSliRam->LastPos) { num4 = pSliRam->LastPos; num2 = (ushort)(num4 - (ushort)pSliRam->CursorHig + 1); if (*CurYEnd >= num2) { num2 = (ushort)(*CurYEnd + 1); } } else if (*CurYEnd > pSliRam->LastPos) { num4 = pSliRam->LastPos; num2 = (ushort)(num4 - (ushort)pSliRam->CursorHig + 1); if (num4 >= *CurYPos) { num4 = (ushort)(*CurYPos - 1); } } } else { num2 = *CurYPos; num4 = *CurYEnd; if (*CurXPos < pSliRam->LastPos) { num = pSliRam->LastPos; num3 = (ushort)(num + (ushort)pSliRam->CursorWid - 1); if (*CurXEnd >= num) { num = (ushort)(*CurXEnd + 1); } } else if (*CurXPos > pSliRam->LastPos) { num = pSliRam->LastPos; num3 = (ushort)(num + (ushort)pSliRam->CursorWid - 1); if (num3 >= *CurXPos) { num3 = (ushort)(*CurXPos - 1); } } } switch (pSliRam->BackType) { case 0: Readdata.Readdata_ReadPic(ref GuiSlider.myapp.brush.pic, (int)pSliRam->BkPicID); break; case 1: GuiSlider.myapp.brush.backcolor = pSliRam->BkPicID; break; case 2: Readdata.Readdata_ReadPic(ref GuiSlider.myapp.brush.pic, (int)pSliRam->BkPicID); GuiSlider.myapp.brush.x = obj->redian.x; GuiSlider.myapp.brush.y = obj->redian.y; break; } GuiSlider.myapp.brush.sta = pSliRam->BackType; Showpic.Showpic_Clearspa((int)num, (int)num2, (int)(num3 - num + 1), (int)(num4 - num2 + 1)); return(1); }