Version 7.6.3.2-android, tag libreoffice-7.6.3.2-android
[LibreOffice.git] / toolkit / source / awt / stylesettings.hxx
blob4e3f0b2df9652c92403bc160e29267df8e82a257
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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 INCLUDED_TOOLKIT_SOURCE_AWT_STYLESETTINGS_HXX
21 #define INCLUDED_TOOLKIT_SOURCE_AWT_STYLESETTINGS_HXX
23 #include <com/sun/star/awt/XStyleSettings.hpp>
25 #include <comphelper/interfacecontainer3.hxx>
26 #include <cppuhelper/implbase.hxx>
27 #include <tools/link.hxx>
29 namespace osl
31 class Mutex;
33 class Color;
34 class VCLXWindow;
35 class VclWindowEvent;
36 class StyleSettings;
37 namespace vcl { class Font; }
39 namespace toolkit
43 //= WindowStyleSettings
45 typedef ::cppu::WeakImplHelper < css::awt::XStyleSettings
46 > WindowStyleSettings_Base;
47 class WindowStyleSettings : public WindowStyleSettings_Base
49 public:
50 WindowStyleSettings( ::osl::Mutex& i_rListenerMutex, VCLXWindow& i_rOwningWindow );
51 virtual ~WindowStyleSettings() override;
53 void dispose();
55 // XStyleSettings
56 virtual ::sal_Int32 SAL_CALL getActiveBorderColor() override;
57 virtual void SAL_CALL setActiveBorderColor( ::sal_Int32 _activebordercolor ) override;
58 virtual ::sal_Int32 SAL_CALL getActiveColor() override;
59 virtual void SAL_CALL setActiveColor( ::sal_Int32 _activecolor ) override;
60 virtual ::sal_Int32 SAL_CALL getActiveTabColor() override;
61 virtual void SAL_CALL setActiveTabColor( ::sal_Int32 _activetabcolor ) override;
62 virtual ::sal_Int32 SAL_CALL getActiveTextColor() override;
63 virtual void SAL_CALL setActiveTextColor( ::sal_Int32 _activetextcolor ) override;
64 virtual ::sal_Int32 SAL_CALL getButtonRolloverTextColor() override;
65 virtual void SAL_CALL setButtonRolloverTextColor( ::sal_Int32 _buttonrollovertextcolor ) override;
66 virtual ::sal_Int32 SAL_CALL getButtonTextColor() override;
67 virtual void SAL_CALL setButtonTextColor( ::sal_Int32 _buttontextcolor ) override;
68 virtual ::sal_Int32 SAL_CALL getCheckedColor() override;
69 virtual void SAL_CALL setCheckedColor( ::sal_Int32 _checkedcolor ) override;
70 virtual ::sal_Int32 SAL_CALL getDarkShadowColor() override;
71 virtual void SAL_CALL setDarkShadowColor( ::sal_Int32 _darkshadowcolor ) override;
72 virtual ::sal_Int32 SAL_CALL getDeactiveBorderColor() override;
73 virtual void SAL_CALL setDeactiveBorderColor( ::sal_Int32 _deactivebordercolor ) override;
74 virtual ::sal_Int32 SAL_CALL getDeactiveColor() override;
75 virtual void SAL_CALL setDeactiveColor( ::sal_Int32 _deactivecolor ) override;
76 virtual ::sal_Int32 SAL_CALL getDeactiveTextColor() override;
77 virtual void SAL_CALL setDeactiveTextColor( ::sal_Int32 _deactivetextcolor ) override;
78 virtual ::sal_Int32 SAL_CALL getDialogColor() override;
79 virtual void SAL_CALL setDialogColor( ::sal_Int32 _dialogcolor ) override;
80 virtual ::sal_Int32 SAL_CALL getDialogTextColor() override;
81 virtual void SAL_CALL setDialogTextColor( ::sal_Int32 _dialogtextcolor ) override;
82 virtual ::sal_Int32 SAL_CALL getDisableColor() override;
83 virtual void SAL_CALL setDisableColor( ::sal_Int32 _disablecolor ) override;
84 virtual ::sal_Int32 SAL_CALL getFaceColor() override;
85 virtual void SAL_CALL setFaceColor( ::sal_Int32 _facecolor ) override;
86 virtual ::sal_Int32 SAL_CALL getFaceGradientColor() override;
87 virtual ::sal_Int32 SAL_CALL getFieldColor() override;
88 virtual void SAL_CALL setFieldColor( ::sal_Int32 _fieldcolor ) override;
89 virtual ::sal_Int32 SAL_CALL getFieldRolloverTextColor() override;
90 virtual void SAL_CALL setFieldRolloverTextColor( ::sal_Int32 _fieldrollovertextcolor ) override;
91 virtual ::sal_Int32 SAL_CALL getFieldTextColor() override;
92 virtual void SAL_CALL setFieldTextColor( ::sal_Int32 _fieldtextcolor ) override;
93 virtual ::sal_Int32 SAL_CALL getGroupTextColor() override;
94 virtual void SAL_CALL setGroupTextColor( ::sal_Int32 _grouptextcolor ) override;
95 virtual ::sal_Int32 SAL_CALL getHelpColor() override;
96 virtual void SAL_CALL setHelpColor( ::sal_Int32 _helpcolor ) override;
97 virtual ::sal_Int32 SAL_CALL getHelpTextColor() override;
98 virtual void SAL_CALL setHelpTextColor( ::sal_Int32 _helptextcolor ) override;
99 virtual ::sal_Int32 SAL_CALL getHighlightColor() override;
100 virtual void SAL_CALL setHighlightColor( ::sal_Int32 _highlightcolor ) override;
101 virtual ::sal_Int32 SAL_CALL getHighlightTextColor() override;
102 virtual void SAL_CALL setHighlightTextColor( ::sal_Int32 _highlighttextcolor ) override;
103 virtual ::sal_Int32 SAL_CALL getInactiveTabColor() override;
104 virtual void SAL_CALL setInactiveTabColor( ::sal_Int32 _inactivetabcolor ) override;
105 virtual ::sal_Int32 SAL_CALL getLabelTextColor() override;
106 virtual void SAL_CALL setLabelTextColor( ::sal_Int32 _labeltextcolor ) override;
107 virtual ::sal_Int32 SAL_CALL getLightColor() override;
108 virtual void SAL_CALL setLightColor( ::sal_Int32 _lightcolor ) override;
109 virtual ::sal_Int32 SAL_CALL getMenuBarColor() override;
110 virtual void SAL_CALL setMenuBarColor( ::sal_Int32 _menubarcolor ) override;
111 virtual ::sal_Int32 SAL_CALL getMenuBarTextColor() override;
112 virtual void SAL_CALL setMenuBarTextColor( ::sal_Int32 _menubartextcolor ) override;
113 virtual ::sal_Int32 SAL_CALL getMenuBorderColor() override;
114 virtual void SAL_CALL setMenuBorderColor( ::sal_Int32 _menubordercolor ) override;
115 virtual ::sal_Int32 SAL_CALL getMenuColor() override;
116 virtual void SAL_CALL setMenuColor( ::sal_Int32 _menucolor ) override;
117 virtual ::sal_Int32 SAL_CALL getMenuHighlightColor() override;
118 virtual void SAL_CALL setMenuHighlightColor( ::sal_Int32 _menuhighlightcolor ) override;
119 virtual ::sal_Int32 SAL_CALL getMenuHighlightTextColor() override;
120 virtual void SAL_CALL setMenuHighlightTextColor( ::sal_Int32 _menuhighlighttextcolor ) override;
121 virtual ::sal_Int32 SAL_CALL getMenuTextColor() override;
122 virtual void SAL_CALL setMenuTextColor( ::sal_Int32 _menutextcolor ) override;
123 virtual ::sal_Int32 SAL_CALL getMonoColor() override;
124 virtual void SAL_CALL setMonoColor( ::sal_Int32 _monocolor ) override;
125 virtual ::sal_Int32 SAL_CALL getRadioCheckTextColor() override;
126 virtual void SAL_CALL setRadioCheckTextColor( ::sal_Int32 _radiochecktextcolor ) override;
127 virtual ::sal_Int32 SAL_CALL getSeparatorColor() override;
128 virtual ::sal_Int32 SAL_CALL getShadowColor() override;
129 virtual void SAL_CALL setShadowColor( ::sal_Int32 _shadowcolor ) override;
130 virtual ::sal_Int32 SAL_CALL getWindowColor() override;
131 virtual void SAL_CALL setWindowColor( ::sal_Int32 _windowcolor ) override;
132 virtual ::sal_Int32 SAL_CALL getWindowTextColor() override;
133 virtual void SAL_CALL setWindowTextColor( ::sal_Int32 _windowtextcolor ) override;
134 virtual ::sal_Int32 SAL_CALL getWorkspaceColor() override;
135 virtual void SAL_CALL setWorkspaceColor( ::sal_Int32 _workspacecolor ) override;
136 virtual sal_Bool SAL_CALL getHighContrastMode() override;
137 virtual void SAL_CALL setHighContrastMode( sal_Bool _highcontrastmode ) override;
138 virtual css::awt::FontDescriptor SAL_CALL getApplicationFont() override;
139 virtual void SAL_CALL setApplicationFont( const css::awt::FontDescriptor& _applicationfont ) override;
140 virtual css::awt::FontDescriptor SAL_CALL getHelpFont() override;
141 virtual void SAL_CALL setHelpFont( const css::awt::FontDescriptor& _helpfont ) override;
142 virtual css::awt::FontDescriptor SAL_CALL getTitleFont() override;
143 virtual void SAL_CALL setTitleFont( const css::awt::FontDescriptor& _titlefont ) override;
144 virtual css::awt::FontDescriptor SAL_CALL getFloatTitleFont() override;
145 virtual void SAL_CALL setFloatTitleFont( const css::awt::FontDescriptor& _floattitlefont ) override;
146 virtual css::awt::FontDescriptor SAL_CALL getMenuFont() override;
147 virtual void SAL_CALL setMenuFont( const css::awt::FontDescriptor& _menufont ) override;
148 virtual css::awt::FontDescriptor SAL_CALL getToolFont() override;
149 virtual void SAL_CALL setToolFont( const css::awt::FontDescriptor& _toolfont ) override;
150 virtual css::awt::FontDescriptor SAL_CALL getGroupFont() override;
151 virtual void SAL_CALL setGroupFont( const css::awt::FontDescriptor& _groupfont ) override;
152 virtual css::awt::FontDescriptor SAL_CALL getLabelFont() override;
153 virtual void SAL_CALL setLabelFont( const css::awt::FontDescriptor& _labelfont ) override;
154 virtual css::awt::FontDescriptor SAL_CALL getRadioCheckFont() override;
155 virtual void SAL_CALL setRadioCheckFont( const css::awt::FontDescriptor& _radiocheckfont ) override;
156 virtual css::awt::FontDescriptor SAL_CALL getPushButtonFont() override;
157 virtual void SAL_CALL setPushButtonFont( const css::awt::FontDescriptor& _pushbuttonfont ) override;
158 virtual css::awt::FontDescriptor SAL_CALL getFieldFont() override;
159 virtual void SAL_CALL setFieldFont( const css::awt::FontDescriptor& _fieldfont ) override;
160 virtual void SAL_CALL addStyleChangeListener( const css::uno::Reference< css::awt::XStyleChangeListener >& Listener ) override;
161 virtual void SAL_CALL removeStyleChangeListener( const css::uno::Reference< css::awt::XStyleChangeListener >& Listener ) override;
163 private:
164 void ImplSetStyleFont( void (StyleSettings::*i_pSetter)( vcl::Font const &),
165 vcl::Font const & (StyleSettings::*i_pGetter)() const, const css::awt::FontDescriptor& i_rFont );
166 void ImplSetStyleColor( void (StyleSettings::*i_pSetter)( Color const & ), sal_Int32 i_nColor );
167 sal_Int32 ImplGetStyleColor( Color const & (StyleSettings::*i_pGetter)() const ) const;
168 css::awt::FontDescriptor ImplGetStyleFont( vcl::Font const & (StyleSettings::*i_pGetter)() const ) const;
169 DECL_LINK( OnWindowEvent, VclWindowEvent&, void );
171 VCLXWindow* pOwningWindow;
172 ::comphelper::OInterfaceContainerHelper3<css::awt::XStyleChangeListener> aStyleChangeListeners;
176 } // namespace toolkit
179 #endif // INCLUDED_TOOLKIT_SOURCE_AWT_STYLESETTINGS_HXX
181 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */