| /************************************************************** |
| * |
| * 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. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_frame_XDispatchRecorder_idl__ |
| #define __com_sun_star_frame_XDispatchRecorder_idl__ |
| |
| #ifndef __com_sun_star_uno_XInterface_idl__ |
| #include <com/sun/star/uno/XInterface.idl> |
| #endif |
| |
| #ifndef __com_sun_star_util_URL_idl__ |
| #include <com/sun/star/util/URL.idl> |
| #endif |
| |
| #ifndef __com_sun_star_beans_PropertyValue_idl__ |
| #include <com/sun/star/beans/PropertyValue.idl> |
| #endif |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module frame { |
| |
| published interface XFrame; |
| |
| //============================================================================= |
| /** provides recording functionality of dispatches |
| |
| <p> |
| With such recorder it will be possible to record requests of type |
| <type>XDispatch</type> by using additional interface |
| <type>XRecordableDispatch</type>. The result of that will be a |
| a script which can be used to start the dispatch at later time again. |
| Such recorder objects are available on a <type>XDispatchRecorderSupplier</type> |
| which is provided by the <type>Frame</type> service. |
| </p> |
| |
| @see Frame |
| @see XDispatchRecorderSupplier |
| |
| @since OpenOffice 1.1.2 |
| */ |
| published interface XDispatchRecorder: com::sun::star::uno::XInterface |
| { |
| //------------------------------------------------------------------------- |
| /** initializes the recorder by passing the frame for which all |
| macro statements shall be recorded |
| |
| @param Frame |
| it includes the document on which such requests shall be recorded |
| */ |
| void startRecording( [in] com::sun::star::frame::XFrame Frame ); |
| |
| //------------------------------------------------------------------------- |
| /** stops the recording process |
| |
| <p> |
| Must be called in pairs with <member>XDispatchRecorder::startRecording()</member>. |
| </p> |
| |
| @attention The recorder uses this method to control the lifetime of its internal |
| used macro buffer. It will be cleared here. So the macro must be fetched |
| before endRecording() is called. |
| |
| @see getRecordedMacro() |
| */ |
| void endRecording(); |
| |
| //------------------------------------------------------------------------- |
| /** records a single dispatch call identified by its command URL |
| |
| @param URL |
| the full parsed command URL |
| |
| @param Arguments |
| optional arguments for the command URL |
| <br> |
| (see <type scope="com::sun::star::document">MediaDescriptor</type> |
| for further informations) |
| */ |
| void recordDispatch( |
| [in] com::sun::star::util::URL URL, |
| [in] sequence<com::sun::star::beans::PropertyValue> Arguments); |
| |
| //------------------------------------------------------------------------- |
| /** records a single dispatch call identified by its command URL, but |
| comments it out |
| |
| <p> |
| This way calls that failed on execution can be documented. |
| </p> |
| |
| @param URL |
| the full parsed command URL |
| |
| @param Arguments |
| optional arguments for the command URL |
| <br> |
| (see <type scope="com::sun::star::document">MediaDescriptor</type> |
| for further informations) |
| */ |
| void recordDispatchAsComment( |
| [in] com::sun::star::util::URL URL, |
| [in] sequence<com::sun::star::beans::PropertyValue> Arguments); |
| |
| //------------------------------------------------------------------------- |
| /** returns the recorded source code |
| |
| <p> |
| This method must be used before <member>endRecording()</member> is called! |
| Otherwhise the macro will be relased. |
| </p> |
| |
| @returns |
| the recorded data as a string which can be interpreted as a script |
| */ |
| string getRecordedMacro(); |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |