/// <summary> /// Adds padding to the rect, where positive numbers shrink the sides. /// </summary> /// <returns>The padding.</returns> /// <param name="rect">Rect to modify.</param> /// <param name="left">Left padding.</param> /// <param name="right">Right padding.</param> /// <param name="top">Top padding.</param> /// <param name="bottom">Bottom padding.</param> public static Rect AddPadding(this Rect rect, int left, int right, int top, int bottom) { // We want to think of padding as positive, not an offset, so invert it here to // make the math work out. var offset = new RectOffset(-left, -right, -top, -bottom); return(rect.AddOffset(offset)); }
protected virtual Rect GetTargetArea(Rect targetObjectRect, Rect placementRectangle, Rect mouseBounds, Rect containerBounds) { return(!placementRectangle.IsEmpty ? placementRectangle.AddOffset(targetObjectRect.Location) : targetObjectRect); }
protected override Rect GetTargetArea(Rect targetObjectRect, Rect placementRectangle, Rect mouseBounds, Rect containerBounds) { return !placementRectangle.IsEmpty ? placementRectangle.AddOffset(containerBounds.Location) : containerBounds; }
protected override Rect GetTargetArea(Rect targetObjectRect, Rect placementRectangle, Rect mouseBounds, Rect containerBounds) { return(!placementRectangle.IsEmpty ? placementRectangle.AddOffset(containerBounds.Location) : containerBounds); }
protected virtual Rect GetTargetArea(Rect targetObjectRect, Rect placementRectangle, Rect mouseBounds, Rect containerBounds) { return !placementRectangle.IsEmpty ? placementRectangle.AddOffset(targetObjectRect.Location) : targetObjectRect; }