summaryrefslogtreecommitdiff
path: root/src/interface/ProgressBar.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2013-03-22 14:14:17 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2013-03-22 14:14:17 (GMT)
commit9abe51526cac2634af0541c3de69834dd30e9f78 (patch)
tree6ae4deadfe00a83094b9d288d8c11d8ce823577a /src/interface/ProgressBar.cpp
parent2c311b9a36a88fadd96f3d39acb1ab2590835d81 (diff)
downloadpowder-9abe51526cac2634af0541c3de69834dd30e9f78.zip
powder-9abe51526cac2634af0541c3de69834dd30e9f78.tar.gz
Move all GUI source files into gui/
Diffstat (limited to 'src/interface/ProgressBar.cpp')
-rw-r--r--src/interface/ProgressBar.cpp81
1 files changed, 0 insertions, 81 deletions
diff --git a/src/interface/ProgressBar.cpp b/src/interface/ProgressBar.cpp
deleted file mode 100644
index eda88f6..0000000
--- a/src/interface/ProgressBar.cpp
+++ /dev/null
@@ -1,81 +0,0 @@
-#include "ProgressBar.h"
-#include "Style.h"
-
-using namespace ui;
-
-ProgressBar::ProgressBar(Point position, Point size, int startProgress, std::string startStatus):
- Component(position, size),
- intermediatePos(0.0f),
- progressStatus(""),
- progress(0)
-{
- SetStatus(startStatus);
- SetProgress(startProgress);
-}
-
-void ProgressBar::SetProgress(int progress)
-{
- this->progress = progress;
- if(this->progress > 100)
- this->progress = 100;
-}
-
-int ProgressBar::GetProgress()
-{
- return progress;
-}
-
-void ProgressBar::SetStatus(std::string status)
-{
- progressStatus = status;
-}
-
-std::string ProgressBar::GetStatus()
-{
- return progressStatus;
-}
-
-void ProgressBar::Draw(const Point & screenPos)
-{
- Graphics * g = ui::Engine::Ref().g;
-
- ui::Colour progressBarColour = style::Colour::WarningTitle;
-
- g->drawrect(screenPos.X, screenPos.Y, Size.X, Size.Y, 255, 255, 255, 255);
-
- if(progress!=-1)
- {
- if(progress > 0)
- {
- if(progress > 100)
- progress = 100;
- float size = float(Size.X-4)*(float(progress)/100.0f); // TIL...
- size = std::min(std::max(size, 0.0f), float(Size.X-4));
- g->fillrect(screenPos.X + 2, screenPos.Y + 2, size, Size.Y-4, progressBarColour.Red, progressBarColour.Green, progressBarColour.Blue, 255);
- }
- } else {
- int size = 40, rsize = 0;
- float position = float(Size.X-4)*(intermediatePos/100.0f);
- if(position + size - 1 > Size.X-4)
- {
- size = (Size.X-4)-position+1;
- rsize = 40-size;
- }
- g->fillrect(screenPos.X + 2 + position, screenPos.Y + 2, size, Size.Y-4, progressBarColour.Red, progressBarColour.Green, progressBarColour.Blue, 255);
- if(rsize)
- {
- g->fillrect(screenPos.X + 2, screenPos.Y + 2, rsize, Size.Y-4, progressBarColour.Red, progressBarColour.Green, progressBarColour.Blue, 255);
- }
- }
- if(progress<50)
- g->drawtext(screenPos.X + ((Size.X-Graphics::textwidth(progressStatus.c_str()))/2), screenPos.Y + (Size.Y-8)/2, progressStatus, 255, 255, 255, 255);
- else
- g->drawtext(screenPos.X + ((Size.X-Graphics::textwidth(progressStatus.c_str()))/2), screenPos.Y + (Size.Y-8)/2, progressStatus, 0, 0, 0, 255);
-}
-
-void ProgressBar::Tick(float dt)
-{
- intermediatePos += 1.0f*dt;
- if(intermediatePos>100.0f)
- intermediatePos = 0.0f;
-} \ No newline at end of file