1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23#ifndef __com_sun_star_frame_XSessionManagerClient_idl__ 24#define __com_sun_star_frame_XSessionManagerClient_idl__ 25 26#ifndef __com_sun_star_frame_XSessionManagerListener_idl__ 27#include <com/sun/star/frame/XSessionManagerListener.idl> 28#endif 29 30//============================================================================= 31 32module com { module sun { module star { module frame { 33 34//============================================================================= 35/** Connect to a session manager to get information about pending 36 desktop shutdown 37 38 */ 39 interface XSessionManagerClient : com::sun::star::uno::XInterface 40 { 41 42 /** addSessionManagerListener registers a listener for session management events 43 44 @param xListener 45 listener for session management events 46 47 @see XSessionManagerListener 48 @see XSessionManagerClient::removeSessionManagerListener() 49 */ 50 [oneway] void addSessionManagerListener( [in] XSessionManagerListener xListener ); 51 52 /** removeSessionManagerListener deregisters a listener for session events 53 54 @param xListener 55 listener to be removed 56 57 @see XSessionManagerListener 58 @see XSessionManagerClient::addSessionManagerListener() 59 */ 60 [oneway] void removeSessionManagerListener( [in] XSessionManagerListener xListener ); 61 62 /** queryInteraction issues a request for a user interaction slot 63 from the session manager 64 65 @param xListener 66 the listener requesting user interaction 67 68 @see XSessionManagerListener 69 */ 70 [oneway] void queryInteraction( [in] XSessionManagerListener xListener ); 71 72 /** interactionDone is called when a listener has finished user interaction 73 74 @param xListener 75 the listener done with user interaction 76 77 @see XSessionManagerListener 78 */ 79 [oneway] void interactionDone( [in] XSessionManagerListener xListener ); 80 81 /** saveDone signals that a listener has processed a save request 82 83 @param listener 84 the listener having finished save request processing 85 86 @see XSessionManagerListener 87 */ 88 [oneway] void saveDone( [in] XSessionManagerListener xListener ); 89 90 /** Call cancelShutdown to try to cancel a desktop shutdown in progress 91 92 @returns 93 <TRUE/> if shutdown was canceled, 94 <FALSE/> else. 95 */ 96 boolean cancelShutdown(); 97 }; 98 99}; }; }; }; 100 101 102#endif 103