1adba4ce9SJohn Scipione /* 2a0ba79fbSJohn Scipione * Copyright 2015 Haiku, Inc. All rights reserved. 3adba4ce9SJohn Scipione * Distributed under the terms of the MIT license. 4adba4ce9SJohn Scipione * 5adba4ce9SJohn Scipione * Authors: 6adba4ce9SJohn Scipione * John Scipione, jscipione@gmail.com 7adba4ce9SJohn Scipione */ 8a0ba79fbSJohn Scipione #ifndef _SPINNER_H 9a0ba79fbSJohn Scipione #define _SPINNER_H 10adba4ce9SJohn Scipione 11adba4ce9SJohn Scipione 12a0ba79fbSJohn Scipione #include <AbstractSpinner.h> 13adba4ce9SJohn Scipione 14adba4ce9SJohn Scipione 15a0ba79fbSJohn Scipione class BSpinner : public BAbstractSpinner { 16adba4ce9SJohn Scipione public: 17adba4ce9SJohn Scipione BSpinner(BRect frame, const char* name, 18adba4ce9SJohn Scipione const char* label, BMessage* message, 19adba4ce9SJohn Scipione uint32 resizingMode = B_FOLLOW_LEFT | B_FOLLOW_TOP, 20adba4ce9SJohn Scipione uint32 flags = B_WILL_DRAW | B_NAVIGABLE); 21adba4ce9SJohn Scipione BSpinner(const char* name, const char* label, 22adba4ce9SJohn Scipione BMessage* message, 23adba4ce9SJohn Scipione uint32 flags = B_WILL_DRAW | B_NAVIGABLE); 24adba4ce9SJohn Scipione BSpinner(BMessage* data); 25adba4ce9SJohn Scipione virtual ~BSpinner(); 26adba4ce9SJohn Scipione 27adba4ce9SJohn Scipione static BArchivable* Instantiate(BMessage* data); 28adba4ce9SJohn Scipione virtual status_t Archive(BMessage* data, bool deep = true) const; 29adba4ce9SJohn Scipione 30a0ba79fbSJohn Scipione virtual void Increment(); 31a0ba79fbSJohn Scipione virtual void Decrement(); 32a0ba79fbSJohn Scipione 33adba4ce9SJohn Scipione virtual status_t GetSupportedSuites(BMessage* message); 34adba4ce9SJohn Scipione 35adba4ce9SJohn Scipione virtual void AttachedToWindow(); 36a9385e8eSJohn Scipione 37adba4ce9SJohn Scipione virtual void SetEnabled(bool enable); 38adba4ce9SJohn Scipione MinValue()39a0ba79fbSJohn Scipione int32 MinValue() const { return fMinValue; } 40a0ba79fbSJohn Scipione virtual void SetMinValue(int32 min); 41adba4ce9SJohn Scipione MaxValue()423705d40cSJohn Scipione int32 MaxValue() const { return fMaxValue; } 433705d40cSJohn Scipione virtual void SetMaxValue(int32 max); 443705d40cSJohn Scipione 45a0ba79fbSJohn Scipione void Range(int32* min, int32* max); 46a0ba79fbSJohn Scipione virtual void SetRange(int32 min, int32 max); 47adba4ce9SJohn Scipione 48a0ba79fbSJohn Scipione virtual void SetValue(int32 value); 49a0ba79fbSJohn Scipione virtual void SetValueFromText(); 50adba4ce9SJohn Scipione 51adba4ce9SJohn Scipione private: 52adba4ce9SJohn Scipione // FBC padding 53adba4ce9SJohn Scipione virtual void _ReservedSpinner20(); 54adba4ce9SJohn Scipione virtual void _ReservedSpinner19(); 55adba4ce9SJohn Scipione virtual void _ReservedSpinner18(); 56adba4ce9SJohn Scipione virtual void _ReservedSpinner17(); 57adba4ce9SJohn Scipione virtual void _ReservedSpinner16(); 58adba4ce9SJohn Scipione virtual void _ReservedSpinner15(); 59adba4ce9SJohn Scipione virtual void _ReservedSpinner14(); 60adba4ce9SJohn Scipione virtual void _ReservedSpinner13(); 61adba4ce9SJohn Scipione virtual void _ReservedSpinner12(); 62adba4ce9SJohn Scipione virtual void _ReservedSpinner11(); 63adba4ce9SJohn Scipione virtual void _ReservedSpinner10(); 64adba4ce9SJohn Scipione virtual void _ReservedSpinner9(); 65adba4ce9SJohn Scipione virtual void _ReservedSpinner8(); 66adba4ce9SJohn Scipione virtual void _ReservedSpinner7(); 67adba4ce9SJohn Scipione virtual void _ReservedSpinner6(); 68adba4ce9SJohn Scipione virtual void _ReservedSpinner5(); 69adba4ce9SJohn Scipione virtual void _ReservedSpinner4(); 70adba4ce9SJohn Scipione virtual void _ReservedSpinner3(); 71adba4ce9SJohn Scipione virtual void _ReservedSpinner2(); 72adba4ce9SJohn Scipione virtual void _ReservedSpinner1(); 73adba4ce9SJohn Scipione 74adba4ce9SJohn Scipione private: 75adba4ce9SJohn Scipione void _InitObject(); 76adba4ce9SJohn Scipione 77a0ba79fbSJohn Scipione int32 fMinValue; 78a0ba79fbSJohn Scipione int32 fMaxValue; 79adba4ce9SJohn Scipione 80adba4ce9SJohn Scipione // FBC padding 81*8cc8ec9eSPulkoMandy uint32 _reserved[21]; 82adba4ce9SJohn Scipione }; 83adba4ce9SJohn Scipione 84adba4ce9SJohn Scipione 85a0ba79fbSJohn Scipione #endif // _SPINNER_H 86