blob: c975e9fc2d8e85eb4a7d9298fe29a9a1ab184f29 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svx.hxx"
#include <svx/sdr/properties/emptyproperties.hxx>
#include <tools/debug.hxx>
#include <svl/itemset.hxx>
#include <svx/svddef.hxx>
#include <svx/svdobj.hxx>
#include <svx/svdpool.hxx>
//////////////////////////////////////////////////////////////////////////////
namespace sdr
{
namespace properties
{
// create a new itemset
SfxItemSet& EmptyProperties::CreateObjectSpecificItemSet(SfxItemPool& rPool)
{
// Basic implementation; Basic object has NO attributes
DBG_ASSERT(sal_False, "EmptyProperties::CreateObjectSpecificItemSet() should never be called");
return *(new SfxItemSet(rPool));
}
EmptyProperties::EmptyProperties(SdrObject& rObj)
: BaseProperties(rObj),
mpEmptyItemSet(0L)
{
}
EmptyProperties::EmptyProperties(const EmptyProperties& rProps, SdrObject& rObj)
: BaseProperties(rProps, rObj),
mpEmptyItemSet(0L)
{
// #115593#
// do not gererate an assert, else derivations like PageProperties will generate an assert
// using the Clone() operator path.
}
EmptyProperties::~EmptyProperties()
{
if(mpEmptyItemSet)
{
delete mpEmptyItemSet;
mpEmptyItemSet = 0L;
}
}
BaseProperties& EmptyProperties::Clone(SdrObject& rObj) const
{
return *(new EmptyProperties(*this, rObj));
}
const SfxItemSet& EmptyProperties::GetObjectItemSet() const
{
if(!mpEmptyItemSet)
{
((EmptyProperties*)this)->mpEmptyItemSet = &(((EmptyProperties*)this)->CreateObjectSpecificItemSet(*GetSdrObject().GetObjectItemPool()));
}
DBG_ASSERT(mpEmptyItemSet, "Could not create an SfxItemSet(!)");
DBG_ASSERT(sal_False, "EmptyProperties::GetObjectItemSet() should never be called (!)");
return *mpEmptyItemSet;
}
void EmptyProperties::SetObjectItem(const SfxPoolItem& /*rItem*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::SetObjectItem() should never be called (!)");
}
void EmptyProperties::SetObjectItemDirect(const SfxPoolItem& /*rItem*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::SetObjectItemDirect() should never be called (!)");
}
void EmptyProperties::ClearObjectItem(const sal_uInt16 /*nWhich*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::ClearObjectItem() should never be called (!)");
}
void EmptyProperties::ClearObjectItemDirect(const sal_uInt16 /*nWhich*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::ClearObjectItemDirect() should never be called (!)");
}
void EmptyProperties::SetObjectItemSet(const SfxItemSet& /*rSet*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::SetObjectItemSet() should never be called (!)");
}
void EmptyProperties::ItemSetChanged(const SfxItemSet& /*rSet*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::ItemSetChanged() should never be called (!)");
}
sal_Bool EmptyProperties::AllowItemChange(const sal_uInt16 /*nWhich*/, const SfxPoolItem* /*pNewItem*/) const
{
DBG_ASSERT(sal_False, "EmptyProperties::AllowItemChange() should never be called (!)");
return sal_True;
}
void EmptyProperties::ItemChange(const sal_uInt16 /*nWhich*/, const SfxPoolItem* /*pNewItem*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::ItemChange() should never be called (!)");
}
void EmptyProperties::PostItemChange(const sal_uInt16 /*nWhich*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::PostItemChange() should never be called (!)");
}
void EmptyProperties::SetStyleSheet(SfxStyleSheet* /*pNewStyleSheet*/, sal_Bool /*bDontRemoveHardAttr*/)
{
DBG_ASSERT(sal_False, "EmptyProperties::SetStyleSheet() should never be called (!)");
}
SfxStyleSheet* EmptyProperties::GetStyleSheet() const
{
DBG_ASSERT(sal_False, "EmptyProperties::GetStyleSheet() should never be called (!)");
return 0L;
}
} // end of namespace properties
} // end of namespace sdr
//////////////////////////////////////////////////////////////////////////////
// eof