summaryrefslogtreecommitdiff
path: root/offapi
diff options
context:
space:
mode:
authorAriel Constenla-Haile <arielch@apache.org>2012-12-06 12:28:11 +0000
committerAriel Constenla-Haile <arielch@apache.org>2012-12-06 12:28:11 +0000
commit3ca8e86d4489f023160d69ba621a819a89ab90d5 (patch)
tree918f97f538d36a39134e35693b9d5fa62b54ac6f /offapi
parentf2dd0f5ed49e404ff4be0fe81b614fc4af157d76 (diff)
#i121442# - Extend css::awt::XGraphic to draw images
A StatusbarController that draws its status bar item may need to draw a graphic representing the feature state. css::awt::XGraphics API should be extended to include VCL's OuptDevice::DrawImage.
Notes
Diffstat (limited to 'offapi')
-rw-r--r--offapi/com/sun/star/awt/ImageDrawMode.idl59
-rw-r--r--offapi/com/sun/star/awt/XGraphics.idl172
-rw-r--r--offapi/com/sun/star/awt/makefile.mk1
-rw-r--r--offapi/type_reference/types.rdbbin7509504 -> 7526400 bytes
4 files changed, 126 insertions, 106 deletions
diff --git a/offapi/com/sun/star/awt/ImageDrawMode.idl b/offapi/com/sun/star/awt/ImageDrawMode.idl
new file mode 100644
index 000000000000..95889630af3c
--- /dev/null
+++ b/offapi/com/sun/star/awt/ImageDrawMode.idl
@@ -0,0 +1,59 @@
+/**************************************************************
+ *
+ * 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
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *************************************************************/
+
+#ifndef __com_sun_star_awt_ImageDrawMode_idl__
+#define __com_sun_star_awt_ImageDrawMode_idl__
+
+module com { module sun { module star { module awt {
+
+/** defines modes how an image is drawn onto a device
+
+ @see <member scope="com::sun::star::awt">XGraphics2::drawImage</member>
+ @since Apache OpenOffice 4.0
+ */
+constants ImageDrawMode
+{
+ /** the image is drawn as is, without any color transformation.
+ */
+ const short NONE = 0x0000;
+
+ /** the image is drawn as if it represented a feature whose state is disabled.
+ */
+ const short DISABLE = 0x0001;
+
+ /** the image is drawn as being highlighted.
+ See <member scope="com::sun::star::awt">XStyleSettings::HighlightColor</member>.
+ */
+ const short HIGHLIGHT = 0x0002;
+
+ /** the image is drawn as being deactivated.
+ See <member scope="com::sun::star::awt">XStyleSettings::DeactiveColor</member>.
+ */
+ const short DEACTIVE = 0x0004;
+
+ /** the image is drawn semi-transparent.
+ */
+ const short SEMITRANSPARENT = 0x0010;
+};
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/awt/XGraphics.idl b/offapi/com/sun/star/awt/XGraphics.idl
index 99b74e89182c..7c0007865d95 100644
--- a/offapi/com/sun/star/awt/XGraphics.idl
+++ b/offapi/com/sun/star/awt/XGraphics.idl
@@ -19,132 +19,90 @@
*
*************************************************************/
-
#ifndef __com_sun_star_awt_XGraphics_idl__
#define __com_sun_star_awt_XGraphics_idl__
-#ifndef __com_sun_star_uno_XInterface_idl__
#include <com/sun/star/uno/XInterface.idl>
-#endif
-
-#ifndef __com_sun_star_util_Color_idl__
#include <com/sun/star/util/Color.idl>
-#endif
-
-#ifndef __com_sun_star_awt_SimpleFontMetric_idl__
#include <com/sun/star/awt/SimpleFontMetric.idl>
-#endif
-
-#ifndef __com_sun_star_awt_FontDescriptor_idl__
#include <com/sun/star/awt/FontDescriptor.idl>
-#endif
-
-#ifndef __com_sun_star_awt_RasterOperation_idl__
#include <com/sun/star/awt/RasterOperation.idl>
-#endif
-
-#ifndef __com_sun_star_awt_Gradient_idl__
#include <com/sun/star/awt/Gradient.idl>
-#endif
+#include <com/sun/star/awt/Rectangle.idl>
+#include <com/sun/star/graphic/XGraphic.idl>
-//=============================================================================
+module com { module sun { module star { module awt {
- module com { module sun { module star { module awt {
-
- published interface XRegion;
- published interface XDisplayBitmap;
- published interface XFont;
- published interface XDevice;
-
-//=============================================================================
+published interface XRegion;
+published interface XDisplayBitmap;
+published interface XFont;
+published interface XDevice;
/** provides the basic output operation of a device.
*/
published interface XGraphics: com::sun::star::uno::XInterface
{
- //-------------------------------------------------------------------------
-
- /** returns the device of this graphics.
+ /** the device of this graphics
*/
- XDevice getDevice();
+ [attribute, readonly] XDevice Device;
- //-------------------------------------------------------------------------
-
- /** returns the font metric of the current font.
+ /** the text color used by text operations.
*/
- SimpleFontMetric getFontMetric();
-
- //-------------------------------------------------------------------------
+ [attribute] com::sun::star::util::Color TextColor;
- /** sets the font used by text operations.
+ /** the fill color used by text operations.
*/
- [oneway] void setFont( [in] XFont xNewFont );
+ [attribute] com::sun::star::util::Color TextFillColor;
- //-------------------------------------------------------------------------
-
- /** creates a new font and sets the font.
+ /** the line color.
*/
- [oneway] void selectFont( [in] FontDescriptor aDescription );
-
- //-------------------------------------------------------------------------
+ [attribute] com::sun::star::util::Color LineColor;
- /** sets the text color used by text operations.
+ /** the fill color.
*/
- [oneway] void setTextColor( [in] com::sun::star::util::Color nColor );
+ [attribute] com::sun::star::util::Color FillColor;
- //-------------------------------------------------------------------------
+ /** the raster operation.
- /** sets the fill color used by text operations.
+ <p>If the device does not support raster operations,
+ this attribute is ignored.</p>
*/
- [oneway] void setTextFillColor( [in] com::sun::star::util::Color nColor );
+ [attribute] RasterOperation RasterOp;
- //-------------------------------------------------------------------------
-
- /** sets the line color.
+ /** the font used by text operations.
*/
- [oneway] void setLineColor( [in] com::sun::star::util::Color nColor );
-
- //-------------------------------------------------------------------------
+ [attribute] XFont Font;
- /** sets the fill color.
+ /** the font metric of the current font.
*/
- [oneway] void setFillColor( [in] com::sun::star::util::Color nColor );
+ [attribute, readonly] SimpleFontMetric FontMetric;
- //-------------------------------------------------------------------------
-
- /** sets the raster operation.
-
- <p>If the device does not support raster operations
- then this call is ignored.</p>
+ /** creates a new font and sets the font.
*/
- [oneway] void setRasterOp( [in] RasterOperation ROP );
-
- //-------------------------------------------------------------------------
+ [oneway] void selectFont( [in] FontDescriptor aDescription );
/** sets the clip region to specified clipping.
*/
[oneway] void setClipRegion( [in] XRegion Clipping );
- //-------------------------------------------------------------------------
-
/** builds the intersection with the current region.
*/
[oneway] void intersectClipRegion( [in] XRegion xClipping );
- //-------------------------------------------------------------------------
-
/** saves all current settings (Font, TextColor, TextFillColor,
LineColor, FillColor, RasterOp, ClipRegion).
*/
[oneway] void push();
- //-------------------------------------------------------------------------
-
/** restores all previous saved settings.
*/
[oneway] void pop();
- //-------------------------------------------------------------------------
+ /** clears the given rectangle on the device
+
+ @since Apache OpenOffice 4.0
+ */
+ [oneway] void clear( [in] Rectangle aRect );
/** copies a rectangle of pixels from another device into this one.
*/
@@ -158,8 +116,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long nDestWidth,
[in] long nDestHeight );
- //-------------------------------------------------------------------------
-
/** draws a part of the specified bitmap to the output device.
*/
[oneway] void draw( [in] XDisplayBitmap xBitmapHandle,
@@ -172,15 +128,11 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long DestWidth,
[in] long DestHeight );
- //-------------------------------------------------------------------------
-
/** sets a single pixel in the output device.
*/
[oneway] void drawPixel( [in] long X,
[in] long Y );
- //-------------------------------------------------------------------------
-
/** draws a line in the output device.
*/
[oneway] void drawLine( [in] long X1,
@@ -188,8 +140,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long X2,
[in] long Y2 );
- //-------------------------------------------------------------------------
-
/** draws a rectangle in the output device.
*/
[oneway] void drawRect( [in] long X,
@@ -197,8 +147,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long Width,
[in] long Height );
- //-------------------------------------------------------------------------
-
/** draws a rectangle with rounded corners in the output device.
*/
[oneway] void drawRoundedRect( [in] long X,
@@ -208,29 +156,21 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long nHorzRound,
[in] long nVertRound );
- //-------------------------------------------------------------------------
-
/** draws multiple lines in the output device at once.
*/
[oneway] void drawPolyLine( [in] sequence<long> DataX,
[in] sequence<long> DataY );
- //-------------------------------------------------------------------------
-
/** draws a polygon line in the output device.
*/
[oneway] void drawPolygon( [in] sequence<long> DataX,
[in] sequence<long> DataY );
- //-------------------------------------------------------------------------
-
/** draws multiple polygons in the output device at once.
*/
[oneway] void drawPolyPolygon( [in] sequence< sequence<long> > DataX,
[in] sequence< sequence<long> > DataY );
- //-------------------------------------------------------------------------
-
/** draws an ellipse in the output device.
*/
[oneway] void drawEllipse( [in] long X,
@@ -238,8 +178,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long Width,
[in] long Height );
- //-------------------------------------------------------------------------
-
/** draws an arc (part of a circle) in the output device.
*/
[oneway] void drawArc( [in] long X,
@@ -251,8 +189,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long X2,
[in] long Y2 );
- //-------------------------------------------------------------------------
-
/** draws a circular area in the output device.
*/
[oneway] void drawPie( [in] long X,
@@ -264,8 +200,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long X2,
[in] long Y2 );
- //-------------------------------------------------------------------------
-
/** draws a chord of a circular area in the output device.
<p>A chord is a segment of a circle. You get two chords from a
@@ -281,8 +215,6 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long nX2,
[in] long nY2 );
- //-------------------------------------------------------------------------
-
/** draws a color dispersion in the output device.
*/
[oneway] void drawGradient( [in] long nX,
@@ -291,16 +223,12 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] long Height,
[in] Gradient aGradient );
- //-------------------------------------------------------------------------
-
/** draws text in the output device.
*/
[oneway] void drawText( [in] long X,
[in] long Y,
[in] string Text );
- //-------------------------------------------------------------------------
-
/** draws texts in the output device using an explicit kerning table.
*/
[oneway] void drawTextArray( [in] long X,
@@ -308,9 +236,41 @@ published interface XGraphics: com::sun::star::uno::XInterface
[in] string Text,
[in] sequence<long> Longs );
-};
+ /** draws a <type scope="com::sun::star::graphic">XGraphic</type>
+ in the output device.
+
+ <p>Note that some devices may not support this operation.</p>
+
+ @since Apache OpenOffice 4.0
+
+ @param nX
+ the X coordinate on the device where the graphic will be drawn
-//=============================================================================
+ @param nY
+ the Y coordinate on the device where the graphic will be drawn
+
+ @param nWidth
+ the width of the region on the device
+
+ @param nHeight
+ the height of the region on the device
+
+ @param nStyle
+ the style used to draw the image.
+ See <type scope="com::sun::star::awt">ImageDrawMode</type>.
+
+ @param aGraphic
+ the <type scope="com::sun::star::graphic">XGraphic</type>
+ to be drawn onto the device
+ */
+ [oneway] void drawImage( [in] long nX,
+ [in] long nY,
+ [in] long nWidth,
+ [in] long nHeight,
+ [in] short nStyle,
+ [in] ::com::sun::star::graphic::XGraphic aGraphic );
+
+};
}; }; }; };
diff --git a/offapi/com/sun/star/awt/makefile.mk b/offapi/com/sun/star/awt/makefile.mk
index a89065a909e8..a1604a35036a 100644
--- a/offapi/com/sun/star/awt/makefile.mk
+++ b/offapi/com/sun/star/awt/makefile.mk
@@ -100,6 +100,7 @@ IDLFILES=\
Gradient.idl\
GradientStyle.idl\
ImageAlign.idl\
+ ImageDrawMode.idl\
ImagePosition.idl\
ImageScaleMode.idl\
ImageStatus.idl\
diff --git a/offapi/type_reference/types.rdb b/offapi/type_reference/types.rdb
index c9264fe7b57c..28efe1927fb4 100644
--- a/offapi/type_reference/types.rdb
+++ b/offapi/type_reference/types.rdb
Binary files differ