x9c946c69c1315c4d.cs
上传用户:xlxx0122
上传日期:2015-04-24
资源大小:3904k
文件大小:29k
源码类别:

.net编程

开发平台:

C#

  1. namespace Sunisoft.IrisSkin
  2. {
  3.     using System;
  4.     using System.Drawing;
  5.     using System.Windows.Forms;
  6.     internal class x9c946c69c1315c4d : x8917d01b98173f4c
  7.     {
  8.         private uint x1f25abf5fb75e795;
  9.         private Rectangle x26545669838eb36e;
  10.         private Point x2aa5114a5da7d6c8;
  11.         private uint x30cc7819189f11b6;
  12.         private bool x34ce871902cf4acd;
  13.         private Timer x420067493d7ebb36;
  14.         public x9c946c69c1315c4d(Control control, SkinEngine engine) : base(control, engine)
  15.         {
  16.             this.x420067493d7ebb36 = new Timer();
  17.             this.x1f25abf5fb75e795 = 0x115;
  18.             this.x26545669838eb36e = new Rectangle(0, 0, 0, 0);
  19.             this.x2aa5114a5da7d6c8 = new Point(0);
  20.         }
  21.         protected override void AfterWndProc(ref Message m)
  22.         {
  23.             if (!base.CanPaint)
  24.             {
  25.                 return;
  26.             }
  27.             if (!base.Engine.SkinScrollBar)
  28.             {
  29.                 return;
  30.             }
  31.             if (!this.CanScroll)
  32.             {
  33.                 return;
  34.             }
  35.             uint msg = (uint) m.Msg;
  36.             if (msg == 15)
  37.             {
  38.                 x40255b11ef821fa3.PAINTSTRUCT paintstruct;
  39.                 x61467fe65a98f20c.BeginPaint(base.Handle, out paintstruct);
  40.                 this.PaintControl();
  41.                 x61467fe65a98f20c.EndPaint(base.Handle, ref paintstruct);
  42.             }
  43.             else if (msg == 0x84)
  44.             {
  45.                 int num = m.Result.ToInt32();
  46.                 switch (num)
  47.                 {
  48.                     case 7:
  49.                         m.Result = new IntPtr(num + 0x100);
  50.                         goto Label_0095;
  51.                     case 6:
  52.                         m.Result = new IntPtr(num + 0x100);
  53.                         break;
  54.                 }
  55.             }
  56.         Label_0095:
  57.             base.AfterWndProc(ref m);
  58.         }
  59.         protected override bool BeforeWndProc(ref Message m)
  60.         {
  61.             int num;
  62.             x40255b11ef821fa3.SCROLLINFO scrollinfo;
  63.             x40255b11ef821fa3.SCROLLBARINFO scrollbarinfo;
  64.             int nMin;
  65.             int nPos;
  66.             if (!base.CanPaint)
  67.             {
  68.                 return base.BeforeWndProc(ref m);
  69.             }
  70.             if (!base.Engine.SkinScrollBar)
  71.             {
  72.                 return base.BeforeWndProc(ref m);
  73.             }
  74.             if (!this.CanScroll)
  75.             {
  76.                 return base.BeforeWndProc(ref m);
  77.             }
  78.             switch (((uint) m.Msg))
  79.             {
  80.                 case 0x200:
  81.                 {
  82.                     if (!this.x34ce871902cf4acd)
  83.                     {
  84.                         if (base.Ctrl is TextBox)
  85.                         {
  86.                             this.PaintControl();
  87.                         }
  88.                         goto Label_0B8F;
  89.                     }
  90.                     int num2 = 0;
  91.                     int num3 = 0;
  92.                     nMin = 0;
  93.                     nPos = 0;
  94.                     scrollbarinfo = new x40255b11ef821fa3.SCROLLBARINFO();
  95.                     scrollbarinfo.cbSize = 60;
  96.                     scrollinfo = new x40255b11ef821fa3.SCROLLINFO();
  97.                     scrollinfo.cbSize = 0x1c;
  98.                     scrollinfo.fMask = 0x1f;
  99.                     new Rectangle(0, 0, 0, 0);
  100.                     if (this.x1f25abf5fb75e795 != 0x115)
  101.                     {
  102.                         if ((this.x1f25abf5fb75e795 == 0x114) && x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffa, ref scrollbarinfo))
  103.                         {
  104.                             num2 = (scrollbarinfo.rcScrollBar.right - scrollbarinfo.rcScrollBar.left) - (scrollbarinfo.dxyLineButton * 2);
  105.                             if (num2 <= 0)
  106.                             {
  107.                                 goto Label_0B8F;
  108.                             }
  109.                             x61467fe65a98f20c.GetScrollInfo(base.Handle, 0, ref scrollinfo);
  110.                             num3 = ((scrollinfo.nMax - scrollinfo.nMin) - ((int) scrollinfo.nPage)) + 1;
  111.                             nMin = ((((Control.MousePosition.X - scrollbarinfo.rcScrollBar.left) - scrollbarinfo.dxyLineButton) * num3) / num2) + scrollinfo.nMin;
  112.                             if (nMin < scrollinfo.nMin)
  113.                             {
  114.                                 nMin = scrollinfo.nMin;
  115.                             }
  116.                             if (nMin > num3)
  117.                             {
  118.                                 nMin = num3;
  119.                             }
  120.                             int num7 = (((this.x2aa5114a5da7d6c8.X - scrollbarinfo.rcScrollBar.left) - scrollbarinfo.dxyLineButton) * num3) / num2;
  121.                             nPos = scrollinfo.nPos;
  122.                             if (this.x2aa5114a5da7d6c8.X > Control.MousePosition.X)
  123.                             {
  124.                                 while (scrollinfo.nPos > nMin)
  125.                                 {
  126.                                     x61467fe65a98f20c.SendMessage(base.Handle, 0x114, (uint) 0, (uint) 0);
  127.                                     x61467fe65a98f20c.GetScrollInfo(base.Handle, 0, ref scrollinfo);
  128.                                     if (nPos == scrollinfo.nPos)
  129.                                     {
  130.                                         break;
  131.                                     }
  132.                                     nPos = scrollinfo.nPos;
  133.                                 }
  134.                             }
  135.                             if (this.x2aa5114a5da7d6c8.X < Control.MousePosition.X)
  136.                             {
  137.                                 while (scrollinfo.nPos < nMin)
  138.                                 {
  139.                                     x61467fe65a98f20c.SendMessage(base.Handle, 0x114, (uint) 1, (uint) 0);
  140.                                     x61467fe65a98f20c.GetScrollInfo(base.Handle, 0, ref scrollinfo);
  141.                                     if (nPos == scrollinfo.nPos)
  142.                                     {
  143.                                         break;
  144.                                     }
  145.                                     nPos = scrollinfo.nPos;
  146.                                 }
  147.                             }
  148.                         }
  149.                         goto Label_0493;
  150.                     }
  151.                     if (!x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffb, ref scrollbarinfo))
  152.                     {
  153.                         goto Label_0493;
  154.                     }
  155.                     num2 = (scrollbarinfo.rcScrollBar.bottom - scrollbarinfo.rcScrollBar.top) - (scrollbarinfo.dxyLineButton * 2);
  156.                     if (num2 <= 0)
  157.                     {
  158.                         goto Label_0B8F;
  159.                     }
  160.                     x61467fe65a98f20c.GetScrollInfo(base.Handle, 1, ref scrollinfo);
  161.                     num3 = ((scrollinfo.nMax - scrollinfo.nMin) - ((int) scrollinfo.nPage)) + 1;
  162.                     nMin = ((((Control.MousePosition.Y - scrollbarinfo.rcScrollBar.top) - scrollbarinfo.dxyLineButton) * num3) / num2) + scrollinfo.nMin;
  163.                     if (nMin < scrollinfo.nMin)
  164.                     {
  165.                         nMin = scrollinfo.nMin;
  166.                     }
  167.                     if (nMin > num3)
  168.                     {
  169.                         nMin = num3;
  170.                     }
  171.                     int num1 = (((this.x2aa5114a5da7d6c8.Y - scrollbarinfo.rcScrollBar.top) - scrollbarinfo.dxyLineButton) * num3) / num2;
  172.                     nPos = scrollinfo.nPos;
  173.                     if (this.x2aa5114a5da7d6c8.Y > Control.MousePosition.Y)
  174.                     {
  175.                         while (scrollinfo.nPos > nMin)
  176.                         {
  177.                             x61467fe65a98f20c.SendMessage(base.Handle, 0x115, (uint) 0, (uint) 0);
  178.                             x61467fe65a98f20c.GetScrollInfo(base.Handle, 1, ref scrollinfo);
  179.                             if (nPos == scrollinfo.nPos)
  180.                             {
  181.                                 break;
  182.                             }
  183.                             nPos = scrollinfo.nPos;
  184.                         }
  185.                     }
  186.                     break;
  187.                 }
  188.                 case 0x201:
  189.                     if (!this.x34ce871902cf4acd)
  190.                     {
  191.                         goto Label_0B8F;
  192.                     }
  193.                     return false;
  194.                 case 0x202:
  195.                     if (this.x34ce871902cf4acd)
  196.                     {
  197.                         this.x6139c418c50df34e();
  198.                     }
  199.                     goto Label_0B8F;
  200.                 case 0x20a:
  201.                     num = m.WParam.ToInt32() >> 0x10;
  202.                     if (num > 0)
  203.                     {
  204.                         x61467fe65a98f20c.PostMessage(base.Handle, 0x115, (uint) 2, (uint) 0);
  205.                     }
  206.                     else
  207.                     {
  208.                         x61467fe65a98f20c.PostMessage(base.Handle, 0x115, (uint) 3, (uint) 0);
  209.                     }
  210.                     return false;
  211.                 case 0x215:
  212.                     if (m.LParam != base.Handle)
  213.                     {
  214.                         this.x6139c418c50df34e();
  215.                     }
  216.                     goto Label_0B8F;
  217.                 case 160:
  218.                     return false;
  219.                 case 0xa1:
  220.                 {
  221.                     Point point;
  222.                     num = m.WParam.ToInt32();
  223.                     if (num > 0x100)
  224.                     {
  225.                         num -= 0x100;
  226.                     }
  227.                     Rectangle r = new Rectangle(0, 0, 0, 0);
  228.                     switch (num)
  229.                     {
  230.                         case 7:
  231.                             x61467fe65a98f20c.SetCapture(base.Handle);
  232.                             point = new Point(0);
  233.                             scrollbarinfo = new x40255b11ef821fa3.SCROLLBARINFO();
  234.                             scrollbarinfo.cbSize = 60;
  235.                             x61467fe65a98f20c.GetCursorPos(ref point);
  236.                             if (x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffb, ref scrollbarinfo))
  237.                             {
  238.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left, scrollbarinfo.rcScrollBar.top, scrollbarinfo.rcScrollBar.right, scrollbarinfo.rcScrollBar.top + scrollbarinfo.dxyLineButton);
  239.                                 if (x448fd9ab43628c71.InRect(point, r))
  240.                                 {
  241.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x115, (uint) 0, (uint) 0);
  242.                                     this.x5319e78a3425ad41(0x115, 0, r);
  243.                                     return false;
  244.                                 }
  245.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left, scrollbarinfo.rcScrollBar.top + scrollbarinfo.dxyLineButton, scrollbarinfo.rcScrollBar.right, scrollbarinfo.rcScrollBar.top + scrollbarinfo.xyThumbTop);
  246.                                 if (x448fd9ab43628c71.InRect(point, r))
  247.                                 {
  248.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x115, (uint) 2, (uint) 0);
  249.                                     this.x5319e78a3425ad41(0x115, 2, r);
  250.                                     return false;
  251.                                 }
  252.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left, scrollbarinfo.rcScrollBar.top + scrollbarinfo.xyThumbBottom, scrollbarinfo.rcScrollBar.right, scrollbarinfo.rcScrollBar.bottom - scrollbarinfo.dxyLineButton);
  253.                                 if (x448fd9ab43628c71.InRect(point, r))
  254.                                 {
  255.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x115, (uint) 3, (uint) 0);
  256.                                     this.x5319e78a3425ad41(0x115, 3, r);
  257.                                     return false;
  258.                                 }
  259.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left, scrollbarinfo.rcScrollBar.bottom - scrollbarinfo.dxyLineButton, scrollbarinfo.rcScrollBar.right, scrollbarinfo.rcScrollBar.bottom);
  260.                                 if (x448fd9ab43628c71.InRect(point, r))
  261.                                 {
  262.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x115, (uint) 1, (uint) 0);
  263.                                     this.x5319e78a3425ad41(0x115, 1, r);
  264.                                     return false;
  265.                                 }
  266.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left, scrollbarinfo.rcScrollBar.top + scrollbarinfo.xyThumbTop, scrollbarinfo.rcScrollBar.right, scrollbarinfo.rcScrollBar.top + scrollbarinfo.xyThumbBottom);
  267.                                 if (x448fd9ab43628c71.InRect(point, r))
  268.                                 {
  269.                                     this.x5319e78a3425ad41(0x115, 5, r);
  270.                                     return false;
  271.                                 }
  272.                             }
  273.                             goto Label_0A13;
  274.                         case 6:
  275.                             x61467fe65a98f20c.SetCapture(base.Handle);
  276.                             scrollbarinfo = new x40255b11ef821fa3.SCROLLBARINFO();
  277.                             scrollbarinfo.cbSize = 60;
  278.                             point = new Point(0);
  279.                             x61467fe65a98f20c.GetCursorPos(ref point);
  280.                             if (x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffa, ref scrollbarinfo))
  281.                             {
  282.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left, scrollbarinfo.rcScrollBar.top, scrollbarinfo.rcScrollBar.left + scrollbarinfo.dxyLineButton, scrollbarinfo.rcScrollBar.bottom);
  283.                                 if (x448fd9ab43628c71.InRect(point, r))
  284.                                 {
  285.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x114, (uint) 0, (uint) 0);
  286.                                     this.x5319e78a3425ad41(0x114, 0, r);
  287.                                     return false;
  288.                                 }
  289.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left + scrollbarinfo.dxyLineButton, scrollbarinfo.rcScrollBar.top, scrollbarinfo.rcScrollBar.left + scrollbarinfo.xyThumbTop, scrollbarinfo.rcScrollBar.bottom);
  290.                                 if (x448fd9ab43628c71.InRect(point, r))
  291.                                 {
  292.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x114, (uint) 2, (uint) 0);
  293.                                     this.x5319e78a3425ad41(0x114, 2, r);
  294.                                     return false;
  295.                                 }
  296.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left + scrollbarinfo.xyThumbBottom, scrollbarinfo.rcScrollBar.top, scrollbarinfo.rcScrollBar.right - scrollbarinfo.dxyLineButton, scrollbarinfo.rcScrollBar.bottom);
  297.                                 if (x448fd9ab43628c71.InRect(point, r))
  298.                                 {
  299.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x114, (uint) 3, (uint) 0);
  300.                                     this.x5319e78a3425ad41(0x114, 3, r);
  301.                                     return false;
  302.                                 }
  303.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.right - scrollbarinfo.dxyLineButton, scrollbarinfo.rcScrollBar.top, scrollbarinfo.rcScrollBar.right, scrollbarinfo.rcScrollBar.bottom);
  304.                                 if (x448fd9ab43628c71.InRect(point, r))
  305.                                 {
  306.                                     x61467fe65a98f20c.PostMessage(base.Handle, 0x114, (uint) 1, (uint) 0);
  307.                                     this.x5319e78a3425ad41(0x114, 1, r);
  308.                                     return false;
  309.                                 }
  310.                                 r = Rectangle.FromLTRB(scrollbarinfo.rcScrollBar.left + scrollbarinfo.xyThumbTop, scrollbarinfo.rcScrollBar.top, scrollbarinfo.rcScrollBar.left + scrollbarinfo.xyThumbBottom, scrollbarinfo.rcScrollBar.bottom);
  311.                                 if (x448fd9ab43628c71.InRect(point, r))
  312.                                 {
  313.                                     this.x5319e78a3425ad41(0x114, 5, r);
  314.                                     return false;
  315.                                 }
  316.                             }
  317.                             goto Label_0A13;
  318.                     }
  319.                     goto Label_0A13;
  320.                 }
  321.                 case 0xa2:
  322.                     return false;
  323.                 case 0x2b:
  324.                     if (m.WParam != IntPtr.Zero)
  325.                     {
  326.                         this.PaintControl();
  327.                     }
  328.                     goto Label_0B8F;
  329.                 case 0x114:
  330.                     num = m.WParam.ToInt32();
  331.                     if ((num & 5L) != 5L)
  332.                     {
  333.                         scrollinfo = new x40255b11ef821fa3.SCROLLINFO();
  334.                         scrollinfo.cbSize = 0x1c;
  335.                         scrollinfo.fMask = 0x1f;
  336.                         x61467fe65a98f20c.GetScrollInfo(base.Handle, 0, ref scrollinfo);
  337.                         switch (num)
  338.                         {
  339.                             case 0L:
  340.                             case 2L:
  341.                                 if (scrollinfo.nPos <= scrollinfo.nMin)
  342.                                 {
  343.                                     return false;
  344.                                 }
  345.                                 goto Label_0B8F;
  346.                         }
  347.                         if (((num == 1L) || (num == 3L)) && (scrollinfo.nPos > ((scrollinfo.nMax - scrollinfo.nPage) - scrollinfo.nMin)))
  348.                         {
  349.                             return false;
  350.                         }
  351.                     }
  352.                     goto Label_0B8F;
  353.                 case 0x115:
  354.                     num = m.WParam.ToInt32();
  355.                     if ((num & 5L) == 5L)
  356.                     {
  357.                         goto Label_0B8F;
  358.                     }
  359.                     scrollinfo = new x40255b11ef821fa3.SCROLLINFO();
  360.                     scrollinfo.cbSize = 0x1c;
  361.                     scrollinfo.fMask = 0x1f;
  362.                     x61467fe65a98f20c.GetScrollInfo(base.Handle, 1, ref scrollinfo);
  363.                     switch (num)
  364.                     {
  365.                         case 0L:
  366.                         case 2L:
  367.                             if (scrollinfo.nPos <= scrollinfo.nMin)
  368.                             {
  369.                                 return false;
  370.                             }
  371.                             goto Label_0B8F;
  372.                     }
  373.                     if (((num != 1L) && (num != 3L)) || (scrollinfo.nPos <= ((scrollinfo.nMax - scrollinfo.nPage) - scrollinfo.nMin)))
  374.                     {
  375.                         goto Label_0B8F;
  376.                     }
  377.                     return false;
  378.                 default:
  379.                     goto Label_0B8F;
  380.             }
  381.             if (this.x2aa5114a5da7d6c8.Y < Control.MousePosition.Y)
  382.             {
  383.                 while (scrollinfo.nPos < nMin)
  384.                 {
  385.                     x61467fe65a98f20c.SendMessage(base.Handle, 0x115, (uint) 1, (uint) 0);
  386.                     x61467fe65a98f20c.GetScrollInfo(base.Handle, 1, ref scrollinfo);
  387.                     if (nPos == scrollinfo.nPos)
  388.                     {
  389.                         break;
  390.                     }
  391.                     nPos = scrollinfo.nPos;
  392.                 }
  393.             }
  394.         Label_0493:
  395.             this.x2aa5114a5da7d6c8 = Control.MousePosition;
  396.             return false;
  397.         Label_0A13:
  398.             return false;
  399.         Label_0B8F:
  400.             return base.BeforeWndProc(ref m);
  401.         }
  402.         protected override void DoInit()
  403.         {
  404.             base.DoInit();
  405.             this.x420067493d7ebb36.Interval = 100;
  406.             this.x420067493d7ebb36.Stop();
  407.             this.x420067493d7ebb36.Tick += new EventHandler(this.x8605d09b86ce01b1);
  408.         }
  409.         protected override void PaintControl()
  410.         {
  411.             if ((((base.Ctrl.ClientRectangle.Width > 0) && (base.Ctrl.ClientRectangle.Height > 0)) && base.CanPaint) && base.Engine.SkinScrollBar)
  412.             {
  413.                 Rectangle rectangle;
  414.                 base.PaintControl();
  415.                 x40255b11ef821fa3.SCROLLBARINFO psbi = new x40255b11ef821fa3.SCROLLBARINFO();
  416.                 psbi.cbSize = 60;
  417.                 IntPtr windowDC = x61467fe65a98f20c.GetWindowDC(base.Handle);
  418.                 xae4dd1cafd2eb77c.RECT lpRect = new xae4dd1cafd2eb77c.RECT();
  419.                 x61467fe65a98f20c.GetWindowRect(base.Handle, ref lpRect);
  420.                 int num = 0;
  421.                 if (x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffb, ref psbi))
  422.                 {
  423.                     rectangle = new Rectangle(psbi.rcScrollBar.left - lpRect.left, psbi.rcScrollBar.top - lpRect.top, psbi.rcScrollBar.right - psbi.rcScrollBar.left, psbi.rcScrollBar.bottom - psbi.rcScrollBar.top);
  424.                     if (((rectangle.X >= 0) && (rectangle.Y >= 0)) && ((rectangle.Width > 0) && (rectangle.Height > 0)))
  425.                     {
  426.                         using (Bitmap bitmap = new Bitmap(rectangle.Width, ((rectangle.Height + base.Ctrl.Height) - rectangle.Bottom) - 1))
  427.                         {
  428.                             using (Graphics graphics = Graphics.FromImage(bitmap))
  429.                             {
  430.                                 graphics.FillRectangle(base.Engine.Res.Brushes.SKIN2_FORMCOLOR, 0, 0, bitmap.Width, bitmap.Height);
  431.                                 this.x3a329aff8c7e9df4(graphics, psbi, new Rectangle(0, 0, rectangle.Width, rectangle.Height), num);
  432.                             }
  433.                             using (Graphics graphics2 = Graphics.FromHdc(windowDC))
  434.                             {
  435.                                 graphics2.DrawImageUnscaled(bitmap, rectangle.X, rectangle.Y);
  436.                             }
  437.                         }
  438.                     }
  439.                 }
  440.                 if (x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffa, ref psbi))
  441.                 {
  442.                     rectangle = new Rectangle(psbi.rcScrollBar.left - lpRect.left, psbi.rcScrollBar.top - lpRect.top, psbi.rcScrollBar.right - psbi.rcScrollBar.left, psbi.rcScrollBar.bottom - psbi.rcScrollBar.top);
  443.                     if (((rectangle.X >= 0) && (rectangle.Y >= 0)) && ((rectangle.Width > 0) && (rectangle.Height > 0)))
  444.                     {
  445.                         using (Bitmap bitmap2 = new Bitmap(rectangle.Width, rectangle.Height))
  446.                         {
  447.                             using (Graphics graphics3 = Graphics.FromImage(bitmap2))
  448.                             {
  449.                                 this.xb16feaabcbd204bd(graphics3, psbi, new Rectangle(0, 0, rectangle.Width, rectangle.Height), num);
  450.                             }
  451.                             using (Graphics graphics4 = Graphics.FromHdc(windowDC))
  452.                             {
  453.                                 graphics4.DrawImageUnscaled(bitmap2, rectangle.X, rectangle.Y);
  454.                             }
  455.                         }
  456.                     }
  457.                 }
  458.                 x61467fe65a98f20c.ReleaseDC(base.Handle, windowDC);
  459.             }
  460.         }
  461.         private void x3a329aff8c7e9df4(Graphics x4b101060f4767186, x40255b11ef821fa3.SCROLLBARINFO x8d3f74e5f925679c, Rectangle x382bb49d8f914534, int xd5d613d57fc5703b)
  462.         {
  463.             Brush backColorBrush = base.Engine.Res.ScrollBarRes.BackColorBrush;
  464.             x4b101060f4767186.FillRectangle(backColorBrush, x382bb49d8f914534);
  465.             int height = Math.Min(0x10, (x382bb49d8f914534.Height - 1) / 2);
  466.             Bitmap image = base.Engine.Res.ScrollBarRes.UpButton[0, xd5d613d57fc5703b];
  467.             Rectangle srcRect = new Rectangle(0, 0, image.Width, image.Height);
  468.             Rectangle destRect = new Rectangle(x382bb49d8f914534.X, x382bb49d8f914534.Y, x382bb49d8f914534.Width, height);
  469.             x4b101060f4767186.DrawImage(image, destRect, srcRect, GraphicsUnit.Pixel);
  470.             image = base.Engine.Res.ScrollBarRes.DownButton[0, xd5d613d57fc5703b];
  471.             srcRect = new Rectangle(0, 0, image.Width, image.Height);
  472.             destRect = new Rectangle(x382bb49d8f914534.X, x382bb49d8f914534.Bottom - height, x382bb49d8f914534.Width, height);
  473.             x4b101060f4767186.DrawImage(image, destRect, srcRect, GraphicsUnit.Pixel);
  474.             destRect = new Rectangle(x382bb49d8f914534.Left, x382bb49d8f914534.Top + x8d3f74e5f925679c.xyThumbTop, x382bb49d8f914534.Width, x8d3f74e5f925679c.xyThumbBottom - x8d3f74e5f925679c.xyThumbTop);
  475.             if (destRect.Height > 8)
  476.             {
  477.                 x448fd9ab43628c71.PaintSlider(base.Engine, x4b101060f4767186, destRect, true);
  478.             }
  479.         }
  480.         private void x5319e78a3425ad41(uint x1f25abf5fb75e795, uint x30cc7819189f11b6, Rectangle xb55b340ae3a3e4e0)
  481.         {
  482.             this.x1f25abf5fb75e795 = x1f25abf5fb75e795;
  483.             this.x30cc7819189f11b6 = x30cc7819189f11b6;
  484.             this.x26545669838eb36e = xb55b340ae3a3e4e0;
  485.             if (x30cc7819189f11b6 == 5)
  486.             {
  487.                 this.x34ce871902cf4acd = true;
  488.                 this.x2aa5114a5da7d6c8 = Control.MousePosition;
  489.             }
  490.             this.x420067493d7ebb36.Start();
  491.         }
  492.         private void x6139c418c50df34e()
  493.         {
  494.             this.x34ce871902cf4acd = false;
  495.             this.x420067493d7ebb36.Stop();
  496.         }
  497.         private void x8605d09b86ce01b1(object xe0292b9ed559da7d, EventArgs xfbf34718e704c6bc)
  498.         {
  499.             x40255b11ef821fa3.SCROLLBARINFO psbi = new x40255b11ef821fa3.SCROLLBARINFO();
  500.             psbi.cbSize = 60;
  501.             Point mousePosition = Control.MousePosition;
  502.             Rectangle r = new Rectangle(0, 0, 0, 0);
  503.             if (this.x1f25abf5fb75e795 == 0x115)
  504.             {
  505.                 if (x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffb, ref psbi))
  506.                 {
  507.                     r = Rectangle.FromLTRB(psbi.rcScrollBar.left, psbi.rcScrollBar.top + psbi.xyThumbTop, psbi.rcScrollBar.right, psbi.rcScrollBar.top + psbi.xyThumbBottom);
  508.                 }
  509.             }
  510.             else if ((this.x1f25abf5fb75e795 == 0x114) && x61467fe65a98f20c.GetScrollBarInfo(base.Handle, 0xfffffffa, ref psbi))
  511.             {
  512.                 r = Rectangle.FromLTRB(psbi.rcScrollBar.left + psbi.xyThumbTop, psbi.rcScrollBar.top, psbi.rcScrollBar.left + psbi.xyThumbBottom, psbi.rcScrollBar.bottom);
  513.             }
  514.             if (x448fd9ab43628c71.InRect(mousePosition, this.x26545669838eb36e) && !x448fd9ab43628c71.InRect(mousePosition, r))
  515.             {
  516.                 x61467fe65a98f20c.PostMessage(base.Handle, this.x1f25abf5fb75e795, this.x30cc7819189f11b6, 0);
  517.             }
  518.         }
  519.         private void xb16feaabcbd204bd(Graphics x4b101060f4767186, x40255b11ef821fa3.SCROLLBARINFO x8d3f74e5f925679c, Rectangle x382bb49d8f914534, int xd5d613d57fc5703b)
  520.         {
  521.             Brush backColorBrush = base.Engine.Res.ScrollBarRes.BackColorBrush;
  522.             x4b101060f4767186.FillRectangle(backColorBrush, x382bb49d8f914534);
  523.             base.Ctrl.PointToClient(Control.MousePosition);
  524.             int width = Math.Min(0x10, (x382bb49d8f914534.Width - 1) / 2);
  525.             Bitmap image = base.Engine.Res.ScrollBarRes.UpButton[1, xd5d613d57fc5703b];
  526.             Rectangle srcRect = new Rectangle(0, 0, image.Width, image.Height);
  527.             Rectangle destRect = new Rectangle(x382bb49d8f914534.X, x382bb49d8f914534.Y, width, x382bb49d8f914534.Height);
  528.             x4b101060f4767186.DrawImage(image, destRect, srcRect, GraphicsUnit.Pixel);
  529.             image = base.Engine.Res.ScrollBarRes.DownButton[1, xd5d613d57fc5703b];
  530.             srcRect = new Rectangle(0, 0, image.Width, image.Height);
  531.             destRect = new Rectangle(x382bb49d8f914534.Right - width, x382bb49d8f914534.Y, width, x382bb49d8f914534.Height);
  532.             x4b101060f4767186.DrawImage(image, destRect, srcRect, GraphicsUnit.Pixel);
  533.             destRect = new Rectangle(x382bb49d8f914534.Left + x8d3f74e5f925679c.xyThumbTop, x382bb49d8f914534.Top, x8d3f74e5f925679c.xyThumbBottom - x8d3f74e5f925679c.xyThumbTop, x382bb49d8f914534.Height);
  534.             if (destRect.Width > 8)
  535.             {
  536.                 x448fd9ab43628c71.PaintSlider(base.Engine, x4b101060f4767186, destRect, false);
  537.             }
  538.         }
  539.         protected virtual bool CanScroll
  540.         {
  541.             get
  542.             {
  543.                 return true;
  544.             }
  545.         }
  546.     }
  547. }