Branch data Line data Source code
1 : : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : : /*************************************************************************
3 : : *
4 : : * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 : : *
6 : : * Copyright 2000, 2010 Oracle and/or its affiliates.
7 : : *
8 : : * OpenOffice.org - a multi-platform office productivity suite
9 : : *
10 : : * This file is part of OpenOffice.org.
11 : : *
12 : : * OpenOffice.org is free software: you can redistribute it and/or modify
13 : : * it under the terms of the GNU Lesser General Public License version 3
14 : : * only, as published by the Free Software Foundation.
15 : : *
16 : : * OpenOffice.org is distributed in the hope that it will be useful,
17 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 : : * GNU Lesser General Public License version 3 for more details
20 : : * (a copy is included in the LICENSE file that accompanied this code).
21 : : *
22 : : * You should have received a copy of the GNU Lesser General Public License
23 : : * version 3 along with OpenOffice.org. If not, see
24 : : * <http://www.openoffice.org/license.html>
25 : : * for a copy of the LGPLv3 License.
26 : : *
27 : : ************************************************************************/
28 : :
29 : : #ifndef _SV_SETTINGS_HXX
30 : : #define _SV_SETTINGS_HXX
31 : :
32 : : #include "tools/solar.h"
33 : : #include "vcl/dllapi.h"
34 : : #include "tools/color.hxx"
35 : : #include "vcl/font.hxx"
36 : : #include "vcl/accel.hxx"
37 : : #include "vcl/wall.hxx"
38 : : #include "com/sun/star/lang/Locale.hpp"
39 : : #include <unotools/syslocale.hxx>
40 : :
41 : : class CollatorWrapper;
42 : : class LocaleDataWrapper;
43 : :
44 : : namespace vcl {
45 : : class I18nHelper;
46 : : }
47 : :
48 : : // -----------------
49 : : // - ImplMouseData -
50 : : // -----------------
51 : :
52 : : class ImplMouseData
53 : : {
54 : : friend class MouseSettings;
55 : :
56 : : ImplMouseData();
57 : : ImplMouseData( const ImplMouseData& rData );
58 : :
59 : : private:
60 : : sal_uLong mnRefCount;
61 : : sal_uLong mnOptions;
62 : : sal_uLong mnDoubleClkTime;
63 : : long mnDoubleClkWidth;
64 : : long mnDoubleClkHeight;
65 : : long mnStartDragWidth;
66 : : long mnStartDragHeight;
67 : : sal_uInt16 mnStartDragCode;
68 : : sal_uInt16 mnDragMoveCode;
69 : : sal_uInt16 mnDragCopyCode;
70 : : sal_uInt16 mnDragLinkCode;
71 : : sal_uInt16 mnContextMenuCode;
72 : : sal_uInt16 mnContextMenuClicks;
73 : : sal_Bool mbContextMenuDown;
74 : : sal_uLong mnScrollRepeat;
75 : : sal_uLong mnButtonStartRepeat;
76 : : sal_uLong mnButtonRepeat;
77 : : sal_uLong mnActionDelay;
78 : : sal_uLong mnMenuDelay;
79 : : sal_uLong mnFollow;
80 : : sal_uInt16 mnMiddleButtonAction;
81 : : sal_uInt16 mnWheelBehavior;
82 : : };
83 : :
84 : : // -----------------
85 : : // - MouseSettings -
86 : : // -----------------
87 : :
88 : : #define MOUSE_OPTION_AUTOFOCUS ((sal_uLong)0x00000001)
89 : : #define MOUSE_OPTION_AUTOCENTERPOS ((sal_uLong)0x00000002)
90 : : #define MOUSE_OPTION_AUTODEFBTNPOS ((sal_uLong)0x00000004)
91 : :
92 : : #define MOUSE_FOLLOW_MENU ((sal_uLong)0x00000001)
93 : : #define MOUSE_FOLLOW_DDLIST ((sal_uLong)0x00000002)
94 : :
95 : : #define MOUSE_MIDDLE_NOTHING ((sal_uInt16)0)
96 : : #define MOUSE_MIDDLE_AUTOSCROLL ((sal_uInt16)1)
97 : : #define MOUSE_MIDDLE_PASTESELECTION ((sal_uInt16)2)
98 : :
99 : : #define MOUSE_WHEEL_DISABLE ((sal_uInt16)0)
100 : : #define MOUSE_WHEEL_FOCUS_ONLY ((sal_uInt16)1)
101 : : #define MOUSE_WHEEL_ALWAYS ((sal_uInt16)2)
102 : :
103 : : class VCL_DLLPUBLIC MouseSettings
104 : : {
105 : : void CopyData();
106 : :
107 : : private:
108 : : ImplMouseData* mpData;
109 : :
110 : : public:
111 : : MouseSettings();
112 : : MouseSettings( const MouseSettings& rSet );
113 : : ~MouseSettings();
114 : :
115 : 158 : void SetOptions( sal_uLong nOptions )
116 : 158 : { CopyData(); mpData->mnOptions = nOptions; }
117 : 160 : sal_uLong GetOptions() const
118 : 160 : { return mpData->mnOptions; }
119 : :
120 : 0 : void SetDoubleClickTime( sal_uLong nDoubleClkTime )
121 : 0 : { CopyData(); mpData->mnDoubleClkTime = nDoubleClkTime; }
122 : 1109 : sal_uLong GetDoubleClickTime() const
123 : 1109 : { return mpData->mnDoubleClkTime; }
124 : 0 : void SetDoubleClickWidth( long nDoubleClkWidth )
125 : 0 : { CopyData(); mpData->mnDoubleClkWidth = nDoubleClkWidth; }
126 : 0 : long GetDoubleClickWidth() const
127 : 0 : { return mpData->mnDoubleClkWidth; }
128 : 0 : void SetDoubleClickHeight( long nDoubleClkHeight )
129 : 0 : { CopyData(); mpData->mnDoubleClkHeight = nDoubleClkHeight; }
130 : 0 : long GetDoubleClickHeight() const
131 : 0 : { return mpData->mnDoubleClkHeight; }
132 : :
133 : 0 : void SetStartDragWidth( long nDragWidth )
134 : 0 : { CopyData(); mpData->mnStartDragWidth = nDragWidth; }
135 : 0 : long GetStartDragWidth() const
136 : 0 : { return mpData->mnStartDragWidth; }
137 : 0 : void SetStartDragHeight( long nDragHeight )
138 : 0 : { CopyData(); mpData->mnStartDragHeight = nDragHeight; }
139 : 0 : long GetStartDragHeight() const
140 : 0 : { return mpData->mnStartDragHeight; }
141 : : void SetStartDragCode( sal_uInt16 nCode )
142 : : { CopyData(); mpData->mnStartDragCode = nCode; }
143 : 0 : sal_uInt16 GetStartDragCode() const
144 : 0 : { return mpData->mnStartDragCode; }
145 : : void SetDragMoveCode( sal_uInt16 nCode )
146 : : { CopyData(); mpData->mnDragMoveCode = nCode; }
147 : : sal_uInt16 GetDragMoveCode() const
148 : : { return mpData->mnDragMoveCode; }
149 : : void SetDragCopyCode( sal_uInt16 nCode )
150 : : { CopyData(); mpData->mnDragCopyCode = nCode; }
151 : : sal_uInt16 GetDragCopyCode() const
152 : : { return mpData->mnDragCopyCode; }
153 : : void SetDragLinkCode( sal_uInt16 nCode )
154 : : { CopyData(); mpData->mnDragLinkCode = nCode; }
155 : : sal_uInt16 GetDragLinkCode() const
156 : : { return mpData->mnDragLinkCode; }
157 : :
158 : : void SetContextMenuCode( sal_uInt16 nCode )
159 : : { CopyData(); mpData->mnContextMenuCode = nCode; }
160 : 0 : sal_uInt16 GetContextMenuCode() const
161 : 0 : { return mpData->mnContextMenuCode; }
162 : : void SetContextMenuClicks( sal_uInt16 nClicks )
163 : : { CopyData(); mpData->mnContextMenuClicks = nClicks; }
164 : 0 : sal_uInt16 GetContextMenuClicks() const
165 : 0 : { return mpData->mnContextMenuClicks; }
166 : : void SetContextMenuDown( sal_Bool bDown )
167 : : { CopyData(); mpData->mbContextMenuDown = bDown; }
168 : 0 : sal_Bool GetContextMenuDown() const
169 : 0 : { return mpData->mbContextMenuDown; }
170 : :
171 : : void SetScrollRepeat( sal_uLong nRepeat )
172 : : { CopyData(); mpData->mnScrollRepeat = nRepeat; }
173 : 0 : sal_uLong GetScrollRepeat() const
174 : 0 : { return mpData->mnScrollRepeat; }
175 : : void SetButtonStartRepeat( sal_uLong nRepeat )
176 : : { CopyData(); mpData->mnButtonStartRepeat = nRepeat; }
177 : 189 : sal_uLong GetButtonStartRepeat() const
178 : 189 : { return mpData->mnButtonStartRepeat; }
179 : 406 : void SetButtonRepeat( sal_uLong nRepeat )
180 : 406 : { CopyData(); mpData->mnButtonRepeat = nRepeat; }
181 : 40 : sal_uLong GetButtonRepeat() const
182 : 40 : { return mpData->mnButtonRepeat; }
183 : : void SetActionDelay( sal_uLong nDelay )
184 : : { CopyData(); mpData->mnActionDelay = nDelay; }
185 : 0 : sal_uLong GetActionDelay() const
186 : 0 : { return mpData->mnActionDelay; }
187 : 32 : void SetMenuDelay( sal_uLong nDelay )
188 : 32 : { CopyData(); mpData->mnMenuDelay = nDelay; }
189 : 48 : sal_uLong GetMenuDelay() const
190 : 48 : { return mpData->mnMenuDelay; }
191 : :
192 : 474 : void SetFollow( sal_uLong nFollow )
193 : 474 : { CopyData(); mpData->mnFollow = nFollow; }
194 : 474 : sal_uLong GetFollow() const
195 : 474 : { return mpData->mnFollow; }
196 : :
197 : 158 : void SetMiddleButtonAction( sal_uInt16 nAction )
198 : 158 : { CopyData(); mpData->mnMiddleButtonAction = nAction; }
199 : 0 : sal_uInt16 GetMiddleButtonAction() const
200 : 0 : { return mpData->mnMiddleButtonAction; }
201 : :
202 : 1264 : void SetWheelBehavior( sal_uInt16 nBehavior )
203 : 1264 : { CopyData(); mpData->mnWheelBehavior = nBehavior; }
204 : 884 : sal_uInt16 GetWheelBehavior() const
205 : 884 : { return mpData->mnWheelBehavior; }
206 : :
207 : : const MouseSettings& operator =( const MouseSettings& rSet );
208 : :
209 : : sal_Bool operator ==( const MouseSettings& rSet ) const;
210 : 42983 : sal_Bool operator !=( const MouseSettings& rSet ) const
211 : 42983 : { return !(*this == rSet); }
212 : : };
213 : :
214 : : // -----------------
215 : : // - ImplStyleData -
216 : : // -----------------
217 : :
218 [ + - ][ + - ]: 37749 : class ImplStyleData
[ + - ][ + - ]
[ + - ][ + - ]
[ + - ][ + - ]
[ + - ][ + - ]
[ + - ][ + - ]
[ + - ]
219 : : {
220 : : friend class StyleSettings;
221 : :
222 : : ImplStyleData();
223 : : ImplStyleData( const ImplStyleData& rData );
224 : : void SetStandardStyles();
225 : :
226 : : private:
227 : : sal_uLong mnRefCount;
228 : :
229 : : Color maActiveBorderColor;
230 : : Color maActiveColor;
231 : : Color maActiveColor2;
232 : : Color maActiveTextColor;
233 : : Color maButtonTextColor;
234 : : Color maButtonRolloverTextColor;
235 : : Color maCheckedColor;
236 : : Color maDarkShadowColor;
237 : : Color maDeactiveBorderColor;
238 : : Color maDeactiveColor;
239 : : Color maDeactiveColor2;
240 : : Color maDeactiveTextColor;
241 : : Color maDialogColor;
242 : : Color maDialogTextColor;
243 : : Color maDisableColor;
244 : : Color maFaceColor;
245 : : Color maFieldColor;
246 : : Color maFieldTextColor;
247 : : Color maFieldRolloverTextColor;
248 : : Color maFontColor;
249 : : Color maGroupTextColor;
250 : : Color maHelpColor;
251 : : Color maHelpTextColor;
252 : : Color maHighlightColor;
253 : : Color maHighlightLinkColor;
254 : : Color maHighlightTextColor;
255 : : Color maInfoTextColor;
256 : : Color maLabelTextColor;
257 : : Color maLightBorderColor;
258 : : Color maLightColor;
259 : : Color maLinkColor;
260 : : Color maMenuBarColor;
261 : : Color maMenuBorderColor;
262 : : Color maMenuColor;
263 : : Color maMenuHighlightColor;
264 : : Color maMenuHighlightTextColor;
265 : : Color maMenuTextColor;
266 : : Color maMenuBarTextColor;
267 : : Color maMonoColor;
268 : : Color maRadioCheckTextColor;
269 : : Color maShadowColor;
270 : : Color maVisitedLinkColor;
271 : : Color maWindowColor;
272 : : Color maWindowTextColor;
273 : : Color maWorkspaceColor;
274 : : Color maActiveTabColor;
275 : : Color maInactiveTabColor;
276 : : Font maAppFont;
277 : : Font maHelpFont;
278 : : Font maTitleFont;
279 : : Font maFloatTitleFont;
280 : : Font maMenuFont;
281 : : Font maToolFont;
282 : : Font maLabelFont;
283 : : Font maInfoFont;
284 : : Font maRadioCheckFont;
285 : : Font maPushButtonFont;
286 : : Font maFieldFont;
287 : : Font maIconFont;
288 : : Font maGroupFont;
289 : : long mnBorderSize;
290 : : long mnTitleHeight;
291 : : long mnFloatTitleHeight;
292 : : long mnTearOffTitleHeight;
293 : : long mnScrollBarSize;
294 : : long mnSplitSize;
295 : : long mnSpinSize;
296 : : long mnCursorSize;
297 : : long mnMenuBarHeight;
298 : : long mnIconHorzSpace;
299 : : long mnIconVertSpace;
300 : : long mnAntialiasedMin;
301 : : sal_uLong mnCursorBlinkTime;
302 : : sal_uLong mnDragFullOptions;
303 : : sal_uLong mnAnimationOptions;
304 : : sal_uLong mnSelectionOptions;
305 : : sal_uLong mnLogoDisplayTime;
306 : : sal_uLong mnDisplayOptions;
307 : : sal_uLong mnToolbarIconSize;
308 : : sal_uLong mnUseFlatMenues;
309 : : sal_uLong mnOptions;
310 : : sal_uInt16 mnScreenZoom;
311 : : sal_uInt16 mnScreenFontZoom;
312 : : sal_uInt16 mnHighContrast;
313 : : sal_uInt16 mnUseSystemUIFonts;
314 : : sal_uInt16 mnAutoMnemonic;
315 : : sal_uInt16 mnUseImagesInMenus;
316 : : sal_uLong mnUseFlatBorders;
317 : : sal_Bool mbPreferredUseImagesInMenus;
318 : : long mnMinThumbSize;
319 : : sal_uLong mnSymbolsStyle;
320 : : sal_uLong mnPreferredSymbolsStyle;
321 : : sal_uInt16 mnSkipDisabledInMenus;
322 : : sal_Bool mbHideDisabledMenuItems;
323 : : sal_Bool mnAcceleratorsInContextMenus;
324 : : Wallpaper maWorkspaceGradient;
325 : : const void* mpFontOptions;
326 : : };
327 : :
328 : : #define DEFAULT_WORKSPACE_GRADIENT_START_COLOR Color( 0xa3, 0xae, 0xb8 )
329 : : #define DEFAULT_WORKSPACE_GRADIENT_END_COLOR Color( 0x73, 0x7e, 0x88 )
330 : :
331 : : // -----------------
332 : : // - StyleSettings -
333 : : // -----------------
334 : :
335 : : #define STYLE_OPTION_MONO ((sal_uLong)0x00000001)
336 : : #define STYLE_OPTION_COLOR ((sal_uLong)0x00000002)
337 : : #define STYLE_OPTION_FLAT ((sal_uLong)0x00000004)
338 : : #define STYLE_OPTION_GREAT ((sal_uLong)0x00000008)
339 : : #define STYLE_OPTION_HIGHLIGHT ((sal_uLong)0x00000010)
340 : : #define STYLE_OPTION_ADVANCEDUSER ((sal_uLong)0x00000020)
341 : : #define STYLE_OPTION_SCROLLARROW ((sal_uLong)0x00000040)
342 : : #define STYLE_OPTION_SPINARROW ((sal_uLong)0x00000080)
343 : : #define STYLE_OPTION_SPINUPDOWN ((sal_uLong)0x00000100)
344 : : #define STYLE_OPTION_NOMNEMONICS ((sal_uLong)0x00000200)
345 : :
346 : : #define DRAGFULL_OPTION_WINDOWMOVE ((sal_uLong)0x00000001)
347 : : #define DRAGFULL_OPTION_WINDOWSIZE ((sal_uLong)0x00000002)
348 : : #define DRAGFULL_OPTION_OBJECTMOVE ((sal_uLong)0x00000004)
349 : : #define DRAGFULL_OPTION_OBJECTSIZE ((sal_uLong)0x00000008)
350 : : #define DRAGFULL_OPTION_DOCKING ((sal_uLong)0x00000010)
351 : : #define DRAGFULL_OPTION_SPLIT ((sal_uLong)0x00000020)
352 : : #define DRAGFULL_OPTION_SCROLL ((sal_uLong)0x00000040)
353 : :
354 : : #define LOGO_DISPLAYTIME_STARTTIME ((sal_uLong)0xFFFFFFFF)
355 : :
356 : : #define SELECTION_OPTION_WORD ((sal_uLong)0x00000001)
357 : : #define SELECTION_OPTION_FOCUS ((sal_uLong)0x00000002)
358 : : #define SELECTION_OPTION_INVERT ((sal_uLong)0x00000004)
359 : : #define SELECTION_OPTION_SHOWFIRST ((sal_uLong)0x00000008)
360 : :
361 : : #define DISPLAY_OPTION_AA_DISABLE ((sal_uLong)0x00000001)
362 : :
363 : : #define STYLE_RADIOBUTTON_MONO ((sal_uInt16)0x0001) // legacy
364 : : #define STYLE_CHECKBOX_MONO ((sal_uInt16)0x0001) // legacy
365 : :
366 : : #define STYLE_TOOLBAR_ICONSIZE_UNKNOWN ((sal_uLong)0)
367 : : #define STYLE_TOOLBAR_ICONSIZE_SMALL ((sal_uLong)1)
368 : : #define STYLE_TOOLBAR_ICONSIZE_LARGE ((sal_uLong)2)
369 : :
370 : : #define STYLE_SYMBOLS_AUTO ((sal_uLong)0)
371 : : #define STYLE_SYMBOLS_DEFAULT ((sal_uLong)1)
372 : : #define STYLE_SYMBOLS_HICONTRAST ((sal_uLong)2)
373 : : #define STYLE_SYMBOLS_INDUSTRIAL ((sal_uLong)3)
374 : : #define STYLE_SYMBOLS_CRYSTAL ((sal_uLong)4)
375 : : #define STYLE_SYMBOLS_TANGO ((sal_uLong)5)
376 : : #define STYLE_SYMBOLS_OXYGEN ((sal_uLong)6)
377 : : #define STYLE_SYMBOLS_CLASSIC ((sal_uLong)7)
378 : : #define STYLE_SYMBOLS_HUMAN ((sal_uLong)8)
379 : : #define STYLE_SYMBOLS_THEMES_MAX ((sal_uLong)9)
380 : :
381 : : #define STYLE_MENUIMAGES_OFF ((sal_uInt16)0)
382 : : #define STYLE_MENUIMAGES_ON ((sal_uInt16)1)
383 : : #define STYLE_MENUIMAGES_AUTO ((sal_uInt16)2)
384 : :
385 : : #define STYLE_CURSOR_NOBLINKTIME ((sal_uLong)0xFFFFFFFF)
386 : :
387 : : class VCL_DLLPUBLIC StyleSettings
388 : : {
389 : : void CopyData();
390 : :
391 : : private:
392 : : ImplStyleData* mpData;
393 : :
394 : : public:
395 : : StyleSettings();
396 : : StyleSettings( const StyleSettings& rSet );
397 : : ~StyleSettings();
398 : :
399 : : void Set3DColors( const Color& rColor );
400 : 22 : void SetFaceColor( const Color& rColor )
401 : 22 : { CopyData(); mpData->maFaceColor = rColor; }
402 : 673807 : const Color& GetFaceColor() const
403 : 673807 : { return mpData->maFaceColor; }
404 : : Color GetFaceGradientColor() const;
405 : : Color GetSeparatorColor() const;
406 : 22 : void SetCheckedColor( const Color& rColor )
407 : 22 : { CopyData(); mpData->maCheckedColor = rColor; }
408 : : void SetCheckedColorSpecialCase( );
409 : 10122 : const Color& GetCheckedColor() const
410 : 10122 : { return mpData->maCheckedColor; }
411 : 4 : void SetLightColor( const Color& rColor )
412 : 4 : { CopyData(); mpData->maLightColor = rColor; }
413 : 77219 : const Color& GetLightColor() const
414 : 77219 : { return mpData->maLightColor; }
415 : 4 : void SetLightBorderColor( const Color& rColor )
416 : 4 : { CopyData(); mpData->maLightBorderColor = rColor; }
417 : 37357 : const Color& GetLightBorderColor() const
418 : 37357 : { return mpData->maLightBorderColor; }
419 : 22 : void SetShadowColor( const Color& rColor )
420 : 22 : { CopyData(); mpData->maShadowColor = rColor; }
421 : 347548 : const Color& GetShadowColor() const
422 : 347548 : { return mpData->maShadowColor; }
423 : 4 : void SetDarkShadowColor( const Color& rColor )
424 : 4 : { CopyData(); mpData->maDarkShadowColor = rColor; }
425 : 102291 : const Color& GetDarkShadowColor() const
426 : 102291 : { return mpData->maDarkShadowColor; }
427 : 22 : void SetButtonTextColor( const Color& rColor )
428 : 22 : { CopyData(); mpData->maButtonTextColor = rColor; }
429 : 132396 : const Color& GetButtonTextColor() const
430 : 132396 : { return mpData->maButtonTextColor; }
431 : 0 : void SetButtonRolloverTextColor( const Color& rColor )
432 : 0 : { CopyData(); mpData->maButtonRolloverTextColor = rColor; }
433 : 0 : const Color& GetButtonRolloverTextColor() const
434 : 0 : { return mpData->maButtonRolloverTextColor; }
435 : 0 : void SetRadioCheckTextColor( const Color& rColor )
436 : 0 : { CopyData(); mpData->maRadioCheckTextColor = rColor; }
437 : 1204 : const Color& GetRadioCheckTextColor() const
438 : 1204 : { return mpData->maRadioCheckTextColor; }
439 : 0 : void SetGroupTextColor( const Color& rColor )
440 : 0 : { CopyData(); mpData->maGroupTextColor = rColor; }
441 : 537 : const Color& GetGroupTextColor() const
442 : 537 : { return mpData->maGroupTextColor; }
443 : 0 : void SetLabelTextColor( const Color& rColor )
444 : 0 : { CopyData(); mpData->maLabelTextColor = rColor; }
445 : 1241 : const Color& GetLabelTextColor() const
446 : 1241 : { return mpData->maLabelTextColor; }
447 : 0 : void SetInfoTextColor( const Color& rColor )
448 : 0 : { CopyData(); mpData->maInfoTextColor = rColor; }
449 : 0 : const Color& GetInfoTextColor() const
450 : 0 : { return mpData->maInfoTextColor; }
451 : 0 : void SetWindowColor( const Color& rColor )
452 : 0 : { CopyData(); mpData->maWindowColor = rColor; }
453 : 61590 : const Color& GetWindowColor() const
454 : 61590 : { return mpData->maWindowColor; }
455 : 0 : void SetWindowTextColor( const Color& rColor )
456 : 0 : { CopyData(); mpData->maWindowTextColor = rColor; }
457 : 46348 : const Color& GetWindowTextColor() const
458 : 46348 : { return mpData->maWindowTextColor; }
459 : 0 : void SetDialogColor( const Color& rColor )
460 : 0 : { CopyData(); mpData->maDialogColor = rColor; }
461 : 867 : const Color& GetDialogColor() const
462 : 867 : { return mpData->maDialogColor; }
463 : 0 : void SetDialogTextColor( const Color& rColor )
464 : 0 : { CopyData(); mpData->maDialogTextColor = rColor; }
465 : 0 : const Color& GetDialogTextColor() const
466 : 0 : { return mpData->maDialogTextColor; }
467 : 0 : void SetWorkspaceColor( const Color& rColor )
468 : 0 : { CopyData(); mpData->maWorkspaceColor = rColor; }
469 : 12056 : const Color& GetWorkspaceColor() const
470 : 12056 : { return mpData->maWorkspaceColor; }
471 : 0 : void SetFieldColor( const Color& rColor )
472 : 0 : { CopyData(); mpData->maFieldColor = rColor; }
473 : 50841 : const Color& GetFieldColor() const
474 : 50841 : { return mpData->maFieldColor; }
475 : 36 : void SetFieldTextColor( const Color& rColor )
476 : 36 : { CopyData(); mpData->maFieldTextColor = rColor; }
477 : 29197 : const Color& GetFieldTextColor() const
478 : 29197 : { return mpData->maFieldTextColor; }
479 : 0 : void SetFieldRolloverTextColor( const Color& rColor )
480 : 0 : { CopyData(); mpData->maFieldRolloverTextColor = rColor; }
481 : 0 : const Color& GetFieldRolloverTextColor() const
482 : 0 : { return mpData->maFieldRolloverTextColor; }
483 : 0 : void SetActiveColor( const Color& rColor )
484 : 0 : { CopyData(); mpData->maActiveColor = rColor; }
485 : 0 : const Color& GetActiveColor() const
486 : 0 : { return mpData->maActiveColor; }
487 : : void SetActiveColor2( const Color& rColor )
488 : : { CopyData(); mpData->maActiveColor2 = rColor; }
489 : : const Color& GetActiveColor2() const
490 : : { return mpData->maActiveColor2; }
491 : 0 : void SetActiveTextColor( const Color& rColor )
492 : 0 : { CopyData(); mpData->maActiveTextColor = rColor; }
493 : 410 : const Color& GetActiveTextColor() const
494 : 410 : { return mpData->maActiveTextColor; }
495 : 0 : void SetActiveBorderColor( const Color& rColor )
496 : 0 : { CopyData(); mpData->maActiveBorderColor = rColor; }
497 : 0 : const Color& GetActiveBorderColor() const
498 : 0 : { return mpData->maActiveBorderColor; }
499 : 0 : void SetDeactiveColor( const Color& rColor )
500 : 0 : { CopyData(); mpData->maDeactiveColor = rColor; }
501 : 550 : const Color& GetDeactiveColor() const
502 : 550 : { return mpData->maDeactiveColor; }
503 : : void SetDeactiveColor2( const Color& rColor )
504 : : { CopyData(); mpData->maDeactiveColor2 = rColor; }
505 : : const Color& GetDeactiveColor2() const
506 : : { return mpData->maDeactiveColor2; }
507 : 0 : void SetDeactiveTextColor( const Color& rColor )
508 : 0 : { CopyData(); mpData->maDeactiveTextColor = rColor; }
509 : 0 : const Color& GetDeactiveTextColor() const
510 : 0 : { return mpData->maDeactiveTextColor; }
511 : 0 : void SetDeactiveBorderColor( const Color& rColor )
512 : 0 : { CopyData(); mpData->maDeactiveBorderColor = rColor; }
513 : 0 : const Color& GetDeactiveBorderColor() const
514 : 0 : { return mpData->maDeactiveBorderColor; }
515 : 0 : void SetHighlightColor( const Color& rColor )
516 : 0 : { CopyData(); mpData->maHighlightColor = rColor; }
517 : 15784 : const Color& GetHighlightColor() const
518 : 15784 : { return mpData->maHighlightColor; }
519 : 0 : void SetHighlightTextColor( const Color& rColor )
520 : 0 : { CopyData(); mpData->maHighlightTextColor = rColor; }
521 : 8695 : const Color& GetHighlightTextColor() const
522 : 8695 : { return mpData->maHighlightTextColor; }
523 : 0 : void SetDisableColor( const Color& rColor )
524 : 0 : { CopyData(); mpData->maDisableColor = rColor; }
525 : 2917 : const Color& GetDisableColor() const
526 : 2917 : { return mpData->maDisableColor; }
527 : 0 : void SetHelpColor( const Color& rColor )
528 : 0 : { CopyData(); mpData->maHelpColor = rColor; }
529 : 55 : const Color& GetHelpColor() const
530 : 55 : { return mpData->maHelpColor; }
531 : 0 : void SetHelpTextColor( const Color& rColor )
532 : 0 : { CopyData(); mpData->maHelpTextColor = rColor; }
533 : 55 : const Color& GetHelpTextColor() const
534 : 55 : { return mpData->maHelpTextColor; }
535 : 0 : void SetMenuColor( const Color& rColor )
536 : 0 : { CopyData(); mpData->maMenuColor = rColor; }
537 : 1638 : const Color& GetMenuColor() const
538 : 1638 : { return mpData->maMenuColor; }
539 : 0 : void SetMenuBarColor( const Color& rColor )
540 : 0 : { CopyData(); mpData->maMenuBarColor = rColor; }
541 : 2 : const Color& GetMenuBarColor() const
542 : 2 : { return mpData->maMenuBarColor; }
543 : 0 : void SetMenuBorderColor( const Color& rColor )
544 : 0 : { CopyData(); mpData->maMenuBorderColor = rColor; }
545 : 14 : const Color& GetMenuBorderColor() const
546 : 14 : { return mpData->maMenuBorderColor; }
547 : 0 : void SetMenuTextColor( const Color& rColor )
548 : 0 : { CopyData(); mpData->maMenuTextColor = rColor; }
549 : 18 : const Color& GetMenuTextColor() const
550 : 18 : { return mpData->maMenuTextColor; }
551 : 0 : void SetMenuBarTextColor( const Color& rColor )
552 : 0 : { CopyData(); mpData->maMenuBarTextColor = rColor; }
553 : 1742 : const Color& GetMenuBarTextColor() const
554 : 1742 : { return mpData->maMenuBarTextColor; }
555 : 0 : void SetMenuHighlightColor( const Color& rColor )
556 : 0 : { CopyData(); mpData->maMenuHighlightColor = rColor; }
557 : 421 : const Color& GetMenuHighlightColor() const
558 : 421 : { return mpData->maMenuHighlightColor; }
559 : 0 : void SetMenuHighlightTextColor( const Color& rColor )
560 : 0 : { CopyData(); mpData->maMenuHighlightTextColor = rColor; }
561 : 31 : const Color& GetMenuHighlightTextColor() const
562 : 31 : { return mpData->maMenuHighlightTextColor; }
563 : 0 : void SetLinkColor( const Color& rColor )
564 : 0 : { CopyData(); mpData->maLinkColor = rColor; }
565 : 222 : const Color& GetLinkColor() const
566 : 222 : { return mpData->maLinkColor; }
567 : 0 : void SetVisitedLinkColor( const Color& rColor )
568 : 0 : { CopyData(); mpData->maVisitedLinkColor = rColor; }
569 : 121 : const Color& GetVisitedLinkColor() const
570 : 121 : { return mpData->maVisitedLinkColor; }
571 : : void SetHighlightLinkColor( const Color& rColor )
572 : : { CopyData(); mpData->maHighlightLinkColor = rColor; }
573 : 0 : const Color& GetHighlightLinkColor() const
574 : 0 : { return mpData->maHighlightLinkColor; }
575 : :
576 : 493 : void SetMonoColor( const Color& rColor )
577 : 493 : { CopyData(); mpData->maMonoColor = rColor; }
578 : 1718 : const Color& GetMonoColor() const
579 : 1718 : { return mpData->maMonoColor; }
580 : :
581 : 0 : void SetActiveTabColor( const Color& rColor )
582 : 0 : { CopyData(); mpData->maActiveTabColor = rColor; }
583 : 445 : const Color& GetActiveTabColor() const
584 : 445 : { return mpData->maActiveTabColor; }
585 : 0 : void SetInactiveTabColor( const Color& rColor )
586 : 0 : { CopyData(); mpData->maInactiveTabColor = rColor; }
587 : 445 : const Color& GetInactiveTabColor() const
588 : 445 : { return mpData->maInactiveTabColor; }
589 : :
590 : 367 : void SetHighContrastMode( sal_Bool bHighContrast )
591 : 367 : { CopyData(); mpData->mnHighContrast = bHighContrast; }
592 : 413774 : sal_Bool GetHighContrastMode() const
593 : 413774 : { return (sal_Bool) mpData->mnHighContrast; }
594 : 158 : void SetUseSystemUIFonts( sal_Bool bUseSystemUIFonts )
595 : 158 : { CopyData(); mpData->mnUseSystemUIFonts = bUseSystemUIFonts; }
596 : 683 : sal_Bool GetUseSystemUIFonts() const
597 : 683 : { return (sal_Bool) mpData->mnUseSystemUIFonts; }
598 : : void SetUseFlatBorders( sal_Bool bUseFlatBorders )
599 : : { CopyData(); mpData->mnUseFlatBorders = bUseFlatBorders; }
600 : 35174 : sal_Bool GetUseFlatBorders() const
601 : 35174 : { return (sal_Bool) mpData->mnUseFlatBorders; }
602 : : void SetUseFlatMenues( sal_Bool bUseFlatMenues )
603 : : { CopyData(); mpData->mnUseFlatMenues = bUseFlatMenues; }
604 : 14 : sal_Bool GetUseFlatMenues() const
605 : 14 : { return (sal_Bool) mpData->mnUseFlatMenues; }
606 : 316 : void SetUseImagesInMenus( sal_Bool bUseImagesInMenus )
607 : 316 : { CopyData(); mpData->mnUseImagesInMenus = bUseImagesInMenus; }
608 : : sal_Bool GetUseImagesInMenus() const;
609 : 0 : void SetPreferredUseImagesInMenus( sal_Bool bPreferredUseImagesInMenus )
610 : 0 : { CopyData(); mpData->mbPreferredUseImagesInMenus = bPreferredUseImagesInMenus; }
611 : 47949 : sal_Bool GetPreferredUseImagesInMenus() const
612 : 47949 : { return mpData->mbPreferredUseImagesInMenus; }
613 : 0 : void SetSkipDisabledInMenus( sal_Bool bSkipDisabledInMenus )
614 : 0 : { CopyData(); mpData->mnSkipDisabledInMenus = bSkipDisabledInMenus; }
615 : 0 : sal_Bool GetSkipDisabledInMenus() const
616 : 0 : { return (sal_Bool) mpData->mnSkipDisabledInMenus; }
617 : : void SetHideDisabledMenuItems( sal_Bool bHideDisabledMenuItems )
618 : : { CopyData(); mpData->mbHideDisabledMenuItems = bHideDisabledMenuItems; }
619 : 0 : sal_Bool GetHideDisabledMenuItems() const
620 : 0 : { return mpData->mbHideDisabledMenuItems; }
621 : 0 : void SetAcceleratorsInContextMenus( sal_Bool bAcceleratorsInContextMenus )
622 : 0 : { CopyData(); mpData->mnAcceleratorsInContextMenus = bAcceleratorsInContextMenus; }
623 : 0 : sal_Bool GetAcceleratorsInContextMenus() const
624 : 0 : { return mpData->mnAcceleratorsInContextMenus; }
625 : :
626 : 0 : void SetCairoFontOptions( const void *pOptions )
627 : 0 : { CopyData(); mpData->mpFontOptions = pOptions; }
628 : 0 : const void* GetCairoFontOptions() const
629 : 0 : { return mpData->mpFontOptions; }
630 : :
631 : 367 : void SetAppFont( const Font& rFont )
632 : 367 : { CopyData(); mpData->maAppFont = rFont; }
633 : 126502 : const Font& GetAppFont() const
634 : 126502 : { return mpData->maAppFont; }
635 : 0 : void SetHelpFont( const Font& rFont )
636 : 0 : { CopyData(); mpData->maHelpFont = rFont; }
637 : 0 : const Font& GetHelpFont() const
638 : 0 : { return mpData->maHelpFont; }
639 : 367 : void SetTitleFont( const Font& rFont )
640 : 367 : { CopyData(); mpData->maTitleFont = rFont; }
641 : 367 : const Font& GetTitleFont() const
642 : 367 : { return mpData->maTitleFont; }
643 : 367 : void SetFloatTitleFont( const Font& rFont )
644 : 367 : { CopyData(); mpData->maFloatTitleFont = rFont; }
645 : 367 : const Font& GetFloatTitleFont() const
646 : 367 : { return mpData->maFloatTitleFont; }
647 : 0 : void SetMenuFont( const Font& rFont )
648 : 0 : { CopyData(); mpData->maMenuFont = rFont; }
649 : 2100 : const Font& GetMenuFont() const
650 : 2100 : { return mpData->maMenuFont; }
651 : 367 : void SetToolFont( const Font& rFont )
652 : 367 : { CopyData(); mpData->maToolFont = rFont; }
653 : 18678 : const Font& GetToolFont() const
654 : 18678 : { return mpData->maToolFont; }
655 : 367 : void SetGroupFont( const Font& rFont )
656 : 367 : { CopyData(); mpData->maGroupFont = rFont; }
657 : 904 : const Font& GetGroupFont() const
658 : 904 : { return mpData->maGroupFont; }
659 : 367 : void SetLabelFont( const Font& rFont )
660 : 367 : { CopyData(); mpData->maLabelFont = rFont; }
661 : 1615 : const Font& GetLabelFont() const
662 : 1615 : { return mpData->maLabelFont; }
663 : 367 : void SetInfoFont( const Font& rFont )
664 : 367 : { CopyData(); mpData->maInfoFont = rFont; }
665 : 367 : const Font& GetInfoFont() const
666 : 367 : { return mpData->maInfoFont; }
667 : 367 : void SetRadioCheckFont( const Font& rFont )
668 : 367 : { CopyData(); mpData->maRadioCheckFont = rFont; }
669 : 1945 : const Font& GetRadioCheckFont() const
670 : 1945 : { return mpData->maRadioCheckFont; }
671 : 367 : void SetPushButtonFont( const Font& rFont )
672 : 367 : { CopyData(); mpData->maPushButtonFont = rFont; }
673 : 14763 : const Font& GetPushButtonFont() const
674 : 14763 : { return mpData->maPushButtonFont; }
675 : 403 : void SetFieldFont( const Font& rFont )
676 : 403 : { CopyData(); mpData->maFieldFont = rFont; }
677 : 19049 : const Font& GetFieldFont() const
678 : 19049 : { return mpData->maFieldFont; }
679 : 367 : void SetIconFont( const Font& rFont )
680 : 367 : { CopyData(); mpData->maIconFont = rFont; }
681 : 367 : const Font& GetIconFont() const
682 : 367 : { return mpData->maIconFont; }
683 : :
684 : : void SetBorderSize( long nSize )
685 : : { CopyData(); mpData->mnBorderSize = nSize; }
686 : 0 : long GetBorderSize() const
687 : 0 : { return mpData->mnBorderSize; }
688 : : void SetTitleHeight( long nSize )
689 : : { CopyData(); mpData->mnTitleHeight = nSize; }
690 : 1138 : long GetTitleHeight() const
691 : 1138 : { return mpData->mnTitleHeight; }
692 : : void SetFloatTitleHeight( long nSize )
693 : : { CopyData(); mpData->mnFloatTitleHeight = nSize; }
694 : 0 : long GetFloatTitleHeight() const
695 : 0 : { return mpData->mnFloatTitleHeight; }
696 : : void SetTearOffTitleHeight( long nSize )
697 : : { CopyData(); mpData->mnTearOffTitleHeight = nSize; }
698 : 0 : long GetTearOffTitleHeight() const
699 : 0 : { return mpData->mnTearOffTitleHeight; }
700 : : void SetMenuBarHeight( long nSize )
701 : : { CopyData(); mpData->mnMenuBarHeight = nSize; }
702 : : long GetMenuBarHeight() const
703 : : { return mpData->mnMenuBarHeight; }
704 : 0 : void SetScrollBarSize( long nSize )
705 : 0 : { CopyData(); mpData->mnScrollBarSize = nSize; }
706 : 48541 : long GetScrollBarSize() const
707 : 48541 : { return mpData->mnScrollBarSize; }
708 : 0 : void SetMinThumbSize( long nSize )
709 : 0 : { CopyData(); mpData->mnMinThumbSize = nSize; }
710 : 10689 : long GetMinThumbSize() const
711 : 10689 : { return mpData->mnMinThumbSize; }
712 : : void SetSpinSize( long nSize )
713 : : { CopyData(); mpData->mnSpinSize = nSize; }
714 : 893 : long GetSpinSize() const
715 : 893 : { return mpData->mnSpinSize; }
716 : : void SetSplitSize( long nSize )
717 : : { CopyData(); mpData->mnSplitSize = nSize; }
718 : 460 : long GetSplitSize() const
719 : 460 : { return mpData->mnSplitSize; }
720 : :
721 : : void SetIconHorzSpace( long nSpace )
722 : : { CopyData(); mpData->mnIconHorzSpace = nSpace; }
723 : : long GetIconHorzSpace() const
724 : : { return mpData->mnIconHorzSpace; }
725 : : void SetIconVertSpace( long nSpace )
726 : : { CopyData(); mpData->mnIconVertSpace = nSpace; }
727 : : long GetIconVertSpace() const
728 : : { return mpData->mnIconVertSpace; }
729 : :
730 : : void SetCursorSize( long nSize )
731 : : { CopyData(); mpData->mnCursorSize = nSize; }
732 : 35958 : long GetCursorSize() const
733 : 35958 : { return mpData->mnCursorSize; }
734 : 35537 : void SetCursorBlinkTime( long nBlinkTime )
735 : 35537 : { CopyData(); mpData->mnCursorBlinkTime = nBlinkTime; }
736 : 105887 : long GetCursorBlinkTime() const
737 : 105887 : { return (long) mpData->mnCursorBlinkTime; }
738 : :
739 : 158 : void SetScreenZoom( sal_uInt16 nPercent )
740 : 158 : { CopyData(); mpData->mnScreenZoom = nPercent; }
741 : 124561 : sal_uInt16 GetScreenZoom() const
742 : 124561 : { return mpData->mnScreenZoom; }
743 : 158 : void SetScreenFontZoom( sal_uInt16 nPercent )
744 : 158 : { CopyData(); mpData->mnScreenFontZoom = nPercent; }
745 : 180397 : sal_uInt16 GetScreenFontZoom() const
746 : 180397 : { return mpData->mnScreenFontZoom; }
747 : :
748 : : void SetLogoDisplayTime( sal_uLong nDisplayTime )
749 : : { CopyData(); mpData->mnLogoDisplayTime = nDisplayTime; }
750 : : sal_uLong GetLogoDisplayTime() const
751 : : { return mpData->mnLogoDisplayTime; }
752 : :
753 : 318 : void SetDragFullOptions( sal_uLong nOptions )
754 : 318 : { CopyData(); mpData->mnDragFullOptions = nOptions; }
755 : 3248 : sal_uLong GetDragFullOptions() const
756 : 3248 : { return mpData->mnDragFullOptions; }
757 : :
758 : : void SetAnimationOptions( sal_uLong nOptions )
759 : : { CopyData(); mpData->mnAnimationOptions = nOptions; }
760 : : sal_uLong GetAnimationOptions() const
761 : : { return mpData->mnAnimationOptions; }
762 : :
763 : 62 : void SetSelectionOptions( sal_uLong nOptions )
764 : 62 : { CopyData(); mpData->mnSelectionOptions = nOptions; }
765 : 182 : sal_uLong GetSelectionOptions() const
766 : 182 : { return mpData->mnSelectionOptions; }
767 : :
768 : 158 : void SetDisplayOptions( sal_uLong nOptions )
769 : 158 : { CopyData(); mpData->mnDisplayOptions = nOptions; }
770 : 183645 : sal_uLong GetDisplayOptions() const
771 : 183645 : { return mpData->mnDisplayOptions; }
772 : 158 : void SetAntialiasingMinPixelHeight( long nMinPixel )
773 : 158 : { CopyData(); mpData->mnAntialiasedMin = nMinPixel; }
774 : 183645 : sal_uLong GetAntialiasingMinPixelHeight() const
775 : 183645 : { return mpData->mnAntialiasedMin; }
776 : :
777 : 100 : void SetOptions( sal_uLong nOptions )
778 : 100 : { CopyData(); mpData->mnOptions = nOptions; }
779 : 188233 : sal_uLong GetOptions() const
780 : 188233 : { return mpData->mnOptions; }
781 : 233 : void SetAutoMnemonic( sal_Bool bAutoMnemonic )
782 : 233 : { CopyData(); mpData->mnAutoMnemonic = (sal_uInt16)bAutoMnemonic; }
783 : 22 : sal_Bool GetAutoMnemonic() const
784 [ + - ]: 22 : { return mpData->mnAutoMnemonic ? sal_True : sal_False; }
785 : :
786 : 0 : void SetFontColor( const Color& rColor )
787 : 0 : { CopyData(); mpData->maFontColor = rColor; }
788 : 155 : const Color& GetFontColor() const
789 : 155 : { return mpData->maFontColor; }
790 : :
791 : 0 : void SetToolbarIconSize( sal_uLong nSize )
792 : 0 : { CopyData(); mpData->mnToolbarIconSize = nSize; }
793 : 13231 : sal_uLong GetToolbarIconSize() const
794 : 13231 : { return mpData->mnToolbarIconSize; }
795 : :
796 : 0 : void SetSymbolsStyle( sal_uLong nStyle )
797 : 0 : { CopyData(); mpData->mnSymbolsStyle = nStyle; }
798 : 210546 : sal_uLong GetSymbolsStyle() const
799 : 210546 : { return mpData->mnSymbolsStyle; }
800 : :
801 : 0 : void SetPreferredSymbolsStyle( sal_uLong nStyle )
802 : 0 : { CopyData(); mpData->mnPreferredSymbolsStyle = nStyle; }
803 : : void SetPreferredSymbolsStyleName( const ::rtl::OUString &rName );
804 : 192306 : sal_uLong GetPreferredSymbolsStyle() const
805 : 192306 : { return mpData->mnPreferredSymbolsStyle; }
806 : : // check whether the symbols style is supported (icons are installed)
807 : : bool CheckSymbolStyle( sal_uLong nStyle ) const;
808 : : sal_uLong GetAutoSymbolsStyle() const;
809 : :
810 : : sal_uLong GetCurrentSymbolsStyle() const;
811 : :
812 : 0 : void SetSymbolsStyleName( const ::rtl::OUString &rName )
813 : 0 : { return SetSymbolsStyle( ImplNameToSymbolsStyle( rName ) ); }
814 : 734 : ::rtl::OUString GetSymbolsStyleName() const
815 : 734 : { return ImplSymbolsStyleToName( GetSymbolsStyle() ); }
816 : 47564 : ::rtl::OUString GetCurrentSymbolsStyleName() const
817 : 47564 : { return ImplSymbolsStyleToName( GetCurrentSymbolsStyle() ); }
818 : :
819 : : const Wallpaper& GetWorkspaceGradient() const
820 : : { return mpData->maWorkspaceGradient; }
821 : 367 : void SetWorkspaceGradient( const Wallpaper& rWall )
822 : 367 : { CopyData(); mpData->maWorkspaceGradient = rWall; }
823 : :
824 : : void SetStandardStyles();
825 : :
826 : : const StyleSettings& operator =( const StyleSettings& rSet );
827 : :
828 : : sal_Bool operator ==( const StyleSettings& rSet ) const;
829 : 42983 : sal_Bool operator !=( const StyleSettings& rSet ) const
830 : 42983 : { return !(*this == rSet); }
831 : :
832 : : protected:
833 : : ::rtl::OUString ImplSymbolsStyleToName( sal_uLong nStyle ) const;
834 : : sal_uLong ImplNameToSymbolsStyle( const ::rtl::OUString &rName ) const;
835 : : };
836 : :
837 : : // ----------------
838 : : // - ImplMiscData -
839 : : // ----------------
840 : :
841 : : class ImplMiscData
842 : : {
843 : : friend class MiscSettings;
844 : :
845 : : ImplMiscData();
846 : : ImplMiscData( const ImplMiscData& rData );
847 : :
848 : : private:
849 : : sal_uLong mnRefCount;
850 : : sal_uInt16 mnEnableATT;
851 : : sal_Bool mbEnableLocalizedDecimalSep;
852 : : sal_uInt16 mnDisablePrinting;
853 : : };
854 : :
855 : : // ----------------
856 : : // - MiscSettings -
857 : : // ----------------
858 : :
859 : : class VCL_DLLPUBLIC MiscSettings
860 : : {
861 : : void CopyData();
862 : :
863 : : private:
864 : : ImplMiscData* mpData;
865 : :
866 : : public:
867 : : MiscSettings();
868 : : MiscSettings( const MiscSettings& rSet );
869 : : ~MiscSettings();
870 : :
871 : : #ifdef WNT
872 : : void SetEnableATToolSupport( sal_Bool bEnable );
873 : : #endif
874 : : sal_Bool GetEnableATToolSupport() const;
875 : : sal_Bool GetDisablePrinting() const;
876 : : void SetEnableLocalizedDecimalSep( sal_Bool bEnable );
877 : : sal_Bool GetEnableLocalizedDecimalSep() const;
878 : : const MiscSettings& operator =( const MiscSettings& rSet );
879 : :
880 : : sal_Bool operator ==( const MiscSettings& rSet ) const;
881 : 42983 : sal_Bool operator !=( const MiscSettings& rSet ) const
882 : 42983 : { return !(*this == rSet); }
883 : : };
884 : :
885 : : // ----------------
886 : : // - ImplHelpData -
887 : : // ----------------
888 : :
889 : : class ImplHelpData
890 : : {
891 : : friend class HelpSettings;
892 : :
893 : : ImplHelpData();
894 : : ImplHelpData( const ImplHelpData& rData );
895 : :
896 : : private:
897 : : sal_uLong mnRefCount;
898 : : sal_uLong mnOptions;
899 : : sal_uLong mnTipDelay;
900 : : sal_uLong mnTipTimeout;
901 : : sal_uLong mnBalloonDelay;
902 : : };
903 : :
904 : : // ----------------
905 : : // - HelpSettings -
906 : : // ----------------
907 : :
908 : : class VCL_DLLPUBLIC HelpSettings
909 : : {
910 : : void CopyData();
911 : :
912 : : private:
913 : : ImplHelpData* mpData;
914 : :
915 : : public:
916 : : HelpSettings();
917 : : HelpSettings( const HelpSettings& rSet );
918 : : ~HelpSettings();
919 : :
920 : : void SetOptions( sal_uLong nOptions )
921 : : { CopyData(); mpData->mnOptions = nOptions; }
922 : : sal_uLong GetOptions() const
923 : : { return mpData->mnOptions; }
924 : : void SetTipDelay( sal_uLong nTipDelay )
925 : : { CopyData(); mpData->mnTipDelay = nTipDelay; }
926 : 0 : sal_uLong GetTipDelay() const
927 : 0 : { return mpData->mnTipDelay; }
928 : 158 : void SetTipTimeout( sal_uLong nTipTimeout )
929 : 158 : { CopyData(); mpData->mnTipTimeout = nTipTimeout; }
930 : 0 : sal_uLong GetTipTimeout() const
931 : 0 : { return mpData->mnTipTimeout; }
932 : : void SetBalloonDelay( sal_uLong nBalloonDelay )
933 : : { CopyData(); mpData->mnBalloonDelay = nBalloonDelay; }
934 : 0 : sal_uLong GetBalloonDelay() const
935 : 0 : { return mpData->mnBalloonDelay; }
936 : :
937 : : const HelpSettings& operator =( const HelpSettings& rSet );
938 : :
939 : : sal_Bool operator ==( const HelpSettings& rSet ) const;
940 : 42983 : sal_Bool operator !=( const HelpSettings& rSet ) const
941 : 42983 : { return !(*this == rSet); }
942 : : };
943 : :
944 : : // -----------------------
945 : : // - ImplAllSettingsData -
946 : : // -----------------------
947 : : class ImplAllSettingsData
948 : : {
949 : : friend class AllSettings;
950 : :
951 : : ImplAllSettingsData();
952 : : ImplAllSettingsData( const ImplAllSettingsData& rData );
953 : : ~ImplAllSettingsData();
954 : :
955 : : private:
956 : : sal_uLong mnRefCount;
957 : : MouseSettings maMouseSettings;
958 : : StyleSettings maStyleSettings;
959 : : MiscSettings maMiscSettings;
960 : : HelpSettings maHelpSettings;
961 : : ::com::sun::star::lang::Locale maLocale;
962 : : sal_uLong mnSystemUpdate;
963 : : sal_uLong mnWindowUpdate;
964 : : ::com::sun::star::lang::Locale maUILocale;
965 : : LanguageType meLanguage;
966 : : LanguageType meUILanguage;
967 : : LocaleDataWrapper* mpLocaleDataWrapper;
968 : : LocaleDataWrapper* mpUILocaleDataWrapper;
969 : : vcl::I18nHelper* mpI18nHelper;
970 : : vcl::I18nHelper* mpUII18nHelper;
971 : : SvtSysLocale maSysLocale;
972 : : };
973 : :
974 : : // ---------------
975 : : // - AllSettings -
976 : : // ---------------
977 : :
978 : : const int SETTINGS_MOUSE = 0x00000001;
979 : : const int SETTINGS_STYLE = 0x00000002;
980 : : const int SETTINGS_MISC = 0x00000004;
981 : : const int SETTINGS_SOUND = 0x00000008;
982 : : const int SETTINGS_HELP = 0x00000010;
983 : : const int SETTINGS_LOCALE = 0x00000020;
984 : : const int SETTINGS_UILOCALE = 0x00000040;
985 : : const int SETTINGS_ALLSETTINGS = ( SETTINGS_MOUSE |
986 : : SETTINGS_STYLE | SETTINGS_MISC |
987 : : SETTINGS_SOUND |
988 : : SETTINGS_HELP |
989 : : SETTINGS_LOCALE | SETTINGS_UILOCALE );
990 : : const int SETTINGS_IN_UPDATE_SETTINGS = 0x00000800; // this flag indicates that the data changed event was created
991 : : // in Windows::UpdateSettings probably because of a global
992 : : // settings changed
993 : :
994 : : class VCL_DLLPUBLIC AllSettings
995 : : {
996 : : void CopyData();
997 : :
998 : : private:
999 : : ImplAllSettingsData* mpData;
1000 : :
1001 : : public:
1002 : : AllSettings();
1003 : : AllSettings( const AllSettings& rSet );
1004 : : ~AllSettings();
1005 : :
1006 : 2176 : void SetMouseSettings( const MouseSettings& rSet )
1007 : 2176 : { CopyData(); mpData->maMouseSettings = rSet; }
1008 : 4392 : const MouseSettings& GetMouseSettings() const
1009 : 4392 : { return mpData->maMouseSettings; }
1010 : :
1011 : 37731 : void SetStyleSettings( const StyleSettings& rSet )
1012 : 37731 : { CopyData(); mpData->maStyleSettings = rSet; }
1013 : 2235382 : const StyleSettings& GetStyleSettings() const
1014 : 2235382 : { return mpData->maStyleSettings; }
1015 : :
1016 : 0 : void SetMiscSettings( const MiscSettings& rSet )
1017 : 0 : { CopyData(); mpData->maMiscSettings = rSet; }
1018 : 46943 : const MiscSettings& GetMiscSettings() const
1019 : 46943 : { return mpData->maMiscSettings; }
1020 : :
1021 : 158 : void SetHelpSettings( const HelpSettings& rSet )
1022 : 158 : { CopyData(); mpData->maHelpSettings = rSet; }
1023 : 158 : const HelpSettings& GetHelpSettings() const
1024 : 158 : { return mpData->maHelpSettings; }
1025 : :
1026 : : void SetLocale( const ::com::sun::star::lang::Locale& rLocale );
1027 : : const ::com::sun::star::lang::Locale& GetLocale() const;
1028 : : void SetUILocale( const ::com::sun::star::lang::Locale& rLocale );
1029 : : const ::com::sun::star::lang::Locale& GetUILocale() const;
1030 : : void SetLanguage( LanguageType eLang );
1031 : : LanguageType GetLanguage() const;
1032 : : void SetUILanguage( LanguageType eLang );
1033 : : LanguageType GetUILanguage() const;
1034 : : bool GetLayoutRTL() const; // returns true if UI language requires right-to-left UI
1035 : : const LocaleDataWrapper& GetLocaleDataWrapper() const;
1036 : : const LocaleDataWrapper& GetUILocaleDataWrapper() const;
1037 : : const vcl::I18nHelper& GetLocaleI18nHelper() const;
1038 : : const vcl::I18nHelper& GetUILocaleI18nHelper() const;
1039 : :
1040 : : void SetSystemUpdate( sal_uLong nUpdate )
1041 : : { CopyData(); mpData->mnSystemUpdate = nUpdate; }
1042 : : sal_uLong GetSystemUpdate() const
1043 : : { return mpData->mnSystemUpdate; }
1044 : : void SetWindowUpdate( sal_uLong nUpdate )
1045 : : { CopyData(); mpData->mnWindowUpdate = nUpdate; }
1046 : 884 : sal_uLong GetWindowUpdate() const
1047 : 884 : { return mpData->mnWindowUpdate; }
1048 : :
1049 : : sal_uLong Update( sal_uLong nFlags, const AllSettings& rSettings );
1050 : : sal_uLong GetChangeFlags( const AllSettings& rSettings ) const;
1051 : :
1052 : : const AllSettings& operator =( const AllSettings& rSet );
1053 : :
1054 : : sal_Bool operator ==( const AllSettings& rSet ) const;
1055 : : sal_Bool operator !=( const AllSettings& rSet ) const
1056 : : { return !(*this == rSet); }
1057 : : static void LocaleSettingsChanged( sal_uInt32 nHint );
1058 : 409 : SvtSysLocale& GetSysLocale() { return mpData->maSysLocale; }
1059 : : };
1060 : :
1061 : : #endif // _SV_SETTINGS_HXX
1062 : :
1063 : : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|