1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
27 #ifndef com_sun_star_chart2_XUndoHelper_idl
28 #define com_sun_star_chart2_XUndoHelper_idl
30 #include
<com
/sun
/star
/uno
/XInterface.idl
>
31 #include
<com
/sun
/star
/frame
/XModel.idl
>
32 // #include <com/sun/star/beans/PropertyValue.idl>
43 /** An interface for storing frame::XModel objects for container undo.
45 interface XUndoHelper
: ::com
::sun
::star
::uno
::XInterface
47 /** call this before you change the xCurrentModel
49 @return a clone of the current model that can later be used to
50 restore the state of a changed model
52 ::com
::sun
::star
::frame
::XModel getModelCloneForUndo
(
53 [in] ::com
::sun
::star
::frame
::XModel xModelBeforeChange
);
55 /** call this before you change the xCurrentModel. You can pass
56 parameters to refine the information that is cloned.
58 @return a clone of the current model that can later be used to
59 restore the state of a changed model using the same
60 arguments in applyModelContentWithArguments.
62 // ::com::sun::star::frame::XModel getModelCloneForUndoWithArguments(
63 // [in] ::com::sun::star::frame::XModel xModelBeforeChange,
64 // [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments );
66 /** apply the content of xModelToCopyFrom to the XModel in xModelToChange
68 void applyModelContent
( [inout
] ::com
::sun
::star
::frame
::XModel xModelToChange
,
69 [in] ::com
::sun
::star
::frame
::XModel xModelToCopyFrom
);
71 /** apply the content of xModelToCopyFrom to the XModel in
72 xModelToChange. You can pass parameters to refine the
73 information that is applied.
75 <p>Note that xModelToCopyFrom should have been created with
76 getModelCloneForUndoWithArguments using the same arguments as
79 // void applyModelContentWithArguments(
80 // [inout] ::com::sun::star::frame::XModel xModelToChange,
81 // [in] ::com::sun::star::frame::XModel xModelToCopyFrom,
82 // [in] sequence< ::com::sun::star::beans::PropertyValue > aArguments );