1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 #ifndef _SCROLL_HXX 28 #define _SCROLL_HXX 29 #ifndef _SCRBAR_HXX //autogen 30 #include <vcl/scrbar.hxx> 31 #endif 32 33 class SwScrollbar: public ScrollBar 34 { 35 Size aDocSz; 36 sal_Bool bHori :1; // Horizontal = sal_True, sonst Vertikal 37 sal_Bool bAuto :1; // fuer Scrollingmode 38 sal_Bool bThumbEnabled:1; 39 sal_Bool bVisible :1; // Show/Hide sollen nur noch dieses Flag setzen 40 sal_Bool bSizeSet :1; // wurde die Groesse bereits gesetzt? 41 42 void AutoShow(); 43 44 using Window::Hide; 45 using Window::SetPosSizePixel; 46 using Window::IsVisible; 47 48 public: 49 50 void ExtendedShow( sal_Bool bVisible = sal_True ); 51 void Hide() { Show( sal_False ); } 52 void SetPosSizePixel( const Point& rNewPos, const Size& rNewSize ); 53 sal_Bool IsVisible(sal_Bool bReal) const { return bReal ? ScrollBar::IsVisible() : bVisible; } 54 55 // Aenderung der Dokumentgroesse 56 void DocSzChgd(const Size &rNewSize); 57 // Aenderung des sichtbaren Bereiches 58 void ViewPortChgd(const Rectangle &rRectangle); 59 // was fuer einer ist es denn ?? 60 sal_Bool IsHoriScroll() const { return bHori; } 61 62 void SetAuto(sal_Bool bSet); 63 sal_Bool IsAuto() { return bAuto;} 64 65 SwScrollbar(Window *pParent, sal_Bool bHori = sal_True ); 66 ~SwScrollbar(); 67 }; 68 69 70 71 #endif 72