1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22#ifndef __com_sun_star_ui_XStatusbarItem_idl__
23#define __com_sun_star_ui_XStatusbarItem_idl__
24
25#include <com/sun/star/awt/Rectangle.idl>
26
27module com {  module sun {  module star {  module ui {
28
29/** Represents an item in a status bar
30
31    @see <type scope="com::sun::star::frame">XStatusbarController</type>
32
33    @since Apache OpenOffice 3.5
34*/
35interface XStatusbarItem
36{
37    /** the command of the status bar item
38     */
39    [attribute, readonly] string Command;
40
41    /** the unique ID of the control within the status bar
42     */
43    [attribute, readonly] unsigned short ItemId;
44
45    /** the width of the status bar item
46     */
47    [attribute, readonly] unsigned long Width;
48
49    /** the style of the status bar item
50
51        <p>The following values apply for a status bar item:</p>
52        <ul>
53            <li>Alignment
54                <ul>
55                    <li><member scope="com::sun::star::ui">ItemStyle::ALIGN_LEFT</member></li>
56                    <li><member scope="com::sun::star::ui">ItemStyle::ALIGN_CENTER</member></li>
57                    <li><member scope="com::sun::star::ui">ItemStyle::ALIGN_RIGHT</member></li>
58                </ul>
59            </li>
60            <li>Drawing
61                <ul>
62                    <li><member scope="com::sun::star::ui">ItemStyle::DRAW_OUT3D</member></li>
63                    <li><member scope="com::sun::star::ui">ItemStyle::DRAW_IN3D</member></li>
64                    <li><member scope="com::sun::star::ui">ItemStyle::DRAW_FLAT</member></li>
65                </ul>
66            </li>
67            <li><member scope="com::sun::star::ui">ItemStyle::AUTO_SIZE</member></li>
68            <li><member scope="com::sun::star::ui">ItemStyle::OWNER_DRAW</member></li>
69        </ul>
70
71        @see <type scope="com::sun::star::ui">ItemStyle</type>
72     */
73    [attribute, readonly] unsigned short Style;
74
75    /** the offset between this status bar item and the following
76     */
77    [attribute, readonly] long Offset;
78
79    /** the rectangle on the status bar device onto which the item is drawn
80
81        @see <member scope="com::sun::star::frame">XStatusbarController::paint()</member>
82     */
83    [attribute, readonly] com::sun::star::awt::Rectangle ItemRect;
84
85    /** the text of status bar item
86     */
87    [attribute] string Text;
88
89    /** the help text of the status bar item when extended help tips are on
90     */
91    [attribute] string HelpText;
92
93    /** the help text of the status bar item when help tips are on
94     */
95    [attribute] string QuickHelpText;
96
97    /** the accesible name of the status bar item
98     */
99    [attribute] string AccessibleName;
100
101    /** whether the item is visible or not
102     */
103    [attribute] boolean Visible;
104
105    /** forces repainting the item onto the status bar device
106
107        @see <member scope="com::sun::star::frame">XStatusbarController::paint()</member>
108     */
109    void repaint();
110};
111
112}; }; }; };
113
114#endif
115