1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: ImageButton.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_form_component_ImageButton_idl__
31 #define __com_sun_star_form_component_ImageButton_idl__
33 #ifndef __com_sun_star_awt_UnoControlImageControlModel_idl__
34 #include
<com
/sun
/star
/awt
/UnoControlImageControlModel.idl
>
37 #ifndef __com_sun_star_form_FormControlModel_idl__
38 #include
<com
/sun
/star
/form
/FormControlModel.idl
>
41 #ifndef __com_sun_star_form_XApproveActionBroadcaster_idl__
42 #include
<com
/sun
/star
/form
/XApproveActionBroadcaster.idl
>
45 #ifndef __com_sun_star_form_XImageProducerSupplier_idl__
46 #include
<com
/sun
/star
/form
/XImageProducerSupplier.idl
>
49 #ifndef __com_sun_star_form_FormButtonType_idl__
50 #include
<com
/sun
/star
/form
/FormButtonType.idl
>
54 //=============================================================================
56 module com
{ module sun
{ module star
{ module form
{ module component
{
58 //=============================================================================
60 /** This service specifies the control model for a clickable button which
61 is represented by an image.
63 <p>The image to be displayed is determined by <member scope="com::sun::star::awt">UnoControlImageControlModel::ImageURL</member>
64 property specifies the URL of an image to be displayed.</p>
68 published service ImageButton
70 service com
::sun
::star
::awt
::UnoControlImageControlModel
;
72 service com
::sun
::star
::form
::FormControlModel
;
75 /** supplies the caller with an <type scope="com::sun::star::awt">XImageProducer</type>.
77 <p>Other components can register as <type scope="com::sun::star::awt">XImageConsumer</type>
78 at this producer. Then they will be notified of any change in the image to be displayed.</p>
80 <p>Whenever the <member scope="com::sun::star::awt">UnoControlImageControlModel::ImageURL</member>
81 property is changed, the model loads the specified image, and sets it as image source
82 at its <type scope="com::sun::star::awt">XImageProducer</type>. Then, all
83 <type scope="com::sun::star::awt">XImageConsumer</type>s are notified and supplied with
84 the binary data of the image.<br/>
85 Usually, controls acting for an <type>ImageButton</type> model are consumers, and use the
86 data stream to display the image</p>
88 interface com
::sun
::star
::form
::XImageProducerSupplier
;
90 //-------------------------------------------------------------------------
91 /** describes the action to be executed by the button when pressed.
93 [property
] com
::sun
::star
::form
::FormButtonType ButtonType
;
95 //-------------------------------------------------------------------------
96 /** describes the frame, where to open the document specified by the TargetURL.
98 <p>This property is evaluated if the button is of type URL.</p>
100 <p>As always, there is a number of target names which have a special meaning, and force
101 a special <type scope="com::sun::star::frame">Frame</type> to be used.</p>
103 [property
] string TargetFrame
;
105 //-------------------------------------------------------------------------
106 /** specifies the URL, which should be opened if the button was clicked.
108 <p>This property is evaluated if the button is of type URL.</p>
110 @see com::sun::star::form::FormButtonType
112 [property
] string TargetURL
;
115 //=============================================================================