Esempio n. 1
0
 internal static void resetOrderState()
 {
     Orders.Reset();
     SurfaceClip.Reset();
     DestBltOrder.Reset();
     MultiDestBltOrder.Reset();
     PatBltOrder.Reset();
     MultiPatBltOrder.Reset();
     ScreenBltOrder.Reset();
     MultiScreenBltOrder.Reset();
     MemBltOrder.Reset();
     TriBltOrder.Reset();
     ScreenBltOrder.Reset();
     LineOrder.Reset();
     PolylineOrder.Reset();
     RectangleOrder.Reset();
     MultiRectangleOrder.Reset();
     DeskSaveOrder.Reset();
     Glyph.Reset();
     Cache.Reset(!m_bInitialised);
     Text2Order.Reset();
     Options.BoundsTop    = Options.BoundsLeft = 0;
     Options.BoundsBottom = Options.height - 1;
     Options.BoundsRight  = Options.width - 1;
 }
        internal static void drawMultiRectangleOrder()
        {
            int num;

            if (Options.server_bpp == 0x10)
            {
                num = RdpBitmap.convertFrom16bit(((ColourB << 0x10) | (ColourG << 8)) | ColourR);
            }
            else
            {
                num = RdpBitmap.convertFrom8bit(ColourR);
            }
            foreach (Rectangle rectangle in DeltaList)
            {
                RectangleOrder.fillRectangle(rectangle.X, rectangle.Y, rectangle.Width, rectangle.Height, num);
            }
        }
Esempio n. 3
0
        private static void processRectangle(RdpPacket data, int present, bool delta)
        {
            if ((present & 1) != 0)
            {
                RectangleOrder.X = setCoordinate(data, RectangleOrder.X, delta);
            }

            if ((present & 2) != 0)
            {
                RectangleOrder.Y = setCoordinate(data, RectangleOrder.Y, delta);
            }

            if ((present & 4) != 0)
            {
                RectangleOrder.CX = setCoordinate(data, RectangleOrder.CX, delta);
            }

            if ((present & 8) != 0)
            {
                RectangleOrder.CY = setCoordinate(data, RectangleOrder.CY, delta);
            }

            if ((present & 0x10) != 0)
            {
                RectangleOrder.ColourR = data.ReadByte();
            }

            if ((present & 0x20) != 0)
            {
                RectangleOrder.ColourG = data.ReadByte();
            }

            if ((present & 0x40) != 0)
            {
                RectangleOrder.ColourB = data.ReadByte();
            }

            RectangleOrder.drawRectangleOrder();
        }