/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * 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 . */ #ifndef __com_sun_star_mozilla_XPluginInstancePeer_idl__ #define __com_sun_star_mozilla_XPluginInstancePeer_idl__ #include #include #include #include module com { module sun { module star { module mozilla { published interface XPluginInstanceNotifySink; /** Allows to communicate with a plugin from the office side. This interface is oriented for communication with browsers plugins. */ published interface XPluginInstancePeer: com::sun::star::uno::XInterface { /** Alters the plugin's window size in the browser window. @param width [in]: the new window width @param height [in]: the new window height @return TRUE on success */ boolean setWindowSize( [in] long width, [in] long height ); /** Show status / hint message in browser's message area. @param message [in]: the string to be displayed */ void showStatusMessage( [in] string message ); /** Indicates to the plugin that the document was loaded successfully and scripting interfaces are now available. @param document [in]: the active document @param servicemanager [in]: the office servicemanager */ void enableScripting( [in] com::sun::star::uno::XInterface document, [in] com::sun::star::lang::XMultiServiceFactory servicemanager ); /** Creates a new stream of data produced by the plug-in and consumed by the browser. @param MIMEDesc [in]: the MIME type of the plug-in to create @param target [in]: the name of the target window or frame (supports _blank, _self) @param data [in]: on success the output stream will be associated with this instance */ void newStream( [in] string MIMEDesc, [in] string target, [in] com::sun::star::io::XActiveDataSource data ); /** Fetches an URL into the target window. The parameters and their meaning map to the corresponding Netscape-API call. @param aURL [in]: the URL to be fetched @param target [in]: the name of the target window or frame (supports _blank, _self) @param alternativeHost [in]: alternativeHost @param referrer [in]: referrer @param sink [in]: the sink is notified on success */ void getURL ( [in] string aURL, [in] string target, [in] string alternativeHost, [in] string referrer, [in] XPluginInstanceNotifySink sink ); /** Posts to a URL with post data and/or post headers. The parameters and their meaning map to the corresponding Netscape-API call. @param aURL [in]: the URL to be posted to @param postData [in]: the data to be posted @param target [in]: the name of the target window or frame (supports _blank, _self) @param alternativeHost [in]: alternativeHost @param referrer [in]: referrer @param postHeaders [in]: the header to be posted @param sink [in]: the sink is notified on success */ void postURL ( [in] string aURL, [in] com::sun::star::io::XInputStream postData, [in] string target, [in] string alternativeHost, [in] string referrer, [in] com::sun::star::io::XInputStream postHeaders, [in] XPluginInstanceNotifySink sink ); }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */