From f6c0803e9984e716f5ba86a0271ecad7e0ed61d8 Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Mon, 25 Aug 2014 16:40:47 +0200 Subject: itemdel.[ch]xx is only used in sfx2 Change-Id: I240f15f87e27ba8a52bab244f8c784d527bff179 --- svtools/Library_svt.mk | 1 - svtools/source/misc/itemdel.cxx | 85 ----------------------------------------- 2 files changed, 86 deletions(-) delete mode 100644 svtools/source/misc/itemdel.cxx (limited to 'svtools') diff --git a/svtools/Library_svt.mk b/svtools/Library_svt.mk index ea5e95316f95..07dc321e6314 100644 --- a/svtools/Library_svt.mk +++ b/svtools/Library_svt.mk @@ -181,7 +181,6 @@ $(eval $(call gb_Library_add_exception_objects,svt,\ svtools/source/misc/imap \ svtools/source/misc/imap2 \ svtools/source/misc/imap3 \ - svtools/source/misc/itemdel \ svtools/source/misc/langtab \ svtools/source/misc/langhelp \ svtools/source/misc/openfiledroptargetlistener \ diff --git a/svtools/source/misc/itemdel.cxx b/svtools/source/misc/itemdel.cxx deleted file mode 100644 index 7645089ed084..000000000000 --- a/svtools/source/misc/itemdel.cxx +++ /dev/null @@ -1,85 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * 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 . - */ - -#include - -#include -#include -#include -#include -#include -#include - -#include - -class SfxItemDisruptor_Impl: private boost::noncopyable -{ - SfxPoolItem *pItem; - Link aLink; - -private: - DECL_LINK( Delete, void* ); - -public: - SfxItemDisruptor_Impl( SfxPoolItem *pItemToDesrupt ); - void LaunchDeleteOnIdle(); - ~SfxItemDisruptor_Impl(); -}; - -SfxItemDisruptor_Impl::SfxItemDisruptor_Impl( SfxPoolItem *pItemToDesrupt ): - pItem(pItemToDesrupt), - aLink( LINK(this, SfxItemDisruptor_Impl, Delete) ) -{ - - DBG_ASSERT( 0 == pItem->GetRefCount(), "disrupting pooled item" ); - pItem->SetKind( SFX_ITEMS_DELETEONIDLE ); -} - -void SfxItemDisruptor_Impl::LaunchDeleteOnIdle() -{ - // process in Idle - Application::InsertIdleHdl( aLink, 1 ); -} - -SfxItemDisruptor_Impl::~SfxItemDisruptor_Impl() -{ - - // remove from Idle-Handler - Application::RemoveIdleHdl( aLink ); - - // reset RefCount (was set to SFX_ITEMS_SPECIAL before!) - pItem->SetRefCount( 0 ); - - delete pItem; -} - -IMPL_LINK_NOARG(SfxItemDisruptor_Impl, Delete) -{ - delete this; - return 0; -} - -void DeleteItemOnIdle(SfxPoolItem* pItem) -{ - DBG_ASSERT( 0 == pItem->GetRefCount(), "deleting item in use" ); - SfxItemDisruptor_Impl *pDesruptor = new SfxItemDisruptor_Impl(pItem); - pDesruptor->LaunchDeleteOnIdle(); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit