LibreOffice Module sc (master) 1
dpcontrol.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
20#pragma once
21
22#include <rtl/ustring.hxx>
23#include <tools/gen.hxx>
24#include <tools/fract.hxx>
25#include <vcl/vclptr.hxx>
26#include <vcl/outdev.hxx>
27
28class StyleSettings;
29class ScDocument;
30
36{
37public:
38 ScDPFieldButton(OutputDevice* pOutDev, const StyleSettings* pStyle, const Fraction* pZoomY = nullptr,
39 ScDocument* pDoc = nullptr);
41
42 void setText(const OUString& rText);
43 void setBoundingBox(const Point& rPos, const Size& rSize, bool bLayoutRTL);
44 void setDrawBaseButton(bool b);
45 void setDrawPopupButton(bool b);
46 void setHasHiddenMember(bool b);
47 void setPopupPressed(bool b);
48 void setPopupLeft(bool b);
49 void draw();
50
51 void getPopupBoundingBox(Point& rPos, Size& rSize) const;
52
53private:
54 void drawPopupButton();
55
56private:
59 OUString maText;
69};
70
71/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
This class takes care of physically drawing field button controls inside data pilot tables.
Definition: dpcontrol.hxx:36
void setHasHiddenMember(bool b)
Definition: dpcontrol.cxx:76
VclPtr< OutputDevice > mpOutDev
Definition: dpcontrol.hxx:62
void setDrawPopupButton(bool b)
Definition: dpcontrol.cxx:71
const StyleSettings * mpStyle
Definition: dpcontrol.hxx:63
void setPopupPressed(bool b)
Definition: dpcontrol.cxx:81
void drawPopupButton()
Definition: dpcontrol.cxx:176
void setPopupLeft(bool b)
Definition: dpcontrol.cxx:86
bool mbHasHiddenMember
Definition: dpcontrol.hxx:66
Fraction maZoomY
Definition: dpcontrol.hxx:60
void setBoundingBox(const Point &rPos, const Size &rSize, bool bLayoutRTL)
Definition: dpcontrol.cxx:55
void setText(const OUString &rText)
Definition: dpcontrol.cxx:50
ScDPFieldButton(OutputDevice *pOutDev, const StyleSettings *pStyle, const Fraction *pZoomY=nullptr, ScDocument *pDoc=nullptr)
Definition: dpcontrol.cxx:30
void setDrawBaseButton(bool b)
Definition: dpcontrol.cxx:66
OUString maText
Definition: dpcontrol.hxx:59
ScDocument * mpDoc
Definition: dpcontrol.hxx:61
void getPopupBoundingBox(Point &rPos, Size &rSize) const
Definition: dpcontrol.cxx:148