112 lines
3.1 KiB
C#
112 lines
3.1 KiB
C#
// Decompiled with JetBrains decompiler
|
|
// Type: DarkModeForms.FlatProgressBar
|
|
// Assembly: Raton, Version=0.4.0.0, Culture=neutral, PublicKeyToken=null
|
|
// MVID: 36C4E416-7F8D-4D23-930F-B5CCB0D810E7
|
|
// Assembly location: C:\Users\user\Desktop\v3.8.0 Deluxe Plugins (v4.0.0) cracked\Raton.exe
|
|
|
|
using System;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
|
|
#nullable disable
|
|
namespace DarkModeForms;
|
|
|
|
public class FlatProgressBar : ProgressBar
|
|
{
|
|
private int min;
|
|
private int max = 100;
|
|
private int val;
|
|
private Color BarColor = Color.Green;
|
|
|
|
public FlatProgressBar() => this.SetStyle(ControlStyles.UserPaint, true);
|
|
|
|
protected override void OnPaintBackground(PaintEventArgs pevent)
|
|
{
|
|
}
|
|
|
|
protected override void OnResize(EventArgs e) => this.Invalidate();
|
|
|
|
protected override void OnPaint(PaintEventArgs e)
|
|
{
|
|
Graphics graphics = e.Graphics;
|
|
SolidBrush solidBrush = new SolidBrush(this.BarColor);
|
|
Brush brush = (Brush) new SolidBrush(this.BackColor);
|
|
float num = (float) (this.val - this.min) / (float) (this.max - this.min);
|
|
Rectangle clientRectangle = this.ClientRectangle;
|
|
clientRectangle.Width = (int) ((double) clientRectangle.Width * (double) num);
|
|
graphics.FillRectangle(brush, this.ClientRectangle);
|
|
graphics.FillRectangle((Brush) solidBrush, clientRectangle);
|
|
solidBrush.Dispose();
|
|
graphics.Dispose();
|
|
}
|
|
|
|
public new int Minimum
|
|
{
|
|
get => this.min;
|
|
set
|
|
{
|
|
if (value < 0)
|
|
value = 0;
|
|
if (value > this.max)
|
|
this.max = value;
|
|
this.min = value;
|
|
if (this.val < this.min)
|
|
this.val = this.min;
|
|
this.Invalidate();
|
|
}
|
|
}
|
|
|
|
public new int Maximum
|
|
{
|
|
get => this.max;
|
|
set
|
|
{
|
|
if (value < this.min)
|
|
this.min = value;
|
|
this.max = value;
|
|
if (this.val > this.max)
|
|
this.val = this.max;
|
|
this.Invalidate();
|
|
}
|
|
}
|
|
|
|
public new int Value
|
|
{
|
|
get => this.val;
|
|
set
|
|
{
|
|
int val = this.val;
|
|
this.val = value >= this.min ? (value <= this.max ? value : this.max) : this.min;
|
|
Rectangle clientRectangle1 = this.ClientRectangle;
|
|
Rectangle clientRectangle2 = this.ClientRectangle;
|
|
float num1 = (float) (this.val - this.min) / (float) (this.max - this.min);
|
|
clientRectangle1.Width = (int) ((double) clientRectangle1.Width * (double) num1);
|
|
float num2 = (float) (val - this.min) / (float) (this.max - this.min);
|
|
clientRectangle2.Width = (int) ((double) clientRectangle2.Width * (double) num2);
|
|
Rectangle rc = new Rectangle();
|
|
if (clientRectangle1.Width > clientRectangle2.Width)
|
|
{
|
|
rc.X = clientRectangle2.Size.Width;
|
|
rc.Width = clientRectangle1.Width - clientRectangle2.Width;
|
|
}
|
|
else
|
|
{
|
|
rc.X = clientRectangle1.Size.Width;
|
|
rc.Width = clientRectangle2.Width - clientRectangle1.Width;
|
|
}
|
|
rc.Height = this.Height;
|
|
this.Invalidate(rc);
|
|
}
|
|
}
|
|
|
|
public Color ProgressBarColor
|
|
{
|
|
get => this.BarColor;
|
|
set
|
|
{
|
|
this.BarColor = value;
|
|
this.Invalidate();
|
|
}
|
|
}
|
|
}
|