From 8f266781a6bd6a629bce65c0f613683047c9a794 Mon Sep 17 00:00:00 2001 From: Tor Lillqvist Date: Thu, 6 Nov 2014 12:56:18 +0200 Subject: Bin unused include files, thanks to Andrea Gelmini Change-Id: I848505b1d4ff03779b89a08d4aeefd6ea0ff205b --- sd/source/ui/inc/celltempl.hxx | 48 ----- sd/source/ui/inc/taskpane/ScrollPanel.hxx | 179 ----------------- sd/source/ui/inc/taskpane/SubToolPanel.hxx | 126 ------------ .../ui/inc/taskpane/TaskPaneControlFactory.hxx | 82 -------- sd/source/ui/inc/taskpane/TitledControl.hxx | 168 ---------------- sd/source/ui/sidebar/SidebarFocusManager.hxx | 130 ------------- .../inc/view/SlsPageObjectViewContact.hxx | 83 -------- .../inc/view/SlsPageObjectViewObjectContact.hxx | 216 --------------------- 8 files changed, 1032 deletions(-) delete mode 100644 sd/source/ui/inc/celltempl.hxx delete mode 100644 sd/source/ui/inc/taskpane/ScrollPanel.hxx delete mode 100644 sd/source/ui/inc/taskpane/SubToolPanel.hxx delete mode 100644 sd/source/ui/inc/taskpane/TaskPaneControlFactory.hxx delete mode 100644 sd/source/ui/inc/taskpane/TitledControl.hxx delete mode 100644 sd/source/ui/sidebar/SidebarFocusManager.hxx delete mode 100644 sd/source/ui/slidesorter/inc/view/SlsPageObjectViewContact.hxx delete mode 100644 sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx (limited to 'sd') diff --git a/sd/source/ui/inc/celltempl.hxx b/sd/source/ui/inc/celltempl.hxx deleted file mode 100644 index 612f2f4c80e2..000000000000 --- a/sd/source/ui/inc/celltempl.hxx +++ /dev/null @@ -1,48 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_INC_CELLTEMPL_HXX -#define INCLUDED_SD_SOURCE_UI_INC_CELLTEMPL_HXX - -#include - -class SfxStyleSheetBase; -class SdrModel; - -class SdPresCellTemplateDlg : public SfxStyleDialog -{ -private: - XColorListRef mpColorTab; - XGradientListRef mpGradientList; - XHatchListRef mpHatchingList; - XBitmapListRef mpBitmapList; - - virtual void PageCreated( sal_uInt16 nId, SfxTabPage &rPage ); - virtual const SfxItemSet* GetRefreshedSet(); - -public: - SdPresCellTemplateDlg( SdrModel* pModel, vcl::Window* pParent, SfxStyleSheetBase& rStyleBase ); - ~SdPresCellTemplateDlg(); - - const SfxItemSet* GetOutputItemSet() const; -}; - -#endif // INCLUDED_SD_SOURCE_UI_INC_CELLTEMPL_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/inc/taskpane/ScrollPanel.hxx b/sd/source/ui/inc/taskpane/ScrollPanel.hxx deleted file mode 100644 index 77daddd51e4c..000000000000 --- a/sd/source/ui/inc/taskpane/ScrollPanel.hxx +++ /dev/null @@ -1,179 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_INC_TASKPANE_SCROLLPANEL_HXX -#define INCLUDED_SD_SOURCE_UI_INC_TASKPANE_SCROLLPANEL_HXX - -#include "taskpane/TaskPaneTreeNode.hxx" - -#include -#include -#include -#include - -namespace sd { namespace toolpanel { - -class TitledControl; - -/** The scroll panel shows its controls one above the other. When their - total height is larger than the height of the scroll area then only a - part of the controls is visible. Scroll bars control which part that - is. - - The scroll panel registers itself as window event listener at the - controls and their title bars (conceptually; it really is the - TitledControl) to track changes of the selection and focus rectangles. - On such a change it tries to move the selected or focused part into the - visible area. At the moment this moving into view only works with - valuesets and TitleBars. -*/ -class ScrollPanel - : public ::Control, - public TreeNode -{ -public: - /** Create a new scroll panel which itself is the root of a TreeNode hierarchy - parent. This will usually be a child window. - */ - ScrollPanel (vcl::Window& i_rParentWindow); - virtual ~ScrollPanel (void); - - /** Add a control to the sub panel. An title bar is added above the - control. - @param rTitle - The title that will be shown in the two title bars that - belong to the control. - @param nHelpId - The help id is set at the title bar not the actual control. - @return - The new titled control that contains the given control and a new - title bar as children is returned. - */ - TitledControl* AddControl ( - ::std::unique_ptr && pControl, - const OUString& rTitle, - const OString& sHelpId); - - /** Add a control to the sub panel without a title bar. - */ - void AddControl (::std::unique_ptr && pControl); - - virtual void Paint (const Rectangle& rRect); - - /** Initiate a rearrangement of the controls and title bars. - */ - virtual void Resize (void); - - virtual void RequestResize (void); - - virtual Size GetPreferredSize (void); - virtual sal_Int32 GetPreferredWidth (sal_Int32 nHeight); - virtual sal_Int32 GetPreferredHeight (sal_Int32 nWidth); - virtual bool IsResizable (void); - virtual vcl::Window* GetWindow (void); - virtual sal_Int32 GetMinimumWidth (void); - - virtual void ExpandControl ( - TreeNode* pControl, - bool bExpansionState); - - bool IsVerticalScrollBarVisible (void) const; - bool IsHorizontalScrollBarVisible (void) const; - ScrollBar& GetVerticalScrollBar (void); - ScrollBar& GetHorizontalScrollBar (void); - - // vcl::Window - virtual long Notify( NotifyEvent& rNEvt ); - - virtual ::com::sun::star::uno::Reference< - ::com::sun::star::accessibility::XAccessible> CreateAccessibleObject ( - const ::com::sun::star::uno::Reference< - ::com::sun::star::accessibility::XAccessible>& rxParent); - - /** Scroll the given rectangle into the visible area. - @param aRectangle - The box to move into the visible area in pixel coordinates - relative to the given window. - @param pWindow - This window is used to translate the given coordinates into ones - that are relative to the scroll panel. - - */ - void MakeRectangleVisible ( - Rectangle& aRectangle, - vcl::Window* pWindow); - -private: - ::Control maScrollWindow; - ScrollBar maVerticalScrollBar; - ScrollBar maHorizontalScrollBar; - vcl::Window maScrollBarFiller; - vcl::Window maScrollWindowFiller; - Point maScrollOffset; - bool mbIsRearrangePending; - bool mbIsLayoutPending; - sal_uInt32 mnChildrenWidth; - /// Border above top-most and below bottom-most control. - const int mnVerticalBorder; - /// Gap between two controls. - const int mnVerticalGap; - /// Border at the left and right of the controls. - const int mnHorizontalBorder; - /** List of horizontal stripes that is created from the gaps between - children when they are layouted. The stripes are painted in Paint() - to fill the space around the children. - */ - typedef ::std::vector< ::std::pair > StripeList; - StripeList maStripeList; - - /** Calculate position, size, and visibility of the controls. - Call this method after the list of controls, their expansion - state, or the size of the sub panel has changed. - */ - void Rearrange (void); - - /** Determine the minimal size that is necessary to show the controls - one over the other. It may be smaller than the available area. - */ - Size GetRequiredSize (void); - - /** Place the child windows one above the other and return the size of - the bounding box. - */ - sal_Int32 LayoutChildren (void); - - /** ctor-impl - */ - void Construct(); - - Size SetupScrollBars (const Size& rRequiresSize); - sal_Int32 SetupVerticalScrollBar (bool bShow, sal_Int32 nRange); - sal_Int32 SetupHorizontalScrollBar (bool bShow, sal_Int32 nRange); - - DECL_LINK(ScrollBarHandler, void *); - DECL_LINK(WindowEventListener, VclSimpleEvent*); - - using Window::GetWindow; -}; - -} } // end of namespace ::sd::toolpanel - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/inc/taskpane/SubToolPanel.hxx b/sd/source/ui/inc/taskpane/SubToolPanel.hxx deleted file mode 100644 index 2970bc2d0d1f..000000000000 --- a/sd/source/ui/inc/taskpane/SubToolPanel.hxx +++ /dev/null @@ -1,126 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_INC_TASKPANE_SUBTOOLPANEL_HXX -#define INCLUDED_SD_SOURCE_UI_INC_TASKPANE_SUBTOOLPANEL_HXX - -#include "taskpane/TaskPaneTreeNode.hxx" - -#include -#include -#include - -namespace vcl { class Window; } - -namespace sd { namespace toolpanel { - -/** The sub tool panel is in function similar to the tool panel. It - differes in two points. First, it is a control that can be used - as element in a tool panel and thus is actually a nested tool - panel. - -

Secondly, it formats its elements differently. The actual controls - are placed one below the other with a title bar above each control. - Clicking on the title bar expands or collapses the control. When there - is not enough space then scroll bars are shown.

- -

To avoid flickering when painting the sub tool panel the background - is made transparent and painting it is done by this class. While - layouting its children it remembers the gaps between children and stores - them in maStripeList. In Paint() those gaps as well as the border - around all children are painted in the background color.

-*/ -class SubToolPanel - : public Control, - public TreeNode -{ -public: - /** Create a new sub tool panel with the given window as its - parent. This will usually be a child window. - */ - SubToolPanel (vcl::Window& i_rParentWindow); - virtual ~SubToolPanel (void); - - virtual void Paint (const Rectangle& rRect); - - /** Initiate a rearrangement of the controls and title bars. - */ - virtual void Resize (void); - - virtual void RequestResize (void); - - virtual Size GetPreferredSize (void); - virtual sal_Int32 GetPreferredWidth (sal_Int32 nHeight); - virtual sal_Int32 GetPreferredHeight (sal_Int32 nWidth); - virtual bool IsResizable (void); - virtual vcl::Window* GetWindow (void); - virtual sal_Int32 GetMinimumWidth (void); - - virtual void ExpandControl ( - TreeNode* pControl, - bool bExpansionState); - - virtual ::com::sun::star::uno::Reference< - ::com::sun::star::accessibility::XAccessible> CreateAccessibleObject ( - const ::com::sun::star::uno::Reference< - ::com::sun::star::accessibility::XAccessible>& rxParent); - - using Window::GetWindow; -private: - vcl::Window maWindowFiller; - bool mbIsRearrangePending; - bool mbIsLayoutPending; - sal_uInt32 mnChildrenWidth; - /// Border above top-most and below bottom-most control. - const int mnVerticalBorder; - /// Gap between two controls. - const int mnVerticalGap; - /// Border at the left and right of the controls. - const int mnHorizontalBorder; - /** List of horizontal stripes that is created from the gaps between - children when they are layouted. The stripes are painted in Paint() - to fill the space around the children. - */ - typedef ::std::vector< ::std::pair > StripeList; - StripeList maStripeList; - - /** Calculate position, size, and visibility of the controls. - Call this method after the list of controls, their expansion - state, or the size of the sub panel has changed. - */ - void Rearrange (void); - - /** Determine the minimal size that is necessary to show the controls - one over the other. It may be smaller than the available area. - */ - Size GetRequiredSize (void); - - /** Place the child windows one above the other and return the size of - the bounding box. - */ - sal_Int32 LayoutChildren (void); - - DECL_LINK(WindowEventListener, VclSimpleEvent*); -}; - -} } // end of namespace ::sd::toolpanel - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/inc/taskpane/TaskPaneControlFactory.hxx b/sd/source/ui/inc/taskpane/TaskPaneControlFactory.hxx deleted file mode 100644 index 61d6bf6db578..000000000000 --- a/sd/source/ui/inc/taskpane/TaskPaneControlFactory.hxx +++ /dev/null @@ -1,82 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_INC_TASKPANE_TASKPANECONTROLFACTORY_HXX -#define INCLUDED_SD_SOURCE_UI_INC_TASKPANE_TASKPANECONTROLFACTORY_HXX - -#include "taskpane/TaskPaneTreeNode.hxx" - -#include - -namespace sd { namespace toolpanel { -class TreeNode; -} } - -namespace sd { namespace toolpanel { - -/** A simple factory base class defines the interface that is used by - some of the control containers of the task pane to create controls on - demand when they are about to be displayed for the first time. - - It provides the InternalCreateControl() method as hook that can be - overloaded by derived classes to provide a new control. -*/ -class ControlFactory -{ -public: - ControlFactory (void); - virtual ~ControlFactory (void); - - /** creates a tree node which acts as root of an own tree - - Derived classes should overload InternalCreateControl. - */ - ::std::unique_ptr CreateControl( vcl::Window& i_rParent ); - -protected: - virtual TreeNode* InternalCreateControl( vcl::Window& i_rParent ) = 0; -}; - -/** A simple helper class that realizes a ControlFactory that is able to create root controls, providing - the to-be-created control with an additional parameter. -*/ -template -class RootControlFactoryWithArg - : public ControlFactory -{ -public: - RootControlFactoryWithArg (ArgumentType& rArgument) - : mrArgument(rArgument) - {} - -protected: - virtual TreeNode* InternalCreateControl( vcl::Window& i_rParent ) - { - return new ControlType( i_rParent, mrArgument ); - } - -private: - ArgumentType& mrArgument; -}; - -} } // end of namespace ::sd::toolpanel - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/inc/taskpane/TitledControl.hxx b/sd/source/ui/inc/taskpane/TitledControl.hxx deleted file mode 100644 index bf1e183ac519..000000000000 --- a/sd/source/ui/inc/taskpane/TitledControl.hxx +++ /dev/null @@ -1,168 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_INC_TASKPANE_TITLEDCONTROL_HXX -#define INCLUDED_SD_SOURCE_UI_INC_TASKPANE_TITLEDCONTROL_HXX - -#include "taskpane/TaskPaneTreeNode.hxx" -#include "taskpane/ControlContainer.hxx" -#include "TitleBar.hxx" -#include -#include -#include -#include -#include - -namespace vcl { class Window; } - -namespace sd { namespace toolpanel { - -class ControlContainer; - -/** This wrapper adds a title bar to a control. Both title bar and - control are child windows. -*/ -class TitledControl - : public vcl::Window, - public TreeNode -{ -public: - typedef ::boost::function1 ClickHandler; - - /** Create a new descriptor for the given control. - @param pParent - The parent window of the new descriptor. - @param pControl - The control that is shown when being in the expanded - state. - @param rTitle - String that is shown as title in the title area above the - control. - @param rClickHandler - The typical action of the click handler is to expand the control. - @param eType - Type of the title bar. This specifies how the title bar - will be formated. For more information see TitleBar. - - */ - TitledControl ( - TreeNode* pParent, - ::std::unique_ptr pControl, - const OUString& rTitle, - const ClickHandler& rClickHandler, - TitleBar::TitleBarType eType); - - virtual ~TitledControl (void); - - virtual Size GetPreferredSize (void); - virtual sal_Int32 GetPreferredWidth (sal_Int32 nHeight); - virtual sal_Int32 GetPreferredHeight (sal_Int32 nWidth); - virtual bool IsResizable (void); - virtual vcl::Window* GetWindow (void); - - virtual void Resize (void); - virtual void GetFocus (void); - virtual void KeyInput (const KeyEvent& rEvent); - - // void Select (bool bExpansionState); - - TitleBar* GetTitleBar (void); - /** Return the control child. When a control factory has been given and - the control has not yet been created and the given flag is - then the control is created. - */ - TreeNode* GetControl (void); - const TreeNode* GetConstControl () const; - - const OUString& GetTitle (void) const; - - /** Expand the control without informing its container. This - method usually is called by the container as a result of a - higher level expand command. You may want to use - ExpandViaContainer() instead. - @param bExpanded - When then the control is expanded, otherwise it is - collapsed. - */ - virtual bool Expand (bool bExpanded = true); - - /** Return whether the control is currently expanded () or - not (). - */ - virtual bool IsExpanded (void) const; - - /** Returns the value of the control. - */ - virtual bool IsExpandable (void) const; - - virtual void SetEnabledState(bool bFlag); - - virtual bool IsShowing (void) const; - virtual void Show (bool bVisible); - - virtual ::com::sun::star::uno::Reference< - ::com::sun::star::accessibility::XAccessible > CreateAccessibleObject ( - const ::com::sun::star::uno::Reference< - ::com::sun::star::accessibility::XAccessible>& rxParent); - - using Window::GetWindow; - using Window::Show; - -private: - OUString msTitle; - bool mbVisible; - void* mpUserData; - ::std::unique_ptr mpClickHandler; - - /// Do not use! Assignment operator is not supported. - const TitledControl& operator= ( - const TitledControl& aDescriptor); - - void UpdateStates (void); - - DECL_LINK(WindowEventListener, VclSimpleEvent*); -}; - -/** This standard implementation of the ClickHandler expands, or toggles the - expansion state, of the control, whose title was clicked. -*/ -class TitledControlStandardClickHandler -{ -public: - /** Create a new instance of this class. - @param rControlContainer - The container of which the TitledControl is part of. - @param eExpansionState - This specifies whether to always expand the titled control or to - toggle its expansion state. - */ - TitledControlStandardClickHandler ( - ControlContainer& rControlContainer, - ControlContainer::ExpansionState eExpansionState); - void operator () (TitledControl& rTitledControl); -private: - ControlContainer& mrControlContainer; - ControlContainer::ExpansionState meExpansionState; -}; - -} } // end of namespace ::sd::toolpanel - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/sidebar/SidebarFocusManager.hxx b/sd/source/ui/sidebar/SidebarFocusManager.hxx deleted file mode 100644 index b20e06e01a8f..000000000000 --- a/sd/source/ui/sidebar/SidebarFocusManager.hxx +++ /dev/null @@ -1,130 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_SIDEBAR_SIDEBARFOCUSMANAGER_HXX -#define INCLUDED_SD_SOURCE_UI_SIDEBAR_SIDEBARFOCUSMANAGER_HXX - -#include -#include - -#include - -class VclSimpleEvent; -namespace vcl { class Window; } - -namespace sd { namespace toolpanel { - -/** On certain key presses the focus is moved from one window to another. - For this to work every window that wants its focus managed has to - register or be registered and tell where to put the focus on what key - press. -*/ -class FocusManager -{ -public: - /** Return an instance of the focus manager. - */ - static FocusManager& Instance (void); - - /** Register a link from one window to another so that any time the - specified key is pressed while the source window is focused, the - focus is transferred to the target window. - @param pSource - The window from which the focus will be transferred. - @param pTarget - The window to which the focus will be transferred. - @param rKey - The key for which the focus is transferred from the source - window to the target window. - */ - void RegisterLink ( - vcl::Window* pSource, - vcl::Window* pTarget, - const vcl::KeyCode& rKey); - - /** Register a link that will move the focus from the source window to - the target window when the source window is focused and KEY_ESCAPE - is pressed. - @param pSource - The window from which the focus will be transferred. - @param pTarget - The window to which the focus will be transferred. - */ - void RegisterUpLink (vcl::Window* pSource, vcl::Window* pTarget); - - /** Register a link that will move the focus from the source window to - the target window when the source window is focused and KEY_RETURN - is pressed. - @param pSource - The window from which the focus will be transferred. - @param pTarget - The window to which the focus will be transferred. - */ - void RegisterDownLink (vcl::Window* pSource, vcl::Window* pTarget); - - /** Remove all links from the source window to the target window. When - there are links from the target window to the source window then - these are not touced. - */ - void RemoveLinks ( - vcl::Window* pSource, - vcl::Window* pTarget); - - /** Let the focus manager transfer the focus from the specified source - window to a target window that is determined according the the - registered links and the given key code. - When there is no rule for this combination of source window and key - code then the focus stays where it is. - */ - bool TransferFocus (vcl::Window* pSource, const vcl::KeyCode& rCode); - -private: - friend struct FocusManagerCreator; - - class LinkMap; - ::std::unqiue_ptr mpLinks; - - FocusManager (void); - ~FocusManager (void); - - /** Clear the list of focus transfer links. This removes all window - listeners. - */ - void Clear (void); - - /** Remove all links from or to the given window. - */ - void RemoveLinks (vcl::Window* pWindow); - - /** Unregister as event listener from the given window when there are no - links from this window anymore. - */ - void RemoveUnusedEventListener (vcl::Window* pWindow); - - /** Listen for key events and on KEY_RETURN go down and on - KEY_ESCAPE go up. - */ - DECL_LINK(WindowEventListener, VclSimpleEvent*); -}; - -} } // end of namespace ::sd::toolpanel - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewContact.hxx b/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewContact.hxx deleted file mode 100644 index aaa870cd26eb..000000000000 --- a/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewContact.hxx +++ /dev/null @@ -1,83 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_SLIDESORTER_INC_VIEW_SLSPAGEOBJECTVIEWCONTACT_HXX -#define INCLUDED_SD_SOURCE_UI_SLIDESORTER_INC_VIEW_SLSPAGEOBJECTVIEWCONTACT_HXX - -#include "model/SlsSharedPageDescriptor.hxx" -#include -#include - -class SdrPageObj; - -namespace sdr {namespace contact { -class ViewObjectContact; -class ObjectContact; -} } - -namespace sd { namespace slidesorter { namespace view { - -/** Details: - This class has to provide the bounding box but can not determine it - fully because it has no access to the output device. It therefore - retrieves some of the necessary data, the border, from the - PageDescriptor which acts here as persistent storage. -*/ -class PageObjectViewContact - : public ::sdr::contact::ViewContactOfPageObj -{ -public: - PageObjectViewContact ( - SdrPageObj& rPageObj, - const model::SharedPageDescriptor& rpDescriptor); - ~PageObjectViewContact (void); - - /** Create a ViewObjectContact object that buffers its output in a - bitmap. - @return - Ownership of the new object passes to the caller. - */ - virtual ::sdr::contact::ViewObjectContact& - CreateObjectSpecificViewObjectContact( - ::sdr::contact::ObjectContact& rObjectContact); - - const SdrPage* GetPage (void) const; - - SdrPageObj& GetPageObject (void) const; - - virtual void ActionChanged (void); - -protected: - // create graphical visualisation data - virtual drawinglayer::primitive2d::Primitive2DSequence createViewIndependentPrimitive2DSequence() const; - -private: - /** This flag is set to when the destructor is called to - indicate that further calls made to it must not call outside. - */ - bool mbInDestructor; - - model::SharedPageDescriptor mpDescriptor; -}; - -} } } // end of namespace ::sd::slidesorter::view - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx b/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx deleted file mode 100644 index 173106f3c5fa..000000000000 --- a/sd/source/ui/slidesorter/inc/view/SlsPageObjectViewObjectContact.hxx +++ /dev/null @@ -1,216 +0,0 @@ -/* -*- 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 INCLUDED_SD_SOURCE_UI_SLIDESORTER_INC_VIEW_SLSPAGEOBJECTVIEWOBJECTCONTACT_HXX -#define INCLUDED_SD_SOURCE_UI_SLIDESORTER_INC_VIEW_SLSPAGEOBJECTVIEWOBJECTCONTACT_HXX - -#include -#include "model/SlsSharedPageDescriptor.hxx" -#include -#include -#include -#include -#include - -class SdrPage; - -namespace sdr { namespace contact { -class DisplayInfo; -} } - -namespace sd { namespace slidesorter { namespace cache { -class PageCache; -} } } - -namespace sd { namespace slidesorter { namespace controller { -class Properties; -} } } - -namespace sd { namespace slidesorter { namespace view { - -/** This object-view-contact of page objects maintains a preview bitmap for - the page to speed up redraws of the same. It does so by colaborating - with a cache of bitmaps (see ../cache). -*/ - -// needs to be derived from ViewObjectContactOfPageObj, else the calls to parent implementations -// would use ViewObjectContact and thus not enable e.g. the correct primitive creation -// for view-independent printer output -// changed: ViewObjectContact -> ViewObjectContactOfPageObj - -class PageObjectViewObjectContact : public ::sdr::contact::ViewObjectContactOfPageObj -{ -public: - /** Create a new view-object-contact object for the given contact - objects of both model and view. - @param pCache - The caller should provide a pointer to a preview cache, if - available. If given then the cache is used to control when to - create a preview and to store it. If NULL is given then the - preview is created every time when requested. - */ - PageObjectViewObjectContact ( - ::sdr::contact::ObjectContact& rObjectContact, - ::sdr::contact::ViewContact& rViewContact, - const ::boost::shared_ptr& rpCache, - const ::boost::shared_ptr& rpProperties); - virtual ~PageObjectViewObjectContact (void); - - /** This method is primarily for releasing the current preview cache (by - providing a NULL pointer.) - */ - void SetCache (const ::boost::shared_ptr& rpCache); - - /** Return the page that is painted by this object. - */ - const SdrPage* GetPage (void) const; - - /** This fallback method is called when no preview cache is available. - It creates a preview for the page. - */ - BitmapEx CreatePreview (const sdr::contact::DisplayInfo& rDisplayInfo); - - /** Return the page descriptor of the slide sorter model that is - associated with the same page object as this contact object is. - */ - model::SharedPageDescriptor GetPageDescriptor (void) const; - - /** Return the border widths in the screen coordinate system of the - border around the page object. The border contains frames for - selection, focus, the page name and number, and the indicator for - the page transition. - @param pDevice - The output device is used to convert pixel coordinates into - model coordinates. When NULL is given then the device dependent - part is not re-calculated but taken from an earlier calculation - or from the default values. - @param nPageCount - The total number of pages is used to determine the width of the - box that contains the page number. - */ - static SvBorder CalculatePageModelBorder ( - OutputDevice* pDevice, - int nPageCount); - - /** Calculate the size of the page number area so that all page numbers - including the given number fit in. Because this is device dependent - we need the device as parameter. The result is returned and stored - in maPageNumberAreaPixelSize so that it can be used later without - access to the device or page count. - */ - static Size CalculatePageNumberAreaModelSize ( - OutputDevice* pDevice, - int nPageCount); - - /** Paint a mouse over effect. - @param bVisible - When bVisible is then paint the area of the mouse over - effect in the background color, i.e. erase it. - */ - drawinglayer::primitive2d::Primitive2DSequence createMouseOverEffectPrimitive2DSequence(); - - enum BoundingBoxType { - // This is the outer bounding box that includes the preview, page - // number, title. - PageObjectBoundingBox, - // Bounding box of the actual preview. - PreviewBoundingBox, - // Bounding box of the mouse indicator indicator frame. - MouseOverIndicatorBoundingBox, - // Bounding box of the focus indicator frame. - FocusIndicatorBoundingBox, - // Bounding box of the selection indicator frame. - SelectionIndicatorBoundingBox, - // Bounding box of the page number. - PageNumberBoundingBox, - // Bounding box of the pane name. - NameBoundingBox, - FadeEffectIndicatorBoundingBox - }; - enum CoordinateSystem { ModelCoordinateSystem, PixelCoordinateSystem }; - - /** Return the bounding box of the page object or one of its graphical - parts. - @param rDevice - This device is used to translate between model and window - coordinates. - @param eType - The part of the page object for which to return the bounding - box. - @param eCoodinateSystem - The bounding box can be returned in model and in pixel - (window) coordinates. - */ - Rectangle GetBoundingBox ( - OutputDevice& rDevice, - BoundingBoxType eType, - CoordinateSystem eCoordinateSystem) const; - - // create the graphical visualisation data - virtual drawinglayer::primitive2d::Primitive2DSequence createPrimitive2DSequence(const sdr::contact::DisplayInfo& rDisplayInfo) const; - - // access to the current page content primitive vector which may be used for visualisation - const drawinglayer::primitive2d::Primitive2DSequence& getCurrentPageContents() const { return mxCurrentPageContents; } - - virtual void ActionChanged (void); - -private: - /// Gap between border of page object and inside of selection rectangle. - static const sal_Int32 mnSelectionIndicatorOffset; - /// Thickness of the selection rectangle. - static const sal_Int32 mnSelectionIndicatorThickness; - /// Gap between border of page object and inside of focus rectangle. - static const sal_Int32 mnFocusIndicatorOffset; - /// Size of width and height of the fade effect indicator in pixels. - static const sal_Int32 mnFadeEffectIndicatorSize; - static const sal_Int32 mnFadeEffectIndicatorOffset; - /// Gap between border of page object and number rectangle. - static const sal_Int32 mnPageNumberOffset; - /// Offset and thickness of the mouse over effect rectangle. - static const sal_Int32 mnMouseOverEffectOffset; - static const sal_Int32 mnMouseOverEffectThickness; - - /** This flag is set to when the destructor is called to - indicate that further calls made to it must not call outside. - */ - bool mbInDestructor; - - /// The primitive sequence of the page contents, completely scaled - /// and prepared for painiting - drawinglayer::primitive2d::Primitive2DSequence mxCurrentPageContents; - - ::boost::shared_ptr mpCache; - - ::boost::shared_ptr mpProperties; - - BitmapEx GetPreview ( - const sdr::contact::DisplayInfo& rDisplayInfo, - const Rectangle& rNewSizePixel); - - /** Return the bounding box of where the page number is painted (when it - is painted). - */ - Rectangle GetPageNumberArea (OutputDevice& rDevice) const; -}; - -} } } // end of namespace ::sd::slidesorter::view - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit