//---------------------------------------------------------------------------

#ifndef VmxCustomProgressH
#define VmxCustomProgressH
//---------------------------------------------------------------------------
#include <SysUtils.hpp>
#include <Classes.hpp>
#include <Controls.hpp>
//---------------------------------------------------------------------------

enum TVmxBorderType
{
  vbNone, vbRaised, vbLowered
};

enum TGradientType
{
  gtHorizontal, gtVertical
};

class PACKAGE TVmxCustomProgress : public TGraphicControl
{
private:
protected:
        TColor FColor1, FColor2;
        TGradientType FGradType;
        TVmxBorderType FBevel;
        int FPr, FMax;
        void __fastcall Paint (void);
        void __fastcall SetColor1 (TColor New);
        void __fastcall SetColor2 (TColor New);
        void __fastcall SetGradientType (TGradientType New);
        void __fastcall SetBevel (TVmxBorderType New);
        void __fastcall SetPr (int New);
        void __fastcall SetMax (int New);
public:
        __fastcall TVmxCustomProgress(TComponent* Owner);
__published:
        __property Anchors;
        __property Align;
        __property Color;
        __property ParentColor;
        __property Visible;
        __property TColor Color1 = {read = FColor1, write = SetColor1};
        __property TColor Color2 = {read = FColor2, write = SetColor2};
        __property TGradientType GradientType = {read = FGradType, write = SetGradientType};
        __property TVmxBorderType BevelType = {read = FBevel, write = SetBevel};
        __property int Progress = {read = FPr, write = SetPr};
        __property int Max = {read = FMax, write = SetMax};
};
//---------------------------------------------------------------------------
#endif
