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 10 #ifndef INCLUDED_SVX_UIOBJECT_HXX 11 #define INCLUDED_SVX_UIOBJECT_HXX 12 13 #include <svx/svxdllapi.h> 14 15 #include <svx/SvxColorValueSet.hxx> 16 17 #include <vcl/uitest/uiobject.hxx> 18 19 class SdrObject; 20 class SvxColorValueSet; 21 22 class SVXCORE_DLLPUBLIC SdrUIObject : public UIObject 23 { 24 public: 25 26 virtual ~SdrUIObject() override; 27 28 virtual StringMap get_state() override; 29 30 virtual void execute(const OUString& rAction, 31 const StringMap& rParameters) override; 32 33 virtual OUString get_type() const override; 34 35 virtual SdrObject* get_object() = 0; 36 }; 37 38 class SvxColorValueSetUIObject final : public DrawingAreaUIObject 39 { 40 SvxColorValueSet* mpColorSet; 41 42 public: 43 44 SvxColorValueSetUIObject(vcl::Window* pColorSetWin); 45 46 virtual void execute(const OUString& rAction, 47 const StringMap& rParameters) override; 48 49 static std::unique_ptr<UIObject> create(vcl::Window* pWindow); 50 51 virtual StringMap get_state() override; 52 53 private: 54 55 OUString get_name() const override; 56 }; 57 58 59 #endif 60 61 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 62