git: 46c782746cea - main - devel/nodeeditor: Add new port: Qt Node Editor, Dataflow programming framework

From: Vladimir Druzenko <vvd_at_FreeBSD.org>
Date: Fri, 19 Jul 2024 16:14:57 UTC
The branch main has been updated by vvd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=46c782746cea0caf330b8502df8c300e383dd21f

commit 46c782746cea0caf330b8502df8c300e383dd21f
Author:     Martin Filla <freebsd@sysctl.cz>
AuthorDate: 2024-07-19 16:05:40 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2024-07-19 16:11:41 +0000

    devel/nodeeditor: Add new port: Qt Node Editor, Dataflow programming framework
    
    QtNodes is conceived as a general-purpose Qt-based library aimed at
    developing Node Editors for various applications. The library could be
    used for simple graph visualization and editing or extended further for
    using the Dataflow paradigm.
    
    https://github.com/paceholder/nodeeditor
    
    PR:     279756
---
 devel/Makefile             |  1 +
 devel/nodeeditor/Makefile  | 29 ++++++++++++++++++++++++++
 devel/nodeeditor/distinfo  |  5 +++++
 devel/nodeeditor/pkg-descr | 13 ++++++++++++
 devel/nodeeditor/pkg-plist | 52 ++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 100 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 3d062f05f444..45417c294019 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1698,6 +1698,7 @@
     SUBDIR += ninja
     SUBDIR += nlohmann-json
     SUBDIR += node-thrift
+    SUBDIR += nodeeditor
     SUBDIR += notcurses
     SUBDIR += notify-sharp
     SUBDIR += nox
