Version 3.6.0.2, tag libreoffice-3.6.0.2
[LibreOffice.git] / vcl / source / window / cmdevt.cxx
blobf7fa79a04ec7a34d8e655b848984d45c6332869c
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
30 #include <string.h>
32 #include <vcl/cmdevt.hxx>
34 CommandExtTextInputData::CommandExtTextInputData( const XubString& rText,
35 const sal_uInt16* pTextAttr,
36 xub_StrLen nCursorPos,
37 sal_uInt16 nCursorFlags,
38 xub_StrLen nDeltaStart,
39 xub_StrLen nOldTextLen,
40 sal_Bool bOnlyCursor ) :
41 maText( rText )
43 if ( pTextAttr && maText.Len() )
45 mpTextAttr = new sal_uInt16[maText.Len()];
46 memcpy( mpTextAttr, pTextAttr, maText.Len()*sizeof(sal_uInt16) );
48 else
49 mpTextAttr = NULL;
50 mnCursorPos = nCursorPos;
51 mnDeltaStart = nDeltaStart;
52 mnOldTextLen = nOldTextLen;
53 mnCursorFlags = nCursorFlags;
54 mbOnlyCursor = bOnlyCursor;
57 // -----------------------------------------------------------------------
59 CommandExtTextInputData::CommandExtTextInputData( const CommandExtTextInputData& rData ) :
60 maText( rData.maText )
62 if ( rData.mpTextAttr && maText.Len() )
64 mpTextAttr = new sal_uInt16[maText.Len()];
65 memcpy( mpTextAttr, rData.mpTextAttr, maText.Len()*sizeof(sal_uInt16) );
67 else
68 mpTextAttr = NULL;
69 mnCursorPos = rData.mnCursorPos;
70 mnDeltaStart = rData.mnDeltaStart;
71 mnOldTextLen = rData.mnOldTextLen;
72 mnCursorFlags = rData.mnCursorFlags;
73 mbOnlyCursor = rData.mbOnlyCursor;
76 // -----------------------------------------------------------------------
78 CommandExtTextInputData::~CommandExtTextInputData()
80 if ( mpTextAttr )
81 delete [] mpTextAttr;
84 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */