LibreOffice Module chart2 (master) 1
AccessibleViewForwarder.cxx
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
22
23#include <vcl/window.hxx>
24
25using namespace ::com::sun::star;
26
27namespace chart
28{
29
31 :m_pAccChartView( pAccChartView )
32 ,m_pWindow( pWindow )
33 ,m_aMapMode( MapUnit::Map100thMM )
34{
35}
36
38{
39}
40
41// ________ IAccessibleViewforwarder ________
42
44{
45 tools::Rectangle aVisibleArea;
46 if ( m_pWindow )
47 {
48 aVisibleArea = m_pWindow->PixelToLogic(
49 tools::Rectangle( Point( 0, 0 ), m_pWindow->GetOutputSizePixel() ),
50 m_aMapMode );
51 }
52 return aVisibleArea;
53}
54
56{
57 Point aPoint;
59 {
60 awt::Point aLocation = m_pAccChartView->getLocationOnScreen();
61 Point aTopLeft( aLocation.X, aLocation.Y );
62 aPoint = m_pWindow->LogicToPixel( rPoint, m_aMapMode ) + aTopLeft;
63 }
64 return aPoint;
65}
66
68{
69 Size aSize;
70 if ( m_pWindow )
71 {
72 aSize = m_pWindow->LogicToPixel( rSize, m_aMapMode );
73 }
74 return aSize;
75}
76
77} // namespace chart
78
79/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
virtual css::awt::Point SAL_CALL getLocationOnScreen() override
AccessibleViewForwarder(AccessibleChartView *pAccChartView, vcl::Window *pWindow)
virtual tools::Rectangle GetVisibleArea() const override
virtual Point LogicToPixel(const Point &rPoint) const override
MapUnit