diff --git a/devel/nodeeditor/Makefile b/devel/nodeeditor/Makefile
new file mode 100644
index 000000000000..91f06fc57186
--- /dev/null
+++ b/devel/nodeeditor/Makefile
@@ -0,0 +1,29 @@
+PORTNAME=	nodeeditor
+DISTVERSION=	3.0.11
+CATEGORIES=	devel
+MASTER_SITES+=	https://raw.githubusercontent.com/catchorg/Catch2/v2.13.10/single_include/catch2/:catch2
+DISTFILES+=	catch.hpp:catch2
+#EXTRACT_ONLY=	${GH_ACCOUNT}-${PORTNAME}-${DISTVERSION}_GH0${EXTRACT_SUFX}
+EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
+
+MAINTAINER=	freebsd@sysctl.cz
+COMMENT=	Qt Node Editor, Dataflow programming framework
+WWW=		https://github.com/paceholder/nodeeditor
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE.rst
+
+USES=		cmake gl qt:6
+USE_GITHUB=	yes
+GH_ACCOUNT=	paceholder
+GH_PROJECT=	nodeeditor
+USE_GL=		gl
+USE_QT=		base
+
+CMAKE_ARGS=	-DBUILD_DOCS=OFF
+
+post-extract:
+	${MKDIR} ${WRKDIR}/.build/external/Catch2/single_include/catch2
+	${LN} -s ${DISTDIR}/catch.hpp ${WRKDIR}/.build/external/Catch2/single_include/catch2
+
+.include <bsd.port.mk>
diff --git a/devel/nodeeditor/distinfo b/devel/nodeeditor/distinfo
new file mode 100644
index 000000000000..e92906b02ce6
--- /dev/null
+++ b/devel/nodeeditor/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1721404860
+SHA256 (catch.hpp) = 3725c0f0a75f376a5005dde31ead0feb8f7da7507644c201b814443de8355170
+SIZE (catch.hpp) = 657411
+SHA256 (paceholder-nodeeditor-3.0.11_GH0.tar.gz) = 9810137d576d8d1049df29c0a8869a0dce4ae10636e3b042a841f5696f26187d
+SIZE (paceholder-nodeeditor-3.0.11_GH0.tar.gz) = 1485542
diff --git a/devel/nodeeditor/pkg-descr b/devel/nodeeditor/pkg-descr
new file mode 100644
index 000000000000..a974fa6448e1
--- /dev/null
+++ b/devel/nodeeditor/pkg-descr
@@ -0,0 +1,13 @@
+QtNodes is conceived as a general-purpose Qt-based library aimed at
+developing Node Editors for various applications. The library could be
+used for simple graph visualization and editing or extended further for
+using the Dataflow paradigm.
+
+The library is written using the Model-View approach. The whole graph
+structure is defined by a class derived from AbstractGraphModel. It is
+possible to create or add Nodes and Connections. The underlying data
+structures could be of any arbitrary type or representation.
+
+An instance of AbstractGraphModel could or could not be attached to
+specialized QGraphicsScene and QGraphicsView objects. I.e. the so-called
+"headless" modus operandi is possible.
diff --git a/devel/nodeeditor/pkg-plist b/devel/nodeeditor/pkg-plist
new file mode 100644
index 000000000000..bf3720bf5a62
--- /dev/null
+++ b/devel/nodeeditor/pkg-plist
@@ -0,0 +1,52 @@
+include/QtNodes/AbstractGraphModel
+include/QtNodes/AbstractNodePainter
+include/QtNodes/BasicGraphicsScene
+include/QtNodes/ConnectionIdUtils
+include/QtNodes/ConnectionStyle
+include/QtNodes/DataFlowGraphModel
+include/QtNodes/DataFlowGraphicsScene
+include/QtNodes/DefaultNodePainter
+include/QtNodes/Definitions
+include/QtNodes/GraphicsView
+include/QtNodes/GraphicsViewStyle
+include/QtNodes/NodeData
+include/QtNodes/NodeDelegateModel
+include/QtNodes/NodeDelegateModelRegistry
+include/QtNodes/NodeGeometry
+include/QtNodes/NodeState
+include/QtNodes/NodeStyle
+include/QtNodes/StyleCollection
+include/QtNodes/internal/AbstractGraphModel.hpp
+include/QtNodes/internal/AbstractNodeGeometry.hpp
+include/QtNodes/internal/AbstractNodePainter.hpp
+include/QtNodes/internal/BasicGraphicsScene.hpp
+include/QtNodes/internal/Compiler.hpp
+include/QtNodes/internal/ConnectionGraphicsObject.hpp
+include/QtNodes/internal/ConnectionIdHash.hpp
+include/QtNodes/internal/ConnectionIdUtils.hpp
+include/QtNodes/internal/ConnectionState.hpp
+include/QtNodes/internal/ConnectionStyle.hpp
+include/QtNodes/internal/DataFlowGraphModel.hpp
+include/QtNodes/internal/DataFlowGraphicsScene.hpp
+include/QtNodes/internal/DefaultNodePainter.hpp
+include/QtNodes/internal/Definitions.hpp
+include/QtNodes/internal/Export.hpp
+include/QtNodes/internal/GraphicsView.hpp
+include/QtNodes/internal/GraphicsViewStyle.hpp
+include/QtNodes/internal/NodeData.hpp
+include/QtNodes/internal/NodeDelegateModel.hpp
+include/QtNodes/internal/NodeDelegateModelRegistry.hpp
+include/QtNodes/internal/NodeGraphicsObject.hpp
+include/QtNodes/internal/NodeState.hpp
+include/QtNodes/internal/NodeStyle.hpp
+include/QtNodes/internal/OperatingSystem.hpp
+include/QtNodes/internal/QStringStdHash.hpp
+include/QtNodes/internal/QUuidStdHash.hpp
+include/QtNodes/internal/Serializable.hpp
+include/QtNodes/internal/Style.hpp
+include/QtNodes/internal/StyleCollection.hpp
+include/QtNodes/internal/locateNode.hpp
+lib/cmake/QtNodes/QtNodesConfig.cmake
+lib/cmake/QtNodes/QtNodesTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/QtNodes/QtNodesTargets.cmake
+lib/libQtNodes.so