nss: upgrade to release 3.73
[LibreOffice.git] / sw / source / uibase / inc / colex.hxx
blob41f7e4143a719d28f47ab7a91f4dad7c741d60f7
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 .
19 #ifndef INCLUDED_SW_SOURCE_UIBASE_INC_COLEX_HXX
20 #define INCLUDED_SW_SOURCE_UIBASE_INC_COLEX_HXX
22 #include <svx/pagectrl.hxx>
23 #include <editeng/paperinf.hxx>
24 #include <swdllapi.h>
25 #include <tgrditem.hxx>
26 #include <fmtclds.hxx>
28 class SwColMgr;
29 class SfxItemSet;
31 class SW_DLLPUBLIC SwPageExample : public SvxPageWindow
33 protected:
34 bool m_bVertical;
35 public:
36 SwPageExample()
37 : m_bVertical(false)
39 SetSize(SvxPaperInfo::GetPaperSize(PAPER_A4));
42 void UpdateExample( const SfxItemSet& rSet );
45 class SW_DLLPUBLIC SwPageGridExample : public SwPageExample
47 std::unique_ptr<SwTextGridItem> pGridItem;
48 protected:
49 virtual void DrawPage(vcl::RenderContext& rRenderContext,
50 const Point& rPoint,
51 const bool bSecond,
52 const bool bEnabled) override;
53 public:
54 SwPageGridExample();
56 void UpdateExample( const SfxItemSet& rSet );
60 class SW_DLLPUBLIC SwColExample : public SwPageExample
62 SwColMgr* pColMgr;
64 using SwPageExample::UpdateExample;
66 protected:
67 virtual void DrawPage(vcl::RenderContext& rRenderContext,
68 const Point& rPoint,
69 const bool bSecond,
70 const bool bEnabled) override;
72 public:
73 SwColExample()
74 : pColMgr(nullptr)
78 void UpdateExample( const SfxItemSet& rSet, SwColMgr* pMgr )
80 pColMgr = pMgr;
81 SwPageExample::UpdateExample(rSet);
85 class SW_DLLPUBLIC SwColumnOnlyExample : public weld::CustomWidgetController
87 private:
88 Size m_aWinSize;
90 Size m_aFrameSize;
91 SwFormatCol m_aCols;
93 protected:
94 virtual void Resize() override;
95 virtual void Paint(vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect) override;
97 public:
98 SwColumnOnlyExample();
100 void SetColumns(const SwFormatCol& rCol);
102 virtual void SetDrawingArea(weld::DrawingArea* pDrawingArea) override;
105 #endif // INCLUDED_SW_SOURCE_UIBASE_INC_COLEX_HXX
107 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */