summaryrefslogtreecommitdiff
path: root/sd/source/ui/inc/taskpane/SubToolPanel.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sd/source/ui/inc/taskpane/SubToolPanel.hxx')
-rw-r--r--sd/source/ui/inc/taskpane/SubToolPanel.hxx137
1 files changed, 0 insertions, 137 deletions
diff --git a/sd/source/ui/inc/taskpane/SubToolPanel.hxx b/sd/source/ui/inc/taskpane/SubToolPanel.hxx
deleted file mode 100644
index a92a439cd..000000000
--- a/sd/source/ui/inc/taskpane/SubToolPanel.hxx
+++ /dev/null
@@ -1,137 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef SD_TASKPANE_SUB_TOOL_PANEL_HXX
-#define SD_TASKPANE_SUB_TOOL_PANEL_HXX
-
-#include "taskpane/TaskPaneTreeNode.hxx"
-
-#include <vcl/ctrl.hxx>
-#include <vcl/scrbar.hxx>
-#include <memory>
-#include <vector>
-
-
-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.
-
- <p>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.</p>
-
- <p>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
- arround all children are painted in the background color.</p>
-*/
-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 (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 ::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:
- ::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 arround the children.
- */
- typedef ::std::vector< ::std::pair<int,int> > 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: */