digiKam
Loading...
Searching...
No Matches
dlayoutbox.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2014-09-12
7 * Description : Vertical and horizontal layout widget helpers.
8 *
9 * SPDX-FileCopyrightText: 2014-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Qt includes
18
19#include <QWidget>
20#include <QFrame>
21#include <QSize>
22#include <QMargins>
23
24// Local includes
25
26#include "digikam_export.h"
27
28namespace Digikam
29{
30
34class DIGIKAM_EXPORT DHBox : public QFrame
35{
36 Q_OBJECT
37 Q_DISABLE_COPY(DHBox)
38
39public:
40
41 explicit DHBox(QWidget* const parent = nullptr);
42 ~DHBox() override = default;
43
44 void setSpacing(int space);
45 void setContentsMargins(const QMargins& margins);
46 void setContentsMargins(int left, int top, int right, int bottom);
47 void setStretchFactor(QWidget* const widget, int stretch);
48
49 QSize sizeHint() const override;
50 QSize minimumSizeHint() const override;
51
52protected:
53
54 DHBox(bool vertical, QWidget* const parent);
55
56 void childEvent(QChildEvent* e) override;
57};
58
59// ------------------------------------------------------------------------------------
60
64class DIGIKAM_EXPORT DVBox : public DHBox
65{
66 Q_OBJECT
67 Q_DISABLE_COPY(DVBox)
68
69 public:
70
71 explicit DVBox(QWidget* const parent = nullptr);
72 ~DVBox() override = default;
73};
74
75} // namespace Digikam
Definition dlayoutbox.h:35
~DHBox() override=default
Definition dlayoutbox.h:65
~DVBox() override=default
Definition datefolderview.cpp:34