LibreOffice Module sw (master)  1
scroll.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 #ifndef INCLUDED_SW_SOURCE_UIBASE_INC_SCROLL_HXX
20 #define INCLUDED_SW_SOURCE_UIBASE_INC_SCROLL_HXX
21 #include <vcl/scrbar.hxx>
22 
23 class SwScrollbar: public ScrollBar
24 {
26  bool const bHori :1; // horizontal = salTrue, otherwise vertical
27  bool bAuto :1; // for scrolling mode
28  bool bVisible :1; // show/hide should only set this flag
29  bool bSizeSet :1; // was the size already set?
30 
31  void AutoShow();
32 
33  using Window::Hide;
34  using Window::IsVisible;
35 
36 public:
37  void ExtendedShow( bool bVisible = true );
38  void SetPosSizePixel( const Point& rNewPos, const Size& rNewSize ) override;
39  bool IsVisible(bool bReal) const { return bReal ? ScrollBar::IsVisible() : bVisible; }
40 
41  // changing of document size
42  void DocSzChgd(const Size &rNewSize);
43  // changing of visible region
44  void ViewPortChgd(const tools::Rectangle &rRectangle);
45  // what is it??
46  bool IsHoriScroll() const { return bHori; }
47 
48  void SetAuto(bool bSet);
49  bool IsAuto() const { return bAuto;}
50 
51  SwScrollbar(vcl::Window *pParent, bool bHori );
52  virtual ~SwScrollbar() override;
53 };
54 
55 #endif
56 
57 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
bool bAuto
Definition: scroll.hxx:27
void ViewPortChgd(const tools::Rectangle &rRectangle)
Definition: scroll.cxx:55
bool bVisible
Definition: scroll.hxx:28
bool IsAuto() const
Definition: scroll.hxx:49
void AutoShow()
Definition: scroll.cxx:106
bool IsVisible(bool bReal) const
Definition: scroll.hxx:39
bool IsHoriScroll() const
Definition: scroll.hxx:46
bool bSizeSet
Definition: scroll.hxx:29
void SetAuto(bool bSet)
Definition: scroll.cxx:92
SwScrollbar(vcl::Window *pParent, bool bHori)
Definition: scroll.cxx:26
bool const bHori
Definition: scroll.hxx:26
Size aDocSz
Definition: scroll.hxx:25
bool IsVisible() const
void DocSzChgd(const Size &rNewSize)
Definition: scroll.cxx:44
virtual ~SwScrollbar() override
Definition: scroll.cxx:39
void ExtendedShow(bool bVisible=true)
Definition: scroll.cxx:76
void SetPosSizePixel(const Point &rNewPos, const Size &rNewSize) override
Definition: scroll.cxx:83