fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / svx / source / sdr / properties / pageproperties.cxx
blobe96a537e790c9ee6a70608ba0911db85398ceb56
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/.
9 * This file incorporates work covered by the following license notice:
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 .
20 #include <svx/sdr/properties/pageproperties.hxx>
21 #include <svl/itemset.hxx>
22 #include <svx/svdobj.hxx>
23 #include <svx/svdpool.hxx>
25 //////////////////////////////////////////////////////////////////////////////
27 namespace sdr
29 namespace properties
31 // create a new itemset
32 SfxItemSet& PageProperties::CreateObjectSpecificItemSet(SfxItemPool& rPool)
34 // overloaded to legally return a valid ItemSet
35 return *(new SfxItemSet(rPool));
38 PageProperties::PageProperties(SdrObject& rObj)
39 : EmptyProperties(rObj)
43 PageProperties::PageProperties(const PageProperties& rProps, SdrObject& rObj)
44 : EmptyProperties(rProps, rObj)
48 PageProperties::~PageProperties()
52 BaseProperties& PageProperties::Clone(SdrObject& rObj) const
54 return *(new PageProperties(*this, rObj));
57 // get itemset. Overloaded here to allow creating the empty itemset
58 // without asserting
59 const SfxItemSet& PageProperties::GetObjectItemSet() const
61 if(!mpEmptyItemSet)
63 ((PageProperties*)this)->mpEmptyItemSet = &(((PageProperties*)this)->CreateObjectSpecificItemSet(*GetSdrObject().GetObjectItemPool()));
66 DBG_ASSERT(mpEmptyItemSet, "Could not create an SfxItemSet(!)");
68 return *mpEmptyItemSet;
71 void PageProperties::ItemChange(const sal_uInt16 /*nWhich*/, const SfxPoolItem* /*pNewItem*/)
73 // #86481# simply ignore item setting on page objects
76 SfxStyleSheet* PageProperties::GetStyleSheet() const
78 // overloaded to legally return a 0L pointer here
79 return 0L;
82 void PageProperties::PostItemChange(const sal_uInt16 nWhich )
84 if( (nWhich == XATTR_FILLSTYLE) && (mpEmptyItemSet != NULL) )
85 CleanupFillProperties(*mpEmptyItemSet);
88 void PageProperties::ClearObjectItem(const sal_uInt16 /*nWhich*/)
90 // simply ignore item clearing on page objects
92 } // end of namespace properties
93 } // end of namespace sdr
95 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */