/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ #ifndef __com_sun_star_drawing_XSlideSorterBase_idl__ #define __com_sun_star_drawing_XSlideSorterBase_idl__ #include #include #include #include #include #include module com { module sun { module star { module drawing { /** This interface exists only because services do not directly support multiple inheritance and attributes.

It provides the interfaces and attributes that every object that implements the SlideSorter service.

*/ interface XSlideSorterBase { /** This interface is included to mark a SlideSorter object as view of the drawing framework and to provide a ResourceId. */ interface ::com::sun::star::drawing::framework::XView; /** The XDrawView interface is included to provide access to the current slide (especially write access). */ interface ::com::sun::star::drawing::XDrawView; /** The set of slides that are displayed by the implementing object.

The default value is the set of all slides of the document for which a slide sorter is created.

*/ [attribute] ::com::sun::star::container::XIndexAccess DocumentSlides; /** Set this flag to `TRUE` in order to have the current slide highlighted.

The default value is `FALSE`.

*/ [attribute] boolean IsHighlightCurrentSlide; /** Set this flag to `TRUE` in order to visualize the selection of slides (typically a bold frame around the selected slides).

The default value is `TRUE`.

*/ [attribute] boolean IsShowSelection; /** Set this flag to `TRUE` to visualize to where the focus is by showing a dotted rectangle around the focused slide.

The default value is `TRUE`.

*/ [attribute] boolean IsShowFocus; /** When this flag has the value `TRUE` then every time the current slide is changed the visual area is shifted so that the new current slide is display in the center of the slide sorter window.

It is not always possible to move the current slide into the exact center of the window, for example when slides are located near the start or end of a document.

The default value is `FALSE`. */ [attribute] boolean IsCenterSelection; /** This flag controls whether updates of previews are created during full screen presentations (`FALSE`) or not (`TRUE`). The suspension of preview creations is an optimization for not slowing down a running presentation.

The default value is `TRUE`.

*/ [attribute] boolean IsSuspendPreviewUpdatesDuringFullScreenPresentation; /** The orientation of a slide sorter can be either vertical (`TRUE`) or horizontal (`FALSE`). */ [attribute] boolean IsOrientationVertical; /** This flag is a hint to make scrolling look smooth. */ [attribute] boolean IsSmoothScrolling; [attribute] ::com::sun::star::util::Color BackgroundColor; [attribute] ::com::sun::star::util::Color TextColor; [attribute] ::com::sun::star::util::Color SelectionColor; [attribute] ::com::sun::star::util::Color HighlightColor; /** This flag controls whether the model can be modified by using keyboard or mouse.

The default value is `TRUE`.

*/ [attribute] boolean IsUIReadOnly; }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */