/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * only, as published by the Free Software Foundation. * * OpenOffice.org is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License version 3 for more details * (a copy is included in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU Lesser General Public License * version 3 along with OpenOffice.org. If not, see * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_mozilla_XPluginInstance_idl__ #define __com_sun_star_mozilla_XPluginInstance_idl__ #include #include //============================================================================= module com { module sun { module star { module mozilla { //============================================================================= // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::start /** Allows to control an office side plugin instance and to communicate with it. This interface is oriented for communication with browsers plugins. */ published interface XPluginInstance: com::sun::star::uno::XInterface { //------------------------------------------------------------------------- // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::start /** Starts plugin operation. This is called after a plugin instance is created. */ [oneway] void start(); //------------------------------------------------------------------------- // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::stop /** Stops plugin operation. This is called when the user goes to another web page. The XPluginInstance::destroy method is directly called afterwards. */ [oneway] void stop(); //------------------------------------------------------------------------- // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::destroy /** Destroy the plugin instance. This method is called when it is no longer possible to return to the plugin instance, because it was destroyed by the browser (e.g., window close). */ [oneway] void destroy(); //------------------------------------------------------------------------- // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::createWindow /** Creates a new window for plugin operation. @param PlatformParentData [in]: platform dependent window data @param embedded [in]: selects embedded or full page plugin mode */ [oneway] void createWindow( [in] any PlatformParentData, [in] boolean embedded ); //------------------------------------------------------------------------- // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::newStream /** Notifies the plugin of a new stream to display. @param MIMEDesc [in]: the MIMEtype of the data stream @param theURL [in]: the URL that denotes the stream @param filter [in]: a filter string to suggest a component that should handle the document @param stream [in]: the data stream @param sessiondata [in]: the data specifying the current session */ [oneway] void newStream( [in] string MIMEDesc, [in] string theURL, [in] string filter, [in] ::com::sun::star::io::XInputStream stream , [in] any sessionData ); //------------------------------------------------------------------------- // DocMerge from xml: method com::sun::star::mozilla::XPluginInstance::newURL /** Notifies the plugin of a new url to open as document. @param MIMEDesc [in]: the MIMEtype of the data stream @param theURL [in]: the URL to be opened @param filter [in]: a filter string to suggest a component that should handle the document @param sessiondata [in]: the data specifying the current session */ [oneway] void newURL( [in] string MIMEDesc, [in] string theURL, [in] string filter, [in] any sessionData ); //------------------------------------------------------------------------- // DocMerge from idl: method com::sun::star::mozilla::XPluginInstance::getHttpServerURL /** Retrieves the URL of the HTTP Load balancing Slave. @param aURL [out]: the full qualified host name of the LBS @param aPort [out]: the port number @param aPrefix [out]: the url prefix to the portal */ void getHttpServerURL( [out] string aHost, [out] unsigned short aPort, [out] string aPrefix); }; //============================================================================= }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */