Fix tray visibility and message reception issues
Some checks failed
build / build-win64 (push) Waiting to run
build / build-macos (push) Waiting to run
build / build-pip (push) Failing after 16s

- Disable sound initialization to prevent hanging
- Add missing import re in utils.py
- Fix settings loading for QSettings
- Update file paths to use PROJECT_ROOT
- Revert to working API paths and listener from commit efdc63e
This commit is contained in:
kdusek
2025-12-07 22:39:07 +01:00
parent 7b695d7b7f
commit 5138303016
4060 changed files with 579123 additions and 23 deletions

View File

@@ -0,0 +1,6 @@
# Automatically generated configuration for PyQt6.QtQuick3D.
sip-version = "6.14.0"
sip-abi-version = "13.8"
module-tags = ["Qt_6_10_0", "Linux"]
module-disabled-features = ["PyQt_OpenGL_ES2"]

View File

@@ -0,0 +1,53 @@
// QtQuick3Dmod.sip generated by MetaSIP
//
// This file is part of the QtQuick3D Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// 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.
%Module(name=PyQt6.QtQuick3D, keyword_arguments="Optional", use_limited_api=True)
%Import QtCore/QtCoremod.sip
%Import QtGui/QtGuimod.sip
%Import QtQml/QtQmlmod.sip
%Copying
Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
This file is part of PyQt6.
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.
%End
%DefaultSupertype PyQt6.sip.simplewrapper
%Include qquick3d.sip
%Include qquick3dgeometry.sip
%Include qquick3dobject.sip
%Include qquick3dtexturedata.sip

View File

@@ -0,0 +1,31 @@
// qquick3d.sip generated by MetaSIP
//
// This file is part of the QtQuick3D Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// 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 QQuick3D
{
%TypeHeaderCode
#include <qquick3d.h>
%End
public:
static QSurfaceFormat idealSurfaceFormat(int samples = -1);
};

View File

@@ -0,0 +1,167 @@
// qquick3dgeometry.sip generated by MetaSIP
//
// This file is part of the QtQuick3D Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// 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 QQuick3DGeometry : public QQuick3DObject
{
%TypeHeaderCode
#include <qquick3dgeometry.h>
%End
public:
explicit QQuick3DGeometry(QQuick3DObject *parent /TransferThis/ = 0);
virtual ~QQuick3DGeometry();
enum class PrimitiveType
{
Points,
LineStrip,
Lines,
TriangleStrip,
TriangleFan,
Triangles,
};
struct Attribute
{
%TypeHeaderCode
#include <qquick3dgeometry.h>
%End
enum Semantic
{
IndexSemantic,
PositionSemantic,
NormalSemantic,
TexCoordSemantic,
TangentSemantic,
BinormalSemantic,
JointSemantic,
WeightSemantic,
ColorSemantic,
%If (Qt_6_1_0 -)
TargetPositionSemantic,
%End
%If (Qt_6_1_0 -)
TargetNormalSemantic,
%End
%If (Qt_6_1_0 -)
TargetTangentSemantic,
%End
%If (Qt_6_1_0 -)
TargetBinormalSemantic,
%End
%If (Qt_6_1_0 -)
TexCoord1Semantic,
%End
%If (Qt_6_1_0 -)
TexCoord0Semantic,
%End
};
enum ComponentType
{
U16Type,
U32Type,
F32Type,
I32Type,
};
QQuick3DGeometry::Attribute::Semantic semantic;
int offset;
QQuick3DGeometry::Attribute::ComponentType componentType;
};
int attributeCount() const;
QQuick3DGeometry::Attribute attribute(int index) const;
QQuick3DGeometry::PrimitiveType primitiveType() const;
QVector3D boundsMin() const;
QVector3D boundsMax() const;
int stride() const;
void setVertexData(const QByteArray &data);
void setVertexData(int offset, const QByteArray &data);
void setIndexData(const QByteArray &data);
void setIndexData(int offset, const QByteArray &data);
void setStride(int stride);
void setBounds(const QVector3D &min, const QVector3D &max);
void setPrimitiveType(QQuick3DGeometry::PrimitiveType type);
void addAttribute(QQuick3DGeometry::Attribute::Semantic semantic, int offset, QQuick3DGeometry::Attribute::ComponentType componentType);
void addAttribute(const QQuick3DGeometry::Attribute &att);
void clear();
QByteArray vertexData() const;
QByteArray indexData() const;
%If (Qt_6_3_0 -)
int subsetCount(int subset) const;
%End
%If (Qt_6_3_0 -)
int subsetCount() const;
%End
%If (Qt_6_3_0 -)
QVector3D subsetBoundsMin(int subset) const;
%End
%If (Qt_6_3_0 -)
QVector3D subsetBoundsMax(int subset) const;
%End
%If (Qt_6_3_0 -)
int subsetOffset(int subset) const;
%End
%If (Qt_6_3_0 -)
QString subsetName(int subset) const;
%End
%If (Qt_6_3_0 -)
void addSubset(int offset, int count, const QVector3D &boundsMin, const QVector3D &boundsMax, const QString &name = {});
%End
%If (Qt_6_6_0 -)
struct TargetAttribute
{
%TypeHeaderCode
#include <qquick3dgeometry.h>
%End
quint32 targetId;
QQuick3DGeometry::Attribute attr;
int stride;
};
%End
%If (Qt_6_6_0 -)
QByteArray targetData() const;
%End
%If (Qt_6_6_0 -)
void setTargetData(int offset, const QByteArray &data);
%End
%If (Qt_6_6_0 -)
void setTargetData(const QByteArray &data);
%End
%If (Qt_6_6_0 -)
QQuick3DGeometry::TargetAttribute targetAttribute(int index) const;
%End
%If (Qt_6_6_0 -)
int targetAttributeCount() const;
%End
%If (Qt_6_6_0 -)
void addTargetAttribute(const QQuick3DGeometry::TargetAttribute &att);
%End
%If (Qt_6_6_0 -)
void addTargetAttribute(quint32 targetId, QQuick3DGeometry::Attribute::Semantic semantic, int offset, int stride = 0);
%End
};

