diff options
Diffstat (limited to 'sd/source/ui/func/fulinend.cxx')
-rw-r--r-- | sd/source/ui/func/fulinend.cxx | 184 |
1 files changed, 0 insertions, 184 deletions
diff --git a/sd/source/ui/func/fulinend.cxx b/sd/source/ui/func/fulinend.cxx deleted file mode 100644 index 1000607a5..000000000 --- a/sd/source/ui/func/fulinend.cxx +++ /dev/null @@ -1,184 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -// MARKER(update_precomp.py): autogen include statement, do not remove -#include "precompiled_sd.hxx" - - -#include "fulinend.hxx" -#include <svx/xtable.hxx> -#include <svx/svxdlg.hxx> -#include <svx/dialogs.hrc> -#include <svx/svdobj.hxx> -#include <svx/svdopath.hxx> -#include <vcl/msgbox.hxx> - -#include "strings.hrc" -#include "ViewShell.hxx" -#include "helpids.h" -#include "sdresid.hxx" -#include "drawdoc.hxx" -#include "View.hxx" -#include "Window.hxx" - -namespace sd { - -#define BITMAP_WIDTH 32 -#define BITMAP_HEIGHT 12 - -TYPEINIT1( FuLineEnd, FuPoor ); - -/************************************************************************* -|* -|* Konstruktor -|* -\************************************************************************/ - -FuLineEnd::FuLineEnd(ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, - SdDrawDocument* pDoc, SfxRequest& rReq) - : FuPoor(pViewSh, pWin, pView, pDoc, rReq) -{ -} - -FunctionReference FuLineEnd::Create( ViewShell* pViewSh, ::sd::Window* pWin, ::sd::View* pView, SdDrawDocument* pDoc, SfxRequest& rReq ) -{ - FunctionReference xFunc( new FuLineEnd( pViewSh, pWin, pView, pDoc, rReq ) ); - xFunc->DoExecute(rReq); - return xFunc; -} - -void FuLineEnd::DoExecute( SfxRequest& ) -{ - const SdrMarkList& rMarkList = mpView->GetMarkedObjectList(); - - if( rMarkList.GetMarkCount() == 1 ) - { - const SdrObject* pObj = rMarkList.GetMark(0)->GetMarkedSdrObj(); - const SdrObject* pNewObj; - SdrObject* pConvPolyObj = NULL; - - if( pObj->ISA( SdrPathObj ) ) - { - pNewObj = pObj; - } - else - { - SdrObjTransformInfoRec aInfoRec; - pObj->TakeObjInfo( aInfoRec ); - - if( aInfoRec.bCanConvToPath && - pObj->GetObjInventor() == SdrInventor && - pObj->GetObjIdentifier() != OBJ_GRUP ) - // bCanConvToPath ist bei Gruppenobjekten sal_True, - // stuerzt aber bei ConvertToPathObj() ab ! - { - pNewObj = pConvPolyObj = pObj->ConvertToPolyObj( sal_True, sal_False ); - - if( !pNewObj || !pNewObj->ISA( SdrPathObj ) ) - return; // Abbruch, zusaetzliche Sicherheit, die bei - // Gruppenobjekten aber nichts bringt. - } - else return; // Abbruch - } - - const ::basegfx::B2DPolyPolygon aPolyPolygon = ( (SdrPathObj*) pNewObj )->GetPathPoly(); - - // Loeschen des angelegten PolyObjektes - SdrObject::Free( pConvPolyObj ); - - XLineEndList* pLineEndList = mpDoc->GetLineEndList(); - XLineEndEntry* pEntry; - - String aNewName( SdResId( STR_LINEEND ) ); - String aDesc( SdResId( STR_DESC_LINEEND ) ); - String aName; - - long nCount = pLineEndList->Count(); - long j = 1; - sal_Bool bDifferent = sal_False; - - while( !bDifferent ) - { - aName = aNewName; - aName.Append( sal_Unicode(' ') ); - aName.Append( UniString::CreateFromInt32( j++ ) ); - bDifferent = sal_True; - for( long i = 0; i < nCount && bDifferent; i++ ) - { - if( aName == pLineEndList->GetLineEnd( i )->GetName() ) - bDifferent = sal_False; - } - } - - SvxAbstractDialogFactory* pFact = SvxAbstractDialogFactory::Create(); - AbstractSvxNameDialog* pDlg = pFact ? pFact->CreateSvxNameDialog( NULL, aName, aDesc ) : 0; - - if( pDlg ) - { - pDlg->SetEditHelpId( HID_SD_NAMEDIALOG_LINEEND ); - - if( pDlg->Execute() == RET_OK ) - { - pDlg->GetName( aName ); - bDifferent = sal_True; - - for( long i = 0; i < nCount && bDifferent; i++ ) - { - if( aName == pLineEndList->GetLineEnd( i )->GetName() ) - bDifferent = sal_False; - } - - if( bDifferent ) - { - pEntry = new XLineEndEntry( aPolyPolygon, aName ); - pLineEndList->Insert( pEntry, LIST_APPEND); - } - else - { - String aStr(SdResId( STR_WARN_NAME_DUPLICATE )); - WarningBox aWarningBox( mpWindow, WinBits( WB_OK ), - aStr ); - aWarningBox.Execute(); - } - } - } - delete pDlg; - } -} - -void FuLineEnd::Activate() -{ -} - -void FuLineEnd::Deactivate() -{ -} - -} // end of namespace sd - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |