Integration with Qode 2.0 (#400)

* Moves qt integration solely to the nodegui core addon

* Adds lint fixes

* moved to integration core

* cleans up export snippet

* revert package.json

* Add exit if app->exec finishes.

* lint fix

* Makes QApplication custom

* adds qobject to wrap of qapp

* Adds working qt run looper

* Adds font default

* Adds qt installer

* Updates qode integration to v2.0.1

* fix cpp lints

* Fixes lint and deps

* Adds miniqt installation

* adds setup mini qt script

* skips tests due to issues with jest

* fix config and download path for linux and windows

* Adds multiple artifact downloader

* fix qt config and compilation

* Fixes qode path for windows (now it can load dll's easily)

* Add compilation

* fix windows path setup

* use scripts directly

* enabled tests back

* fix ubuntu deps

* update to alpha release

* fix workflow

* adds more artifacts and funding field

* change to alpha v2

* update prebuild yml

* revert build action

* disabling prebuild for now

* switch to stable release 5.14.1

* version bump
This commit is contained in:
Atul R 2020-03-07 10:28:30 +01:00 committed by GitHub
parent bbf3cfd9bd
commit 86c3ef089c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
147 changed files with 563 additions and 484 deletions

View File

@ -2,7 +2,7 @@ on:
repository_dispatch:
types: [on-demand-build]
release:
types: [published, created, prereleased]
types: [created]
jobs:
build:
strategy:
@ -14,22 +14,25 @@ jobs:
- uses: actions/checkout@v2
with:
ref: ${{ github.ref }}
- uses: actions/setup-node@master
with:
node-version: '13.x'
- name: Install deps
run: npm install
env:
SKIP_BUILD: 1
- name: Change version if master
if: contains(github.event.client_payload.tag, '0.0.0-latest-master')
run: npm --no-git-tag-version version 0.0.0-latest-master
- name: Prebuild binary
run: npx prebuild --all --backend=cmake-js --strip --runtime=napi --include-regex="\.[n,e,l][a-z]*$"
- name: Release
uses: softprops/action-gh-release@master
with:
files: prebuilds/@nodegui/*.tar.gz
tag_name: ${{ github.event.release.tag_name || github.event.client_payload.tag }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# - uses: actions/setup-node@master
# with:
# node-version: '13.x'
# - name: Install ubuntu deps
# if: contains(matrix.os, 'ubuntu')
# run: sudo apt install mesa-common-dev libglu1-mesa-dev
# - name: Install deps
# run: npm install
# env:
# SKIP_BUILD: 1
# - name: Change version if master
# if: contains(github.event.client_payload.tag, '0.0.0-latest-master')
# run: npm --no-git-tag-version version 0.0.0-latest-master
# - name: Prebuild binary
# run: npx prebuild --all --backend=cmake-js --strip --runtime=napi --include-regex="\.[n,e,l][a-z]*$"
# - name: Release
# uses: softprops/action-gh-release@master
# with:
# files: prebuilds/@nodegui/*.tar.gz
# tag_name: ${{ github.event.release.tag_name || github.event.client_payload.tag }}
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@ -13,6 +13,9 @@ jobs:
- uses: actions/setup-node@master
with:
node-version: '13.x'
- name: Install ubuntu deps
if: contains(matrix.os, 'ubuntu')
run: sudo apt install mesa-common-dev libglu1-mesa-dev
- name: Install deps
run: npm install
- name: Build nodegui

1
.gitignore vendored
View File

@ -8,3 +8,4 @@ coverage
.DS_Store
/.idea/
/prebuilds
miniqt

View File

@ -8,3 +8,4 @@ extras/*
src/*
!src/cpp
prebuilds/*
miniqt/

View File

@ -15,6 +15,7 @@ add_library(${CORE_WIDGETS_ADDON} SHARED
"${PROJECT_SOURCE_DIR}/src/cpp/main.cpp"
# core internals
"${PROJECT_SOURCE_DIR}/src/cpp/lib/Extras/Utils/nutils.cpp"
"${PROJECT_SOURCE_DIR}/src/cpp/lib/core/Integration/integration.cpp"
"${PROJECT_SOURCE_DIR}/src/cpp/lib/core/FlexLayout/flexutils.cpp"
"${PROJECT_SOURCE_DIR}/src/cpp/lib/core/FlexLayout/flexlayout.cpp"
"${PROJECT_SOURCE_DIR}/src/cpp/lib/core/FlexLayout/flexitem.cpp"
@ -112,6 +113,7 @@ add_library(${CORE_WIDGETS_ADDON} SHARED
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/QtCore/QObject/nobject.hpp"
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/core/FlexLayout/flexlayout.hpp"
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/QtGui/QMovie/nmovie.hpp"
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/QtGui/QApplication/napplication.hpp"
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/QtWidgets/QWidget/nwidget.hpp"
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/QtWidgets/QDialog/ndialog.hpp"
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui/QtWidgets/QLabel/nlabel.hpp"
@ -170,15 +172,22 @@ target_include_directories(${CORE_WIDGETS_ADDON} PRIVATE
"${PROJECT_SOURCE_DIR}/src/cpp/include/nodegui"
)
target_link_libraries(${CORE_WIDGETS_ADDON} PRIVATE
"${CMAKE_JS_LIB}"
)
if (WIN32)
target_compile_definitions(${CORE_WIDGETS_ADDON} PRIVATE
ENABLE_DLL_EXPORT=1
)
target_link_libraries(${CORE_WIDGETS_ADDON} PRIVATE
"${PROJECT_SOURCE_DIR}/node_modules/@nodegui/qode/binaries/qode.lib"
)
target_compile_options(${CORE_WIDGETS_ADDON} PRIVATE "/MP4")
endif()
target_link_libraries(${CORE_WIDGETS_ADDON} PRIVATE
"${CMAKE_JS_LIB}"
Qt5::Widgets
Qt5::Core
Qt5::Gui
)

View File

@ -1,3 +1,5 @@
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_program(CCACHE_PROGRAM ccache)
if(CCACHE_PROGRAM)
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")

View File

@ -1,79 +1,25 @@
# Adds Qt support
# make sure you include this at the top of whichever Cmakelist file you are going to use.
# Need for automatic moc. Moc executable path is set in qt.cmake
# Need for automatic moc.
set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(QT_VERSION_MAJOR 5)
set(QT_VERSION_MINOR 13)
add_executable(Qt5::moc IMPORTED)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
function(AddQtSupport addonName)
execute_process(COMMAND node -p "require('@nodegui/qode').qtHome"
set(QTCONFIG_FILE ${CMAKE_CURRENT_LIST_DIR}/qtConfig.js)
macro(AddQtSupport addonName)
execute_process(COMMAND node -p "require('${QTCONFIG_FILE}').qtCmakeDir"
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE QT_HOME_DIR
OUTPUT_VARIABLE QT_CMAKE_HOME_DIR
)
if(DEFINED ENV{QT_INSTALL_DIR})
# Allows to use custom Qt installation via QT_INSTALL_DIR env variable
message(STATUS "Using Custom QT installation for ${addonName} QT_INSTALL_DIR:$ENV{QT_INSTALL_DIR}")
set(QT_HOME_DIR "$ENV{QT_INSTALL_DIR}")
endif()
string(REPLACE "\n" "" QT_CMAKE_HOME_DIR "${QT_CMAKE_HOME_DIR}")
string(REPLACE "\"" "" QT_CMAKE_HOME_DIR "${QT_CMAKE_HOME_DIR}")
string(REPLACE "\n" "" QT_HOME_DIR "${QT_HOME_DIR}")
string(REPLACE "\"" "" QT_HOME_DIR "${QT_HOME_DIR}")
message(STATUS "Using QT installation for ${addonName} QT_CMAKE_HOME_DIR:${QT_CMAKE_HOME_DIR}")
if(APPLE)
set(CUSTOM_QT_MOC_PATH "${QT_HOME_DIR}/bin/moc")
set(Qt5_DIR ${QT_CMAKE_HOME_DIR})
find_package(Qt5 COMPONENTS Widgets Gui Core REQUIRED)
target_include_directories(${addonName} PRIVATE
"${QT_HOME_DIR}/include"
"${QT_HOME_DIR}/lib/QtCore.framework/Versions/5/Headers"
"${QT_HOME_DIR}/lib/QtGui.framework/Versions/5/Headers"
"${QT_HOME_DIR}/lib/QtWidgets.framework/Versions/5/Headers"
)
target_link_libraries(${addonName} PRIVATE
"${QT_HOME_DIR}/lib/QtCore.framework/Versions/5/QtCore"
"${QT_HOME_DIR}/lib/QtGui.framework/Versions/5/QtGui"
"${QT_HOME_DIR}/lib/QtWidgets.framework/Versions/5/QtWidgets"
)
endif()
if (WIN32)
set(CUSTOM_QT_MOC_PATH "${QT_HOME_DIR}\\bin\\moc.exe")
target_include_directories(${addonName} PRIVATE
"${QT_HOME_DIR}\\include"
"${QT_HOME_DIR}\\include\\QtCore"
"${QT_HOME_DIR}\\include\\QtGui"
"${QT_HOME_DIR}\\include\\QtWidgets"
)
target_link_libraries(${addonName} PRIVATE
"${QT_HOME_DIR}\\lib\\Qt5Core.lib"
"${QT_HOME_DIR}\\lib\\Qt5Gui.lib"
"${QT_HOME_DIR}\\lib\\Qt5Widgets.lib"
)
endif()
if(UNIX AND NOT APPLE)
set(LINUX TRUE)
endif()
if(LINUX)
set(CUSTOM_QT_MOC_PATH "${QT_HOME_DIR}/bin/moc")
target_include_directories(${addonName} PRIVATE
"${QT_HOME_DIR}/include"
"${QT_HOME_DIR}/include/QtCore"
"${QT_HOME_DIR}/include/QtGui"
"${QT_HOME_DIR}/include/QtWidgets"
)
target_link_libraries(${addonName} PRIVATE
"${QT_HOME_DIR}/lib/libQt5Core.so"
"${QT_HOME_DIR}/lib/libQt5Gui.so"
"${QT_HOME_DIR}/lib/libQt5Widgets.so"
)
endif()
# set custom moc executable location
set_target_properties(Qt5::moc PROPERTIES IMPORTED_LOCATION "${CUSTOM_QT_MOC_PATH}")
endfunction(AddQtSupport addonName)
endmacro(AddQtSupport addonName)

72
config/qtConfig.js Normal file
View File

@ -0,0 +1,72 @@
const os = require('os');
const path = require('path');
const SETUP_DIR = path.resolve(__dirname, '..', 'miniqt');
const QT_VERSION = '5.14.1';
function getMiniQtConfig() {
switch (os.platform()) {
case 'darwin': {
return {
qtHome: path.resolve(SETUP_DIR, QT_VERSION, 'clang_64'),
artifacts: [
{
name: 'Qt Base',
link: `https://download.qt.io/online/qtsdkrepository/mac_x64/desktop/qt5_5141/qt.qt5.5141.clang_64/5.14.1-0-202001241000qtbase-MacOS-MacOS_10_13-Clang-MacOS-MacOS_10_13-X86_64.7z`,
},
{
name: 'Qt Tools',
link: `https://download.qt.io/online/qtsdkrepository/mac_x64/desktop/qt5_5141/qt.qt5.5141.clang_64/5.14.1-0-202001241000qttools-MacOS-MacOS_10_13-Clang-MacOS-MacOS_10_13-X86_64.7z`,
},
],
};
}
case 'win32': {
return {
qtHome: path.resolve(SETUP_DIR, QT_VERSION, 'msvc2017_64'),
artifacts: [
{
name: 'Qt Base',
link: `https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_5141/qt.qt5.5141.win64_msvc2017_64/5.14.1-0-202001240957qtbase-Windows-Windows_10-MSVC2017-Windows-Windows_10-X86_64.7z`,
},
{
name: 'Qt Tools',
link: `https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_5141/qt.qt5.5141.win64_msvc2017_64/5.14.1-0-202001240957qttools-Windows-Windows_10-MSVC2017-Windows-Windows_10-X86_64.7z`,
},
],
};
}
case 'linux': {
return {
qtHome: path.resolve(SETUP_DIR, QT_VERSION, 'gcc_64'),
artifacts: [
{
name: 'Qt Base',
link: `https://download.qt.io/online/qtsdkrepository/linux_x64/desktop/qt5_5141/qt.qt5.5141.gcc_64/5.14.1-0-202001240953qtbase-Linux-RHEL_7_6-GCC-Linux-RHEL_7_6-X86_64.7z`,
},
{
name: 'Qt ICU',
link: `https://download.qt.io/online/qtsdkrepository/linux_x64/desktop/qt5_5141/qt.qt5.5141.gcc_64/5.14.1-0-202001240953icu-linux-Rhel7.2-x64.7z`,
},
],
};
}
}
}
const miniQt = {
...getMiniQtConfig(),
version: QT_VERSION,
setupDir: SETUP_DIR,
};
const useCustomQt = Boolean(process.env.QT_INSTALL_DIR);
const qtHome = useCustomQt ? process.env.QT_INSTALL_DIR : miniQt.qtHome;
const qtCmakeDir = path.resolve(qtHome, 'lib', 'cmake', 'Qt5');
module.exports = {
qtHome,
miniQt,
qtCmakeDir,
useCustomQt,
};

View File

@ -11,6 +11,6 @@ module.exports = {
transform: {
'^.+\\.tsx?$': 'ts-jest',
},
globalSetup: './config/tests/setup.js',
globalTeardown: './config/tests/teardown.js',
globalSetup: './scripts/tests/setup.js',
globalTeardown: './scripts/tests/teardown.js',
};

329
package-lock.json generated
View File

@ -1,9 +1,22 @@
{
"name": "@nodegui/nodegui",
"version": "0.13.4",
"version": "0.15.0-alpha-4",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"7zip-bin": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-5.0.3.tgz",
"integrity": "sha512-GLyWIFBbGvpKPGo55JyRZAo4lVbnBiD52cKlw/0Vt+wnmKvWJkpZvsjVoaIolyBXDeAQKSicRtqFNPem9w0WYA=="
},
"7zip-min": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/7zip-min/-/7zip-min-1.1.1.tgz",
"integrity": "sha512-GPTk3xycxB0NjRM1SKAUL7TWXjgFAyzwXkamkk5YgSLd6OneeWBw+fxULctrVr4XqPBBh+LyqpHlyj9ryfpqoQ==",
"requires": {
"7zip-bin": "^5.0.3"
}
},
"@babel/code-frame": {
"version": "7.5.5",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz",
@ -1107,22 +1120,93 @@
}
}
},
"@nodegui/qode": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/@nodegui/qode/-/qode-1.0.6.tgz",
"integrity": "sha512-Np6r91wDCzV4+PCepr83t+BjWBtZMh5WT9/68mXXSMJi+ueZbYXL0d5VAIJ84C87NMwnA/7hdoqppp8lgzymvg==",
"@nodegui/artifact-installer": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@nodegui/artifact-installer/-/artifact-installer-1.0.0.tgz",
"integrity": "sha512-qKtlsXgO/fNppgVfkuTkHmgALZQgppjvJ5XJg3+J90SeIQBri1KRk8H/3CgKL/MmXsDJkvWftQrX9BmZ9uKv+Q==",
"requires": {
"7zip-min": "^1.1.1",
"empty-dir": "^2.0.0",
"env-paths": "^2.2.0",
"extract-zip": "^1.6.7",
"fs-extra": "^8.1.0",
"got": "^9.6.0",
"make-dir": "^3.0.0",
"node-fetch": "^2.6.0",
"progress": "^2.0.3"
}
},
"@sindresorhus/is": {
"version": "0.14.0",
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz",
"integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ=="
"@nodegui/qode": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@nodegui/qode/-/qode-2.0.4.tgz",
"integrity": "sha512-fnyPXoAHm2k+EUUV8ACRhjl2rNDQKRpyAQzYbsWNM4x1ExhrHy/U6KwQam82FaUVVCLaCNLTAiNaWyRR/XP83A==",
"requires": {
"env-paths": "^2.2.0",
"make-dir": "^3.0.2",
"node-fetch": "^2.6.0",
"progress": "^2.0.3",
"tar": "^6.0.1"
},
"dependencies": {
"fs-minipass": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
"integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
"requires": {
"minipass": "^3.0.0"
}
},
"make-dir": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz",
"integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==",
"requires": {
"semver": "^6.0.0"
}
},
"minipass": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz",
"integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==",
"requires": {
"yallist": "^4.0.0"
}
},
"minizlib": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz",
"integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==",
"requires": {
"minipass": "^3.0.0",
"yallist": "^4.0.0"
}
},
"mkdirp": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz",
"integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g=="
},
"semver": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
},
"tar": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/tar/-/tar-6.0.1.tgz",
"integrity": "sha512-bKhKrrz2FJJj5s7wynxy/fyxpE0CmCjmOQ1KV4KkgXFWOgoIT/NbTMnB1n+LFNrNk0SSBVGGxcK5AGsyC+pW5Q==",
"requires": {
"chownr": "^1.1.3",
"fs-minipass": "^2.0.0",
"minipass": "^3.0.0",
"minizlib": "^2.1.0",
"mkdirp": "^1.0.3",
"yallist": "^4.0.0"
}
},
"yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
}
}
},
"@sinonjs/commons": {
"version": "1.7.0",
@ -1133,14 +1217,6 @@
"type-detect": "4.0.8"
}
},
"@szmarczak/http-timer": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz",
"integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==",
"requires": {
"defer-to-connect": "^1.0.1"
}
},
"@types/babel__core": {
"version": "7.1.3",
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz",
@ -1970,7 +2046,8 @@
"buffer-from": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
"integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A=="
"integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
"dev": true
},
"buffer-indexof-polyfill": {
"version": "1.0.1",
@ -2004,35 +2081,6 @@
"unset-value": "^1.0.0"
}
},
"cacheable-request": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz",
"integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==",
"requires": {
"clone-response": "^1.0.2",
"get-stream": "^5.1.0",
"http-cache-semantics": "^4.0.0",
"keyv": "^3.0.0",
"lowercase-keys": "^2.0.0",
"normalize-url": "^4.1.0",
"responselike": "^1.0.2"
},
"dependencies": {
"get-stream": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz",
"integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==",
"requires": {
"pump": "^3.0.0"
}
},
"lowercase-keys": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
"integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA=="
}
}
},
"callsites": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
@ -2163,14 +2211,6 @@
"wrap-ansi": "^2.0.0"
}
},
"clone-response": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
"integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
"requires": {
"mimic-response": "^1.0.0"
}
},
"cmake-js": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/cmake-js/-/cmake-js-6.1.0.tgz",
@ -2289,17 +2329,6 @@
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"concat-stream": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
"integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
"requires": {
"buffer-from": "^1.0.0",
"inherits": "^2.0.3",
"readable-stream": "^2.2.2",
"typedarray": "^0.0.6"
}
},
"console-control-strings": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
@ -2466,6 +2495,7 @@
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"requires": {
"ms": "2.0.0"
}
@ -2481,14 +2511,6 @@
"integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
"dev": true
},
"decompress-response": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
"integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
"requires": {
"mimic-response": "^1.0.0"
}
},
"deep-extend": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
@ -2500,11 +2522,6 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
"defer-to-connect": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.0.tgz",
"integrity": "sha512-WE2sZoctWm/v4smfCAdjYbrfS55JiMRdlY9ZubFhsYbteCK9+BvAx4YV7nPjYM6ZnX5BcoVKwfmyx9sIFTgQMQ=="
},
"define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
@ -2608,11 +2625,6 @@
"readable-stream": "^2.0.2"
}
},
"duplexer3": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
"integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI="
},
"each-series-async": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/each-series-async/-/each-series-async-1.0.1.tgz",
@ -2634,6 +2646,11 @@
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"dev": true
},
"empty-dir": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/empty-dir/-/empty-dir-2.0.0.tgz",
"integrity": "sha512-XAedXlNAQZxMmbllXY9cxuESlNVjZ8xd67bSIUZwbS7VoLyhlNehVN3Iy35yDTGFHKR1opBRgORkp3am0so+WQ=="
},
"end-of-stream": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
@ -3212,17 +3229,6 @@
}
}
},
"extract-zip": {
"version": "1.6.7",
"resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz",
"integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=",
"requires": {
"concat-stream": "1.6.2",
"debug": "2.6.9",
"mkdirp": "0.5.1",
"yauzl": "2.4.1"
}
},
"extsprintf": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
@ -3259,14 +3265,6 @@
"bser": "2.1.1"
}
},
"fd-slicer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz",
"integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=",
"requires": {
"pend": "~1.2.0"
}
},
"figures": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
@ -3380,6 +3378,7 @@
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
"integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
"dev": true,
"requires": {
"graceful-fs": "^4.2.0",
"jsonfile": "^4.0.0",
@ -3463,6 +3462,7 @@
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
"integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
"dev": true,
"requires": {
"pump": "^3.0.0"
}
@ -3547,24 +3547,6 @@
"integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
"dev": true
},
"got": {
"version": "9.6.0",
"resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz",
"integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==",
"requires": {
"@sindresorhus/is": "^0.14.0",
"@szmarczak/http-timer": "^1.1.2",
"cacheable-request": "^6.0.0",
"decompress-response": "^3.3.0",
"duplexer3": "^0.1.4",
"get-stream": "^4.1.0",
"lowercase-keys": "^1.0.1",
"mimic-response": "^1.0.1",
"p-cancelable": "^1.0.0",
"to-readable-stream": "^1.0.0",
"url-parse-lax": "^3.0.0"
}
},
"graceful-fs": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz",
@ -3707,11 +3689,6 @@
"integrity": "sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==",
"dev": true
},
"http-cache-semantics": {
"version": "4.0.3",
"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz",
"integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew=="
},
"http-signature": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
@ -6831,11 +6808,6 @@
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true
},
"json-buffer": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz",
"integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg="
},
"json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
@ -6911,14 +6883,6 @@
"verror": "1.10.0"
}
},
"keyv": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz",
"integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==",
"requires": {
"json-buffer": "3.0.0"
}
},
"kind-of": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
@ -7022,11 +6986,6 @@
"@sinonjs/commons": "^1.7.0"
}
},
"lowercase-keys": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
"integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA=="
},
"lunr": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.8.tgz",
@ -7037,7 +6996,6 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.0.tgz",
"integrity": "sha512-grNJDhb8b1Jm1qeqW5R/O63wUo4UXo2v2HMic6YT9i/HBlF93S8jkMgH7yugvY9ABDShH4VZMn8I+U8+fCNegw==",
"dev": true,
"requires": {
"semver": "^6.0.0"
},
@ -7045,8 +7003,7 @@
"semver": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
"dev": true
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
}
}
},
@ -7065,6 +7022,11 @@
"tmpl": "1.0.x"
}
},
"manage-path": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/manage-path/-/manage-path-2.0.0.tgz",
"integrity": "sha1-9M+EV7km7u4qg7FzUBQUvHbrlZc="
},
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
@ -7152,11 +7114,6 @@
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
"dev": true
},
"mimic-response": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
"integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ=="
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
@ -7219,7 +7176,8 @@
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
"dev": true
},
"mute-stream": {
"version": "0.0.8",
@ -7295,6 +7253,11 @@
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.0.tgz",
"integrity": "sha512-ASCL5U13as7HhOExbT6OlWJJUV/lLzL2voOSP1UVehpRD8FbSrSDjfScK/KwAvVTI5AS6r4VwbOMlIqtvRidnA=="
},
"node-fetch": {
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz",
"integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA=="
},
"node-gyp": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-6.1.0.tgz",
@ -7460,11 +7423,6 @@
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
"dev": true
},
"normalize-url": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz",
"integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ=="
},
"npm-path": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.4.tgz",
@ -7728,11 +7686,6 @@
"os-tmpdir": "^1.0.0"
}
},
"p-cancelable": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz",
"integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw=="
},
"p-each-series": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.1.0.tgz",
@ -7840,11 +7793,6 @@
"integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
"dev": true
},
"pend": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
"integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
},
"performance-now": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
@ -8122,11 +8070,6 @@
"integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
"dev": true
},
"prepend-http": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
"integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
},
"prettier": {
"version": "1.19.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz",
@ -8424,14 +8367,6 @@
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
"dev": true
},
"responselike": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz",
"integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=",
"requires": {
"lowercase-keys": "^1.0.0"
}
},
"restore-cursor": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
@ -9386,11 +9321,6 @@
}
}
},
"to-readable-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz",
"integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q=="
},
"to-regex": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
@ -9590,11 +9520,6 @@
"integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
"dev": true
},
"typedarray": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c="
},
"typedarray-to-buffer": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
@ -9806,14 +9731,6 @@
"resolved": "https://registry.npmjs.org/url-join/-/url-join-0.0.1.tgz",
"integrity": "sha1-HbSK1CLTQCRpqH99l73r/k+x48g="
},
"url-parse-lax": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz",
"integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=",
"requires": {
"prepend-http": "^2.0.0"
}
},
"url-template": {
"version": "2.0.8",
"resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz",
@ -10102,14 +10019,6 @@
"camelcase": "^5.0.0",
"decamelize": "^1.2.0"
}
},
"yauzl": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz",
"integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=",
"requires": {
"fd-slicer": "~1.0.1"
}
}
}
}

View File

@ -1,28 +1,38 @@
{
"name": "@nodegui/nodegui",
"version": "0.13.4",
"version": "0.15.0-alpha-4",
"description": "A cross platform library to build native desktop apps.",
"main": "dist/index.js",
"typings": "dist/index.d.ts",
"author": "Atul R <atulanand94@gmail.com>",
"license": "MIT",
"private": false,
"bin": {
"qode": "./scripts/qode.js"
},
"funding": {
"url": "https://github.com/sponsors/master-atul"
},
"scripts": {
"dev": "npm run build && qode dist/demo.js",
"build": "tsc && npm run build:addon",
"postinstall": "cross-env node ./scripts/skip.js || npm run prebuild:install || npm run build:addon",
"dev": "cross-env npm run build && node ./scripts/qode.js dist/demo.js",
"build": "cross-env tsc && npm run build:addon",
"postinstall": "cross-env npm run setupqt && (node ./scripts/skip.js || npm run prebuild:install || npm run build:addon)",
"setupqt": "cross-env node ./scripts/setupMiniQt.js",
"build:addon": "cross-env CMAKE_BUILD_PARALLEL_LEVEL=8 cmake-js compile",
"prebuild:install": "prebuild-install --backend=cmake-js --runtime=napi --verbose",
"test": "qode ./node_modules/jest/bin/jest -i",
"lint:cpp": "clang-format -i --glob=src/cpp/**/*.[h,c]*",
"lint:ts": "tsc --noEmit && cross-env eslint './src/**/*.{ts,tsx,js,jsx}' --fix",
"docs": "typedoc && node ./website/docs/scripts/fixdocs.js"
"test": "node ./scripts/qode.js ./node_modules/jest/bin/jest -i",
"lint:cpp": "cross-env clang-format -i --glob=src/cpp/**/*.[h,c]*",
"lint:ts": "cross-env tsc --noEmit && cross-env eslint './src/**/*.{ts,tsx,js,jsx}' --fix",
"docs": "cross-env typedoc && node ./website/docs/scripts/fixdocs.js",
"qode": "cross-env node ./scripts/qode.js"
},
"dependencies": {
"@nodegui/qode": "^1.0.6",
"@nodegui/artifact-installer": "^1.0.0",
"@nodegui/qode": "^2.0.4",
"cmake-js": "^6.0.0",
"cross-env": "^7.0.0",
"cuid": "^2.1.6",
"manage-path": "^2.0.0",
"node-addon-api": "^2.0.0",
"postcss-nodegui-autoprefixer": "0.0.7",
"prebuild-install": "^5.3.3"

33
scripts/qode.js Normal file
View File

@ -0,0 +1,33 @@
#!/usr/bin/env node
var path = require('path');
var qodeConfig = require('@nodegui/qode');
var managePath = require('manage-path');
var qtConfig = require('../config/qtConfig');
var proc = require('child_process');
// Add Qt's bin to the path of Qode so that it can find the dll's
var alterPath = managePath(process.env);
alterPath.unshift(path.join(qtConfig.qtHome, 'bin'));
var child = proc.spawn(qodeConfig.qodePath, process.argv.slice(2), {
stdio: 'inherit',
windowsHide: false,
env: process.env,
});
child.on('close', function(code) {
process.exit(code);
});
const handleTerminationSignal = function(signal) {
process.on(signal, function signalHandler() {
if (!child.killed) {
child.kill(signal);
}
});
};
handleTerminationSignal('SIGINT');
handleTerminationSignal('SIGTERM');

28
scripts/setupMiniQt.js Normal file
View File

@ -0,0 +1,28 @@
#!/usr/bin/env node
const { setupArtifact } = require('@nodegui/artifact-installer');
const { miniQt, useCustomQt, qtHome } = require('../config/qtConfig');
if (!useCustomQt) {
console.log(`Minimal Qt ${miniQt.version} setup:`);
} else {
console.log(`CustomQt detected at ${qtHome} . Hence, skipping Mini Qt installation...`);
}
async function setupQt() {
return Promise.all(
miniQt.artifacts.map(async artifact =>
setupArtifact({
outDir: miniQt.setupDir,
id: 'nodegui-mini-qt',
displayName: `${artifact.name} for Minimal Qt: ${miniQt.version} installation`,
downloadLink: artifact.link,
}),
),
);
}
setupQt().catch(err => {
console.error(err);
process.exit(1);
});

View File

@ -0,0 +1,10 @@
#ifdef _WINDLL
#ifdef ENABLE_DLL_EXPORT
#define DLL_EXPORT __declspec(dllexport)
#else
#define DLL_EXPORT __declspec(dllimport)
#endif
#else
#define DLL_EXPORT
#endif

View File

@ -1,20 +1,11 @@
#pragma once
#ifdef _WINDLL
#ifdef ENABLE_DLL_EXPORT
#define DLL_EXPORT __declspec(dllexport)
#else
#define DLL_EXPORT __declspec(dllimport)
#endif
#else
#define DLL_EXPORT
#endif
#include <napi.h>
#include <QPointer>
#include <QVariant>
#include "Extras/Export/export.h"
#include "core/FlexLayout/flexutils.h"
#include "deps/yoga/YGNode.h"
@ -33,7 +24,6 @@ void safeDelete(QPointer<T>& component) {
delete component;
}
}
void initAppSettings();
} // namespace extrautils
class DLL_EXPORT NUtilsWrap : public Napi::ObjectWrap<NUtilsWrap> {

View File

@ -5,7 +5,7 @@
#include <QDate>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QDateWrap : public Napi::ObjectWrap<QDateWrap> {

View File

@ -5,7 +5,7 @@
#include <QDateTime>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QDateTimeWrap : public Napi::ObjectWrap<QDateTimeWrap> {

View File

@ -4,7 +4,7 @@
#include <QModelIndex>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QModelIndexWrap : public Napi::ObjectWrap<QModelIndexWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QObject>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "core/Events/eventwidget.h"
#include "core/Events/eventwidget_macro.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/nobject.hpp"
#include "QtCore/QObject/qobject_macro.h"

View File

@ -4,7 +4,7 @@
#include <QPoint>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QPointWrap : public Napi::ObjectWrap<QPointWrap> {

View File

@ -4,7 +4,7 @@
#include <QRect>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QRectWrap : public Napi::ObjectWrap<QRectWrap> {

View File

@ -4,7 +4,7 @@
#include <QSize>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QSizeWrap : public Napi::ObjectWrap<QSizeWrap> {

View File

@ -5,7 +5,7 @@
#include <QTime>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QTimeWrap : public Napi::ObjectWrap<QTimeWrap> {

View File

@ -4,7 +4,7 @@
#include <QUrl>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QUrlWrap : public Napi::ObjectWrap<QUrlWrap> {

View File

@ -4,7 +4,7 @@
#include <QSharedPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QVariantWrap : public Napi::ObjectWrap<QVariantWrap> {

View File

@ -0,0 +1,17 @@
#pragma once
#include <QApplication>
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "napi.h"
class DLL_EXPORT NApplication : public QApplication, public EventWidget {
Q_OBJECT
EVENTWIDGET_IMPLEMENTATIONS(QApplication)
public:
using QApplication::QApplication; // inherit all constructors of QApplication
void connectSignalsToEventEmitter() {
// Qt Connects: Implement all signal connects here
QOBJECT_SIGNALS
}
};

View File

@ -2,19 +2,17 @@
#include <napi.h>
#include <QApplication>
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "core/Component/component_macro.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "napplication.hpp"
class DLL_EXPORT QApplicationWrap : public Napi::ObjectWrap<QApplicationWrap> {
COMPONENT_WRAPPED_METHODS_DECLARATION
QOBJECT_WRAPPED_METHODS_DECLARATION
private:
QPointer<QApplication> instance;
static int argc;
static char** argv;
QPointer<NApplication> instance;
bool _wasManuallyCreated = false;
public:
@ -22,7 +20,7 @@ class DLL_EXPORT QApplicationWrap : public Napi::ObjectWrap<QApplicationWrap> {
static Napi::Object init(Napi::Env env, Napi::Object exports);
QApplicationWrap(const Napi::CallbackInfo& info);
~QApplicationWrap();
QApplication* getInternalInstance();
NApplication* getInternalInstance();
// Wrapped methods
Napi::Value processEvents(const Napi::CallbackInfo& info);
Napi::Value exec(const Napi::CallbackInfo& info);

View File

@ -4,7 +4,7 @@
#include <QClipboard>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QClipboardWrap : public Napi::ObjectWrap<QClipboardWrap> {

View File

@ -4,7 +4,7 @@
#include <QColor>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QColorWrap : public Napi::ObjectWrap<QColorWrap> {

View File

@ -4,7 +4,7 @@
#include <QCursor>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QCursorWrap : public Napi::ObjectWrap<QCursorWrap> {

View File

@ -4,7 +4,7 @@
#include <QKeyEvent>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QKeyEventWrap : public Napi::ObjectWrap<QKeyEventWrap> {

View File

@ -4,7 +4,7 @@
#include <QMouseEvent>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QMouseEventWrap : public Napi::ObjectWrap<QMouseEventWrap> {

View File

@ -4,7 +4,7 @@
#include <QFont>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QFontWrap : public Napi::ObjectWrap<QFontWrap> {

View File

@ -4,7 +4,7 @@
#include <QFontDatabase>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QFontDatabaseWrap

View File

@ -4,7 +4,7 @@
#include <QIcon>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QIconWrap : public Napi::ObjectWrap<QIconWrap> {

View File

@ -4,7 +4,7 @@
#include <QKeySequence>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QKeySequenceWrap : public Napi::ObjectWrap<QKeySequenceWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QMovie>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "QtCore/QRect/qrect_wrap.h"
#include "QtCore/QSize/qsize_wrap.h"

View File

@ -6,7 +6,7 @@
#include <QPointer>
#include <QSharedPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "nmovie.hpp"

View File

@ -4,7 +4,7 @@
#include <QPixmap>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QPixmapWrap : public Napi::ObjectWrap<QPixmapWrap> {

View File

@ -4,7 +4,7 @@
#include <QStyle>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_macro.h"
class DLL_EXPORT QStyleWrap : public Napi::ObjectWrap<QStyleWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QAction>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "naction.hpp"
class DLL_EXPORT QActionWrap : public Napi::ObjectWrap<QActionWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QBoxLayout>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QLayout/qlayout_macro.h"
#include "core/Events/eventwidget_macro.h"

View File

@ -5,7 +5,7 @@
#include <QBoxLayout>
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QBoxLayout/nboxlayout.hpp"
#include "QtWidgets/QLayout/qlayout_macro.h"

View File

@ -2,7 +2,7 @@
#include <QAbstractButton>
#include <QButtonGroup>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QObject/qobject_macro.h"
#include "nbuttongroup.hpp"
class DLL_EXPORT QButtonGroupWrap : public Napi::ObjectWrap<QButtonGroupWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QCalendarWidget>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtCore/QDate/qdate_wrap.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QCalendarWidget/ncalendarwidget.hpp"
#include "QtWidgets/QWidget/qwidget_macro.h"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QCheckBox>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractButton/qabstractbutton_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractButton/qabstractbutton_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "ncheckbox.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QComboBox>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QComboBox/ncombobox.hpp"
#include "QtWidgets/QWidget/qwidget_macro.h"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QDateEdit>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDateTimeEdit/qdatetimeedit_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDateTimeEdit/qdatetimeedit_macro.h"
#include "ndateedit.hpp"

View File

@ -3,7 +3,7 @@
#include <QDateTimeEdit>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDateTimeEdit/qdatetimeedit_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDateTimeEdit/qdatetimeedit_macro.h"
#include "ndatetimeedit.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QDial>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractSlider/qabstractslider_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractSlider/qabstractslider_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "ndial.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QDialog>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDialog/qdialog_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDialog/qdialog_macro.h"
#include "ndialog.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QFileDialog>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDialog/qdialog_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDialog/qdialog_macro.h"
#include "QtWidgets/QFileDialog/nfiledialog.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QGridLayout>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QLayout/qlayout_macro.h"
#include "core/Events/eventwidget_macro.h"

View File

@ -5,7 +5,7 @@
#include <QGridLayout>
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QGridLayout/ngridlayout.hpp"
#include "QtWidgets/QLayout/qlayout_macro.h"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QGroupBox>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "ngroupbox.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QInputDialog>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDialog/qdialog_macro.h"
#include "core/NodeWidget/nodewidget.h"
#include "napi.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QInputDialog/ninputdialog.hpp"
#include "QtWidgets/QWidget/qwidget_macro.h"

View File

@ -2,8 +2,9 @@
#include <QLabel>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QFrame/qframe_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"
class DLL_EXPORT NLabel : public QLabel, public NodeWidget {

View File

@ -4,8 +4,9 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QFrame/qframe_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nlabel.hpp"
class DLL_EXPORT QLabelWrap : public Napi::ObjectWrap<QLabelWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QLayout>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QLayout/qlayout_macro.h"
#include "core/Events/eventwidget_macro.h"

View File

@ -5,7 +5,7 @@
#include <QLayout>
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QLayout/nlayout.hpp"
#include "QtWidgets/QLayout/qlayout_macro.h"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QLineEdit>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nlineedit.hpp"

View File

@ -3,7 +3,7 @@
#include <QListWidget>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QListView/qlistview_macro.h"
#include "QtWidgets/QListWidgetItem/qlistwidgetitem_wrap.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -5,7 +5,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QListView/qlistview_macro.h"
#include "QtWidgets/QListWidget/nlistwidget.hpp"

View File

@ -2,7 +2,7 @@
#include <QEvent>
#include <QMainWindow>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nmainwindow.hpp"

View File

@ -3,7 +3,7 @@
#include <QMenu>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
class DLL_EXPORT NMenu : public QMenu, public NodeWidget {

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "nmenu.hpp"
class DLL_EXPORT QMenuWrap : public Napi::ObjectWrap<QMenuWrap> {

View File

@ -3,7 +3,7 @@
#include <QMenuBar>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
class DLL_EXPORT NMenuBar : public QMenuBar, public NodeWidget {

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "nmenubar.hpp"
class DLL_EXPORT QMenuBarWrap : public Napi::ObjectWrap<QMenuBarWrap> {

View File

@ -2,7 +2,7 @@
#include <QAbstractButton>
#include <QMessageBox>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QDialog/qdialog_macro.h"
#include "QtWidgets/QPushButton/qpushbutton_wrap.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QMessageBox/nmessagebox.hpp"
#include "QtWidgets/QWidget/qwidget_macro.h"

View File

@ -4,7 +4,7 @@
#include <QPainter>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "core/Component/component_wrap.h"
class DLL_EXPORT QPainterWrap : public Napi::ObjectWrap<QPainterWrap> {

View File

@ -1,7 +1,7 @@
#pragma once
#include <QPlainTextEdit>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractScrollArea/qabstractscrollarea_macro.h"
#include "core/NodeWidget/nodewidget.h"
class DLL_EXPORT NPlainTextEdit : public QPlainTextEdit, public NodeWidget {

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractScrollArea/qabstractscrollarea_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nplaintextedit.hpp"

View File

@ -2,7 +2,7 @@
#include <QProgressBar>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nprogressbar.hpp"

View File

@ -2,7 +2,7 @@
#include <QPushButton>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractButton/qabstractbutton_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractButton/qabstractbutton_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "npushbutton.hpp"

View File

@ -1,7 +1,7 @@
#pragma once
#include <QRadioButton>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractButton/qabstractbutton_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractButton/qabstractbutton_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nradiobutton.hpp"

View File

@ -2,7 +2,7 @@
#include <QScrollArea>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractScrollArea/qabstractscrollarea_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractScrollArea/qabstractscrollarea_macro.h"
#include "nscrollarea.hpp"

View File

@ -2,7 +2,7 @@
#include <QScrollBar>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractSlider/qabstractslider_macro.h"
#include "core/NodeWidget/nodewidget.h"

View File

@ -4,7 +4,7 @@
#include <QPointer>
#include "Extras/Utils/nutils.h"
#include "Extras/Export/export.h"
#include "QtWidgets/QAbstractSlider/qabstractslider_macro.h"
#include "QtWidgets/QWidget/qwidget_macro.h"
#include "nscrollbar.hpp"

Some files were not shown because too many files have changed in this diff Show More