Example #1
0
 //////////////////////////////////////////////////////////////////////////
 public HotSpot(Rectangle Rect, IEditorResizable Owner, HotSpotType Type)
 {
     this.Rect  = Rect;
     this.Owner = Owner;
     this.Type  = Type;
 }
 //////////////////////////////////////////////////////////////////////////
 private static void SetOrigPos(IEditorResizable Obj)
 {
     Obj.OrigRect = new Rectangle(Obj.X, Obj.Y, Obj.Width, Obj.Height);
 }
 //////////////////////////////////////////////////////////////////////////
 public HotSpot(Rectangle Rect, IEditorResizable Owner, HotSpotType Type)
 {
     this.Rect = Rect;
     this.Owner = Owner;
     this.Type = Type;
 }
        //////////////////////////////////////////////////////////////////////////
        private void PaintResizeHandles(Rectangle OwnerRect, IEditorResizable Owner)
        {
            Rectangle Rect;

            Rect = new Rectangle(OwnerRect.X - 2, OwnerRect.Y - 2, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeNW));

            Rect = new Rectangle(OwnerRect.X + OwnerRect.Width / 2 - 2, OwnerRect.Y - 2, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeN));

            Rect = new Rectangle(OwnerRect.X + OwnerRect.Width - 3, OwnerRect.Y - 2, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeNE));

            Rect = new Rectangle(OwnerRect.X - 2, OwnerRect.Y + OwnerRect.Height / 2 - 2, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeW));

            Rect = new Rectangle(OwnerRect.X + OwnerRect.Width - 3, OwnerRect.Y + OwnerRect.Height / 2 - 2, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeE));

            Rect = new Rectangle(OwnerRect.X - 2, OwnerRect.Y + OwnerRect.Height - 3, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeSW));

            Rect = new Rectangle(OwnerRect.X + OwnerRect.Width / 2 - 2, OwnerRect.Y + OwnerRect.Height - 3, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeS));

            Rect = new Rectangle(OwnerRect.X + OwnerRect.Width - 3, OwnerRect.Y + OwnerRect.Height - 3, 5, 5);
            Game.Renderer.DrawRect(Rect, SelectionColor);
            HotSpots.Add(new HotSpot(Rect, Owner, HotSpot.HotSpotType.ResizeSE));
        }