bump product version to 5.0.4.1
[LibreOffice.git] / sd / source / ui / inc / PaneDockingWindow.hxx
bloba8d3b2167b343a2101733aa588d852fcbaa8c0d2
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_SD_SOURCE_UI_INC_PANEDOCKINGWINDOW_HXX
21 #define INCLUDED_SD_SOURCE_UI_INC_PANEDOCKINGWINDOW_HXX
23 #include <sfx2/titledockwin.hxx>
24 #include <sfx2/viewfrm.hxx>
26 #include <boost/scoped_ptr.hpp>
27 #include <boost/shared_ptr.hpp>
29 class SplitWindow;
31 namespace sd {
33 class PaneDockingWindow : public ::sfx2::TitledDockingWindow
35 public:
36 /** Create a new docking window.
37 @param pBindings
38 Used, among others, to determine the ViewShellBase and
39 PaneManager that manage the new docking window.
40 @param pChildWindow
41 This child window is the logical container for the new docking
42 window.
43 @param pParent
44 The parent window of the new docking window.
45 @param rsTitle
46 the initial title
48 PaneDockingWindow (
49 SfxBindings *pBindings,
50 SfxChildWindow *pChildWindow,
51 vcl::Window* pParent,
52 const OUString& rsTitle);
54 virtual ~PaneDockingWindow();
55 virtual void StateChanged( StateChangedType nType ) SAL_OVERRIDE;
56 virtual void MouseButtonDown (const MouseEvent& rEvent) SAL_OVERRIDE;
57 /** When docked the given range is passed to the parent SplitWindow.
59 void SetValidSizeRange (const Range& rValidSizeRange);
61 enum Orientation { HorizontalOrientation, VerticalOrientation, UnknownOrientation };
62 /** When the PaneDockingWindow is docked and managed by a split window
63 it can derive its orientation from the orientation of the split
64 window and return either HorizontalOrientation or
65 VerticalOrientation.
66 Otherwise UnknownOrientation is returned.
68 Orientation GetOrientation() const;
71 } // end of namespace ::sd
73 #endif
75 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */