1*b1cdbd2cSJim Jagielski/************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_awt_XStyleSettings_idl__ 25*b1cdbd2cSJim Jagielski#define __com_sun_star_awt_XStyleSettings_idl__ 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski#include <com/sun/star/util/Color.idl> 28*b1cdbd2cSJim Jagielski#include <com/sun/star/awt/FontDescriptor.idl> 29*b1cdbd2cSJim Jagielski#include <com/sun/star/uno/XInterface.idl> 30*b1cdbd2cSJim Jagielski 31*b1cdbd2cSJim Jagielski//================================================================================================================== 32*b1cdbd2cSJim Jagielski 33*b1cdbd2cSJim Jagielskimodule com { module sun { module star { module awt { 34*b1cdbd2cSJim Jagielski 35*b1cdbd2cSJim Jagielskipublished interface XStyleChangeListener; 36*b1cdbd2cSJim Jagielski 37*b1cdbd2cSJim Jagielski//================================================================================================================== 38*b1cdbd2cSJim Jagielski 39*b1cdbd2cSJim Jagielski/** provides access to certain style settings within an OpenOffice.org component, such as a window, or 40*b1cdbd2cSJim Jagielski within OpenOffice.org as a whole. 41*b1cdbd2cSJim Jagielski 42*b1cdbd2cSJim Jagielski <p>Note that there are constraints for those settings. For instance, if controls are drawn with the 43*b1cdbd2cSJim Jagielski native widget framework, i.e. in the desktop theme's look, then they won't necessarily respect all 44*b1cdbd2cSJim Jagielski their style settings, because those have a lesser priority than the native look.</p> 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim Jagielski <p>On the other hand, some settings are respected only when rendering the controls in the native 47*b1cdbd2cSJim Jagielski desktop/theme look. For instance, without native theming, buttons do not support a "roll over" mode, 48*b1cdbd2cSJim Jagielski i.e., they're painted the same way, no matter if they mouse hovers over them or not. But with native 49*b1cdbd2cSJim Jagielski theming, this changes, as here the general button look is drawn by the system's theming engine, 50*b1cdbd2cSJim Jagielski while the text is drawn by OpenOffice.org. In this case, the button respects the 51*b1cdbd2cSJim Jagielski <code>ButtonRolloverTextColor</code> when painting its text.</p> 52*b1cdbd2cSJim Jagielski */ 53*b1cdbd2cSJim Jagielskipublished interface XStyleSettings 54*b1cdbd2cSJim Jagielski{ 55*b1cdbd2cSJim Jagielski /// specifies the color of the border of active windows 56*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ActiveBorderColor; 57*b1cdbd2cSJim Jagielski 58*b1cdbd2cSJim Jagielski /// 59*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ActiveColor; 60*b1cdbd2cSJim Jagielski 61*b1cdbd2cSJim Jagielski /// specifies the color of the active tab of a tab control 62*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ActiveTabColor; 63*b1cdbd2cSJim Jagielski 64*b1cdbd2cSJim Jagielski /// specifies the text color for active UI components 65*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ActiveTextColor; 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski /// specifies the color to use for text on buttons which are hovered with the mouse 68*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ButtonRolloverTextColor; 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim Jagielski /// specifies the color to use for text on buttons 71*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ButtonTextColor; 72*b1cdbd2cSJim Jagielski 73*b1cdbd2cSJim Jagielski /// 74*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color CheckedColor; 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim Jagielski /// specifies the dark portion of the shadow to use for UI elements 77*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DarkShadowColor; 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim Jagielski /// specifies the color of the border of inactive windows 80*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DeactiveBorderColor; 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielski /// 83*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DeactiveColor; 84*b1cdbd2cSJim Jagielski 85*b1cdbd2cSJim Jagielski /// specifies the text color for inactive UI components 86*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DeactiveTextColor; 87*b1cdbd2cSJim Jagielski 88*b1cdbd2cSJim Jagielski /// specifies the background color of dialogs 89*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DialogColor; 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim Jagielski /// specifies the text color of dialogs 92*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DialogTextColor; 93*b1cdbd2cSJim Jagielski 94*b1cdbd2cSJim Jagielski /// specifies the text color for disabled UI elements 95*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color DisableColor; 96*b1cdbd2cSJim Jagielski 97*b1cdbd2cSJim Jagielski /// 98*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color FaceColor; 99*b1cdbd2cSJim Jagielski 100*b1cdbd2cSJim Jagielski /// 101*b1cdbd2cSJim Jagielski [attribute, readonly] ::com::sun::star::util::Color FaceGradientColor; 102*b1cdbd2cSJim Jagielski 103*b1cdbd2cSJim Jagielski /// specifies the background color for dialog input controls 104*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color FieldColor; 105*b1cdbd2cSJim Jagielski 106*b1cdbd2cSJim Jagielski /// specifies the text color for dialog input controls which are hovered with the mouse 107*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color FieldRolloverTextColor; 108*b1cdbd2cSJim Jagielski 109*b1cdbd2cSJim Jagielski /// specifies the text color for dialog input controls 110*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color FieldTextColor; 111*b1cdbd2cSJim Jagielski 112*b1cdbd2cSJim Jagielski /// specifies the text color for dialog elements used for grouping other elements 113*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color GroupTextColor; 114*b1cdbd2cSJim Jagielski 115*b1cdbd2cSJim Jagielski /// specifies the background color for dialog elements displaying help content 116*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color HelpColor; 117*b1cdbd2cSJim Jagielski 118*b1cdbd2cSJim Jagielski /// specifies the text color for dialog elements displaying help content 119*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color HelpTextColor; 120*b1cdbd2cSJim Jagielski 121*b1cdbd2cSJim Jagielski /// specifies the background color for UI elements which are highlighted 122*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color HighlightColor; 123*b1cdbd2cSJim Jagielski 124*b1cdbd2cSJim Jagielski /// specifies the text color for UI elements which are highlighted 125*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color HighlightTextColor; 126*b1cdbd2cSJim Jagielski 127*b1cdbd2cSJim Jagielski /// specifies the color of inactive tabs of a tab control 128*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color InactiveTabColor; 129*b1cdbd2cSJim Jagielski 130*b1cdbd2cSJim Jagielski /// specifies the text color of dialog elements displaying some info text 131*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color InfoTextColor; 132*b1cdbd2cSJim Jagielski 133*b1cdbd2cSJim Jagielski /// specifies the text color of label elements in dialogs 134*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color LabelTextColor; 135*b1cdbd2cSJim Jagielski 136*b1cdbd2cSJim Jagielski /// 137*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color LightColor; 138*b1cdbd2cSJim Jagielski 139*b1cdbd2cSJim Jagielski /// specifies the background color of menu bars 140*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuBarColor; 141*b1cdbd2cSJim Jagielski 142*b1cdbd2cSJim Jagielski /// specifies the text color of menu bars 143*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuBarTextColor; 144*b1cdbd2cSJim Jagielski 145*b1cdbd2cSJim Jagielski /// specifies the border color of menus 146*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuBorderColor; 147*b1cdbd2cSJim Jagielski 148*b1cdbd2cSJim Jagielski // specifies the background color of menus 149*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuColor; 150*b1cdbd2cSJim Jagielski 151*b1cdbd2cSJim Jagielski /// specifies the background color of highlighted menu items 152*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuHighlightColor; 153*b1cdbd2cSJim Jagielski 154*b1cdbd2cSJim Jagielski /// specifies the text color of highlighted menu items 155*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuHighlightTextColor; 156*b1cdbd2cSJim Jagielski 157*b1cdbd2cSJim Jagielski // specifies the text color of menus 158*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MenuTextColor; 159*b1cdbd2cSJim Jagielski 160*b1cdbd2cSJim Jagielski /// specifies the color to use for monochrome control elements such as flat borders of controls 161*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color MonoColor; 162*b1cdbd2cSJim Jagielski 163*b1cdbd2cSJim Jagielski /// specifies the text color of radio buttons and check boxes 164*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color RadioCheckTextColor; 165*b1cdbd2cSJim Jagielski 166*b1cdbd2cSJim Jagielski /// specifies the color of separators between UI elements 167*b1cdbd2cSJim Jagielski [attribute, readonly] ::com::sun::star::util::Color SeparatorColor; 168*b1cdbd2cSJim Jagielski 169*b1cdbd2cSJim Jagielski /// specifies the color to use for UI elements 170*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color ShadowColor; 171*b1cdbd2cSJim Jagielski 172*b1cdbd2cSJim Jagielski /// specifies the background color to use for non-dialog windows 173*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color WindowColor; 174*b1cdbd2cSJim Jagielski 175*b1cdbd2cSJim Jagielski /// specifies the text color to use for non-dialog windows 176*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color WindowTextColor; 177*b1cdbd2cSJim Jagielski 178*b1cdbd2cSJim Jagielski /// specifies the background color to use for document workspaces 179*b1cdbd2cSJim Jagielski [attribute] ::com::sun::star::util::Color WorkspaceColor; 180*b1cdbd2cSJim Jagielski 181*b1cdbd2cSJim Jagielski /** controls whether the an UI component should use a high-contrast mode 182*b1cdbd2cSJim Jagielski */ 183*b1cdbd2cSJim Jagielski [attribute] boolean HighContrastMode; 184*b1cdbd2cSJim Jagielski 185*b1cdbd2cSJim Jagielski /// specifies the application font 186*b1cdbd2cSJim Jagielski [attribute] FontDescriptor ApplicationFont; 187*b1cdbd2cSJim Jagielski 188*b1cdbd2cSJim Jagielski /// specifies the help font 189*b1cdbd2cSJim Jagielski [attribute] FontDescriptor HelpFont; 190*b1cdbd2cSJim Jagielski 191*b1cdbd2cSJim Jagielski /// specifies the font to use for window titles 192*b1cdbd2cSJim Jagielski [attribute] FontDescriptor TitleFont; 193*b1cdbd2cSJim Jagielski 194*b1cdbd2cSJim Jagielski /// specifies the font to use the title of floating windows 195*b1cdbd2cSJim Jagielski [attribute] FontDescriptor FloatTitleFont; 196*b1cdbd2cSJim Jagielski 197*b1cdbd2cSJim Jagielski /// specifies the font to use for menus 198*b1cdbd2cSJim Jagielski [attribute] FontDescriptor MenuFont; 199*b1cdbd2cSJim Jagielski 200*b1cdbd2cSJim Jagielski /// specifies the font to use for tool elements 201*b1cdbd2cSJim Jagielski [attribute] FontDescriptor ToolFont; 202*b1cdbd2cSJim Jagielski 203*b1cdbd2cSJim Jagielski /// specifies the font for dialog elements used for grouping other elements 204*b1cdbd2cSJim Jagielski [attribute] FontDescriptor GroupFont; 205*b1cdbd2cSJim Jagielski 206*b1cdbd2cSJim Jagielski /// specifies the font for label controls 207*b1cdbd2cSJim Jagielski [attribute] FontDescriptor LabelFont; 208*b1cdbd2cSJim Jagielski 209*b1cdbd2cSJim Jagielski /// specifies the font of dialog elements displaying some info text 210*b1cdbd2cSJim Jagielski [attribute] FontDescriptor InfoFont; 211*b1cdbd2cSJim Jagielski 212*b1cdbd2cSJim Jagielski /// specifies the font of radio buttons and check boxes 213*b1cdbd2cSJim Jagielski [attribute] FontDescriptor RadioCheckFont; 214*b1cdbd2cSJim Jagielski 215*b1cdbd2cSJim Jagielski /// specifies the font of push buttons 216*b1cdbd2cSJim Jagielski [attribute] FontDescriptor PushButtonFont; 217*b1cdbd2cSJim Jagielski 218*b1cdbd2cSJim Jagielski /// specifies the font for dialog input controls 219*b1cdbd2cSJim Jagielski [attribute] FontDescriptor FieldFont; 220*b1cdbd2cSJim Jagielski 221*b1cdbd2cSJim Jagielski /// registers a listener to be notified when the style settings change 222*b1cdbd2cSJim Jagielski void addStyleChangeListener( 223*b1cdbd2cSJim Jagielski [in] XStyleChangeListener Listener ); 224*b1cdbd2cSJim Jagielski 225*b1cdbd2cSJim Jagielski /// registers a listener to be notified when the style settings change 226*b1cdbd2cSJim Jagielski void removeStyleChangeListener( 227*b1cdbd2cSJim Jagielski [in] XStyleChangeListener Listener ); 228*b1cdbd2cSJim Jagielski}; 229*b1cdbd2cSJim Jagielski 230*b1cdbd2cSJim Jagielski//================================================================================================================== 231*b1cdbd2cSJim Jagielski 232*b1cdbd2cSJim Jagielski}; }; }; }; 233*b1cdbd2cSJim Jagielski 234*b1cdbd2cSJim Jagielski//================================================================================================================== 235*b1cdbd2cSJim Jagielski 236*b1cdbd2cSJim Jagielski#endif 237