LibreOffice Module svx (master)  1
AccessibleShapeTreeInfo.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 
20 
22 #include <vcl/svapp.hxx>
23 #include <vcl/window.hxx>
24 
25 using namespace ::com::sun::star;
26 using namespace ::com::sun::star::accessibility;
27 using ::com::sun::star::uno::Reference;
28 
29 namespace accessibility {
30 
32  : mpView (nullptr),
33  mpWindow (nullptr),
34  mpViewForwarder (nullptr)
35 {
36  // Empty.
37 }
38 
39 
41  : mxDocumentWindow (rInfo.mxDocumentWindow),
42  mxModelBroadcaster (rInfo.mxModelBroadcaster),
43  mpView (rInfo.mpView),
44  mxController (rInfo.mxController),
45  mpWindow (rInfo.mpWindow),
46  mpViewForwarder (rInfo.mpViewForwarder)
47 {
48  // Empty.
49 }
50 
52 {
53  mxDocumentWindow.clear();
54  mxModelBroadcaster.clear();
55  mpView = nullptr;
56  mxController.clear();
57  mpWindow.reset();
58  mpViewForwarder = nullptr;
59 }
60 
62 {
63  if ( this != &rInfo )
64  {
67  mpView = rInfo.mpView;
68  mxController = rInfo.mxController;
69  mpWindow = rInfo.mpWindow;
71  }
72  return *this;
73 }
74 
76 {
78  mpWindow.reset();
79 }
80 
82  const Reference<XAccessibleComponent>& rxDocumentWindow)
83 {
84  if (mxDocumentWindow != rxDocumentWindow)
85  mxDocumentWindow = rxDocumentWindow;
86 }
87 
89  const Reference<document::XShapeEventBroadcaster>& rxModelBroadcaster)
90 {
91  mxModelBroadcaster = rxModelBroadcaster;
92 }
93 
95 {
96  mpView = pView;
97 }
98 
100  const Reference<frame::XController>& rxController)
101 {
102  mxController = rxController;
103 }
104 
106 {
107  mpWindow = pDevice;
108 }
109 
111 {
112  mpViewForwarder = pViewForwarder;
113 }
114 
115 } // end of namespace accessibility
116 
117 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
css::uno::Reference< css::accessibility::XAccessibleComponent > mxDocumentWindow
Deprecated.
void SetModelBroadcaster(const css::uno::Reference< css::document::XShapeEventBroadcaster > &rxModelBroadcaster)
Set a new broadcaster that sends events indicating shape changes.
const IAccessibleViewForwarder * mpViewForwarder
The view forwarder allows the transformation between internal and pixel coordinates and can be asked ...
void SetController(const css::uno::Reference< css::frame::XController > &rxController)
Set a new controller.
AccessibleShapeTreeInfo & operator=(const AccessibleShapeTreeInfo &rInfo)
SdrView * mpView
This view is necessary to construct an SvxTextEditSource which in turn is used to create an accessibl...
css::uno::Reference< css::document::XShapeEventBroadcaster > mxModelBroadcaster
this broadcaster sends events indicating shape changes.
VclPtr< vcl::Window > mpWindow
void reset(OutputDevice *pBody)
void SetViewForwarder(const IAccessibleViewForwarder *pViewForwarder)
The view forwarder allows the transformation between internal and pixel coordinates and can be asked ...
void SetDocumentWindow(const css::uno::Reference< css::accessibility::XAccessibleComponent > &rxViewWindow)
Deprecated.
AccessibleShapeTreeInfo()
Use this constructor to create an empty object that is filled later with more meaningful data...
UnoViewSharedPtr mpView
css::uno::Reference< css::frame::XController > mxController
The controller is used e.g.
void SetDevice(OutputDevice *pWindow)
Set the window that is used to construct SvxTextEditSources which in turn is used to create accessibl...
This class bundles all information that is passed down the tree of accessible shapes so that each sha...
void SetSdrView(SdrView *pView)
Set the view that will be used to construct SvxTextEditSources which in turn are used to create acces...
VclPtr< OutputDevice > mpWindow
This window is necessary to construct an SvxTextEditSource which in turn is used to create an accessi...