1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 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. 14 * 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). 20 * 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. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_mozilla_XPluginInstance_idl__ 28#define __com_sun_star_mozilla_XPluginInstance_idl__ 29 30#ifndef __com_sun_star_uno_XInterface_idl__ 31#include <com/sun/star/uno/XInterface.idl> 32#endif 33 34#ifndef __com_sun_star_io_XInputStream_idl__ 35#include <com/sun/star/io/XInputStream.idl> 36#endif 37 38//============================================================================= 39 40 module com { module sun { module star { module mozilla { 41 42//============================================================================= 43 44 45// DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::start 46/** Allows to controll an office side plugin instance and to communicate with it. 47 This interface is oriented for communication with browsers plugins. 48 */ 49published interface XPluginInstance: com::sun::star::uno::XInterface 50{ 51 //------------------------------------------------------------------------- 52 53 54 // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::start 55 /** Starts plugin operation. This is called after a plugin instance is 56 created. 57 */ 58 [oneway] void start(); 59 60 //------------------------------------------------------------------------- 61 62 63 // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::stop 64 /** Stops plugin operation. This is called when the user goes to another web 65 page. The <member>XPluginInstance::destroy</member> method is directly called 66 afterwards. 67 */ 68 [oneway] void stop(); 69 70 //------------------------------------------------------------------------- 71 72 73 // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::destroy 74 /** Destroy the plugin instance. This method is called when it is no 75 longer possible to return to the plugin instance, because it was 76 destroyed by the browser (e.g., window close). 77 */ 78 [oneway] void destroy(); 79 80 //------------------------------------------------------------------------- 81 82 83 // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::createWindow 84 /** Creates a new window for plugin operation. 85 86 @param PlatformParentData [in]: platform dependent window data 87 @param embedded [in]: selects embedded or full page plugin mode 88 89 */ 90 [oneway] void createWindow( [in] any PlatformParentData, [in] boolean embedded ); 91 92 //------------------------------------------------------------------------- 93 94 95 // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::newStream 96 /** Notifies the plugin of a new stream to display. 97 98 @param MIMEDesc [in]: the MIMEtype of the data stream 99 @param theURL [in]: the URL that denotes the stream 100 @param filter [in]: a filter string to suggest a component that should handle the document 101 @param stream [in]: the data stream 102 @param sessiondata [in]: the data specifying the current session 103 104 */ 105 [oneway] void newStream( 106 [in] string MIMEDesc, 107 [in] string theURL, 108 [in] string filter, 109 [in] ::com::sun::star::io::XInputStream stream , 110 [in] any sessionData 111 ); 112 113 //------------------------------------------------------------------------- 114 115 116 // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::newURL 117 /** Notifies the plugin of a new url to open as document. 118 119 @param MIMEDesc [in]: the MIMEtype of the data stream 120 @param theURL [in]: the URL to be openend 121 @param filter [in]: a filter string to suggest a component that should handle the document 122 @param sessiondata [in]: the data specifying the current session 123 124 */ 125 [oneway] void newURL( [in] string MIMEDesc, [in] string theURL, [in] string filter, [in] any sessionData ); 126 127 //------------------------------------------------------------------------- 128 129 130 // DocMerge from idl: method com::sun::star::mozilla::XPluginInstance::getHttpServerURL 131 /** Retrieves the URL of the HTTP Loadbalancing Slave. 132 133 @param aURL [out]: the full qualified host name of the LBS 134 @param aPort [out]: the port number 135 @param aPrefix [out]: the url prefix to the portal 136 137 */ 138 void getHttpServerURL( [out] string aHost, [out] unsigned short aPort, 139 [out] string aPrefix); 140}; 141 142//============================================================================= 143 144}; }; }; }; 145 146#endif 147