LibreOffice Module svx (master)  1
ParaSpacingWindow.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
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/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
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 .
18  */
19 #pragma once
20 
21 #include <editeng/ulspitem.hxx>
22 #include <vcl/EnumContext.hxx>
24 #include <svx/relfld.hxx>
25 
26 using namespace com::sun::star;
27 
28 namespace svx
29 {
31 {
32 public:
33  virtual ~ParaULSpacingWindow() override;
34  virtual void dispose() override;
35 
36  void SetValue(const SvxULSpaceItem* pItem);
37  void SetUnit(FieldUnit eUnit);
38 
39 protected:
41 
42  std::unique_ptr<SvxRelativeField> m_xAboveSpacing;
43  std::unique_ptr<SvxRelativeField> m_xBelowSpacing;
44  std::unique_ptr<weld::Container> m_xAboveContainer;
45  std::unique_ptr<weld::Container> m_xBelowContainer;
46 
48 
49  DECL_LINK(ModifySpacingHdl, weld::MetricSpinButton&, void);
50 };
51 
53 {
54 public:
55  explicit ParaAboveSpacingWindow(vcl::Window* pParent);
56 };
57 
59 {
60 public:
61  explicit ParaBelowSpacingWindow(vcl::Window* pParent);
62 };
63 
65 {
66 public:
67  virtual ~ParaLRSpacingWindow() override;
68  virtual void dispose() override;
69 
70  void SetValue(SfxItemState eState, const SfxPoolItem* pState);
71  void SetUnit(FieldUnit eUnit);
72  void SetContext(const vcl::EnumContext& eContext);
73 
74 protected:
76 
77  std::unique_ptr<SvxRelativeField> m_xBeforeSpacing;
78  std::unique_ptr<SvxRelativeField> m_xAfterSpacing;
79  std::unique_ptr<SvxRelativeField> m_xFLSpacing;
80  std::unique_ptr<weld::Container> m_xBeforeContainer;
81  std::unique_ptr<weld::Container> m_xAfterContainer;
82  std::unique_ptr<weld::Container> m_xFirstLineContainer;
83 
85 
87 
88  DECL_LINK(ModifySpacingHdl, weld::MetricSpinButton&, void);
89 };
90 
92 {
93 public:
94  explicit ParaLeftSpacingWindow(vcl::Window* pParent);
95 };
96 
98 {
99 public:
100  explicit ParaRightSpacingWindow(vcl::Window* pParent);
101 };
102 
104 {
105 public:
106  explicit ParaFirstLineSpacingWindow(vcl::Window* pParent);
107 };
108 }
109 
110 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
std::unique_ptr< SvxRelativeField > m_xBelowSpacing
FieldUnit
std::unique_ptr< SvxRelativeField > m_xAfterSpacing
std::unique_ptr< weld::Container > m_xAboveContainer
std::unique_ptr< SvxRelativeField > m_xBeforeSpacing
std::unique_ptr< weld::Container > m_xAfterContainer
std::unique_ptr< weld::Container > m_xFirstLineContainer
SfxItemState
std::unique_ptr< weld::Container > m_xBeforeContainer
std::unique_ptr< SvxRelativeField > m_xAboveSpacing
std::unique_ptr< SvxRelativeField > m_xFLSpacing
MapUnit
void dispose()
std::unique_ptr< weld::Container > m_xBelowContainer