- Your Widget Set For OpenGL
Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | Related Pages

uscrollbar.hpp

00001 /*************************************************************************** 00002 LibUFO - UI For OpenGL 00003 copyright : (C) 2001-2005 by Johannes Schmidt 00004 email : schmidtjf at users.sourceforge.net 00005 ------------------- 00006 00007 file : include/ufo/widgets/uscrollbar.hpp 00008 begin : Wed Apr 17 2002 00009 $Id: uscrollbar.hpp,v 1.11 2005/05/21 15:20:44 schmidtjf Exp $ 00010 ***************************************************************************/ 00011 00012 /*************************************************************************** 00013 * This library is free software; you can redistribute it and/or * 00014 * modify it under the terms of the GNU Lesser General Public * 00015 * License as published by the Free Software Foundation; either * 00016 * version 2.1 of the License, or (at your option) any later version. * 00017 * * 00018 * This library is distributed in the hope that it will be useful, * 00019 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00020 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00021 * Lesser General Public License for more details. * 00022 * * 00023 * You should have received a copy of the GNU Lesser General Public * 00024 * License along with this library; if not, write to the Free Software * 00025 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * 00026 ***************************************************************************/ 00027 00028 #ifndef USCROLLBAR_HPP 00029 #define USCROLLBAR_HPP 00030 00031 #include "uabstractslider.hpp" 00032 00033 namespace ufo { 00034 00041 class UFO_EXPORT UScrollBar : public UAbstractSlider { 00042 UFO_DECLARE_DYNAMIC_CLASS(UScrollBar) 00043 UFO_UI_CLASS(UScrollBarUI) 00044 UFO_STYLE_TYPE(UStyle::CE_ScrollBar) 00045 public: 00046 UScrollBar(Orientation orientationA = Horizontal, 00047 int valueA = 0, int visAmountA = 10, 00048 int minA = 0, int maxA = 100); 00049 00050 public: // Public methods 00051 00054 int getVisibleAmount() const; 00055 void setVisibleAmount(int amountA); 00056 00057 protected: // Overrides UWidget 00058 virtual UDimension getContentsSize(const UDimension & maxSize) const; 00059 virtual void processMouseEvent(UMouseEvent * e); 00060 00061 private: // Private attributes 00063 bool m_isDragging; 00065 UPoint m_mousePress; 00066 int m_visAmount; 00067 }; 00068 00069 } // namespace ufo 00070 00071 #endif // USCROLLBAR_HPP

The libUFO Project - written by Johannes Schmidt