Improve performance of the code used to display active thumbnail's borders
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace EveOPreview.UI
|
||||
@@ -8,12 +7,6 @@ namespace EveOPreview.UI
|
||||
{
|
||||
#region Private fields
|
||||
private readonly Action<object, MouseEventArgs> _areaClickAction;
|
||||
private bool _isHighlightEnabled;
|
||||
private Color _highlightColor;
|
||||
private int _highlightWidthLeft;
|
||||
private int _highlightWidthTop;
|
||||
private int _highlightWidthRight;
|
||||
private int _highlightWidthBottom;
|
||||
#endregion
|
||||
|
||||
public ThumbnailOverlay(Form owner, Action<object, MouseEventArgs> areaClickAction)
|
||||
@@ -21,9 +14,6 @@ namespace EveOPreview.UI
|
||||
this.Owner = owner;
|
||||
this._areaClickAction = areaClickAction;
|
||||
|
||||
this._isHighlightEnabled = false;
|
||||
this._highlightColor = Color.Red;
|
||||
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
@@ -42,27 +32,6 @@ namespace EveOPreview.UI
|
||||
this.OverlayLabel.Visible = enable;
|
||||
}
|
||||
|
||||
public void SetHighlightWidth(int left, int top, int right, int bottom)
|
||||
{
|
||||
this._highlightWidthLeft = left;
|
||||
this._highlightWidthTop = top;
|
||||
this._highlightWidthRight = right;
|
||||
this._highlightWidthBottom = bottom;
|
||||
}
|
||||
|
||||
public void EnableHighlight(bool enabled, Color color)
|
||||
{
|
||||
if (enabled == this._isHighlightEnabled)
|
||||
{
|
||||
// Nothing to do here
|
||||
return;
|
||||
}
|
||||
|
||||
this._isHighlightEnabled = enabled;
|
||||
this._highlightColor = color;
|
||||
this.Refresh();
|
||||
}
|
||||
|
||||
protected override CreateParams CreateParams
|
||||
{
|
||||
get
|
||||
@@ -72,19 +41,5 @@ namespace EveOPreview.UI
|
||||
return Params;
|
||||
}
|
||||
}
|
||||
|
||||
protected override void OnPaint(PaintEventArgs e)
|
||||
{
|
||||
base.OnPaint(e);
|
||||
|
||||
if (this._isHighlightEnabled)
|
||||
{
|
||||
ControlPaint.DrawBorder(e.Graphics, this.ClientRectangle,
|
||||
this._highlightColor, this._highlightWidthLeft, ButtonBorderStyle.Solid,
|
||||
this._highlightColor, this._highlightWidthTop, ButtonBorderStyle.Solid,
|
||||
this._highlightColor, this._highlightWidthRight, ButtonBorderStyle.Solid,
|
||||
this._highlightColor, this._highlightWidthBottom, ButtonBorderStyle.Solid);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user