Skip to content

Commit 87e219b

Browse files
committed
solve conflicts
2 parents 4f1b23c + 21b55ac commit 87e219b

File tree

78 files changed

+4072
-944
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+4072
-944
lines changed
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: Bug report
2+
description: Report crashes or incorrect behaviour of existing functionality in QtNodes.
3+
body:
4+
- type: textarea
5+
id: steps
6+
attributes:
7+
label: Description with steps to reproduce
8+
description: Please also describe the actual (current) and expected behaviour and include a code snippet where relevant
9+
placeholder: |
10+
1. go to ...
11+
2. then click on ...
12+
3. then ...
13+
Actual behaviour:
14+
Expected behaviour:
15+
validations:
16+
required: true
17+
- type: textarea
18+
id: evidence
19+
attributes:
20+
label: Supporting files, videos and screenshots
21+
description: |
22+
* A short screen recording (ideally 20sec or less) or screenshot
23+
placeholder: |
24+
Click into this text box and paste your files, videos and screenshots here.
25+
validations:
26+
required: true
27+
- type: input
28+
id: qt_version
29+
attributes:
30+
label: Qt Version
31+
description: What version of Qt does this bug occur on?
32+
placeholder: Qt 5/6?
33+
validations:
34+
required: true
35+
- type: input
36+
id: os
37+
attributes:
38+
label: Operating system
39+
description: What OS does this bug occur on?
40+
placeholder: Windows 11, macOS 13, Ubuntu 22.04, etc.
41+
validations:
42+
required: true
43+
- type: textarea
44+
id: context
45+
attributes:
46+
label: Additional context
47+
description: Further information which may be relevant to this bug
48+
49+
- type: checkboxes
50+
id: checklist
51+
attributes:
52+
label: Checklist
53+
description: "Before submitting your bug report, please make sure the following requirements are met:"
54+
options:
55+
- label: "I have verified that this issue has not been logged before, by searching the [issue tracker](https://github.com/paceholder/nodeeditor/issues) for similar issues"
56+
required: true
57+
- label: "I have attached all requested files and information to this report"
58+
required: true
59+
- label: "I have attempted to identify the root problem as concisely as possible, and have used minimal reproducible examples where possible"
60+
required: true
61+
- type: markdown
62+
attributes:
63+
value: If an issue does not meet these requirements, it may be closed without investigation.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: Feature request
2+
description: Request new functionality or enhancements.
3+
body:
4+
- type: textarea
5+
id: idea
6+
attributes:
7+
label: Your idea
8+
description: Describe your idea in a few sentences.
9+
validations:
10+
required: true
11+
- type: textarea
12+
id: whatfor
13+
attributes:
14+
label: Problem to be solved
15+
description: What problem would your idea solve?
16+
validations:
17+
required: true
18+
- type: textarea
19+
id: other
20+
attributes:
21+
label: Prior art
22+
description: Have you run into this problem with other apps? How did they solve it? You can paste screenshots.
23+
validations:
24+
required: false
25+
- type: textarea
26+
id: context
27+
attributes:
28+
label: Additional context
29+
description: Anything else of note
30+
validations:
31+
required: false
32+
33+
- type: checkboxes
34+
id: checklist
35+
attributes:
36+
label: Checklist
37+
description: "Before submitting your bug report, please make sure the following requirements are met:"
38+
options:
39+
- label: "I have verified that this feature request has not been logged before, by searching the [issue tracker](https://github.com/paceholder/nodeeditor/issues) for similar requests"
40+
required: true
41+
- type: markdown
42+
attributes:
43+
value: If a feature request does not meet these requirements, it may be closed without investigation.

.github/pull_request_template.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
## Type of change
2+
- [ ] Bug fix
3+
- [ ] New feature
4+
- [ ] Breaking change
5+
- [ ] Documentation/refactoring
6+
7+
## Description
8+
<!--
9+
Brief description of the change;
10+
If this is a breaking change, please describe what breaks and how to migrate
11+
-->
12+
13+
## Testing
14+
- Qt version tested:
15+
- [ ] Existing tests still pass
16+
- [ ] Added tests for new functionality (if applicable)
17+
18+
## Breaking changes?
19+
<!-- If yes, describe what breaks and how to migrate -->
20+
21+
## Related issue
22+
<!-- Link with "Fixes #123" or "Closes #123" if applicable -->
23+
24+
---
25+
*Please fill out the sections above to help reviewers understand your changes.*

.github/workflows/cmake_build.yml

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,9 @@ jobs:
6969

7070
- name: Setup (Linux)
7171
if: startsWith (matrix.os, 'ubuntu')
72-
run: sudo apt-get install libxkbcommon-dev
72+
run: |
73+
sudo apt-get update
74+
sudo apt-get install libxkbcommon-dev xvfb
7375
7476
- name: Setup VS tools (Windows)
7577
if: startsWith (matrix.os, 'windows')
@@ -82,3 +84,21 @@ jobs:
8284

