summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/mozilla/XPluginInstancePeer.idl
blob: f2006d6dfb3185af1a79418eb2625cb38ac48825 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
/* -*- 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 <com/sun/star/uno/XInterface.idl>

#include <com/sun/star/io/XActiveDataSource.idl>

#include <com/sun/star/io/XInputStream.idl>

#include <com/sun/star/lang/XMultiServiceFactory.idl>


 module com {  module sun {  module star {  module mozilla {


 published interface XPluginInstanceNotifySink;



// DocMerge from xml: interface com::sun::star::mozilla::XPluginInstancePeer
/** 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
{


    // DocMerge from xml: method com::sun::star::mozilla::XPluginInstancePeer::setWindowSize
    /** 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 <CODE>TRUE</CODE> on success
     */
    boolean setWindowSize( [in] long width, [in] long heigth );



    // DocMerge from xml: method com::sun::star::mozilla::XPluginInstancePeer::showStatusMessage
    /** Show status / hint message in browser's message area.

        @param message  [in]: the string to be displayed
     */
    void showStatusMessage( [in] string message );



    // DocMerge from xml: method com::sun::star::mozilla::XPluginInstancePeer::enableScripting
    /** 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 );



    // DocMerge from xml: method com::sun::star::mozilla::XPluginInstancePeer::newStream
    /** 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
    );



    // DocMerge from xml: method com::sun::star::mozilla::XPluginInstancePeer::getURL
    /** 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
    );



    // DocMerge from xml: method com::sun::star::mozilla::XPluginInstancePeer::postURL
    /** 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: */