132f840b7SJohn Scipione /* 232f840b7SJohn Scipione * Copyright 2012, Haiku, Inc. 332f840b7SJohn Scipione * Distributed under the terms of the MIT License. 432f840b7SJohn Scipione * 532f840b7SJohn Scipione * Authors: 632f840b7SJohn Scipione * Marc Flerackers (mflerackers@androme.be) 732f840b7SJohn Scipione * Stefano Ceccherini (stefano.ceccherini@gmail.com) 832f840b7SJohn Scipione * John Scipione (jscipione@gmail.com) 932f840b7SJohn Scipione */ 1032f840b7SJohn Scipione #ifndef INLINE_SCROLL_VIEW_H 1132f840b7SJohn Scipione #define INLINE_SCROLL_VIEW_H 1232f840b7SJohn Scipione 1332f840b7SJohn Scipione 1432f840b7SJohn Scipione #include <View.h> 1532f840b7SJohn Scipione 1632f840b7SJohn Scipione class BLayout; 1732f840b7SJohn Scipione class ScrollArrow; 1832f840b7SJohn Scipione class BPoint; 1932f840b7SJohn Scipione 2032f840b7SJohn Scipione 2132f840b7SJohn Scipione class TInlineScrollView : public BView { 2232f840b7SJohn Scipione public: 23*255853feSJohn Scipione TInlineScrollView(BRect frame, BView* target, 24*255853feSJohn Scipione enum orientation orientation = B_VERTICAL); 2532f840b7SJohn Scipione virtual ~TInlineScrollView(); 2632f840b7SJohn Scipione 2732f840b7SJohn Scipione virtual void AttachedToWindow(); 2832f840b7SJohn Scipione virtual void DetachedFromWindow(); 2932f840b7SJohn Scipione 3032f840b7SJohn Scipione void AttachScrollers(); 3132f840b7SJohn Scipione void DetachScrollers(); 3232f840b7SJohn Scipione bool HasScrollers() const; 3332f840b7SJohn Scipione 3432f840b7SJohn Scipione void SetSmallStep(float step); 3532f840b7SJohn Scipione void GetSteps(float* _smallStep, float* _largeStep) const; 3632f840b7SJohn Scipione void ScrollBy(const float& step); 3732f840b7SJohn Scipione 3832f840b7SJohn Scipione private: 3932f840b7SJohn Scipione BView* fTarget; 4032f840b7SJohn Scipione ScrollArrow* fUpperScrollArrow; 4132f840b7SJohn Scipione ScrollArrow* fLowerScrollArrow; 4232f840b7SJohn Scipione 4332f840b7SJohn Scipione float fScrollStep; 4432f840b7SJohn Scipione float fValue; 4532f840b7SJohn Scipione float fLimit; 4632f840b7SJohn Scipione }; 4732f840b7SJohn Scipione 4832f840b7SJohn Scipione 4932f840b7SJohn Scipione #endif // INLINE_SCROLL_VIEW_H 50