8385
- name: Build with ${{ matrix.compiler }}
8486
run: cmake --build build --config ${{ matrix.configuration }}
87+
88+
- name: Run Tests (Linux)
89+
if: startsWith (matrix.os, 'ubuntu')
90+
run: |
91+
cd build
92+
xvfb-run -a ctest --output-on-failure --progress
93+
94+
- name: Run Tests (macOS)
95+
if: startsWith (matrix.os, 'macos')
96+
run: |
97+
cd build
98+
ctest --output-on-failure --progress
99+
100+
- name: Run Tests (Windows)
101+
if: startsWith (matrix.os, 'windows')
102+
run: |
103+
cd build
104+
ctest -C ${{ matrix.configuration }} --output-on-failure --progress

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,6 @@ CMakeLists.txt.user
44
build*/
55
.vscode/
66

7+
qt-build
8+
79
tags

.readthedocs.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55
# Required
66
version: 2
77

8+
build:
9+
os: ubuntu-22.04
10+
tools:
11+
python: "3.12"
12+
813
# Build documentation in the docs/ directory with Sphinx
914
sphinx:
1015
builder: html
@@ -13,7 +18,6 @@ sphinx:
1318

1419
# Optionally set the version of Python and requirements required to build your docs
1520
python:
16-
version: 3.7
1721
install:
1822
- requirements: docs/requirements.txt
1923

.travis.yml

Lines changed: 0 additions & 59 deletions
This file was deleted.

CMakeLists.txt

Lines changed: 8 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ set(CMAKE_DISABLE_SOURCE_CHANGES ON)
1313
set(OpenGL_GL_PREFERENCE LEGACY)
1414
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
1515

16+
# Enable AUTOMOC globally for all targets (needed for examples with Q_OBJECT)
17+
set(CMAKE_AUTOMOC ON)
18+
set(CMAKE_AUTORCC ON)
19+
1620
get_directory_property(_has_parent PARENT_DIRECTORY)
1721
if(_has_parent)
1822
set(is_root_project OFF)
@@ -30,8 +34,6 @@ option(BUILD_DEBUG_POSTFIX_D "Append d suffix to debug libraries" OFF)
3034
option(QT_NODES_FORCE_TEST_COLOR "Force colorized unit test output" OFF)
3135
option(USE_QT6 "Build with Qt6 (Enabled by default)" ON)
3236

33-
enable_testing()
34-
3537
if(QT_NODES_DEVELOPER_DEFAULTS)
3638
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin")
3739
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/lib")
@@ -60,16 +62,6 @@ if (${QT_VERSION} VERSION_LESS 5.11.0)
6062
message(FATAL_ERROR "Requires qt version >= 5.11.0, Your current version is ${QT_VERSION}")
6163
endif()
6264

63-
if (${QT_VERSION_MAJOR} EQUAL 6)
64-
qt_add_resources(RESOURCES ./resources/resources.qrc)
65-
else()
66-
qt5_add_resources(RESOURCES ./resources/resources.qrc)
67-
endif()
68-
69-
# Unfortunately, as we have a split include/src, AUTOMOC doesn't work.
70-
# We'll have to manually specify some files
71-
set(CMAKE_AUTOMOC ON)
72-
7365
set(CPP_SOURCE_FILES
7466
src/AbstractGraphModel.cpp
7567
src/AbstractNodeGeometry.cpp
@@ -95,6 +87,7 @@ set(CPP_SOURCE_FILES
9587
src/StyleCollection.cpp
9688
src/UndoCommands.cpp
9789
src/locateNode.cpp
90+
resources/resources.qrc
9891
)
9992

10093
set(HPP_HEADER_FILES
@@ -141,7 +134,6 @@ set(HPP_HEADER_FILES
141134
add_library(QtNodes
142135
${CPP_SOURCE_FILES}
143136
${HPP_HEADER_FILES}
144-
${RESOURCES}
145137
)
146138

147139
add_library(QtNodes::QtNodes ALIAS QtNodes)
@@ -201,28 +193,6 @@ set_target_properties(QtNodes
201193
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
202194
)
203195

204-
######
205-
# Moc
206-
##
207-
208-
file(GLOB_RECURSE HEADERS_TO_MOC include/QtNodes/internal/*.hpp)
209-
210-
if (${QT_VERSION_MAJOR} EQUAL 6)
211-
qt_wrap_cpp(nodes_moc
212-
${HEADERS_TO_MOC}
213-
TARGET QtNodes
214-
OPTIONS --no-notes # Don't display a note for the headers which don't produce a moc_*.cpp
215-
)
216-
else()
217-
qt5_wrap_cpp(nodes_moc
218-
${HEADERS_TO_MOC}
219-
TARGET QtNodes
220-
OPTIONS --no-notes # Don't display a note for the headers which don't produce a moc_*.cpp
221-
)
222-
endif()
223-
224-
target_sources(QtNodes PRIVATE ${nodes_moc})
225-
226196
###########
227197
# Examples
228198
##
@@ -238,9 +208,11 @@ endif()
238208
##################
239209
# Automated Tests
240210
##
211+
enable_testing()
212+
241213

242214
if(BUILD_TESTING)
243-
#add_subdirectory(test)
215+
add_subdirectory(test)
244216
endif()
245217

246218
###############

0 commit comments

Comments
 (0)