Update ooo320-m1
[ooovba.git] / sd / source / ui / slidesorter / inc / controller / SlsProperties.hxx
blobc222419795a10a9ec7ba6a88d85aa40f8ce408d4
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: SlsProperties.hxx,v $
11 * $Revision: 1.3 $
13 * This file is part of OpenOffice.org.
15 * OpenOffice.org is free software: you can redistribute it and/or modify
16 * it under the terms of the GNU Lesser General Public License version 3
17 * only, as published by the Free Software Foundation.
19 * OpenOffice.org is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU Lesser General Public License version 3 for more details
23 * (a copy is included in the LICENSE file that accompanied this code).
25 * You should have received a copy of the GNU Lesser General Public License
26 * version 3 along with OpenOffice.org. If not, see
27 * <http://www.openoffice.org/license.html>
28 * for a copy of the LGPLv3 License.
30 ************************************************************************/
32 #ifndef SD_SLIDESORTER_PROPERTIES_HEADER
33 #define SD_SLIDESORTER_PROPERTIES_HEADER
35 #include <tools/color.hxx>
37 namespace sd { namespace slidesorter { namespace controller {
39 /** An extensible set of properties used throughout the slide sorter.
41 class Properties
43 public:
44 Properties (void);
45 ~Properties (void);
47 /** When this method returns <TRUE/> then the current slide is
48 highlighted in the view. The default value is <FALSE/>.
50 bool IsHighlightCurrentSlide (void) const;
51 void SetHighlightCurrentSlide (const bool bIsHighlightCurrentSlide);
53 /** When this method returns <TRUE/> then the selection is indicated in
54 the view (typically by drawing rectangles around the selected
55 slides.) The default value is <TRUE/>.
57 bool IsShowSelection (void) const;
58 void SetShowSelection (const bool bIsShowSelection);
60 /** When this method returns <TRUE/> then the focusdselection is indicated in
61 the view (typically by drawing dotted rectangles around the selected
62 slides.) The default value is <TRUE/>.
64 bool IsShowFocus (void) const;
65 void SetShowFocus (const bool bIsShowFocus);
67 /** When this method returns <TRUE/> then on a selection change the
68 visible area is adapted so that the selected slides are shown
69 centered in the view. This can be used to center the current slide
70 by selecting only the current slide. The default value is <FALSE/>.
72 bool IsCenterSelection (void) const;
73 void SetCenterSelection (const bool bIsCenterSelection);
75 /** When this mehod returns <TRUE/> then the view may try to change the
76 visible area by scrolling it smoothly on the screen. Experimental.
77 Default value is <FALSE/>.
79 bool IsSmoothSelectionScrolling (void) const;
80 void SetSmoothSelectionScrolling (const bool bIsSmoothSelectionScrolling);
82 /** When this method returns <TRUE/> then during a full screen
83 presentation the previews in a slide sorter are not updated.
84 Default value is <TRUE/>.
86 bool IsSuspendPreviewUpdatesDuringFullScreenPresentation (void) const;
87 void SetSuspendPreviewUpdatesDuringFullScreenPresentation (const bool bFlag);
89 /** Return the background color.
91 Color GetBackgroundColor (void) const;
92 void SetBackgroundColor (const Color& rColor);
94 /** Return the text color.
96 Color GetTextColor (void) const;
97 void SetTextColor (const Color& rColor);
99 /** Return the color in which selections are to be painted.
101 Color GetSelectionColor (void) const;
102 void SetSelectionColor (const Color& rColor);
104 /** Return the color used for highlighting e.g. the current slide.
106 Color GetHighlightColor (void) const;
107 void SetHighlightColor (const Color& rColor);
109 /** The UI can be set to be read only indepently from the model status.
110 Used for instance in the presenter view.
112 bool IsUIReadOnly (void) const;
113 void SetUIReadOnly (const bool bIsUIReadOnly);
115 private:
116 bool mbIsHighlightCurrentSlide;
117 bool mbIsShowSelection;
118 bool mbIsShowFocus;
119 bool mbIsCenterSelection;
120 bool mbIsSmoothSelectionScrolling;
121 bool mbIsSuspendPreviewUpdatesDuringFullScreenPresentation;
122 Color maBackgroundColor;
123 Color maTextColor;
124 Color maSelectionColor;
125 Color maHighlightColor;
126 bool mbIsUIReadOnly;
129 } } } // end of namespace ::sd::slidesorter::controller
131 #endif