aboutsummaryrefslogtreecommitdiff
path: root/Emby.Drawing.Net/PercentPlayedDrawer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Drawing.Net/PercentPlayedDrawer.cs')
-rw-r--r--Emby.Drawing.Net/PercentPlayedDrawer.cs34
1 files changed, 34 insertions, 0 deletions
diff --git a/Emby.Drawing.Net/PercentPlayedDrawer.cs b/Emby.Drawing.Net/PercentPlayedDrawer.cs
new file mode 100644
index 000000000..fac15ba47
--- /dev/null
+++ b/Emby.Drawing.Net/PercentPlayedDrawer.cs
@@ -0,0 +1,34 @@
+using System;
+using System.Drawing;
+
+namespace Emby.Drawing.Net
+{
+ public class PercentPlayedDrawer
+ {
+ private const int IndicatorHeight = 8;
+
+ public void Process(Graphics graphics, Size imageSize, double percent)
+ {
+ var y = imageSize.Height - IndicatorHeight;
+
+ using (var backdroundBrush = new SolidBrush(Color.FromArgb(225, 0, 0, 0)))
+ {
+ const int innerX = 0;
+ var innerY = y;
+ var innerWidth = imageSize.Width;
+ var innerHeight = imageSize.Height;
+
+ graphics.FillRectangle(backdroundBrush, innerX, innerY, innerWidth, innerHeight);
+
+ using (var foregroundBrush = new SolidBrush(Color.FromArgb(82, 181, 75)))
+ {
+ double foregroundWidth = innerWidth;
+ foregroundWidth *= percent;
+ foregroundWidth /= 100;
+
+ graphics.FillRectangle(foregroundBrush, innerX, innerY, Convert.ToInt32(Math.Round(foregroundWidth)), innerHeight);
+ }
+ }
+ }
+ }
+}