File: qboxlayout.sip

package info (click to toggle)
pyqt5 5.11.3%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 15,956 kB
  • sloc: python: 93,806; cpp: 21,390; xml: 285; makefile: 266; sh: 31
file content (145 lines) | stat: -rw-r--r-- 4,783 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
// qboxlayout.sip generated by MetaSIP
//
// This file is part of the QtWidgets Python extension module.
//
// Copyright (c) 2018 Riverbank Computing Limited <info@riverbankcomputing.com>
// 
// This file is part of PyQt5.
// 
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file.  Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
// 
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license.  For more information contact
// info@riverbankcomputing.com.
// 
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.


class QBoxLayout : QLayout
{
%TypeHeaderCode
#include <qboxlayout.h>
%End

public:
    enum Direction
    {
        LeftToRight,
        RightToLeft,
        TopToBottom,
        BottomToTop,
        Down,
        Up,
    };

    QBoxLayout(QBoxLayout::Direction direction, QWidget *parent /TransferThis/ = 0);
    virtual ~QBoxLayout();
    QBoxLayout::Direction direction() const;
    void setDirection(QBoxLayout::Direction);
    void addSpacing(int size);
    void addStretch(int stretch = 0);
    void addWidget(QWidget * /GetWrapper/, int stretch = 0, Qt::Alignment alignment = Qt::Alignment());
%MethodCode
        Py_BEGIN_ALLOW_THREADS
        sipCpp->addWidget(a0, a1, *a2);
        Py_END_ALLOW_THREADS
        
        // The layout's parent widget (if there is one) will now have ownership.
        QWidget *parent = sipCpp->parentWidget();
        
        if (parent)
        {
            PyObject *py_parent = sipGetPyObject(parent, sipType_QWidget);
        
            if (py_parent)
                sipTransferTo(a0Wrapper, py_parent);
        }
        else
        {
            // For now give the Python ownership to the layout.  This maintains
            // compatibility with previous versions and allows addWidget(QWidget()).
            sipTransferTo(a0Wrapper, sipSelf);
        }
%End

    void addLayout(QLayout *layout /Transfer/, int stretch = 0);
    void addStrut(int);
    virtual void addItem(QLayoutItem * /Transfer/);
    void insertSpacing(int index, int size);
    void insertStretch(int index, int stretch = 0);
    void insertWidget(int index, QWidget *widget /GetWrapper/, int stretch = 0, Qt::Alignment alignment = Qt::Alignment());
%MethodCode
        Py_BEGIN_ALLOW_THREADS
        sipCpp->insertWidget(a0, a1, a2, *a3);
        Py_END_ALLOW_THREADS
        
        // The layout's parent widget (if there is one) will now have ownership.
        QWidget *parent = sipCpp->parentWidget();
        
        if (parent)
        {
            PyObject *py_parent = sipGetPyObject(parent, sipType_QWidget);
        
            if (py_parent)
                sipTransferTo(a1Wrapper, py_parent);
        }
        else
        {
            // For now give the Python ownership to the layout.  This maintains
            // compatibility with previous versions and allows insertWidget(QWidget()).
            sipTransferTo(a1Wrapper, sipSelf);
        }
%End

    void insertLayout(int index, QLayout *layout /Transfer/, int stretch = 0);
    bool setStretchFactor(QWidget *w, int stretch);
    bool setStretchFactor(QLayout *l, int stretch);
    virtual QSize sizeHint() const;
    virtual QSize minimumSize() const;
    virtual QSize maximumSize() const;
    virtual bool hasHeightForWidth() const;
    virtual int heightForWidth(int) const;
    virtual int minimumHeightForWidth(int) const;
    virtual Qt::Orientations expandingDirections() const;
    virtual void invalidate();
    virtual QLayoutItem *itemAt(int) const;
    virtual QLayoutItem *takeAt(int) /TransferBack/;
    virtual int count() const;
    virtual void setGeometry(const QRect &);
    int spacing() const;
    void setSpacing(int spacing);
    void addSpacerItem(QSpacerItem *spacerItem /Transfer/);
    void insertSpacerItem(int index, QSpacerItem *spacerItem /Transfer/);
    void setStretch(int index, int stretch);
    int stretch(int index) const;
    void insertItem(int index, QLayoutItem * /TransferThis/);
};

class QHBoxLayout : QBoxLayout
{
%TypeHeaderCode
#include <qboxlayout.h>
%End

public:
    QHBoxLayout();
    explicit QHBoxLayout(QWidget *parent /TransferThis/);
    virtual ~QHBoxLayout();
};

class QVBoxLayout : QBoxLayout
{
%TypeHeaderCode
#include <qboxlayout.h>
%End

public:
    QVBoxLayout();
    explicit QVBoxLayout(QWidget *parent /TransferThis/);
    virtual ~QVBoxLayout();
};