1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef __com_sun_star_awt_XStyleSettings_idl__
21 #define __com_sun_star_awt_XStyleSettings_idl__
23 #include
<com
/sun
/star
/util
/Color.idl
>
24 #include
<com
/sun
/star
/awt
/FontDescriptor.idl
>
25 #include
<com
/sun
/star
/uno
/XInterface.idl
>
28 module com
{ module sun
{ module star
{ module awt
{
30 interface XStyleChangeListener
;
33 /** provides access to certain style settings within an OpenOffice.org component, such as a window, or
34 within OpenOffice.org as a whole.
36 <p>Note that there are constraints for those settings. For instance, if controls are drawn with the
37 native widget framework, i.e. in the desktop theme's look, then they won't necessarily respect all
38 their style settings, because those have a lesser priority than the native look.</p>
40 <p>On the other hand, some settings are respected only when rendering the controls in the native
41 desktop/theme look. For instance, without native theming, buttons do not support a "roll over" mode,
42 i.e., they're painted the same way, no matter if they mouse hovers over them or not. But with native
43 theming, this changes, as here the general button look is drawn by the system's theming engine,
44 while the text is drawn by OpenOffice.org. In this case, the button respects the
45 <code>ButtonRolloverTextColor</code> when painting its text.</p>
47 interface XStyleSettings
49 /// specifies the color of the border of active windows
50 [attribute
] ::com
::sun
::star
::util
::Color ActiveBorderColor
;
53 [attribute
] ::com
::sun
::star
::util
::Color ActiveColor
;
55 /// specifies the color of the active tab of a tab control
56 [attribute
] ::com
::sun
::star
::util
::Color ActiveTabColor
;
58 /// specifies the text color for active UI components
59 [attribute
] ::com
::sun
::star
::util
::Color ActiveTextColor
;
61 /// specifies the color to use for text on buttons which are hovered with the mouse
62 [attribute
] ::com
::sun
::star
::util
::Color ButtonRolloverTextColor
;
64 /// specifies the color to use for text on buttons
65 [attribute
] ::com
::sun
::star
::util
::Color ButtonTextColor
;
68 [attribute
] ::com
::sun
::star
::util
::Color CheckedColor
;
70 /// specifies the dark portion of the shadow to use for UI elements
71 [attribute
] ::com
::sun
::star
::util
::Color DarkShadowColor
;
73 /// specifies the color of the border of inactive windows
74 [attribute
] ::com
::sun
::star
::util
::Color DeactiveBorderColor
;
77 [attribute
] ::com
::sun
::star
::util
::Color DeactiveColor
;
79 /// specifies the text color for inactive UI components
80 [attribute
] ::com
::sun
::star
::util
::Color DeactiveTextColor
;
82 /// specifies the background color of dialogs
83 [attribute
] ::com
::sun
::star
::util
::Color DialogColor
;
85 /// specifies the text color of dialogs
86 [attribute
] ::com
::sun
::star
::util
::Color DialogTextColor
;
88 /// specifies the text color for disabled UI elements
89 [attribute
] ::com
::sun
::star
::util
::Color DisableColor
;
92 [attribute
] ::com
::sun
::star
::util
::Color FaceColor
;
95 [attribute
, readonly] ::com
::sun
::star
::util
::Color FaceGradientColor
;
97 /// specifies the background color for dialog input controls
98 [attribute
] ::com
::sun
::star
::util
::Color FieldColor
;
100 /// specifies the text color for dialog input controls which are hovered with the mouse
101 [attribute
] ::com
::sun
::star
::util
::Color FieldRolloverTextColor
;
103 /// specifies the text color for dialog input controls
104 [attribute
] ::com
::sun
::star
::util
::Color FieldTextColor
;
106 /// specifies the text color for dialog elements used for grouping other elements
107 [attribute
] ::com
::sun
::star
::util
::Color GroupTextColor
;
109 /// specifies the background color for dialog elements displaying help content
110 [attribute
] ::com
::sun
::star
::util
::Color HelpColor
;
112 /// specifies the text color for dialog elements displaying help content
113 [attribute
] ::com
::sun
::star
::util
::Color HelpTextColor
;
115 /// specifies the background color for UI elements which are highlighted
116 [attribute
] ::com
::sun
::star
::util
::Color HighlightColor
;
118 /// specifies the text color for UI elements which are highlighted
119 [attribute
] ::com
::sun
::star
::util
::Color HighlightTextColor
;
121 /// specifies the color of inactive tabs of a tab control
122 [attribute
] ::com
::sun
::star
::util
::Color InactiveTabColor
;
124 /// specifies the text color of dialog elements displaying some info text
125 [attribute
] ::com
::sun
::star
::util
::Color InfoTextColor
;
127 /// specifies the text color of label elements in dialogs
128 [attribute
] ::com
::sun
::star
::util
::Color LabelTextColor
;
131 [attribute
] ::com
::sun
::star
::util
::Color LightColor
;
133 /// specifies the background color of menu bars
134 [attribute
] ::com
::sun
::star
::util
::Color MenuBarColor
;
136 /// specifies the text color of menu bars
137 [attribute
] ::com
::sun
::star
::util
::Color MenuBarTextColor
;
139 /// specifies the border color of menus
140 [attribute
] ::com
::sun
::star
::util
::Color MenuBorderColor
;
142 // specifies the background color of menus
143 [attribute
] ::com
::sun
::star
::util
::Color MenuColor
;
145 /// specifies the background color of highlighted menu items
146 [attribute
] ::com
::sun
::star
::util
::Color MenuHighlightColor
;
148 /// specifies the text color of highlighted menu items
149 [attribute
] ::com
::sun
::star
::util
::Color MenuHighlightTextColor
;
151 // specifies the text color of menus
152 [attribute
] ::com
::sun
::star
::util
::Color MenuTextColor
;
154 /// specifies the color to use for monochrome control elements such as flat borders of controls
155 [attribute
] ::com
::sun
::star
::util
::Color MonoColor
;
157 /// specifies the text color of radio buttons and check boxes
158 [attribute
] ::com
::sun
::star
::util
::Color RadioCheckTextColor
;
160 /// specifies the color of separators between UI elements
161 [attribute
, readonly] ::com
::sun
::star
::util
::Color SeparatorColor
;
163 /// specifies the color to use for UI elements
164 [attribute
] ::com
::sun
::star
::util
::Color ShadowColor
;
166 /// specifies the background color to use for non-dialog windows
167 [attribute
] ::com
::sun
::star
::util
::Color WindowColor
;
169 /// specifies the text color to use for non-dialog windows
170 [attribute
] ::com
::sun
::star
::util
::Color WindowTextColor
;
172 /// specifies the background color to use for document workspaces
173 [attribute
] ::com
::sun
::star
::util
::Color WorkspaceColor
;
175 /** controls whether the an UI component should use a high-contrast mode
177 [attribute
] boolean HighContrastMode
;
179 /// specifies the application font
180 [attribute
] FontDescriptor ApplicationFont
;
182 /// specifies the help font
183 [attribute
] FontDescriptor HelpFont
;
185 /// specifies the font to use for window titles
186 [attribute
] FontDescriptor TitleFont
;
188 /// specifies the font to use the title of floating windows
189 [attribute
] FontDescriptor FloatTitleFont
;
191 /// specifies the font to use for menus
192 [attribute
] FontDescriptor MenuFont
;
194 /// specifies the font to use for tool elements
195 [attribute
] FontDescriptor ToolFont
;
197 /// specifies the font for dialog elements used for grouping other elements
198 [attribute
] FontDescriptor GroupFont
;
200 /// specifies the font for label controls
201 [attribute
] FontDescriptor LabelFont
;
203 /// specifies the font of dialog elements displaying some info text
204 [attribute
] FontDescriptor InfoFont
;
206 /// specifies the font of radio buttons and check boxes
207 [attribute
] FontDescriptor RadioCheckFont
;
209 /// specifies the font of push buttons
210 [attribute
] FontDescriptor PushButtonFont
;
212 /// specifies the font for dialog input controls
213 [attribute
] FontDescriptor FieldFont
;
215 /// registers a listener to be notified when the style settings change
216 void addStyleChangeListener
(
217 [in] XStyleChangeListener Listener
);
219 /// registers a listener to be notified when the style settings change
220 void removeStyleChangeListener
(
221 [in] XStyleChangeListener Listener
);
230 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */