diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-08-12 17:36:30 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-08-12 17:36:30 (GMT) |
| commit | 7084c8be28cc8dca02f84131af015d03ab33079d (patch) | |
| tree | 9c46188714a7dcce236f21026cc2278207521635 /src/interface | |
| parent | e7b653a0c777bbe8c4b670500ecc6310ad7de03f (diff) | |
| download | powder-7084c8be28cc8dca02f84131af015d03ab33079d.zip powder-7084c8be28cc8dca02f84131af015d03ab33079d.tar.gz | |
Fix spinner drawing
Diffstat (limited to 'src/interface')
| -rw-r--r-- | src/interface/Spinner.cpp | 15 | ||||
| -rw-r--r-- | src/interface/Spinner.h | 1 |
2 files changed, 13 insertions, 3 deletions
diff --git a/src/interface/Spinner.cpp b/src/interface/Spinner.cpp index a98be2b..ea3d1fa 100644 --- a/src/interface/Spinner.cpp +++ b/src/interface/Spinner.cpp @@ -13,21 +13,30 @@ using namespace ui; Spinner::Spinner(Point position, Point size): - Component(position, size), cValue(0) + Component(position, size), cValue(0), + tickInternal(0) { } void Spinner::Tick(float dt) { - cValue += 0.05f; + tickInternal++; + if(tickInternal == 4) + { + cValue += 0.25f;//0.05f; + tickInternal = 0; + } } void Spinner::Draw(const Point& screenPos) { Graphics * g = ui::Engine::Ref().g; int baseX = screenPos.X+(Size.X/2); int baseY = screenPos.Y+(Size.Y/2); - for(float t = 0.0f; t < 1.0f; t+=0.05f) + int lineInner = (Size.X/2); + int lineOuter = (Size.X/2)+3; + for(float t = 0.0f; t < 6.0f; t+=0.25f) { //g->drawblob(baseX+(sin(cValue+t)*(Size.X/2)), baseY+(cos(cValue+t)*(Size.X/2)), t*255, t*255, t*255); + g->draw_line(baseX+(sin(cValue+t)*lineInner), baseY+(cos(cValue+t)*lineInner), baseX+(sin(cValue+t)*lineOuter), baseY+(cos(cValue+t)*lineOuter), (t/6)*255, (t/6)*255, (t/6)*255, 255); } } Spinner::~Spinner() diff --git a/src/interface/Spinner.h b/src/interface/Spinner.h index 089b0b5..23d4141 100644 --- a/src/interface/Spinner.h +++ b/src/interface/Spinner.h @@ -16,6 +16,7 @@ namespace ui class Spinner: public Component { float cValue; + int tickInternal; public: Spinner(Point position, Point size); virtual void Tick(float dt); |
