/* -*- 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_DrawingDocumentDrawView_idl__ #define __com_sun_star_drawing_DrawingDocumentDrawView_idl__ #include #include #include #include #include #include #include module com { module sun { module star { module view { published interface XFormLayerAccess; }; }; }; }; module com { module sun { module star { module drawing { /** This component integrates a view to a DrawPages or MasterPage from a DrawingDocument. */ published service DrawingDocumentDrawView { /** this services offers the integration of this component into the desktop. */ service com::sun::star::frame::Controller; /** lets you access the window for this view @since OOo 1.1.2 */ [optional] interface com::sun::star::awt::XWindow; /** let's you access the view part of the form layer contained in the document's view */ [optional] interface com::sun::star::view::XFormLayerAccess; /** lets you set/get the current page displayed by this view. */ interface com::sun::star::drawing::XDrawView; /** lets you access the properties of this service. */ interface com::sun::star::beans::XPropertySet; /** gives you access to the selected entities of this view. */ interface com::sun::star::view::XSelectionSupplier; /** If the view is in master page mode, the view shows the master pages of this model. */ [property] boolean IsMasterPageMode; /** If the view is in layer mode, the user can modify the layer of the model of this view in the user interface. */ [property] boolean IsLayerMode; /** This is the drawing page that is currently visible. */ [property] XDrawPage CurrentPage; /** This is the area that is currently visible. */ [readonly, property] com::sun::star::awt::Rectangle VisibleArea; /** This property defines the zoom type for the document. @see com::sun::star::view::DocumentZoomType Note: After setting other types then com::sun::star::view::DocumentZoomType::BY_VALUE, implementations may calculate the required zoom value and set the type to com::sun::star::view::DocumentZoomType::BY_VALUE afterwards. @since OOo 1.1.2 */ [optional, property] short ZoomType; /** Defines the zoom value to use. Valid only if the ZoomType is set to com::sun::star::view::DocumentZoomType::BY_VALUE. @since OOo 1.1.2 */ [optional, property] short ZoomValue; /** defines the offset from the top left position of the displayed page to the top left position of the view area in 100th/mm. @since OOo 1.1.2 */ [optional, property] com::sun::star::awt::Point ViewOffset; /** The sub controller takes over view specific handling of properties, the selection, and the current page/slide. The following line is commented because XDrawSubController is not (yet) published and the IDL compiler does not allow that. [optional, property] ::com::sun::star::drawing::XDrawSubController SubController; */ }; }; }; }; }; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */