152a38012Sejakowatz //**************************************************************************************** 252a38012Sejakowatz // 352a38012Sejakowatz // File: ProgressBar.h 452a38012Sejakowatz // 552a38012Sejakowatz // Written by: David Ramsey and Daniel Switkin 652a38012Sejakowatz // 752a38012Sejakowatz // Copyright 1999, Be Incorporated 852a38012Sejakowatz // 952a38012Sejakowatz //**************************************************************************************** 1052a38012Sejakowatz 1152a38012Sejakowatz #ifndef PROGRESSBAR_H 1252a38012Sejakowatz #define PROGRESSBAR_H 1352a38012Sejakowatz 1452a38012Sejakowatz #include <interface/View.h> 1552a38012Sejakowatz 1652a38012Sejakowatz typedef struct { 1752a38012Sejakowatz rgb_color color; 1852a38012Sejakowatz BRect rect; 1952a38012Sejakowatz } segment; 2052a38012Sejakowatz 2152a38012Sejakowatz #define ltgray 216 2252a38012Sejakowatz #define dkgray 80 2352a38012Sejakowatz 2452a38012Sejakowatz class ProgressBar : public BView { 2552a38012Sejakowatz public: 2652a38012Sejakowatz ProgressBar(BRect r, char* name); 27*7bed483aSJonas Sundström virtual void Draw(BRect rect); 2852a38012Sejakowatz void Set(int32 value); 2952a38012Sejakowatz void UpdateColors(int32 color, bool fade); 30*7bed483aSJonas Sundström virtual void AttachedToWindow(); 31*7bed483aSJonas Sundström virtual void MouseDown(BPoint point); 3252a38012Sejakowatz 3352a38012Sejakowatz enum { 3452a38012Sejakowatz PROGRESS_WIDTH = 146, 3552a38012Sejakowatz PROGRESS_HEIGHT = 20 3652a38012Sejakowatz }; 3752a38012Sejakowatz 3852a38012Sejakowatz private: 3952a38012Sejakowatz void Render(bool all = false); 4052a38012Sejakowatz 4152a38012Sejakowatz segment segments[20]; 4252a38012Sejakowatz int32 current_value, previous_value; 4352a38012Sejakowatz }; 4452a38012Sejakowatz 4552a38012Sejakowatz #endif 46