lok: calc - send other views our selection in their co-ordinates.
[LibreOffice.git] / include / svx / extedit.hxx
blobf5994a96de80385d640f588a29c662e00cd9d78f
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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 */
10 #ifndef INCLUDED_SVX_EXTEDIT_HXX
11 #define INCLUDED_SVX_EXTEDIT_HXX
13 #include <svx/svxdllapi.h>
14 #include <svl/lstner.hxx>
15 #include <rtl/ustring.hxx>
16 #include <memory>
18 class Graphic;
19 class GraphicObject;
20 class FileChangedChecker;
22 class SAL_WARN_UNUSED SVX_DLLPUBLIC ExternalToolEdit
24 protected:
25 OUString m_aFileName;
27 ::std::unique_ptr<FileChangedChecker> m_pChecker;
29 public:
31 ExternalToolEdit();
32 virtual ~ExternalToolEdit();
34 virtual void Update( Graphic& aGraphic ) = 0;
35 void Edit(GraphicObject const*const pGraphic);
37 void StartListeningEvent();
39 static void HandleCloseEvent( ExternalToolEdit* pData );
42 class FmFormView;
43 class SdrObject;
45 class SAL_WARN_UNUSED SVX_DLLPUBLIC SdrExternalToolEdit final
46 : public ExternalToolEdit
47 ,public SfxListener
49 private:
50 FmFormView* m_pView;
51 SdrObject* m_pObj;
53 SAL_DLLPRIVATE virtual void Update(Graphic&) override;
54 SAL_DLLPRIVATE virtual void Notify(SfxBroadcaster&, const SfxHint&) override;
56 public:
57 SdrExternalToolEdit(
58 FmFormView* pView,
59 SdrObject* pObj);
62 #endif