Gered
c5cdddbeaa
current versions of all of my basic framework sources, build configurations/scripts, and supporting assets
82 lines
1.6 KiB
C++
82 lines
1.6 KiB
C++
/*
|
|
GWEN
|
|
Copyright (c) 2010 Facepunch Studios
|
|
See license in Gwen.h
|
|
*/
|
|
|
|
#pragma once
|
|
#ifndef GWEN_CONTROLS_NUMERICUPDOWN_H
|
|
#define GWEN_CONTROLS_NUMERICUPDOWN_H
|
|
|
|
#include "gwen_base.h"
|
|
#include "gwen_button.h"
|
|
#include "gwen_textbox.h"
|
|
|
|
namespace Gwen
|
|
{
|
|
namespace Controls
|
|
{
|
|
class GWEN_EXPORT NumericUpDownButton_Up : public Button
|
|
{
|
|
GWEN_CONTROL_INLINE( NumericUpDownButton_Up, Button )
|
|
{
|
|
SetSize( 7, 7 );
|
|
}
|
|
|
|
virtual void Render( Skin::Base* skin )
|
|
{
|
|
skin->DrawNumericUpDownButton( this, IsDepressed(), true );
|
|
}
|
|
};
|
|
|
|
class GWEN_EXPORT NumericUpDownButton_Down : public Button
|
|
{
|
|
GWEN_CONTROL_INLINE( NumericUpDownButton_Down, Button )
|
|
{
|
|
SetSize( 7, 7 );
|
|
}
|
|
|
|
virtual void Render( Skin::Base* skin )
|
|
{
|
|
skin->DrawNumericUpDownButton( this, IsDepressed(), false );
|
|
}
|
|
};
|
|
|
|
class GWEN_EXPORT NumericUpDown : public TextBoxNumeric
|
|
{
|
|
public:
|
|
|
|
GWEN_CONTROL( NumericUpDown, TextBoxNumeric );
|
|
|
|
virtual void SetMin( int i );
|
|
virtual void SetMax( int i );
|
|
virtual void SetValue( int i );
|
|
|
|
Event::Caller onChanged;
|
|
|
|
private:
|
|
|
|
virtual void OnEnter();
|
|
virtual void OnChange();
|
|
virtual void OnTextChanged();
|
|
|
|
virtual void OnButtonUp( Base* control );
|
|
virtual void OnButtonDown( Base* control );
|
|
|
|
virtual bool OnKeyUp( bool bDown ) { if ( bDown ) OnButtonUp( NULL ); return true; }
|
|
virtual bool OnKeyDown( bool bDown ){ if ( bDown ) OnButtonDown( NULL ); return true; }
|
|
|
|
virtual void SyncTextFromNumber();
|
|
virtual void SyncNumberFromText();
|
|
|
|
|
|
|
|
int m_iNumber;
|
|
int m_iMax;
|
|
int m_iMin;
|
|
|
|
};
|
|
}
|
|
}
|
|
#endif
|