#include "Slider.h" #include "Bild.h" #include "Globals.h" using namespace Framework; Slider::Slider() : ZeichnungHintergrund() { value = 50; } Slider::~Slider() {} void Slider::setValue( float value ) { this->value = value; rend |= 1; } float Slider::getValue() const { return value; } // Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen. // me: Das Ereignis void Slider::doMausEreignis( MausEreignis &me, bool userRet ) { if( gr.x && ( me.id == ME_PLinks || ( me.id == ME_Bewegung && getMausStand( M_Links ) ) ) ) { value = ( 1 - ( (gr.x - 10) - me.mx ) / (gr.x - 20.0f) ) * 100; if( value < 0 ) value = 0; if( value > 100 ) value = 100; rend |= 1; } ZeichnungHintergrund::doMausEreignis( me, userRet ); } // Zeichnet die Zeihnung in ein bestimmtes Bild // zRObj: Das Bild, in das gezeichnet werden soll void Slider::render( Bild &zRObj ) { if( hatStyle( Style::Sichtbar ) ) { ZeichnungHintergrund::render( zRObj ); if( zRObj.setDrawOptions( pos, gr ) ) { zRObj.drawLinieH( 10, gr.y / 2, gr.x - 20, 0xFFFFFFFF ); zRObj.fillRegion( (int)( gr.x / 100 * value - 10 ), 0, 20, gr.y, 0xFFFFFFFF ); zRObj.releaseDrawOptions(); } } }