1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27
28#ifndef __ooo_vba_excel_SheetObject_idl__
29#define __ooo_vba_excel_SheetObject_idl__
30
31#include <ooo/vba/excel/XCharacters.idl>
32
33//=============================================================================
34
35/*  Note: This file collects all compatibility interfaces for drawing objects
36    and drawing controls embedded in sheets. All these symbols are deprecated
37    in VBA and kept for compatibility with old VBA scripts. */
38
39//=============================================================================
40
41module ooo {  module vba { module excel {
42
43//=============================================================================
44
45/** Base interface for graphic objects and drawing controls in a single sheet.
46
47    <p>The objects supporting this interface are now deprecated in VBA in
48    favour of the Shapes and OLEObjects collections, but are kept for
49    compatibility with old VBA scripts. All form control objects do NOT belong
50    to ActiveX form controls but to the old-style drawing controls.</p>
51 */
52interface XSheetObject : ooo::vba::XHelperInterface
53{
54    /** Left coordinate of the drawing object, in points. */
55    [attribute] double Left;
56
57    /** Top coordinate of the drawing object, in points. */
58    [attribute] double Top;
59
60    /** Width of the drawing object, in points. */
61    [attribute] double Width;
62
63    /** Height of the drawing object, in points. */
64    [attribute] double Height;
65
66    /** The name of the drawing object, used as collection key. */
67    [attribute] string Name;
68
69    /** Name of a macro that will be executed when the drawing object is clicked. */
70    [attribute] string OnAction;
71
72    /** Anchor mode of the object (fixed or variable position and size). Must
73        be a value from <type>ooo::vba::excel::XlPlacement</type>. */
74    [attribute] long Placement;
75
76    /** True = print object, false = skip object on printing. */
77    [attribute] boolean PrintObject;
78};
79
80//=============================================================================
81
82/** Additional attributes for all drawing controls (this interface does not
83    belong to ActiveX form controls).
84 */
85interface XControlObject : com::sun::star::uno::XInterface
86{
87    [attribute] boolean AutoSize;
88};
89
90//=============================================================================
91
92/** Additional attributes for a push button drawing control (this interface
93    does not belong to ActiveX form controls).
94 */
95interface XButton : com::sun::star::uno::XInterface
96{
97    /** Visible caption of the button. */
98    [attribute] string Caption;
99
100    /** Font settings for the entire caption text. */
101    [attribute] XFont Font;
102
103    /** Horizontal alignment of the caption. */
104    [attribute] long HorizontalAlignment;
105
106    /** Vertical alignment of the caption. */
107    [attribute] long VerticalAlignment;
108
109    /** Orientation (rotation) of the text. Must be a value from
110        <type>ooo::vba::excel::XlOrientation</type>. */
111    [attribute] long Orientation;
112
113    /** Access to text and text formatting of the button caption. */
114    XCharacters Characters( [in] any Start, [in] any Length );
115};
116
117//=============================================================================
118
119/** Represents a drawing button control in a spreadsheet. */
120service Button
121{
122    interface XSheetObject;
123    interface XControlObject;
124    interface XButton;
125};
126
127//=============================================================================
128
129}; }; };
130
131#endif
132