View File

@@ -0,0 +1,75 @@
// qquick3dobject.sip generated by MetaSIP
//
// This file is part of the QtQuick3D Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// 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 QQuick3DObject : public QObject, public QQmlParserStatus /Abstract/
{
%TypeHeaderCode
#include <qquick3dobject.h>
%End
%ConvertToSubClassCode
static struct class_graph {
const char *name;
sipTypeDef **type;
int yes, no;
} graph[] = {
{sipName_QQuick3DObject, &sipType_QQuick3DObject, 1, -1},
{sipName_QQuick3DGeometry, &sipType_QQuick3DGeometry, -1, 2},
{sipName_QQuick3DTextureData, &sipType_QQuick3DTextureData, -1, -1},
};
int i = 0;
sipType = NULL;
do
{
struct class_graph *cg = &graph[i];
if (cg->name != NULL && sipCpp->inherits(cg->name))
{
sipType = *cg->type;
i = cg->yes;
}
else
i = cg->no;
}
while (i >= 0);
%End
public:
explicit QQuick3DObject(QQuick3DObject *parent /TransferThis/ = 0);
virtual ~QQuick3DObject();
QString state() const;
void setState(const QString &state);
QQuick3DObject *parentItem() const;
public slots:
void setParentItem(QQuick3DObject *parentItem);
signals:
void stateChanged();
protected:
virtual void classBegin();
virtual void componentComplete();
};

View File

@@ -0,0 +1,87 @@
// qquick3dtexturedata.sip generated by MetaSIP
//
// This file is part of the QtQuick3D Python extension module.
//
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
//
// This file is part of PyQt6.
//
// 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 QQuick3DTextureData : public QQuick3DObject
{
%TypeHeaderCode
#include <qquick3dtexturedata.h>
%End
public:
enum Format
{
None /PyName=None_/,
RGBA8,
RGBA16F,
RGBA32F,
RGBE8,
R8,
R16,
R16F,
R32F,
BC1,
BC2,
BC3,
BC4,
BC5,
BC6H,
BC7,
DXT1_RGBA,
DXT1_RGB,
DXT3_RGBA,
DXT5_RGBA,
ETC2_RGB8,
ETC2_RGB8A1,
ETC2_RGBA8,
ASTC_4x4,
ASTC_5x4,
ASTC_5x5,
ASTC_6x5,
ASTC_6x6,
ASTC_8x5,
ASTC_8x6,
ASTC_8x8,
ASTC_10x5,
ASTC_10x6,
ASTC_10x8,
ASTC_10x10,
ASTC_12x10,
ASTC_12x12,
};
QQuick3DTextureData(QQuick3DObject *parent /TransferThis/ = 0);
virtual ~QQuick3DTextureData();
const QByteArray textureData() const;
void setTextureData(const QByteArray &data);
QSize size() const;
void setSize(const QSize &size);
QQuick3DTextureData::Format format() const;
void setFormat(QQuick3DTextureData::Format format);
bool hasTransparency() const;
void setHasTransparency(bool hasTransparency);
%If (Qt_6_6_0 -)
int depth() const;
%End
%If (Qt_6_6_0 -)
void setDepth(int depth);
%End
};