84 Commits
Author SHA1 Message Date
galeon 56dd58b8d1 Merge pull request 'Фиксы пайплайна' (#32) from dev into rc
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
release / create-release (push) Successful in 4s
tests / macos (push) Successful in 1m19s
tests / linux (push) Successful in 2m28s
tests / windows (push) Canceled after 3m29s
release / build-macos (push) Successful in 1m53s
release / build-linux (push) Successful in 3m8s
release / build-windows (push) Successful in 6m26s
release / publish (push) Successful in 1s
Reviewed-on: #32
2026-10-24 19:25:20 +00:00
galeon 50e0cd2aab sync BiLauncher.iss with rc
tests / package-smoke-linux (push) Skipped
tests / windows (pull_request) Skipped
tests / package-smoke-windows (push) Skipped
tests / macos (pull_request) Skipped
tests / package-smoke-macos (push) Skipped
tests / package-smoke-linux (pull_request) Skipped
tests / package-smoke-windows (pull_request) Skipped
tests / package-smoke-macos (pull_request) Skipped
tests / macos (push) Successful in 1m20s
tests / linux (push) Successful in 3m4s
tests / linux (pull_request) Successful in 2m19s
tests / windows (push) Failing after 23m42s
2026-10-24 22:19:55 +03:00
galeon 4ceaf000fd fixes
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Failing after 5s
tests / linux (push) Failing after 11s
tests / windows (push) Canceled after 0s
release / build-macos (push) Failing after 5s
release / build-linux (push) Failing after 12s
release / create-release (push) Successful in 5s
release / build-windows (push) Canceled after 0s
release / publish (push) Canceled after 0s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-24 22:11:39 +03:00
galeon d82a9d0729 fixes
tests / windows (pull_request) Skipped
tests / macos (pull_request) Skipped
tests / package-smoke-linux (pull_request) Skipped
tests / package-smoke-windows (pull_request) Skipped
tests / package-smoke-macos (pull_request) Skipped
tests / linux (pull_request) Successful in 2m33s
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Successful in 1m19s
tests / linux (push) Successful in 2m35s
tests / windows (push) Canceled after 0s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-24 22:10:42 +03:00
galeon 2575aae5c6 fix
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Failing after 6s
tests / linux (push) Failing after 12s
release / create-release (push) Canceled after 0s
release / build-linux (push) Canceled after 0s
release / build-windows (push) Canceled after 0s
release / build-macos (push) Canceled after 0s
release / publish (push) Canceled after 0s
tests / windows (push) Canceled after 0s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-24 22:04:27 +03:00
galeon 6442514d4f conflict fixes
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
release / create-release (push) Successful in 3s
tests / macos (push) Successful in 1m26s
tests / windows (push) Canceled after 0s
tests / linux (push) Canceled after 4m53s
release / build-linux (push) Successful in 3m38s
tests / package-smoke-macos (push) Skipped
release / build-macos (push) Failing after 1m49s
release / build-windows (push) Successful in 9m52s
release / publish (push) Skipped
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-24 21:59:31 +03:00
galeon 1817157e4d release pipeline fixes
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / windows (pull_request) Skipped
tests / macos (pull_request) Skipped
tests / package-smoke-linux (pull_request) Skipped
tests / package-smoke-windows (pull_request) Skipped
tests / package-smoke-macos (pull_request) Skipped
tests / linux (push) Successful in 5m48s
tests / linux (pull_request) Successful in 5m20s
tests / windows (push) Canceled after 30m5s
tests / macos (push) Successful in 1m19s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-24 21:45:45 +03:00
galeon 4463d4e5da release fixes and changelog
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / linux (push) Successful in 2m13s
tests / windows (push) Failing after 9m0s
tests / macos (push) Failing after 10m19s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-24 11:38:39 +03:00
galeon 7dd89db508 changelog update
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Successful in 1m25s
tests / linux (push) Successful in 2m4s
tests / windows (push) Successful in 29m8s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-23 15:42:54 +03:00
galeon a89bf20486 release fixes
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Successful in 1m24s
tests / linux (push) Successful in 2m18s
tests / windows (push) Successful in 14m14s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-23 15:26:03 +03:00
galeon ec60df859a releases hotfix
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Successful in 1m23s
tests / linux (push) Successful in 2m14s
tests / windows (push) Failing after 19m40s
release / build-linux (push) Successful in 1m55s
release / build-windows (push) Successful in 6m14s
release / publish (push) Successful in 0s
release / create-release (push) Successful in 3s
release / build-macos (push) Successful in 2m56s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-23 14:35:14 +03:00
galeon 0cacbc3ef3 version bump
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
release / create-release (push) Successful in 3s
release / build-linux (push) Successful in 3m15s
release / build-windows (push) Failing after 3m35s
release / publish (push) Skipped
tests / macos (push) Successful in 1m22s
tests / linux (push) Successful in 3m6s
release / build-macos (push) Successful in 4m56s
tests / windows (push) Failing after 16m9s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-23 14:11:45 +03:00
galeon 5508b9a936 Merge pull request 'Хотфиксы багов и небольшие изменения' (#31) from dev into rc
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / linux (push) Successful in 2m15s
tests / windows (push) Failing after 27m44s
tests / macos (push) Successful in 1m23s
release / create-release (push) Successful in 4s
release / build-linux (push) Successful in 3m45s
release / build-macos (push) Successful in 4m45s
release / publish (push) Canceled after 0s
release / build-windows (push) Canceled after 6m50s
Reviewed-on: #31
2026-10-23 09:56:20 +00:00
galeon 24115b4ce6 release workflow fixes
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Successful in 1m26s
tests / linux (push) Successful in 2m36s
tests / windows (push) Failing after 23m28s
tests / windows (pull_request) Skipped
tests / macos (pull_request) Skipped
tests / package-smoke-linux (pull_request) Skipped
tests / package-smoke-windows (pull_request) Skipped
tests / package-smoke-macos (pull_request) Skipped
tests / linux (pull_request) Successful in 2m36s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-23 10:45:27 +03:00
galeon 1d781b5324 fix #23 by adding validating on first startup and close #30 by adding
tests / package-smoke-linux (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Successful in 1m20s
tests / windows (push) Failing after 23m21s
tests / package-smoke-windows (push) Skipped
tests / linux (push) Successful in 2m14s
version number

Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-23 09:55:15 +03:00
galeon bc205fa2e7 fixes #27 by locking builds while game active
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Failing after 1m51s
tests / linux (push) Successful in 1m54s
tests / windows (push) Failing after 11m29s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-22 08:50:43 +03:00
galeon aa021269be resolves #28, added check for selected row
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / linux (push) Successful in 2m14s
tests / macos (push) Failing after 1m55s
tests / windows (push) Failing after 12m48s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-21 09:59:31 +03:00
galeon 92531c6e9a fix #25 by allowing user to close model windows while backend is busy
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / linux (push) Successful in 2m17s
tests / windows (push) Failing after 14m10s
tests / macos (push) Successful in 1m18s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-20 17:43:43 +03:00
galeon acd9334c16 tests hotfix
tests / windows (push) Failing after 14m37s
tests / linux (push) Successful in 2m11s
tests / macos (push) Successful in 1m14s
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
2026-10-17 23:38:49 +03:00
galeon 3ac2156ef2 traslations fix
tests / windows (push) Failing after 6m19s
tests / linux (push) Successful in 2m12s
tests / macos (push) Failing after 1m15s
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
release / create-release (push) Successful in 3s
release / build-linux (push) Successful in 2m17s
release / build-macos (push) Successful in 2m44s
release / build-windows (push) Successful in 6m27s
release / publish (push) Successful in 1s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-14 09:32:17 +03:00
galeon 5d819129d6 Обновить .gitea/workflows/tests.yml
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / macos (push) Failing after 1m20s
tests / linux (push) Successful in 2m13s
tests / windows (push) Failing after 12m6s
tests / package-smoke-linux (push) Skipped
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-13 06:01:40 +00:00
galeon 0dd6bef715 test fixes
tests / windows (push) Skipped
tests / macos (push) Skipped
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
tests / linux (push) Successful in 1m59s
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-13 08:51:07 +03:00
galeon 41599fa82f new unit tests, hehe 67
tests / linux (push) Failing after 2m18s
tests / windows (push) Skipped
tests / macos (push) Skipped
tests / package-smoke-linux (push) Skipped
tests / package-smoke-windows (push) Skipped
tests / package-smoke-macos (push) Skipped
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-12 13:14:08 +03:00
galeon ebf8ff7869 release workflow fix
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-12 09:25:48 +03:00
galeon 443850196d fix bug with launcher version 2026-10-11 22:32:58 +03:00
galeon f10b654953 documentation rewrite
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-11 22:32:13 +03:00
galeon 1943996608 more translation fixes
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-09 13:01:01 +03:00
galeon 0f370167db translations fix
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-09 12:29:21 +03:00
galeon fd14b54d8a ci\cd fixes
release / create-release (push) Successful in 3s
release / build-macos (push) Successful in 1m50s
release / build-windows (push) Successful in 6m40s
release / publish (push) Successful in 0s
release / build-linux (push) Successful in 2m15s
2026-10-09 00:23:12 +03:00
galeon 8a3d0596ef ci\cd 2026-10-08 23:26:01 +03:00
galeon 29b53ce75a Обновить README.md
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 10:14:14 +00:00
galeon 5bbca110d7 Обновить CHANGELOG.md
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 09:58:37 +00:00
galeon c66d90ece6 Обновить LICENSE
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 09:42:44 +00:00
galeon d77d4c69cd Обновить README.md
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 06:20:01 +00:00
galeon 7a54f97dcd Загрузить файлы в «Screenshots»
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 05:45:16 +00:00
galeon e85f52e886 Загрузить файлы в «Screenshots»
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 05:38:54 +00:00
galeon 1bf3617055 Загрузить файлы в «Screenshots»
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-07 05:38:08 +00:00
galeon bc2b8d27ca Удалить Screenshots 2026-10-06 15:14:55 +00:00
galeon bb202af9a7 Добавить Screenshots 2026-10-06 15:14:20 +00:00
galeon e60a4c2333 Merge branch 'refs/heads/beta-2' 2026-10-06 14:31:44 +03:00
galeon 438666c9d5 1 2026-10-06 14:24:27 +03:00
galeon 91483ea468 Удалить .gitignore
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-06 10:43:08 +00:00
galeon 694c7603b2 Удалить README.md
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-06 10:42:50 +00:00
galeon 04b7799fd3 Добавить README.md
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-06 10:41:29 +00:00
galeon 3737346bea Обновить README.md
Signed-off-by: galeon <dertiellis@gmail.com>
2026-10-05 06:41:26 +00:00
galeon ae57940c62 icons beta patch remove and cleanups 2026-10-04 23:46:57 +03:00
galeon 1b18cf48bb predrelease changes 2026-10-04 22:19:20 +03:00
galeon c11da87908 more cleanups 2026-09-30 20:46:20 +03:00
galeon 6567e731d1 cleanups 2026-09-29 09:40:37 +03:00
galeon 441021b9a6 path fixes 2026-09-21 01:23:00 +03:00
galeon 5dba4e89cb new icons and translation fix 2026-09-21 00:27:52 +03:00
galeon 01af372ef2 translation of all project, and new translation mechanism 2026-09-03 09:18:48 +03:00
galeon 00e7c957e4 new docs for project 2026-09-03 09:16:56 +03:00
galeon f1a840174b login variants fields fixes 2026-09-01 22:53:16 +03:00
galeon d6986057d1 license login feature 2026-09-01 22:25:23 +03:00
galeon c25e071b29 seasonal builds 2026-08-31 00:59:14 +03:00
galeon 4689e59b5a zlib transfer 2026-08-28 01:51:12 +03:00
galeon 616840fda9 modded start fix 2026-08-28 01:29:39 +03:00
galeon bbc8633257 forge on linux fix 2026-08-28 00:13:59 +03:00
galeon af41017446 verison deletion feature 2026-08-27 21:05:37 +03:00
galeon dddc0261d4 java implementation and downloading 2026-08-27 19:35:11 +03:00
galeon 08e0dc4965 builds fixes 2026-08-27 16:44:42 +03:00
galeon 168884127b new builds menu and modloaders implementation 2026-08-27 09:21:51 +03:00
galeon 5bc59f8018 version tracking and auto installing 2026-08-24 21:09:52 +03:00
galeon 671fbe169d new home folder for launcher 2026-08-23 03:30:31 +03:00
galeon 2c51c4736a revert af4230500e
revert add launcher folder and some checks to it
2026-08-22 23:39:46 +00:00
galeon af4230500e add launcher folder and some checks to it 2026-08-23 01:20:18 +03:00
galeon 2c4b594c90 adding startup progress and style fix 2026-08-22 18:19:13 +03:00
galeon 56e56a370f fix folder button location 2026-07-05 19:35:30 +03:00
galeon 2b67938385 add button for opening mod folder 2026-06-19 21:03:37 +03:00
galeon 966cd46049 added editing for profiles\versions 2026-06-16 12:16:59 +03:00
galeon bbbed6aa89 Удалить .qtcreator/CMakeLists.txt.user 2026-06-14 21:23:38 +00:00
galeon 2d35c613a9 added a new feature to delete existing version\profile 2026-06-15 00:22:27 +03:00
galeon 4bf16a183f del some shit 2026-06-14 20:32:19 +03:00
galeon af2139c671 fixed text width in blocks 2026-06-14 20:04:17 +03:00
galeon ca2a6bdbff Merge branch 'beta-2' of https://gitea.galeonlab.ru/galeon/minecraft-launcher into beta-2 2026-06-14 18:17:17 +03:00
galeon 2b8119c64e new UI 2026-05-09 15:41:22 +03:00
UtkaG 38d9805150 revert d760bc2f83
revert Загрузить файлы в «Ui-TEMP»
2025-11-04 15:48:24 +00:00
UtkaG d760bc2f83 Загрузить файлы в «Ui-TEMP» 2025-11-04 15:47:41 +00:00
galeon 0ebf7e07a7 Обновить README.md 2025-09-04 12:41:52 +00:00
galeon 52ef710cd7 Удалить main.cpp 2025-09-01 08:15:11 +00:00
galeon 4b2026e96b Удалить LauncherWindow.h 2025-09-01 08:15:06 +00:00
galeon 4c0c566ff9 Удалить LauncherWindow.cpp 2025-09-01 08:15:01 +00:00
galeon 6cfadfc4b6 Удалить CppProperties.json 2025-09-01 08:14:34 +00:00
1347 changed files with 54019 additions and 207235 deletions

No files matched your search

+305
View File
@@ -0,0 +1,305 @@
name: release
# master -> релиз v<версия>, если такого ещё нет
# rc -> пре-релиз v<версия>-rcN, N — следующий свободный номер
# тег vX.Y.Z -> релиз, тег vX.Y.Z-rcN -> пре-релиз
# ручной запуск -> только сборки, файлы остаются артефактами прогона
on:
push:
#branches: [master, rc]
tags: ["v*"]
workflow_dispatch:
concurrency:
group: release-${{ github.ref }}
env:
API: ${{ github.server_url }}/api/v1/repos/${{ github.repository }}
jobs:
create-release:
runs-on: linux
outputs:
version: ${{ steps.meta.outputs.version }}
tag: ${{ steps.meta.outputs.tag }}
skip: ${{ steps.meta.outputs.skip }}
release_id: ${{ steps.release.outputs.id }}
steps:
- uses: actions/checkout@v4
- id: meta
name: Версия из CMakeLists.txt, тег и тип релиза
env:
TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: |
version=$(sed -nE 's/^project\(BiLauncher VERSION ([0-9]+\.[0-9]+\.[0-9]+).*/\1/p' CMakeLists.txt)
[ -n "$version" ] || { echo "Не нашёл project(BiLauncher VERSION ...)"; exit 1; }
# Теги релизов, включая черновики (токену с правом записи API отдаёт и их)
release_tags=$(curl -fsS -H "Authorization: token $TOKEN" "$API/releases?limit=50" \
| python3 -c 'import json,sys; [print(r["tag_name"]) for r in json.load(sys.stdin)]')
has_release() { printf '%s\n' "$release_tags" | grep -xF "$1" > /dev/null; }
# У черновика тега в git ещё нет, поэтому смотрим и в git, и в релизы
known() {
git ls-remote --tags origin | sed -E 's#.*refs/tags/##; s/\^\{\}$//'
printf '%s\n' "$release_tags"
}
tag=""; skip=false
case "${GITHUB_REF_TYPE}:${GITHUB_REF_NAME}" in
tag:*)
tag="${GITHUB_REF_NAME}"
base="${tag#v}"; base="${base%%-*}"
if [ "$base" != "$version" ]; then
echo "Тег $tag не совпадает с версией $version в CMakeLists.txt"; exit 1
fi
# Тег мог создать сам релиз из прогона по ветке — тогда второй раз не собираем
if has_release "$tag"; then
echo "Релиз $tag уже есть"; skip=true
fi
;;
branch:master)
tag="v$version"
if known | grep -xF "$tag" > /dev/null; then
echo "Релиз $tag уже есть, поднимите версию в CMakeLists.txt"; skip=true
fi
;;
branch:rc)
n=$(known | sed -nE "s/^v${version//./\\.}-rc([0-9]+)\$/\1/p" | sort -n | tail -1)
tag="v$version-rc$(( ${n:-0} + 1 ))"
;;
esac
[ -n "$tag" ] && version="${tag#v}"
echo "version=$version" >> "$GITHUB_OUTPUT"
echo "tag=$tag" >> "$GITHUB_OUTPUT"
echo "skip=$skip" >> "$GITHUB_OUTPUT"
echo "Версия: $version, тег: ${tag:-нет}, пропуск: $skip"
- id: release
name: Черновик релиза
if: steps.meta.outputs.tag != '' && steps.meta.outputs.skip != 'true'
env:
TOKEN: ${{ secrets.RELEASE_TOKEN }}
TAG: ${{ steps.meta.outputs.tag }}
run: |
base="${TAG#v}"; base="${base%%-*}"
notes=$(awk -v v="$base" '
/^## \[/ { if (on) exit; if (index($0, "[" v "]")) { on=1; next } }
on' CHANGELOG.md)
prerelease=false; case "$TAG" in *-rc*) prerelease=true;; esac
# target_commitish: у новой ветки тег появится на этом коммите при публикации
body=$(python3 -c 'import json,sys; print(json.dumps({"tag_name":sys.argv[1],"target_commitish":sys.argv[4],"name":"BiLauncher "+sys.argv[1],"body":sys.argv[2],"draft":True,"prerelease":sys.argv[3]=="true"}))' \
"$TAG" "$notes" "$prerelease" "$GITHUB_SHA")
id=$(curl -fsS -X POST "$API/releases" \
-H "Authorization: token $TOKEN" -H "Content-Type: application/json" \
-d "$body" | python3 -c 'import json,sys; print(json.load(sys.stdin)["id"])')
echo "id=$id" >> "$GITHUB_OUTPUT"
echo "Создан черновик $([ "$prerelease" = true ] && echo пре-)релиза $TAG (id $id)"
build-linux:
needs: create-release
if: needs.create-release.outputs.skip != 'true'
runs-on: linux
env:
VERSION: ${{ needs.create-release.outputs.version }}
# Только для релизов/пре-релизов; при ручном запуске канал определит CMake по ветке
BUILD_VERSION: ${{ needs.create-release.outputs.tag != '' && needs.create-release.outputs.version || '' }}
RELEASE_ID: ${{ needs.create-release.outputs.release_id }}
outputs:
sums: ${{ steps.pack.outputs.sums }}
steps:
- uses: actions/checkout@v4
- name: Сборка
run: |
export PATH="$QT_TOOLS/CMake/bin:$QT_TOOLS/Ninja:$PATH"
rm -rf build AppDir dist
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH="$QT_ROOT" -DLAUNCHER_BUILD_VERSION="$BUILD_VERSION" \
-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib
cmake --build build -j 8
cmake --install build --prefix "$PWD/AppDir/usr"
- id: pack
name: AppImage и tar.gz
run: |
mkdir -p dist
cp AppDir/usr/share/applications/bilauncher.desktop AppDir/
cp AppDir/usr/share/icons/hicolor/256x256/apps/bilauncher.png AppDir/
ln -sf usr/bin/BiLauncher AppDir/AppRun
ARCH=x86_64 appimagetool --no-appstream AppDir "dist/BiLauncher-$VERSION-x86_64.AppImage"
cp -a AppDir/usr "BiLauncher-$VERSION"
tar -czf "dist/BiLauncher-$VERSION-linux-x86_64.tar.gz" "BiLauncher-$VERSION"
rm -rf "BiLauncher-$VERSION"
ls -lh dist
echo "sums=$(cd dist && sha256sum * | base64 -w0)" >> "$GITHUB_OUTPUT"
- name: Загрузка в релиз
if: env.RELEASE_ID != ''
env:
TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: |
for f in dist/*; do
curl -fsS -X POST -H "Authorization: token $TOKEN" \
-F "attachment=@$f" "$API/releases/$RELEASE_ID/assets?name=$(basename "$f")" > /dev/null
echo "Загружен $(basename "$f")"
done
- name: Артефакты прогона
if: env.RELEASE_ID == ''
uses: actions/upload-artifact@v4
with:
name: linux
path: dist/
build-windows:
needs: create-release
if: needs.create-release.outputs.skip != 'true'
runs-on: windows
env:
VERSION: ${{ needs.create-release.outputs.version }}
# Только для релизов/пре-релизов; при ручном запуске канал определит CMake по ветке
BUILD_VERSION: ${{ needs.create-release.outputs.tag != '' && needs.create-release.outputs.version || '' }}
RELEASE_ID: ${{ needs.create-release.outputs.release_id }}
outputs:
sums: ${{ steps.build.outputs.sums }}
steps:
- uses: actions/checkout@v4
- id: build
name: Сборка, установщик и portable-архив
shell: powershell
run: |
$ErrorActionPreference = "Stop"
$build = "C:\r\bl-build"; $stage = "C:\r\bl-stage"; $dist = "$PWD\dist"
Remove-Item -Recurse -Force $build, $stage, $dist -ErrorAction SilentlyContinue
$vs = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * `
-requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath
Import-Module "$vs\Common7\Tools\Microsoft.VisualStudio.DevShell.dll"
Enter-VsDevShell -VsInstallPath $vs -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64"
$env:PATH = "$env:QT_TOOLS\CMake_64\bin;$env:QT_TOOLS\Ninja;$env:PATH"
cmake -S . -B $build -G Ninja -DCMAKE_BUILD_TYPE=Release "-DCMAKE_PREFIX_PATH=$env:QT_ROOT" "-DLAUNCHER_BUILD_VERSION=$env:BUILD_VERSION"
if ($LASTEXITCODE) { throw "cmake configure" }
cmake --build $build
if ($LASTEXITCODE) { throw "cmake build" }
cmake --install $build --prefix $stage
if ($LASTEXITCODE) { throw "cmake install" }
New-Item -ItemType Directory -Force $dist | Out-Null
& "$env:ISCC_DIR\ISCC.exe" /Q "/DAppVersion=$env:VERSION" "/DSourceDir=$stage" "/DOutputDir=$dist" packaging\windows\BiLauncher.iss
if ($LASTEXITCODE) { throw "iscc" }
Remove-Item "$stage\bin\vc_redist.x64.exe" -ErrorAction SilentlyContinue
$portable = "C:\r\BiLauncher-$env:VERSION"
Remove-Item -Recurse -Force $portable -ErrorAction SilentlyContinue
Move-Item $stage $portable
& "$env:SystemRoot\System32\tar.exe" -a -c -f "$dist\BiLauncher-$env:VERSION-win64-portable.zip" -C C:\r "BiLauncher-$env:VERSION"
if ($LASTEXITCODE) { throw "zip" }
Remove-Item -Recurse -Force $portable
Get-ChildItem $dist | Format-Table Name, Length
$sums = Get-ChildItem $dist | ForEach-Object {
"{0} {1}" -f (Get-FileHash $_.FullName -Algorithm SHA256).Hash.ToLower(), $_.Name }
$b64 = [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes(($sums -join "`n") + "`n"))
[IO.File]::AppendAllText($env:GITHUB_OUTPUT, "sums=$b64`n")
- name: Загрузка в релиз
if: env.RELEASE_ID != ''
shell: powershell
env:
TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: |
foreach ($f in Get-ChildItem dist) {
curl.exe -fsS -X POST -H "Authorization: token $env:TOKEN" `
-F "attachment=@$($f.FullName)" "$env:API/releases/$env:RELEASE_ID/assets?name=$($f.Name)" | Out-Null
if ($LASTEXITCODE) { throw "Не удалось загрузить $($f.Name)" }
"Загружен $($f.Name)"
}
- name: Артефакты прогона
if: env.RELEASE_ID == ''
uses: actions/upload-artifact@v4
with:
name: windows
path: dist/
build-macos:
needs: create-release
if: needs.create-release.outputs.skip != 'true'
runs-on: macos
env:
VERSION: ${{ needs.create-release.outputs.version }}
# Только для релизов/пре-релизов; при ручном запуске канал определит CMake по ветке
BUILD_VERSION: ${{ needs.create-release.outputs.tag != '' && needs.create-release.outputs.version || '' }}
RELEASE_ID: ${{ needs.create-release.outputs.release_id }}
outputs:
sums: ${{ steps.pack.outputs.sums }}
steps:
- uses: actions/checkout@v4
- name: Сборка (universal, arm64 + x86_64)
run: |
export PATH="$QT_TOOLS/CMake/CMake.app/Contents/bin:$QT_TOOLS/Ninja:$PATH"
rm -rf build stage dist dmgroot
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH="$QT_ROOT" -DLAUNCHER_BUILD_VERSION="$BUILD_VERSION" \
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64"
cmake --build build
cmake --install build --prefix "$PWD/stage"
- id: pack
name: Ad-hoc подпись и DMG
run: |
codesign --force --deep --sign - stage/BiLauncher.app
codesign --verify --deep --strict stage/BiLauncher.app
mkdir -p dmgroot dist
cp -R stage/BiLauncher.app dmgroot/
ln -s /Applications dmgroot/Applications
hdiutil create -volname "BiLauncher" -srcfolder dmgroot -ov -format UDZO \
"dist/BiLauncher-$VERSION-macOS-universal.dmg"
rm -rf dmgroot
ls -lh dist
echo "sums=$(cd dist && shasum -a 256 * | base64 | tr -d '\n')" >> "$GITHUB_OUTPUT"
- name: Загрузка в релиз
if: env.RELEASE_ID != ''
env:
TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: |
for f in dist/*; do
curl -fsS -X POST -H "Authorization: token $TOKEN" \
-F "attachment=@$f" "$API/releases/$RELEASE_ID/assets?name=$(basename "$f")" > /dev/null
echo "Загружен $(basename "$f")"
done
- name: Артефакты прогона
if: env.RELEASE_ID == ''
uses: actions/upload-artifact@v4
with:
name: macos
path: dist/
publish:
needs: [create-release, build-linux, build-windows, build-macos]
if: needs.create-release.outputs.release_id != ''
runs-on: linux
env:
RELEASE_ID: ${{ needs.create-release.outputs.release_id }}
TOKEN: ${{ secrets.RELEASE_TOKEN }}
steps:
- name: SHA256SUMS.txt и публикация
run: |
{
echo "${{ needs.build-windows.outputs.sums }}" | base64 -d
echo "${{ needs.build-linux.outputs.sums }}" | base64 -d
echo "${{ needs.build-macos.outputs.sums }}" | base64 -d
} | tr -d '\r' | sed '/^$/d' > SHA256SUMS.txt
cat SHA256SUMS.txt
curl -fsS -X POST -H "Authorization: token $TOKEN" \
-F "attachment=@SHA256SUMS.txt" "$API/releases/$RELEASE_ID/assets?name=SHA256SUMS.txt" > /dev/null
curl -fsS -X PATCH -H "Authorization: token $TOKEN" -H "Content-Type: application/json" \
-d '{"draft": false}' "$API/releases/$RELEASE_ID" > /dev/null
echo "Релиз опубликован"
+183
View File
@@ -0,0 +1,183 @@
name: tests
on:
push:
branches: ["**"]
pull_request:
schedule:
- cron: "0 2 * * *"
workflow_dispatch:
concurrency:
group: tests-${{ github.ref }}
cancel-in-progress: true
jobs:
linux:
runs-on: linux
timeout-minutes: 90
env:
BILAUNCHER_REQUIRE_FAKE_INTERNET: "1"
steps:
- uses: actions/checkout@v4
- name: Сборка лаунчера и тестов
run: |
export PATH="$QT_TOOLS/CMake/bin:$QT_TOOLS/Ninja:$PATH"
launcher=""
if command -v ccache >/dev/null; then
launcher="-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache"
fi
cmake -S . -B build-tests -G Ninja -DCMAKE_BUILD_TYPE=Debug \
-DBILAUNCHER_BUILD_TESTS=ON -DCMAKE_PREFIX_PATH="$QT_ROOT" $launcher
cmake --build build-tests -j 8
- name: Статические проверки (переводы, qmllint, CHANGELOG)
run: CMAKE="$QT_TOOLS/CMake/bin/cmake" python3 tests/scripts/static_checks.py build-tests
- name: Тесты
run: |
export PATH="$QT_TOOLS/CMake/bin:$PATH"
ctest --test-dir build-tests --output-on-failure -j 4 \
--output-junit "$PWD/build-tests/junit.xml"
- name: Отчёты
if: always()
uses: actions/upload-artifact@v4
with:
name: tests-linux
if-no-files-found: ignore
path: |
build-tests/junit.xml
build-tests/qmllint.log
build-tests/Testing/Temporary/LastTest.log
windows:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event_name == 'push'
runs-on: windows
timeout-minutes: 150
steps:
- uses: actions/checkout@v4
- name: Сборка и тесты
shell: powershell
run: |
$ErrorActionPreference = "Stop"
# Короткий путь: дерево WebEngine легко вылезает за MAX_PATH (см. release.yml).
$build = "C:\r\bl-tests"
Remove-Item -Recurse -Force $build -ErrorAction SilentlyContinue
$vs = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * `
-requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath
Import-Module "$vs\Common7\Tools\Microsoft.VisualStudio.DevShell.dll"
Enter-VsDevShell -VsInstallPath $vs -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64"
$env:PATH = "$env:QT_TOOLS\CMake_64\bin;$env:QT_TOOLS\Ninja;$env:PATH"
cmake -S . -B $build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBILAUNCHER_BUILD_TESTS=ON "-DCMAKE_PREFIX_PATH=$env:QT_ROOT"
if ($LASTEXITCODE) { throw "cmake configure" }
cmake --build $build
if ($LASTEXITCODE) { throw "cmake build" }
ctest --test-dir $build --output-on-failure --output-junit "$build\junit.xml"
$code = $LASTEXITCODE
New-Item -ItemType Directory -Force test-results | Out-Null
Copy-Item "$build\junit.xml" test-results\ -ErrorAction SilentlyContinue
if ($code) { throw "ctest" }
- name: Отчёты
if: always()
uses: actions/upload-artifact@v4
with:
name: tests-windows
if-no-files-found: ignore
path: test-results/
macos:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || github.event_name == 'push'
runs-on: macos
timeout-minutes: 120
steps:
- uses: actions/checkout@v4
- name: Сборка и тесты
run: |
export PATH="$QT_TOOLS/CMake/CMake.app/Contents/bin:$QT_TOOLS/Ninja:$PATH"
cmake -S . -B build-tests -G Ninja -DCMAKE_BUILD_TYPE=Debug \
-DBILAUNCHER_BUILD_TESTS=ON -DCMAKE_PREFIX_PATH="$QT_ROOT"
cmake --build build-tests
ctest --test-dir build-tests --output-on-failure -j 4 \
--output-junit "$PWD/build-tests/junit.xml"
- name: Отчёты
if: always()
uses: actions/upload-artifact@v4
with:
name: tests-macos
if-no-files-found: ignore
path: build-tests/junit.xml
package-smoke-linux:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: linux
timeout-minutes: 90
steps:
- uses: actions/checkout@v4
- name: Release-сборка, установка, запуск
run: |
export PATH="$QT_TOOLS/CMake/bin:$QT_TOOLS/Ninja:$PATH"
rm -rf build-smoke smoke-stage
launcher=""
if command -v ccache >/dev/null; then
launcher="-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache"
fi
cmake -S . -B build-smoke -G Ninja -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH="$QT_ROOT" \
-DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib $launcher
cmake --build build-smoke -j 8
cmake --install build-smoke --prefix "$PWD/smoke-stage/usr"
bash tests/scripts/smoke_installed.sh smoke-stage/usr
package-smoke-windows:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: windows
timeout-minutes: 150
steps:
- uses: actions/checkout@v4
- name: Release-сборка, установка, запуск
shell: powershell
run: |
$ErrorActionPreference = "Stop"
$build = "C:\r\bl-smoke"; $stage = "C:\r\bl-smoke-stage"
Remove-Item -Recurse -Force $build, $stage -ErrorAction SilentlyContinue
$vs = & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * `
-requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath
Import-Module "$vs\Common7\Tools\Microsoft.VisualStudio.DevShell.dll"
Enter-VsDevShell -VsInstallPath $vs -SkipAutomaticLocation -DevCmdArguments "-arch=x64 -host_arch=x64"
$env:PATH = "$env:QT_TOOLS\CMake_64\bin;$env:QT_TOOLS\Ninja;$env:PATH"
cmake -S . -B $build -G Ninja -DCMAKE_BUILD_TYPE=Release "-DCMAKE_PREFIX_PATH=$env:QT_ROOT"
if ($LASTEXITCODE) { throw "cmake configure" }
cmake --build $build
if ($LASTEXITCODE) { throw "cmake build" }
cmake --install $build --prefix $stage
if ($LASTEXITCODE) { throw "cmake install" }
& powershell -ExecutionPolicy Bypass -File tests\scripts\smoke_installed.ps1 -Prefix $stage
if ($LASTEXITCODE) { throw "smoke" }
Remove-Item -Recurse -Force $build, $stage -ErrorAction SilentlyContinue
package-smoke-macos:
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
runs-on: macos
timeout-minutes: 120
steps:
- uses: actions/checkout@v4
- name: Release-сборка, установка, запуск
run: |
export PATH="$QT_TOOLS/CMake/CMake.app/Contents/bin:$QT_TOOLS/Ninja:$PATH"
rm -rf build-smoke smoke-stage
cmake -S . -B build-smoke -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$QT_ROOT"
cmake --build build-smoke
cmake --install build-smoke --prefix "$PWD/smoke-stage"
bash tests/scripts/smoke_installed.sh smoke-stage
+9
View File
@@ -58,3 +58,12 @@
hs_err_pid*
replay_pid*
build/
.qtcreator/
.DS_Store
/doc/adr/
CMakeLists.txt.user*
stage/
dist/
build-tests/
build-*/
-443
View File
@@ -1,443 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 18.0.1, 2025-12-22T00:55:24. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{137161dd-990c-4c0b-851a-d10872a75af9}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="qlonglong">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoDetect">true</value>
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="qlonglong" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.LineEndingBehavior">0</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="int" key="EditorConfiguration.PreferAfterWhitespaceComments">0</value>
<value type="bool" key="EditorConfiguration.PreferSingleLineComments">false</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">2</value>
<value type="bool" key="EditorConfiguration.SmartSelectionChanging">true</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="bool" key="EditorConfiguration.UseIndenter">false</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="QString" key="EditorConfiguration.ignoreFileTypes">*.md, *.MD, Makefile</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
<value type="bool" key="EditorConfiguration.skipTrailingWhitespace">true</value>
<value type="bool" key="EditorConfiguration.tintMarginArea">true</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap">
<valuemap type="QVariantMap" key="AutoTest.ActiveFrameworks">
<value type="bool" key="AutoTest.Framework.Boost">true</value>
<value type="bool" key="AutoTest.Framework.CTest">false</value>
<value type="bool" key="AutoTest.Framework.Catch">true</value>
<value type="bool" key="AutoTest.Framework.GTest">true</value>
<value type="bool" key="AutoTest.Framework.QtQuickTest">true</value>
<value type="bool" key="AutoTest.Framework.QtTest">true</value>
</valuemap>
<value type="bool" key="AutoTest.ApplyFilter">false</value>
<valuemap type="QVariantMap" key="AutoTest.CheckStates"/>
<valuelist type="QVariantList" key="AutoTest.PathFilters"/>
<value type="int" key="AutoTest.RunAfterBuild">0</value>
<value type="bool" key="AutoTest.UseGlobal">true</value>
<valuemap type="QVariantMap" key="ClangTools">
<value type="bool" key="ClangTools.AnalyzeOpenFiles">true</value>
<value type="bool" key="ClangTools.BuildBeforeAnalysis">true</value>
<value type="QString" key="ClangTools.DiagnosticConfig">Builtin.DefaultTidyAndClazy</value>
<value type="int" key="ClangTools.ParallelJobs">16</value>
<value type="bool" key="ClangTools.PreferConfigFile">true</value>
<valuelist type="QVariantList" key="ClangTools.SelectedDirs"/>
<valuelist type="QVariantList" key="ClangTools.SelectedFiles"/>
<valuelist type="QVariantList" key="ClangTools.SuppressedDiagnostics"/>
<value type="bool" key="ClangTools.UseGlobalSettings">true</value>
</valuemap>
<value type="int" key="RcSync">0</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="DeviceType">Desktop</value>
<value type="bool" key="HasPerBcDcs">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 6.10.1 llvm-mingw 64-bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 6.10.1 llvm-mingw 64-bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.qt6.6101.win64_llvm_mingw_kit</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="CMake.Build.Type">Debug</value>
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
-DCMAKE_BUILD_TYPE:STRING=Debug
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
-DCMAKE_COLOR_DIAGNOSTICS:BOOL=ON
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
-DQT_MAINTENANCE_TOOL:FILEPATH=E:/Qt/MaintenanceTool.exe
-DCMAKE_GENERATOR:STRING=Ninja</value>
<value type="int" key="EnableQmlDebugging">0</value>
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">G:\Documents\The_Grand_Archives\Qt_projects\Minecraft_launcher\build\Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">all</value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Собрать</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Сборка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Сборка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">clean</value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Собрать</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Очистка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Очистка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Отладка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString"></value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Собрать</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.CMakePackageStep</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="QString" key="ApplicationManagerPlugin.Deploy.InstallPackageStep.Arguments">install-package --acknowledge</value>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Install Application Manager package</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.InstallPackageStep</value>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedFiles"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedHosts"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedRemotePaths"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedSysroots"/>
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedLocalTimes"/>
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedRemoteTimes"/>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.Configuration</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings">
<value type="bool" key="AndroidBuildTargetDirSupport">false</value>
<valuelist type="QVariantList" key="ApplicationmanagerPackageTargets"/>
<value type="bool" key="UseAndroidBuildTargetDir">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<value type="int" key="Analyzer.Valgrind.Callgrind.CostFormat">0</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="CustomOutputParsers"/>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="bool" key="PE.EnvironmentAspect.PrintOnRun">false</value>
<value type="QString" key="PerfRecordArgsId">-e cpu-cycles --call-graph &quot;dwarf,4096&quot; -F 250</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeRunConfiguration.</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">appMinecraft_launcher</value>
<value type="bool" key="ProjectExplorer.RunConfiguration.Customized">false</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.UniqueId"></value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
<value type="QString" key="RunConfiguration.WorkingDirectory.default">%{RunConfig:Executable:Path}</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="CMake.Build.Type">Release</value>
<value type="int" key="CMake.Configure.BaseEnvironment">2</value>
<value type="bool" key="CMake.Configure.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMake.Configure.UserEnvironmentChanges"/>
<value type="QString" key="CMake.Initial.Parameters">-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx}
-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{BuildConfig:BuildDirectory:NativeFilePath}/.qtc/package-manager/auto-setup.cmake
-DCMAKE_BUILD_TYPE:STRING=Release
-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG}
-DCMAKE_COLOR_DIAGNOSTICS:BOOL=ON
-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX}
-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable}
-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C}
-DQT_MAINTENANCE_TOOL:FILEPATH=E:/Qt/MaintenanceTool.exe
-DCMAKE_GENERATOR:STRING=Ninja</value>
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">G:\Documents\The_Grand_Archives\Qt_projects\Minecraft_launcher\build\Desktop_Qt_6_10_1_llvm_mingw_64_bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">all</value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Сборка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Сборка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString">clean</value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.MakeStep</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Очистка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Очистка</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.CustomParsers"/>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ParseStandardOutput">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Выпуск</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeBuildConfiguration</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveDeployConfiguration">1</value>
<value type="qlonglong" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString"></value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.CMakePackageStep</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="QString" key="ApplicationManagerPlugin.Deploy.InstallPackageStep.Arguments">install-package --acknowledge</value>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Install Application Manager package</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.InstallPackageStep</value>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedFiles"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedHosts"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedRemotePaths"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedSysroots"/>
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedLocalTimes"/>
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedRemoteTimes"/>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.Configuration</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<value type="int" key="Analyzer.Valgrind.Callgrind.CostFormat">0</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="CustomOutputParsers"/>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="bool" key="PE.EnvironmentAspect.PrintOnRun">false</value>
<value type="QString" key="PerfRecordArgsId">-e cpu-cycles --call-graph &quot;dwarf,4096&quot; -F 250</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey"></value>
<value type="bool" key="ProjectExplorer.RunConfiguration.Customized">false</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.UniqueId"></value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
<value type="QString" key="RunConfiguration.WorkingDirectory.default">%{RunConfig:Executable:Path}</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="QString" key="CMakeProjectManager.MakeStep.BuildPreset"></value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.BuildTargets">
<value type="QString"></value>
</valuelist>
<value type="bool" key="CMakeProjectManager.MakeStep.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="CMakeProjectManager.MakeStep.UserEnvironmentChanges"/>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Собрать</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.CMakePackageStep</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="QString" key="ApplicationManagerPlugin.Deploy.InstallPackageStep.Arguments">install-package --acknowledge</value>
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Install Application Manager package</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.InstallPackageStep</value>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedFiles"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedHosts"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedRemotePaths"/>
<valuelist type="QVariantList" key="ProjectExplorer.RunConfiguration.LastDeployedSysroots"/>
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedLocalTimes"/>
<valuelist type="QVariantList" key="RemoteLinux.LastDeployedRemoteTimes"/>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Развёртывание</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.DeployConfiguration.CustomData"/>
<value type="bool" key="ProjectExplorer.DeployConfiguration.CustomDataEnabled">false</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ApplicationManagerPlugin.Deploy.Configuration</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.DeployConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.Perf.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<value type="int" key="Analyzer.Valgrind.Callgrind.CostFormat">0</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="CustomOutputParsers"/>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="bool" key="PE.EnvironmentAspect.PrintOnRun">false</value>
<value type="QString" key="PerfRecordArgsId">-e cpu-cycles --call-graph &quot;dwarf,4096&quot; -F 250</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">CMakeProjectManager.CMakeRunConfiguration.</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">appMinecraft_launcher</value>
<value type="bool" key="ProjectExplorer.RunConfiguration.Customized">false</value>
<value type="QString" key="ProjectExplorer.RunConfiguration.UniqueId"></value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
<value type="QString" key="RunConfiguration.WorkingDirectory.default">%{RunConfig:Executable:Path}</value>
</valuemap>
<value type="qlonglong" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="qlonglong">1</value>
</data>
<data>
<variable>Version</variable>
<value type="int">22</value>
</data>
</qtcreator>
+640
View File
@@ -0,0 +1,640 @@
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls 2.15
import QtQuick.Layouts 2.15
Dialog {
id: buildsDialog
required property var backend
property int editIndex: -1
property bool loading: false
modal: true
padding: 0
width: 880
height: 600
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside
//closePolicy: buildsDialog.backend.switching ? Popup.NoAutoClose
// : Popup.CloseOnEscape | Popup.CloseOnPressOutside
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#91B315"
border.width: 1
}
function selectBuild(index) {
const data = buildsDialog.backend.customBuildAt(index)
buildsDialog.loading = true
buildsDialog.editIndex = index
bdName.text = data.name || ""
bdServer.text = data.serverUrl || ""
bdMinecraft.selectedId = data.minecraftVersion || ""
loaderPanel.applyBuild(data.loader || "", data.loaderVersion || "")
buildsDialog.loading = false
buildsDialog.refreshStatus()
}
function askRemove(index) {
const info = buildsDialog.backend.customBuildRemovalInfo(index)
if (!info || info.name === undefined)
return
removeConfirm.buildIndex = index
removeConfirm.buildName = info.name
removeConfirm.hasArchive = info.hasArchive === true
removeConfirm.active = info.active === true
removeConfirm.lastOne = info.lastOne === true
removeConfirm.open()
}
function performRemove(index) {
buildsDialog.backend.removeCustomBuild(index)
const left = buildsDialog.backend.customBuildNames.length
if (left === 0)
buildsDialog.editIndex = -1
else
buildsDialog.selectBuild(Math.min(index, left - 1))
}
function commit(fields) {
if (buildsDialog.loading || buildsDialog.editIndex < 0)
return
buildsDialog.backend.updateCustomBuild(buildsDialog.editIndex, fields)
buildsDialog.refreshStatus()
}
function refreshStatus() {
if (buildsDialog.editIndex < 0) {
bdStatus.text = ""
return
}
const problems = buildsDialog.backend.checkInstallation(buildsDialog.editIndex)
bdStatus.ok = problems.length === 0
bdStatus.text = problems.length === 0
? Loc.t.build.status.ready
: Loc.t.build.error.missingFiles.arg(problems.length).arg(problems[0])
}
function newBuildName() {
const taken = buildsDialog.backend.customBuildNames
for (var n = 1; ; ++n) {
const candidate = Loc.t.build.title.numbered.arg(n)
if (taken.indexOf(candidate) === -1)
return candidate
}
}
Dialog {
id: removeConfirm
property int buildIndex: -1
property string buildName: ""
property bool hasArchive: false
property bool active: false
property bool lastOne: false
modal: true
padding: 0
width: 420
parent: buildsDialog.parent
x: (buildsDialog.parent.width - width) / 2
y: (buildsDialog.parent.height - height) / 2
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#cc6666"
border.width: 1
}
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.build.title.removeConfirm
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: Column {
spacing: 10
topPadding: 18
bottomPadding: 18
Text {
x: 20
width: parent.width - 40
wrapMode: Text.Wrap
color: "#ffffff"
font.pixelSize: 13
text: Loc.t.build.hint.removeIrreversible
.arg(removeConfirm.buildName)
}
Text {
x: 20
width: parent.width - 40
visible: removeConfirm.hasArchive
wrapMode: Text.Wrap
color: "#cc6666"
font.pixelSize: 12
text: Loc.t.build.warning.archiveGoesToo
}
Text {
x: 20
width: parent.width - 40
visible: removeConfirm.active && !removeConfirm.lastOne
wrapMode: Text.Wrap
color: "#cc6666"
font.pixelSize: 12
text: Loc.t.build.warning.removingActive
}
Text {
x: 20
width: parent.width - 40
visible: removeConfirm.lastOne
wrapMode: Text.Wrap
color: "#888888"
font.pixelSize: 12
text: Loc.t.build.hint.removingLast
}
}
footer: Item {
implicitHeight: 60
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Row {
anchors.centerIn: parent
spacing: 12
Button {
text: Loc.t.common.button.cancel
width: 130; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#6a8510" : "#91B315"
radius: 6
}
onClicked: removeConfirm.close()
}
Button {
text: Loc.t.common.button.remove
width: 130; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#8a3a3a" : "#663333"
radius: 6
border.color: "#cc6666"
border.width: 1
}
onClicked: {
const index = removeConfirm.buildIndex
removeConfirm.close()
buildsDialog.performRemove(index)
}
}
}
}
onClosed: removeConfirm.buildIndex = -1
}
VersionPickerDialog {
id: versionPicker
backend: buildsDialog.backend
parent: buildsDialog.parent
x: (buildsDialog.parent.width - width) / 2
y: (buildsDialog.parent.height - height) / 2
onVersionChosen: (versionId) => bdMinecraft.selectedId = versionId
}
Connections {
target: buildsDialog.backend
function onInstalledVersionsChanged() { buildsDialog.refreshStatus() }
}
onAboutToShow: {
buildsDialog.backend.refreshVersionCatalog()
const names = buildsDialog.backend.customBuildNames
if (names.length === 0)
buildsDialog.editIndex = -1
else
buildsDialog.selectBuild(Math.max(0, buildsDialog.backend.activeBuildIndex))
}
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.common.title.customBuilds
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: RowLayout {
spacing: 0
Item {
Layout.preferredWidth: 260
Layout.fillHeight: true
enabled: !buildsDialog.backend.switching
ListView {
id: buildList
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: addBuildRow.top
anchors.margins: 8
clip: true
spacing: 2
model: buildsDialog.backend.customBuildNames
delegate: ItemDelegate {
id: buildRow
required property string modelData
required property int index
width: buildList.width
height: 40
contentItem: Item {
Text {
anchors.left: parent.left
anchors.leftMargin: 8
anchors.right: activeBadge.left
anchors.rightMargin: 6
anchors.verticalCenter: parent.verticalCenter
text: buildRow.modelData
color: "#ffffff"
elide: Text.ElideRight
font.pixelSize: 13
}
Text {
id: activeBadge
anchors.right: buildTrash.left
anchors.rightMargin: 8
anchors.verticalCenter: parent.verticalCenter
visible: buildRow.index === buildsDialog.backend.activeBuildIndex
text: Loc.t.build.label.active
color: (buildsDialog.editIndex === buildRow.index || buildRow.hovered)
? "#ffffff" : "#91B315"
font.pixelSize: 10
}
Image {
id: buildTrash
width: 16; height: 16
anchors.right: parent.right
anchors.rightMargin: 8
anchors.verticalCenter: parent.verticalCenter
visible: buildRow.hovered
opacity: buildTrashArea.containsMouse ? 1.0 : 0.7
source: "images/Trash.svg"
sourceSize.width: 16; sourceSize.height: 16
fillMode: Image.PreserveAspectFit
MouseArea {
id: buildTrashArea
anchors.fill: parent
anchors.margins: -6
hoverEnabled: true
onClicked: buildsDialog.askRemove(buildRow.index)
}
}
}
background: Rectangle {
color: (buildsDialog.editIndex === buildRow.index || buildRow.hovered)
? "#91B315" : "#232323"
radius: 5
}
onClicked: buildsDialog.selectBuild(buildRow.index)
}
ScrollIndicator.vertical: ScrollIndicator {}
}
Rectangle {
id: addBuildRow
anchors.bottom: parent.bottom
anchors.left: parent.left
anchors.right: parent.right
anchors.margins: 8
height: 34
radius: 5
color: addBuildArea.containsPress ? "#2d2d2d" : "transparent"
Text {
anchors.centerIn: parent
text: Loc.t.build.button.new
color: "#91B315"
font.pixelSize: 12
}
MouseArea {
id: addBuildArea
anchors.fill: parent
onClicked: {
buildsDialog.backend.addCustomBuild(buildsDialog.newBuildName(), "", "")
buildsDialog.selectBuild(buildsDialog.backend.customBuildNames.length - 1)
}
}
}
}
Rectangle {
Layout.preferredWidth: 1
Layout.fillHeight: true
color: "#333333"
}
Item {
Layout.fillWidth: true
Layout.fillHeight: true
enabled: buildsDialog.editIndex >= 0 && !buildsDialog.backend.switching
opacity: enabled ? 1.0 : 0.4
Flickable {
anchors.fill: parent
anchors.margins: 20
contentHeight: detailsColumn.height
clip: true
boundsBehavior: Flickable.StopAtBounds
ScrollIndicator.vertical: ScrollIndicator {}
Column {
id: detailsColumn
width: parent.width
spacing: 12
LabelledField {
id: bdName
width: parent.width
label: Loc.t.build.label.name
placeholder: Loc.t.build.placeholder.name
onEditingFinished: buildsDialog.commit({"name": bdName.text.trim()})
}
LabelledField {
id: bdServer
width: parent.width
label: Loc.t.build.label.serverAddress
placeholder: Loc.t.build.placeholder.serverAddress
onEditingFinished: buildsDialog.commit({"serverUrl": bdServer.text.trim()})
}
Text {
text: Loc.t.common.label.minecraftVersion
color: "#aaaaaa"
font.pixelSize: 11
}
Rectangle {
id: bdMinecraft
property string selectedId: ""
width: parent.width
height: 36
radius: 6
color: "#2a2a2a"
border.color: versionFieldArea.containsMouse ? "#91B315" : "#444444"
border.width: 1
Text {
anchors.fill: parent
leftPadding: 10
rightPadding: 110
verticalAlignment: Text.AlignVCenter
elide: Text.ElideRight
color: bdMinecraft.selectedId === "" ? "#666666" : "#ffffff"
text: bdMinecraft.selectedId === "" ? Loc.t.build.button.pickVersion
: bdMinecraft.selectedId
}
Text {
anchors.right: parent.right
anchors.rightMargin: 12
anchors.verticalCenter: parent.verticalCenter
text: Loc.t.common.button.choose
color: "#91B315"
font.pixelSize: 12
}
MouseArea {
id: versionFieldArea
anchors.fill: parent
hoverEnabled: true
onClicked: versionPicker.openFor(bdMinecraft.selectedId)
}
onSelectedIdChanged: buildsDialog.commit({"minecraftVersion":
bdMinecraft.selectedId})
}
Text {
text: Loc.t.build.label.modLoader
color: "#aaaaaa"
font.pixelSize: 11
}
Column {
id: loaderPanel
width: parent.width
spacing: 8
property var rows: [bdForge, bdFabric, bdNeoForge, bdQuilt]
function applyBuild(loader, loaderVersion) {
for (var i = 0; i < loaderPanel.rows.length; ++i)
loaderPanel.rows[i].applyBuild(loader, loaderVersion)
}
function selectedRow() {
for (var i = 0; i < loaderPanel.rows.length; ++i) {
if (loaderPanel.rows[i].checked)
return loaderPanel.rows[i]
}
return null
}
function keepOnly(row) {
for (var i = 0; i < loaderPanel.rows.length; ++i) {
if (loaderPanel.rows[i] === row)
continue
loaderPanel.rows[i].applyBuild("", "")
}
}
function commitSelection() {
const row = loaderPanel.selectedRow()
buildsDialog.commit({
"loader": row ? row.loaderKey : "",
"loaderVersion": row ? row.selectedVersion : "",
"resolvedVersionId": ""
})
}
LoaderRow {
id: bdForge
width: parent.width
backend: buildsDialog.backend
loaderKey: "forge"
title: Loc.t.loader.name.forge
gameVersion: bdMinecraft.selectedId
onUserChecked: loaderPanel.keepOnly(bdForge)
onChanged: loaderPanel.commitSelection()
}
LoaderRow {
id: bdFabric
width: parent.width
backend: buildsDialog.backend
loaderKey: "fabric"
title: Loc.t.loader.name.fabric
gameVersion: bdMinecraft.selectedId
onUserChecked: loaderPanel.keepOnly(bdFabric)
onChanged: loaderPanel.commitSelection()
}
LoaderRow {
id: bdNeoForge
width: parent.width
backend: buildsDialog.backend
loaderKey: "neoforge"
title: Loc.t.loader.name.neoforge
gameVersion: bdMinecraft.selectedId
onUserChecked: loaderPanel.keepOnly(bdNeoForge)
onChanged: loaderPanel.commitSelection()
}
LoaderRow {
id: bdQuilt
width: parent.width
backend: buildsDialog.backend
loaderKey: "quilt"
title: Loc.t.loader.name.quilt
gameVersion: bdMinecraft.selectedId
onUserChecked: loaderPanel.keepOnly(bdQuilt)
onChanged: loaderPanel.commitSelection()
}
}
Text {
id: bdStatus
property bool ok: false
width: parent.width
color: bdStatus.ok ? "#8fbf5a" : "#cc6666"
font.pixelSize: 11
wrapMode: Text.Wrap
}
}
}
}
}
footer: Item {
implicitHeight: 60
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Row {
anchors.centerIn: parent
spacing: 12
Button {
text: Loc.t.common.button.install
width: 140; height: 36
enabled: buildsDialog.editIndex >= 0 && !buildsDialog.backend.busy
opacity: enabled ? 1.0 : 0.45
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#444444" : "#333333"
radius: 6
}
onClicked: buildsDialog.backend.installCustomBuild(buildsDialog.editIndex)
}
Button {
text: Loc.t.build.button.makeActive
width: 170; height: 36
enabled: buildsDialog.editIndex >= 0
&& buildsDialog.editIndex !== buildsDialog.backend.activeBuildIndex
&& !buildsDialog.backend.busy
opacity: enabled ? 1.0 : 0.45
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#6a8510" : "#91B315"
radius: 6
}
onClicked: buildsDialog.backend.activeBuildIndex = buildsDialog.editIndex
}
Button {
text: Loc.t.common.button.close
width: 120; height: 36
enabled: !buildsDialog.backend.switching
opacity: enabled ? 1.0 : 0.45
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#444444" : "#333333"
radius: 6
}
onClicked: buildsDialog.close()
}
}
}
}
+21
View File
@@ -0,0 +1,21 @@
# Changelog
## [1.0.0] — 2026-10-07
### Добавлено
- Настройки запуска Minecraft
- Автоматическая загрузка версий java из предложенного списка
- Система хранения сборок, автоматического скачивания версий игры из меню и модлоадеры к каждой версии
- Сохранение сборок в zip формате и отображение в списке
- Система сезонных сборок: полная автоматизация в один клик
- Авторизация через ely.by и\или лицензию, с возможностью работы скинов
### Исправлено
- UI фиксы
## [1.0.1-rc1] — 2026-10-23
### Добавлено
- Отображене текущей версии сборки лаунчера на главном окне
### Исправлено
- Исправлен баг когда невозможно выйти из модального окна сезонных сборок и\или отменить текущую загрузку
- Исправлен баг отображения статуса активной сборки на зелёном фоне
- Исправлен баг, что во время игры можно было потенциально сменить сборку
- Исправлен баг первого запуска после установки лаунчера, если у пользователя была не пустая .minecraft
+226 -15
View File
@@ -1,46 +1,257 @@
cmake_minimum_required(VERSION 3.16)
cmake_minimum_required(VERSION 3.20)
project(Minecraft_launcher VERSION 0.1 LANGUAGES CXX)
project(BiLauncher VERSION 1.0.1 LANGUAGES CXX C)
# Канал сборки (dev / rc / релиз) не хранится в репозитории, а вычисляется
# при сборке — см. cmake/LauncherVersion.cmake. CI передаёт полную версию:
# -DLAUNCHER_BUILD_VERSION=1.0.1-rc2.
set(LAUNCHER_BUILD_VERSION "" CACHE STRING "Полная версия от CI (X.Y.Z[-rcN]); пусто — по тегу и ветке git")
set(LAUNCHER_VERSION_NUMERIC "${PROJECT_VERSION}")
set(LAUNCHER_SOURCE_DIR "${PROJECT_SOURCE_DIR}")
set(LAUNCHER_GENERATED_DIR "${PROJECT_BINARY_DIR}/generated")
set(LAUNCHER_VERSION_HEADER "${LAUNCHER_GENERATED_DIR}/launcherversion.h")
include(cmake/LauncherVersion.cmake)
message(STATUS "Версия лаунчера: ${LAUNCHER_VERSION} (канал ${LAUNCHER_CHANNEL})")
add_custom_target(launcher_version
COMMAND "${CMAKE_COMMAND}"
"-DLAUNCHER_VERSION_NUMERIC=${LAUNCHER_VERSION_NUMERIC}"
"-DLAUNCHER_SOURCE_DIR=${LAUNCHER_SOURCE_DIR}"
"-DLAUNCHER_VERSION_HEADER=${LAUNCHER_VERSION_HEADER}"
"-DLAUNCHER_BUILD_VERSION=${LAUNCHER_BUILD_VERSION}"
-P "${PROJECT_SOURCE_DIR}/cmake/LauncherVersion.cmake"
BYPRODUCTS "${LAUNCHER_VERSION_HEADER}"
COMMENT "Версия лаунчера из git"
VERBATIM)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(Qt6 REQUIRED COMPONENTS Quick Core)
set(QT_NO_PRIVATE_MODULE_WARNING ON)
find_package(Qt6 REQUIRED COMPONENTS Quick QuickControls2 Qml Svg Core CorePrivate Gui Network)
find_package(Qt6 QUIET COMPONENTS WebEngineQuick)
if(Qt6WebEngineQuick_FOUND)
message(STATUS "Qt WebEngine найден: вход через аккаунт Microsoft будет доступен")
set(LAUNCHER_MSA_QML_FILES MicrosoftLoginDialog.qml)
else()
message(WARNING
"Qt WebEngine не найден — лаунчер соберётся без входа через аккаунт Microsoft. "
"Чтобы его включить, доустановите в MaintenanceTool для своей версии Qt сразу три "
"компонента: Qt WebEngine, Qt WebChannel и Qt Positioning.")
set(LAUNCHER_MSA_QML_FILES "")
endif()
qt_standard_project_setup(REQUIRES 6.8)
qt_add_executable(appMinecraft_launcher
set(LAUNCHER_ICON_DIR "${CMAKE_CURRENT_SOURCE_DIR}/icons")
if(WIN32)
configure_file("${LAUNCHER_ICON_DIR}/icon.rc.in"
"${CMAKE_CURRENT_BINARY_DIR}/icon.rc" @ONLY)
set(LAUNCHER_APP_ICON "${CMAKE_CURRENT_BINARY_DIR}/icon.rc")
elseif(APPLE)
set(LAUNCHER_APP_ICON "${LAUNCHER_ICON_DIR}/icon.icns")
set_source_files_properties(${LAUNCHER_APP_ICON} PROPERTIES
MACOSX_PACKAGE_LOCATION "Resources")
else()
set(LAUNCHER_APP_ICON "")
endif()
qt_add_executable(BiLauncher
main.cpp
${LAUNCHER_APP_ICON}
)
qt_add_qml_module(appMinecraft_launcher
URI Minecraft_launcher
qt_add_resources(BiLauncher "appicon"
PREFIX "/icons"
BASE "icons"
FILES
icons/icon_16x16.png
icons/icon_16x16@2x.png
icons/icon_24x24.png
icons/icon_32x32.png
icons/icon_32x32@2x.png
icons/icon_48x48.png
icons/icon_64x64.png
icons/icon_128x128.png
icons/icon_128x128@2x.png
icons/icon_256x256.png
icons/icon_256x256@2x.png
icons/icon_512x512.png
icons/icon_512x512@2x.png
)
# Путь импорта для QML code model Qt Creator / qmlls: модуль лежит в
# ${CMAKE_CURRENT_BINARY_DIR}/qml, а не в корне каталога сборки.
set(QML_IMPORT_PATH "${CMAKE_CURRENT_BINARY_DIR}/qml"
CACHE STRING "Пути импорта QML для Qt Creator" FORCE)
qt_add_qml_module(BiLauncher
URI BiLauncher
OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/qml/BiLauncher"
SOURCES
localization.h
localization.cpp
launcherbackend.h
launcherbackend.cpp
launcherpaths.h
launcherpaths.cpp
minecraftversion.h
minecraftversion.cpp
javalocator.h
javalocator.cpp
zlibreference.h
zlibreference.cpp
javaruntime.h
javaruntime.cpp
javaruntimeservice.h
javaruntimeservice.cpp
javainstaller.h
javainstaller.cpp
authservice.h
authservice.cpp
msaauthservice.h
msaauthservice.cpp
gamelauncher.h
gamelauncher.cpp
versionmanifestservice.h
versionmanifestservice.cpp
versioninstaller.h
versioninstaller.cpp
modloader.h
modloaderversionservice.h
modloaderversionservice.cpp
modloaderinstaller.h
modloaderinstaller.cpp
buildarchiveworker.h
buildarchiveworker.cpp
buildswitcher.h
buildswitcher.cpp
gamedirimport.h
gamedirimport.cpp
seasonalbuildservice.h
seasonalbuildservice.cpp
seasonalpackdownloader.h
seasonalpackdownloader.cpp
QML_FILES
Main.qml
RESOURCES images/Folder/Folder_Active.svg images/Folder/Folder_Idle.svg images/Folder/Folder_Pressed.svg images/Options/Options_active.svg images/Options/Options_Idle.svg images/Options/Options_Pressed.svg images/Play_Button/Play_Active.svg images/Play_Button/Play_Idle.svg images/Play_Button/Play_pressed.svg images/Profile_Box/Asset_23.svg images/Profile_Box/Asset_24.svg images/Profile_Box/Kishka_Profile_Active.svg images/Profile_Box/Kishka_Profile_Idle.svg images/Profile_Box/Kishka_Profile_open.svg images/Scroll/Scroll_Lever.svg images/Scroll/Scroll_palka.svg images/Version_box/Kishka_Profile_Open.svg images/Version_box/Kishka_Ver_Active.svg images/Version_box/Kishka_Ver_idle.svg images/GovuztTW8AAHqBf.jpeg images/photo_2025-12-16_15-04-17.jpg images/photo_2025-12-21_02-30-09.jpg
RESOURCES images/Folder/Folder_Active.svg images/Folder/Folder_Idle.svg images/Folder/Folder_Pressed.svg images/Options/Options_active.svg images/Options/Options_Idle.svg images/Options/Options_Pressed.svg images/Play_Button/Play_Active.svg images/Play_Button/Play_Idle.svg images/Play_Button/Play_pressed.svg images/Profile_Box/Asset_23.jpg images/Profile_Box/Asset_23.svg images/Profile_Box/Asset_24.jpg images/Profile_Box/Asset_24.svg images/Profile_Box/Kishka_Profile_Active.svg images/Profile_Box/Kishka_Profile_Idle.svg images/Profile_Box/Kishka_Profile_open.svg images/Scroll/Scroll_Lever.svg images/Scroll/Scroll_palka.svg images/Version_box/Kishka_Profile_Open.svg images/Version_box/Kishka_Ver_Active.svg images/Version_box/Kishka_Ver_idle.svg images/GovuztTW8AAHqBf.jpeg images/photo_2025-12-16_15-04-17.jpg images/photo_2025-12-21_02-30-09.jpg
DarkCombo.qml
VersionPickerDialog.qml
JavaPickerDialog.qml
LabelledField.qml
BuildsDialog.qml
SeasonalBuildsDialog.qml
LoaderRow.qml
ProgressPanel.qml
${LAUNCHER_MSA_QML_FILES}
RESOURCES images/Folder/Folder_Active.svg images/Folder/Folder_Idle.svg images/Folder/Folder_Pressed.svg images/Options/Options_active.svg images/Options/Options_Idle.svg images/Options/Options_Pressed.svg images/Play_Button/Play_Active.svg images/Play_Button/Play_Idle.svg images/Play_Button/Play_pressed.svg images/Profile_Box/Asset_23.jpg images/Profile_Box/Asset_23.svg images/Profile_Box/Asset_24.jpg images/Profile_Box/Asset_24.svg images/Profile_Box/Kishka_Profile_Active.svg images/Profile_Box/Kishka_Profile_Idle.svg images/Profile_Box/Kishka_Profile_open.svg images/Scroll/Scroll_Lever.svg images/Scroll/Scroll_palka.svg images/Version_box/Kishka_Profile_Open.svg images/Version_box/Kishka_Ver_Active.svg images/Version_box/Kishka_Ver_idle.svg images/Trash.svg images/Pencil.svg images/GovuztTW8AAHqBf.jpeg images/photo_2025-12-16_15-04-17.jpg images/photo_2025-12-21_02-30-09.jpg i18n/translations.json
RESOURCES images/launcherBackground.png
RESOURCES images/launcherBackground2static.jpg
RESOURCES CHANGELOG.md
RESOURCES LICENSE
RESOURCES README.md
)
# Qt for iOS sets MACOSX_BUNDLE_GUI_IDENTIFIER automatically since Qt 6.1.
# If you are developing for iOS or macOS you should consider setting an
# explicit, fixed bundle identifier manually though.
set_target_properties(appMinecraft_launcher PROPERTIES
# MACOSX_BUNDLE_GUI_IDENTIFIER com.example.appMinecraft_launcher
set_target_properties(BiLauncher PROPERTIES
MACOSX_BUNDLE_GUI_IDENTIFIER com.galeondev.BiLauncher
MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION}
MACOSX_BUNDLE_ICON_FILE icon.icns
MACOSX_BUNDLE TRUE
WIN32_EXECUTABLE TRUE
)
target_link_libraries(appMinecraft_launcher
PRIVATE Qt6::Quick Qt6::Core
target_link_libraries(BiLauncher
PRIVATE Qt6::Quick Qt6::QuickControls2 Qt6::Svg Qt6::Core Qt6::CorePrivate Qt6::Gui Qt6::Network
)
target_include_directories(BiLauncher PRIVATE "${LAUNCHER_GENERATED_DIR}")
add_dependencies(BiLauncher launcher_version)
if(Qt6WebEngineQuick_FOUND)
target_link_libraries(BiLauncher PRIVATE Qt6::WebEngineQuick)
target_compile_definitions(BiLauncher PRIVATE LAUNCHER_HAS_WEBENGINE)
endif()
include(GNUInstallDirs)
install(TARGETS appMinecraft_launcher
if(UNIX AND NOT APPLE)
set(LAUNCHER_ZLIB_DIR "${CMAKE_INSTALL_LIBDIR}/BiLauncher")
set(LAUNCHER_ZLIB_SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/zlib")
add_library(launcher_zlib_reference SHARED
${LAUNCHER_ZLIB_SOURCES}/adler32.c
${LAUNCHER_ZLIB_SOURCES}/compress.c
${LAUNCHER_ZLIB_SOURCES}/crc32.c
${LAUNCHER_ZLIB_SOURCES}/deflate.c
${LAUNCHER_ZLIB_SOURCES}/gzclose.c
${LAUNCHER_ZLIB_SOURCES}/gzlib.c
${LAUNCHER_ZLIB_SOURCES}/gzread.c
${LAUNCHER_ZLIB_SOURCES}/gzwrite.c
${LAUNCHER_ZLIB_SOURCES}/infback.c
${LAUNCHER_ZLIB_SOURCES}/inffast.c
${LAUNCHER_ZLIB_SOURCES}/inflate.c
${LAUNCHER_ZLIB_SOURCES}/inftrees.c
${LAUNCHER_ZLIB_SOURCES}/trees.c
${LAUNCHER_ZLIB_SOURCES}/uncompr.c
${LAUNCHER_ZLIB_SOURCES}/zutil.c
)
target_include_directories(launcher_zlib_reference PRIVATE ${LAUNCHER_ZLIB_SOURCES})
target_compile_definitions(launcher_zlib_reference PRIVATE
HAVE_UNISTD_H=1 HAVE_STDARG_H=1 _LARGEFILE64_SOURCE=1)
set_target_properties(launcher_zlib_reference PROPERTIES
OUTPUT_NAME z
VERSION 1.3.1
SOVERSION 1
C_VISIBILITY_PRESET default
LIBRARY_OUTPUT_DIRECTORY $<TARGET_FILE_DIR:BiLauncher>/zlib
)
add_dependencies(BiLauncher launcher_zlib_reference)
target_compile_definitions(BiLauncher PRIVATE
LAUNCHER_ZLIB_INSTALL_DIR="${CMAKE_INSTALL_FULL_LIBDIR}/BiLauncher"
)
install(TARGETS launcher_zlib_reference LIBRARY DESTINATION ${LAUNCHER_ZLIB_DIR})
foreach(icon_size IN ITEMS 16 24 32 48 64 128 256 512)
install(FILES "${LAUNCHER_ICON_DIR}/icon_${icon_size}x${icon_size}.png"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/${icon_size}x${icon_size}/apps"
RENAME bilauncher.png)
endforeach()
install(FILES "${LAUNCHER_ICON_DIR}/bilauncher.desktop"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
endif()
if(NOT APPLE)
install(FILES
"${CMAKE_CURRENT_SOURCE_DIR}/LICENSE"
"${CMAKE_CURRENT_SOURCE_DIR}/CHANGELOG.md"
"${CMAKE_CURRENT_SOURCE_DIR}/packaging/THIRD_PARTY_LICENSES.txt"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/doc/BiLauncher")
endif()
install(TARGETS BiLauncher
BUNDLE DESTINATION .
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)
set(deploy_opts "")
if(APPLE)
set(deploy_opts -hardened-runtime)
endif()
qt_generate_deploy_qml_app_script(
TARGET BiLauncher
OUTPUT_SCRIPT deploy_script
MACOS_BUNDLE_POST_BUILD
NO_UNSUPPORTED_PLATFORM_ERROR
DEPLOY_USER_QML_MODULES_ON_UNSUPPORTED_PLATFORM
DEPLOY_TOOL_OPTIONS ${deploy_opts})
install(SCRIPT ${deploy_script})
option(BILAUNCHER_BUILD_TESTS "Собрать автотесты (ctest)" OFF)
if(BILAUNCHER_BUILD_TESTS)
enable_testing()
add_subdirectory(tests)
endif()
+70
View File
@@ -0,0 +1,70 @@
import QtQuick
import QtQuick.Controls 2.15
ComboBox {
id: darkCombo
indicator: Image {
width: 10; height: 10
x: darkCombo.width - width - 12
y: (darkCombo.height - height) / 2
source: darkCombo.down ? "images/Profile_Box/Asset_23.svg"
: "images/Profile_Box/Asset_24.svg"
rotation: 180
sourceSize.width: 10; sourceSize.height: 10
fillMode: Image.PreserveAspectFit
}
contentItem: Text {
leftPadding: 10
rightPadding: darkCombo.indicator.width + 22
text: darkCombo.displayText
color: "#ffffff"
font: darkCombo.font
verticalAlignment: Text.AlignVCenter
elide: Text.ElideRight
}
background: Rectangle {
color: "#2a2a2a"
radius: 6
border.color: darkCombo.activeFocus ? "#91B315" : "#444444"
border.width: 1
}
delegate: ItemDelegate {
required property var modelData
required property int index
width: darkCombo.width
highlighted: darkCombo.highlightedIndex === index
contentItem: Text {
text: modelData
color: "#ffffff"
elide: Text.ElideRight
verticalAlignment: Text.AlignVCenter
}
background: Rectangle { color: highlighted ? "#3a3a3a" : "#2a2a2a" }
}
popup: Popup {
y: darkCombo.height
width: darkCombo.width
implicitHeight: Math.min(contentItem.implicitHeight, 220)
padding: 1
contentItem: ListView {
clip: true
implicitHeight: contentHeight
model: darkCombo.delegateModel
currentIndex: darkCombo.highlightedIndex
ScrollIndicator.vertical: ScrollIndicator {}
}
background: Rectangle {
color: "#2a2a2a"
radius: 6
border.color: "#444444"
border.width: 1
}
}
}
+501
View File
@@ -0,0 +1,501 @@
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls 2.15
import QtQuick.Layouts 2.15
Dialog {
id: picker
required property var backend
property string selectedId: ""
property string category: "java"
property string filterText: ""
property bool installedOnly: false
property int requiredMajor: 0
signal runtimeChosen(string runtimeId)
modal: true
padding: 0
width: 720
height: 480
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#91B315"
border.width: 1
}
readonly property var categories: [
{ key: "java", title: Loc.t.common.java.kind.java, hint: Loc.t.java.filter.mojang },
{ key: "jdk", title: Loc.t.common.java.kind.jdk, hint: Loc.t.java.filter.temurinJdk },
{ key: "jre", title: Loc.t.common.java.kind.jre, hint: Loc.t.java.filter.temurinJre }
]
readonly property var visibleEntries: {
const query = picker.filterText.trim().toLowerCase()
const source = picker.backend.javaCatalog
const out = []
for (var i = 0; i < source.length; ++i) {
const entry = source[i]
if (entry.kind !== picker.category)
continue
if (picker.installedOnly && !entry.installed)
continue
if (query !== "" && entry.search.indexOf(query) === -1)
continue
out.push(entry)
}
return out
}
readonly property var selectedEntry: {
const list = picker.backend.javaCatalog
for (var i = 0; i < list.length; ++i) {
if (list[i].id === picker.selectedId)
return list[i]
}
return null
}
function openFor(runtimeId, required) {
picker.selectedId = runtimeId
picker.requiredMajor = required || 0
picker.filterText = ""
searchField.text = ""
picker.category = picker.categoryOf(runtimeId)
picker.backend.refreshJavaCatalog()
picker.open()
picker.revealSelected()
}
function categoryOf(runtimeId) {
const source = picker.backend.javaCatalog
for (var i = 0; i < source.length; ++i) {
if (source[i].id === runtimeId)
return source[i].kind
}
return "java"
}
function indexOfSelected() {
const list = picker.visibleEntries
for (var i = 0; i < list.length; ++i) {
if (list[i].id === picker.selectedId)
return i
}
return -1
}
function revealSelected() {
const index = picker.indexOfSelected()
runtimeList.currentIndex = index
if (index >= 0)
runtimeList.positionViewAtIndex(index, ListView.Center)
}
function acceptSelection() {
const entry = picker.selectedEntry
if (!entry)
return
picker.runtimeChosen(entry.id)
if (!entry.installed && entry.downloadable)
picker.backend.installJavaRuntime(entry.id)
picker.close()
}
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.java.label.version
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: RowLayout {
spacing: 0
Rectangle {
Layout.preferredWidth: 170
Layout.fillHeight: true
color: "transparent"
Column {
anchors.fill: parent
anchors.margins: 8
spacing: 2
Repeater {
model: picker.categories
delegate: Rectangle {
id: categoryRow
required property var modelData
width: parent.width
height: 44
radius: 5
color: picker.category === categoryRow.modelData.key ? "#91B315"
: categoryArea.containsMouse ? "#2d2d2d" : "transparent"
Column {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.verticalCenter: parent.verticalCenter
spacing: 1
Text {
text: categoryRow.modelData.title
color: "#ffffff"
font.pixelSize: 13
}
Text {
text: categoryRow.modelData.hint
color: picker.category === categoryRow.modelData.key
? "#1e1e1e" : "#777777"
font.pixelSize: 10
}
}
MouseArea {
id: categoryArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
picker.category = categoryRow.modelData.key
picker.revealSelected()
}
}
}
}
Item { width: 1; height: 8 }
Text {
width: parent.width - 4
visible: picker.requiredMajor > 0
wrapMode: Text.Wrap
color: "#888888"
font.pixelSize: 10
text: Loc.t.java.hint.required
.arg(picker.requiredMajor)
}
}
}
Rectangle {
Layout.preferredWidth: 1
Layout.fillHeight: true
color: "#333333"
}
Item {
Layout.fillWidth: true
Layout.fillHeight: true
TextField {
id: searchField
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
anchors.margins: 8
height: 32
placeholderText: Loc.t.common.placeholder.searchVersion
color: "#ffffff"
placeholderTextColor: "#666666"
background: Rectangle {
color: "#232323"
radius: 5
border.color: searchField.activeFocus ? "#91B315" : "#444444"
border.width: 1
}
onTextChanged: {
picker.filterText = text
runtimeList.currentIndex = picker.indexOfSelected()
}
Keys.onEscapePressed: picker.close()
Keys.onReturnPressed: picker.acceptSelection()
Keys.onEnterPressed: picker.acceptSelection()
Keys.onDownPressed: runtimeList.step(1)
Keys.onUpPressed: runtimeList.step(-1)
}
CheckBox {
id: installedOnlyBox
anchors.left: parent.left
anchors.leftMargin: 8
anchors.bottom: parent.bottom
anchors.bottomMargin: 4
height: 28
checked: picker.installedOnly
onToggled: {
picker.installedOnly = checked
picker.revealSelected()
}
indicator: Rectangle {
implicitWidth: 16
implicitHeight: 16
x: 0
y: (installedOnlyBox.height - height) / 2
radius: 4
color: installedOnlyBox.checked ? "#91B315" : "#2a2a2a"
border.color: installedOnlyBox.checked ? "#91B315" : "#444444"
border.width: 1
Text {
anchors.centerIn: parent
visible: installedOnlyBox.checked
text: "✓"
color: "#1e1e1e"
font.pixelSize: 12
font.bold: true
}
}
contentItem: Text {
leftPadding: installedOnlyBox.indicator.width + 8
text: Loc.t.java.filter.downloadedOnly
color: "#aaaaaa"
font.pixelSize: 11
verticalAlignment: Text.AlignVCenter
}
}
ListView {
id: runtimeList
anchors.top: searchField.bottom
anchors.topMargin: 6
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: installedOnlyBox.top
anchors.leftMargin: 8
anchors.rightMargin: 8
clip: true
spacing: 1
model: picker.visibleEntries
ScrollIndicator.vertical: ScrollIndicator {}
function step(delta) {
const next = runtimeList.currentIndex + delta
if (next < 0 || next >= runtimeList.count)
return
runtimeList.currentIndex = next
runtimeList.positionViewAtIndex(next, ListView.Contain)
picker.selectedId = picker.visibleEntries[next].id
}
delegate: Rectangle {
id: runtimeRow
required property var modelData
required property int index
readonly property bool chosen: picker.selectedId === runtimeRow.modelData.id
readonly property bool tooOld: picker.requiredMajor > 0
&& runtimeRow.modelData.major < picker.requiredMajor
width: runtimeList.width
height: 44
radius: 4
color: runtimeRow.chosen ? "#91B315"
: runtimeArea.containsMouse ? "#2d2d2d" : "transparent"
Column {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.right: rightMarks.left
anchors.rightMargin: 8
anchors.verticalCenter: parent.verticalCenter
spacing: 1
Row {
spacing: 6
Text {
text: runtimeRow.modelData.label
color: "#ffffff"
font.pixelSize: 13
}
Text {
visible: runtimeRow.modelData.lts
text: "LTS"
color: runtimeRow.chosen ? "#1e1e1e" : "#91B315"
font.pixelSize: 10
anchors.verticalCenter: parent.verticalCenter
}
}
Text {
width: parent.width
elide: Text.ElideRight
color: runtimeRow.chosen ? "#1e1e1e"
: runtimeRow.tooOld ? "#aa7777" : "#888888"
font.pixelSize: 10
text: {
const parts = [runtimeRow.modelData.detail,
runtimeRow.modelData.coverage]
if (runtimeRow.modelData.sizeMb > 0)
parts.push(Loc.t.common.status.megabytes.arg(runtimeRow.modelData.sizeMb))
if (runtimeRow.tooOld)
parts.push(Loc.t.java.warning.tooOldForVersion)
return parts.join(" · ")
}
}
}
Row {
id: rightMarks
anchors.right: parent.right
anchors.rightMargin: 10
anchors.verticalCenter: parent.verticalCenter
spacing: 8
Text {
visible: runtimeRow.modelData.installed
text: "✓"
color: runtimeRow.chosen ? "#1e1e1e" : "#91B315"
font.pixelSize: 13
font.bold: true
anchors.verticalCenter: parent.verticalCenter
}
Image {
visible: runtimeRow.modelData.installed
source: "images/Trash.svg"
width: 14
height: 14
fillMode: Image.PreserveAspectFit
anchors.verticalCenter: parent.verticalCenter
opacity: trashArea.containsMouse ? 1.0 : 0.55
MouseArea {
id: trashArea
anchors.fill: parent
anchors.margins: -5
hoverEnabled: true
onClicked: {
picker.backend.removeJavaRuntime(runtimeRow.modelData.id)
if (picker.selectedId === runtimeRow.modelData.id)
picker.selectedId = ""
}
}
}
}
MouseArea {
id: runtimeArea
anchors.fill: parent
anchors.rightMargin: 40
hoverEnabled: true
onClicked: {
picker.selectedId = runtimeRow.modelData.id
runtimeList.currentIndex = runtimeRow.index
}
onDoubleClicked: {
picker.selectedId = runtimeRow.modelData.id
picker.acceptSelection()
}
}
}
}
Text {
anchors.centerIn: runtimeList
width: runtimeList.width - 20
visible: picker.visibleEntries.length === 0
horizontalAlignment: Text.AlignHCenter
wrapMode: Text.Wrap
color: "#888888"
font.pixelSize: 12
font.italic: true
text: picker.backend.javaCatalogLoading
? Loc.t.java.progress.loadingCatalog
: picker.backend.javaCatalog.length === 0
? Loc.t.java.error.catalogUnavailable
: Loc.t.common.status.nothingFound
}
}
}
footer: Item {
implicitHeight: 60
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Text {
anchors.left: parent.left
anchors.leftMargin: 20
anchors.verticalCenter: parent.verticalCenter
width: parent.width - 320
elide: Text.ElideRight
color: picker.selectedEntry === null ? "#666666" : "#91B315"
font.pixelSize: 13
text: picker.selectedEntry === null
? Loc.t.common.status.noBuildSelected
: picker.selectedEntry.installed
? picker.selectedEntry.label
: Loc.t.java.status.willDownload.arg(picker.selectedEntry.label)
}
Row {
anchors.right: parent.right
anchors.rightMargin: 20
anchors.verticalCenter: parent.verticalCenter
spacing: 12
Button {
text: Loc.t.common.button.cancel
width: 110; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#444444" : "#333333"
radius: 6
}
onClicked: picker.close()
}
Button {
text: picker.selectedEntry !== null && !picker.selectedEntry.installed
? Loc.t.common.button.download : Loc.t.common.button.select
width: 110; height: 36
enabled: picker.selectedEntry !== null
opacity: enabled ? 1.0 : 0.45
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#6a8510" : "#91B315"
radius: 6
}
onClicked: picker.acceptSelection()
}
}
}
onOpened: searchField.forceActiveFocus()
}
+201
View File
@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [2026] [GaleonDev dertiellis@gmail.com]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+37
View File
@@ -0,0 +1,37 @@
import QtQuick
import QtQuick.Controls 2.15
Column {
id: labelled
property alias text: field.text
property alias validator: field.validator
property string label: ""
property string placeholder: ""
signal editingFinished()
spacing: 3
Text {
text: labelled.label
color: "#aaaaaa"
font.pixelSize: 11
}
TextField {
id: field
width: labelled.width
onEditingFinished: labelled.editingFinished()
height: 32
placeholderText: labelled.placeholder
color: "#ffffff"
placeholderTextColor: "#666666"
background: Rectangle {
color: "#2a2a2a"
radius: 6
border.color: field.activeFocus ? "#91B315" : "#444444"
border.width: 1
}
}
}
+148
View File
@@ -0,0 +1,148 @@
import QtQuick
import QtQuick.Controls 2.15
Column {
id: loaderRow
required property var backend
required property string loaderKey
required property string title
property string gameVersion: ""
property alias checked: box.checked
property string selectedVersion: ""
property var entries: []
signal userChecked()
signal changed()
property bool applying: false
spacing: 4
function versionIndex(version) {
for (var i = 0; i < loaderRow.entries.length; ++i) {
if (loaderRow.entries[i].version === version)
return i
}
return -1
}
function applyEntries(list) {
loaderRow.entries = list
if (loaderRow.versionIndex(loaderRow.selectedVersion) < 0) {
const fallback = list.length > 0 ? list[0].version : ""
const changedValue = loaderRow.selectedVersion !== fallback
loaderRow.selectedVersion = fallback
if (changedValue && !loaderRow.applying)
loaderRow.changed()
}
combo.currentIndex = loaderRow.versionIndex(loaderRow.selectedVersion)
}
function reload() {
if (!box.checked || loaderRow.gameVersion === "") {
loaderRow.applyEntries([])
return
}
loaderRow.applyEntries(loaderRow.backend.loaderVersions(loaderRow.loaderKey,
loaderRow.gameVersion))
loaderRow.backend.refreshLoaderVersions(loaderRow.loaderKey, loaderRow.gameVersion)
}
function applyBuild(loader, loaderVersion) {
loaderRow.applying = true
box.checked = loader === loaderRow.loaderKey
loaderRow.selectedVersion = box.checked ? loaderVersion : ""
loaderRow.reload()
loaderRow.applying = false
}
onGameVersionChanged: {
loaderRow.selectedVersion = ""
loaderRow.reload()
}
Connections {
target: loaderRow.backend
function onLoaderVersionsChanged(key, game) {
if (key !== loaderRow.loaderKey || game !== loaderRow.gameVersion || !box.checked)
return
loaderRow.applyEntries(loaderRow.backend.loaderVersions(key, game))
}
}
CheckBox {
id: box
text: loaderRow.title
enabled: loaderRow.gameVersion !== ""
indicator: Rectangle {
implicitWidth: 18
implicitHeight: 18
x: 0
y: (box.height - height) / 2
radius: 4
color: box.checked ? "#91B315" : "#2a2a2a"
border.color: box.checked ? "#91B315" : "#444444"
border.width: 1
Text {
anchors.centerIn: parent
visible: box.checked
text: "✓"
color: "#1e1e1e"
font.pixelSize: 13
font.bold: true
}
}
contentItem: Text {
leftPadding: box.indicator.width + 8
text: box.text
color: box.enabled ? "#ffffff" : "#666666"
font.pixelSize: 12
verticalAlignment: Text.AlignVCenter
}
onToggled: {
if (box.checked)
loaderRow.userChecked()
else
loaderRow.selectedVersion = ""
loaderRow.reload()
loaderRow.changed()
}
}
DarkCombo {
id: combo
visible: box.checked && loaderRow.entries.length > 0
width: loaderRow.width - 26
height: 32
x: 26
model: loaderRow.entries.map(entry => entry.label)
onActivated: (index) => {
if (index < 0 || index >= loaderRow.entries.length)
return
loaderRow.selectedVersion = loaderRow.entries[index].version
loaderRow.changed()
}
}
Text {
visible: box.checked && loaderRow.entries.length === 0
x: 26
width: loaderRow.width - 26
wrapMode: Text.Wrap
font.pixelSize: 11
color: loaderRow.backend.loaderVersionsLoading(loaderRow.loaderKey, loaderRow.gameVersion)
? "#888888" : "#cc6666"
text: loaderRow.backend.loaderVersionsLoading(loaderRow.loaderKey, loaderRow.gameVersion)
? Loc.t.loader.progress.loadingVersions.arg(loaderRow.title)
: Loc.t.loader.status.unsupported.arg(loaderRow.title)
.arg(loaderRow.gameVersion)
}
}
+1005 -171
View File
File diff suppressed because it is too large. Load diff
+120
View File
@@ -0,0 +1,120 @@
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls 2.15
import QtWebEngine
Dialog {
id: msLogin
required property var backend
signal failed(string message)
property bool codeTaken: false
anchors.centerIn: parent
modal: true
width: 560
height: 680
padding: 0
closePolicy: Popup.NoAutoClose
function openAt(url) {
codeTaken = false
web.url = url
open()
}
function handleUrl(url) {
if (codeTaken)
return
const info = backend.inspectMicrosoftRedirect(String(url))
if (!info.matched)
return
codeTaken = true
close()
if (info.code !== "") {
backend.finishMicrosoftLogin(info.code)
} else {
backend.cancelMicrosoftLogin()
msLogin.failed(info.error !== "" ? info.error : Loc.t.auth.msa.error.incomplete)
}
}
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#91B315"
border.width: 1
}
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.auth.msa.title.signIn
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: Item {
WebEngineProfilePrototype {
id: msProfile
}
WebEngineView {
id: web
anchors.fill: parent
anchors.margins: 12
profile: msProfile.instance()
onUrlChanged: msLogin.handleUrl(url)
}
BusyIndicator {
anchors.centerIn: parent
running: web.loading
visible: running
}
}
footer: Item {
implicitHeight: 60
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Button {
anchors.centerIn: parent
text: Loc.t.common.button.cancel
width: 110; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#444444" : "#333333"
radius: 6
}
onClicked: {
msLogin.codeTaken = true
msLogin.close()
msLogin.backend.cancelMicrosoftLogin()
}
}
}
}
+86
View File
@@ -0,0 +1,86 @@
import QtQuick
import QtQuick.Controls 2.15
Rectangle {
id: panel
property string title: ""
property string status: ""
property double fraction: -1
property string detail: ""
property bool cancellable: true
signal cancelRequested()
width: 320
height: 72
radius: 8
color: "#1e1e1e"
opacity: 0.94
border.color: "#91B315"
border.width: 1
Text {
x: 12; y: 8
width: parent.width - 70
elide: Text.ElideRight
color: "#ffffff"
font.pixelSize: 12
font.bold: true
text: panel.title
}
Text {
anchors.right: parent.right
anchors.rightMargin: 12
y: 8
color: "#91B315"
font.pixelSize: 12
text: panel.fraction < 0 ? "…" : Math.round(panel.fraction * 100) + "%"
}
Rectangle {
id: track
x: 12; y: 30
width: parent.width - 24
height: 6
radius: 3
color: "#2a2a2a"
Rectangle {
width: panel.fraction > 0 ? track.width * panel.fraction : 0
height: parent.height
radius: 3
color: "#91B315"
Behavior on width { NumberAnimation { duration: 120 } }
}
}
Text {
x: 12; y: 44
width: parent.width - 40
elide: Text.ElideMiddle
color: "#888888"
font.pixelSize: 10
text: panel.detail !== "" ? panel.detail : panel.status
}
Text {
anchors.right: parent.right
anchors.bottom: parent.bottom
anchors.rightMargin: 10
anchors.bottomMargin: 6
visible: panel.cancellable
text: "✕"
color: cancelArea.containsMouse ? "#cc6666" : "#666666"
font.pixelSize: 12
MouseArea {
id: cancelArea
anchors.fill: parent
anchors.margins: -6
hoverEnabled: true
onClicked: panel.cancelRequested()
}
}
}
+34
View File
@@ -0,0 +1,34 @@
# BiLauncher
Самописный простой лаунчер для Minecraft без рекламы и лишнего мусора.
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/menu.png" alt="drawing" width="65%"/>
# Основной функционал
<h3>Возможность гибкой настройки параметров запуска игры с динамическим выбором версии Java под каждую версию Minecraft</h3>
<p float="left">
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/settings.png" alt="drawing" width="45%"/>
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/javaSelect.png" alt="drawing" width="52%"/>
</p>
<h3>Сохранение профилей пользователей и авторизация тремя доступными способами</h3>
<p float="left">
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/profiles.png" alt="drawing" width="45%"/>
</p>
<h3>Сборки: централизованное управление вашей сборкой с возможностью выбора любой версии игры, добавления модлоадеров и сохранение каждой сборки без необходимости очищать .minecraft</h3>
<p float="left">
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/versions.png" alt="drawing" width="65%"/>
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/versionsLoaders.png" alt="drawing" width="65%"/>
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/versionsSelect.png" alt="drawing" width="65%"/>
</p>
<h3>Сезонные сборки: централизованное управление сборками со стороны команды разработчика, полная автоматизация скачивания, установки и разрешения зависиомстей для конечных пользователей</h3>
<p float="left">
<img src="https://projects-live.galeonworx.com/galeon/BiLauncher/raw/branch/master/Screenshots/seasonal.png" alt="drawing" width="75%"/>
</p>
Binary file not shown.

After

Width:  |  Height:  |  Size: 307 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

+313
View File
@@ -0,0 +1,313 @@
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls 2.15
Dialog {
id: seasons
required property var backend
property string selectedId: ""
readonly property var columns: [
{ key: "name", title: Loc.t.common.header.name, width: 250, align: Text.AlignLeft },
{ key: "minecraftVersion", title: Loc.t.common.header.version, width: 90, align: Text.AlignLeft },
{ key: "loaderLabel", title: Loc.t.common.header.loader, width: 150, align: Text.AlignLeft },
{ key: "modCount", title: Loc.t.seasonal.header.mods, width: 70, align: Text.AlignRight },
{ key: "seasonStart", title: Loc.t.seasonal.header.start, width: 110, align: Text.AlignLeft },
{ key: "seasonEnd", title: Loc.t.seasonal.header.end, width: 110, align: Text.AlignLeft },
{ key: "status", title: Loc.t.common.header.status, width: 140, align: Text.AlignLeft }
]
modal: true
padding: 0
width: 960
height: 560
// Закрывается и во время установки: отменить её можно только на панели
// загрузки главного окна, а модальное окно эту панель перекрывает.
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#91B315"
border.width: 1
}
readonly property var entries: seasons.backend.seasonalCatalog
readonly property var selectedEntry: {
const list = seasons.entries
for (var i = 0; i < list.length; ++i) {
if (list[i].id === seasons.selectedId)
return list[i]
}
return null
}
function openCatalog() {
seasons.open()
}
function formatMb(bytes) {
if (!bytes || bytes <= 0)
return ""
return (bytes / (1024 * 1024)).toFixed(1)
}
function cellText(entry, key) {
if (key === "loaderLabel") {
return entry.loaderVersion === ""
? entry.loaderTitle
: entry.loaderTitle + " " + entry.loaderVersion
}
return String(entry[key])
}
onAboutToShow: seasons.backend.refreshSeasonalCatalog(false)
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.common.title.seasonalBuilds
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: Item {
Row {
id: tableHeader
anchors.top: parent.top
anchors.left: parent.left
anchors.leftMargin: 18
height: 30
Repeater {
model: seasons.columns
delegate: Text {
required property var modelData
width: modelData.width
height: tableHeader.height
text: modelData.title
color: "#aaaaaa"
font.pixelSize: 12
elide: Text.ElideRight
horizontalAlignment: modelData.align
verticalAlignment: Text.AlignVCenter
rightPadding: 10
}
}
}
Rectangle {
id: headerLine
anchors.top: tableHeader.bottom
anchors.left: parent.left
anchors.right: parent.right
anchors.leftMargin: 12
anchors.rightMargin: 12
height: 1
color: "#333333"
}
Text {
anchors.centerIn: parent
width: parent.width - 80
visible: seasons.entries.length === 0
horizontalAlignment: Text.AlignHCenter
wrapMode: Text.WordWrap
color: seasons.backend.seasonalCatalogError === "" ? "#888888" : "#cc6666"
font.pixelSize: 13
text: seasons.backend.seasonalCatalogLoading
? Loc.t.seasonal.progress.loadingCatalog
: (seasons.backend.seasonalCatalogError === ""
? Loc.t.seasonal.status.catalogEmptyYet
: seasons.backend.seasonalCatalogError)
}
ListView {
id: buildList
anchors.top: headerLine.bottom
anchors.topMargin: 4
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
anchors.leftMargin: 12
anchors.rightMargin: 12
clip: true
spacing: 1
model: seasons.entries
ScrollIndicator.vertical: ScrollIndicator {}
delegate: Rectangle {
id: buildRow
required property var modelData
width: buildList.width
height: 36
radius: 4
color: seasons.selectedId === buildRow.modelData.id ? "#91B315"
: rowArea.containsMouse ? "#2d2d2d" : "transparent"
readonly property bool highlighted: seasons.selectedId === buildRow.modelData.id
Row {
anchors.left: parent.left
anchors.leftMargin: 6
anchors.verticalCenter: parent.verticalCenter
Repeater {
model: seasons.columns
delegate: Text {
required property var modelData
width: modelData.width
text: seasons.cellText(buildRow.modelData, modelData.key)
// Подсвеченная строка залита зелёным — тёмный текст
// на ней читается, светлый нет.
color: buildRow.highlighted
? "#1e1e1e"
: (modelData.key === "status"
&& buildRow.modelData.updateAvailable
? "#91B315" : "#ffffff")
font.pixelSize: 13
elide: Text.ElideRight
horizontalAlignment: modelData.align
rightPadding: 10
}
}
}
MouseArea {
id: rowArea
anchors.fill: parent
hoverEnabled: true
onClicked: seasons.selectedId = buildRow.modelData.id
onDoubleClicked: {
seasons.selectedId = buildRow.modelData.id
seasons.installSelected()
}
}
}
}
}
function installSelected() {
const entry = seasons.selectedEntry
if (!entry || seasons.backend.busy)
return
seasons.backend.installSeasonalBuild(entry.id)
}
footer: Item {
implicitHeight: 76
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Column {
anchors.left: parent.left
anchors.leftMargin: 18
anchors.right: footerButtons.left
anchors.rightMargin: 12
anchors.verticalCenter: parent.verticalCenter
spacing: 3
Text {
width: parent.width
elide: Text.ElideRight
color: "#ffffff"
font.pixelSize: 12
text: seasons.selectedEntry ? seasons.selectedEntry.description : ""
}
Text {
width: parent.width
elide: Text.ElideRight
color: "#888888"
font.pixelSize: 11
text: {
if (!seasons.selectedEntry)
return Loc.t.seasonal.hint.pickBuild
const entry = seasons.selectedEntry
var line = Loc.t.seasonal.status.revision.arg(entry.revision)
const size = seasons.formatMb(entry.sizeBytes)
if (size !== "")
line += Loc.t.seasonal.status.sizeSuffix.arg(size)
if (entry.serverUrl !== "")
line += " · " + entry.serverUrl
if (entry.updateAvailable)
line += Loc.t.seasonal.status.installedRevisionSuffix.arg(entry.installedRevision)
return line
}
}
}
Row {
id: footerButtons
anchors.right: parent.right
anchors.rightMargin: 18
anchors.verticalCenter: parent.verticalCenter
spacing: 12
Button {
id: refreshButton
width: 150
height: 36
enabled: !seasons.backend.seasonalCatalogLoading
contentItem: Text {
text: seasons.backend.seasonalCatalogLoading ? Loc.t.common.status.updating
: Loc.t.common.button.refreshList
color: refreshButton.enabled ? "#ffffff" : "#888888"
font.pixelSize: 13
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: refreshButton.pressed ? "#444444" : "#333333"
radius: 6
}
onClicked: seasons.backend.refreshSeasonalCatalog(true)
}
Button {
id: installButton
width: 150
height: 36
enabled: seasons.selectedEntry !== null && !seasons.backend.busy
contentItem: Text {
text: seasons.selectedEntry && seasons.selectedEntry.updateAvailable
? Loc.t.common.button.update
: Loc.t.common.button.install
color: installButton.enabled ? "#ffffff" : "#888888"
font.pixelSize: 13
font.bold: true
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: !installButton.enabled ? "#2a2a2a"
: installButton.pressed ? "#6a8510" : "#91B315"
radius: 6
}
onClicked: seasons.installSelected()
}
}
}
}
+594
View File
@@ -0,0 +1,594 @@
pragma ComponentBehavior: Bound
import QtQuick
import QtQuick.Controls 2.15
import QtQuick.Layouts 2.15
Dialog {
id: picker
required property var backend
property string selectedId: ""
property string category: "release"
property string filterText: ""
property bool installedOnly: false
signal versionChosen(string versionId)
modal: true
padding: 0
width: 720
height: 480
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#91B315"
border.width: 1
}
readonly property var categories: [
{ key: "release", title: Loc.t.version.filter.releases },
{ key: "snapshot", title: Loc.t.version.filter.snapshots },
{ key: "old_beta", title: Loc.t.version.filter.betas },
{ key: "old_alpha", title: Loc.t.version.filter.alphas },
{ key: "other", title: Loc.t.version.filter.other }
]
readonly property var visibleEntries: {
const query = picker.filterText.trim().toLowerCase()
const source = picker.backend.versionCatalog
const out = []
for (var i = 0; i < source.length; ++i) {
const entry = source[i]
if (entry.category !== picker.category)
continue
if (picker.installedOnly && !entry.installed)
continue
if (query !== "" && entry.search.indexOf(query) === -1)
continue
out.push(entry)
}
return out
}
function openFor(versionId) {
picker.selectedId = versionId
picker.filterText = ""
searchField.text = ""
picker.category = picker.categoryOf(versionId)
picker.backend.refreshVersionCatalog()
picker.open()
picker.revealSelected()
}
function categoryOf(versionId) {
const source = picker.backend.versionCatalog
for (var i = 0; i < source.length; ++i) {
if (source[i].id === versionId)
return source[i].category
}
return "release"
}
function indexOfSelected() {
const list = picker.visibleEntries
for (var i = 0; i < list.length; ++i) {
if (list[i].id === picker.selectedId)
return i
}
return -1
}
function revealSelected() {
const index = picker.indexOfSelected()
versionList.currentIndex = index
if (index >= 0)
versionList.positionViewAtIndex(index, ListView.Center)
}
function acceptSelection() {
if (picker.selectedId === "")
return
picker.versionChosen(picker.selectedId)
picker.close()
}
function catalogHas(versionId) {
const source = picker.backend.versionCatalog
for (var i = 0; i < source.length; ++i) {
if (source[i].id === versionId)
return true
}
return false
}
function askRemove(versionId) {
const info = picker.backend.versionRemovalInfo(versionId)
if (!info || info.installed !== true)
return
removeConfirm.versionId = versionId
removeConfirm.sizeMb = info.sizeMb || 0
removeConfirm.dependents = info.dependents || []
removeConfirm.builds = info.builds || []
removeConfirm.open()
}
function performRemove(versionId) {
picker.backend.removeVersion(versionId)
if (picker.selectedId === versionId && !picker.catalogHas(versionId))
picker.selectedId = ""
picker.revealSelected()
}
Dialog {
id: removeConfirm
property string versionId: ""
property int sizeMb: 0
property var dependents: []
property var builds: []
modal: true
padding: 0
width: 420
parent: picker.parent
x: (picker.parent.width - width) / 2
y: (picker.parent.height - height) / 2
closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutside
background: Rectangle {
color: "#1e1e1e"
radius: 10
border.color: "#cc6666"
border.width: 1
}
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.version.title.removeConfirm
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: Column {
spacing: 10
topPadding: 18
bottomPadding: 18
Text {
x: 20
width: parent.width - 40
wrapMode: Text.Wrap
color: "#ffffff"
font.pixelSize: 13
text: removeConfirm.sizeMb > 0
? Loc.t.version.hint.removeWithSize
.arg(removeConfirm.versionId).arg(removeConfirm.sizeMb)
: Loc.t.version.hint.remove
.arg(removeConfirm.versionId)
}
Text {
x: 20
width: parent.width - 40
visible: removeConfirm.dependents.length > 0
wrapMode: Text.Wrap
color: "#cc6666"
font.pixelSize: 12
text: Loc.t.version.warning.loaderProfilesDepend
.arg(removeConfirm.dependents.join(", "))
}
Text {
x: 20
width: parent.width - 40
visible: removeConfirm.builds.length > 0
wrapMode: Text.Wrap
color: "#cc6666"
font.pixelSize: 12
text: Loc.t.version.warning.buildsDepend
.arg(removeConfirm.builds.join(", "))
}
Text {
x: 20
width: parent.width - 40
wrapMode: Text.Wrap
color: "#888888"
font.pixelSize: 12
text: Loc.t.version.hint.sharedFilesStay
}
}
footer: Item {
implicitHeight: 60
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Row {
anchors.centerIn: parent
spacing: 12
Button {
text: Loc.t.common.button.cancel
width: 130; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#6a8510" : "#91B315"
radius: 6
}
onClicked: removeConfirm.close()
}
Button {
text: Loc.t.common.button.remove
width: 130; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#8a3a3a" : "#663333"
radius: 6
border.color: "#cc6666"
border.width: 1
}
onClicked: {
const id = removeConfirm.versionId
removeConfirm.close()
picker.performRemove(id)
}
}
}
}
onClosed: removeConfirm.versionId = ""
}
header: Item {
implicitHeight: 52
Text {
anchors.centerIn: parent
text: Loc.t.common.label.minecraftVersion
color: "#ffffff"
font.pixelSize: 17
font.bold: true
}
Rectangle {
anchors.bottom: parent.bottom
width: parent.width
height: 1
color: "#333333"
}
}
contentItem: RowLayout {
spacing: 0
Rectangle {
Layout.preferredWidth: 150
Layout.fillHeight: true
color: "transparent"
Column {
anchors.fill: parent
anchors.margins: 8
spacing: 2
Repeater {
model: picker.categories
delegate: Rectangle {
id: categoryRow
required property var modelData
width: parent.width
height: 34
radius: 5
color: picker.category === categoryRow.modelData.key ? "#91B315"
: categoryArea.containsMouse ? "#2d2d2d" : "transparent"
Text {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.verticalCenter: parent.verticalCenter
text: categoryRow.modelData.title
color: "#ffffff"
font.pixelSize: 13
}
MouseArea {
id: categoryArea
anchors.fill: parent
hoverEnabled: true
onClicked: {
picker.category = categoryRow.modelData.key
picker.revealSelected()
}
}
}
}
}
}
Rectangle {
Layout.preferredWidth: 1
Layout.fillHeight: true
color: "#333333"
}
Item {
Layout.fillWidth: true
Layout.fillHeight: true
TextField {
id: searchField
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
anchors.margins: 8
height: 32
placeholderText: Loc.t.common.placeholder.searchVersion
color: "#ffffff"
placeholderTextColor: "#666666"
background: Rectangle {
color: "#232323"
radius: 5
border.color: searchField.activeFocus ? "#91B315" : "#444444"
border.width: 1
}
onTextChanged: {
picker.filterText = text
versionList.currentIndex = picker.indexOfSelected()
}
Keys.onEscapePressed: picker.close()
Keys.onReturnPressed: picker.acceptSelection()
Keys.onEnterPressed: picker.acceptSelection()
Keys.onDownPressed: versionList.step(1)
Keys.onUpPressed: versionList.step(-1)
}
CheckBox {
id: installedOnlyBox
anchors.left: parent.left
anchors.leftMargin: 8
anchors.bottom: parent.bottom
anchors.bottomMargin: 4
height: 28
checked: picker.installedOnly
onToggled: {
picker.installedOnly = checked
picker.revealSelected()
}
indicator: Rectangle {
implicitWidth: 16
implicitHeight: 16
x: 0
y: (installedOnlyBox.height - height) / 2
radius: 4
color: installedOnlyBox.checked ? "#91B315" : "#2a2a2a"
border.color: installedOnlyBox.checked ? "#91B315" : "#444444"
border.width: 1
Text {
anchors.centerIn: parent
visible: installedOnlyBox.checked
text: "✓"
color: "#1e1e1e"
font.pixelSize: 12
font.bold: true
}
}
contentItem: Text {
leftPadding: installedOnlyBox.indicator.width + 8
text: Loc.t.version.filter.installedOnly
color: "#aaaaaa"
font.pixelSize: 11
verticalAlignment: Text.AlignVCenter
}
}
ListView {
id: versionList
anchors.top: searchField.bottom
anchors.topMargin: 6
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: installedOnlyBox.top
anchors.leftMargin: 8
anchors.rightMargin: 8
clip: true
spacing: 1
model: picker.visibleEntries
ScrollIndicator.vertical: ScrollIndicator {}
function step(delta) {
const next = versionList.currentIndex + delta
if (next < 0 || next >= versionList.count)
return
versionList.currentIndex = next
versionList.positionViewAtIndex(next, ListView.Contain)
picker.selectedId = picker.visibleEntries[next].id
}
delegate: Rectangle {
id: versionRow
required property var modelData
required property int index
width: versionList.width
height: 32
radius: 4
color: picker.selectedId === versionRow.modelData.id ? "#91B315"
: versionArea.containsMouse ? "#2d2d2d" : "transparent"
Text {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.right: rightMarks.left
anchors.rightMargin: 6
anchors.verticalCenter: parent.verticalCenter
text: versionRow.modelData.label
color: "#ffffff"
elide: Text.ElideRight
font.pixelSize: 13
}
Row {
id: rightMarks
anchors.right: parent.right
anchors.rightMargin: 10
anchors.verticalCenter: parent.verticalCenter
spacing: 8
Text {
visible: versionRow.modelData.installed
text: "✓"
color: picker.selectedId === versionRow.modelData.id ? "#1e1e1e" : "#91B315"
font.pixelSize: 13
font.bold: true
anchors.verticalCenter: parent.verticalCenter
}
Image {
visible: versionRow.modelData.installed
source: "images/Trash.svg"
width: 14
height: 14
fillMode: Image.PreserveAspectFit
anchors.verticalCenter: parent.verticalCenter
opacity: trashArea.containsMouse ? 1.0 : 0.55
MouseArea {
id: trashArea
anchors.fill: parent
anchors.margins: -5
hoverEnabled: true
onClicked: picker.askRemove(versionRow.modelData.id)
}
}
}
MouseArea {
id: versionArea
anchors.fill: parent
anchors.rightMargin: 40
hoverEnabled: true
onClicked: {
picker.selectedId = versionRow.modelData.id
versionList.currentIndex = versionRow.index
}
onDoubleClicked: {
picker.selectedId = versionRow.modelData.id
picker.acceptSelection()
}
}
}
}
Text {
anchors.centerIn: versionList
width: versionList.width - 20
visible: picker.visibleEntries.length === 0
horizontalAlignment: Text.AlignHCenter
wrapMode: Text.Wrap
color: "#888888"
font.pixelSize: 12
font.italic: true
text: picker.backend.catalogLoading
? Loc.t.version.progress.loadingList
: picker.backend.versionCatalog.length === 0
? Loc.t.version.error.listUnreachable
: Loc.t.common.status.nothingFound
}
}
}
footer: Item {
implicitHeight: 60
Rectangle {
anchors.top: parent.top
width: parent.width
height: 1
color: "#333333"
}
Text {
anchors.left: parent.left
anchors.leftMargin: 20
anchors.verticalCenter: parent.verticalCenter
width: parent.width - 300
elide: Text.ElideRight
color: picker.selectedId === "" ? "#666666" : "#91B315"
font.pixelSize: 13
text: picker.selectedId === "" ? Loc.t.version.status.notSelected : picker.selectedId
}
Row {
anchors.right: parent.right
anchors.rightMargin: 20
anchors.verticalCenter: parent.verticalCenter
spacing: 12
Button {
text: Loc.t.common.button.cancel
width: 110; height: 36
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#444444" : "#333333"
radius: 6
}
onClicked: picker.close()
}
Button {
text: Loc.t.common.button.select
width: 110; height: 36
enabled: picker.selectedId !== ""
opacity: enabled ? 1.0 : 0.45
contentItem: Text {
text: parent.text
color: "#ffffff"
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
background: Rectangle {
color: parent.pressed ? "#6a8510" : "#91B315"
radius: 6
}
onClicked: picker.acceptSelection()
}
}
}
onOpened: searchField.forceActiveFocus()
}
+294
View File
@@ -0,0 +1,294 @@
#include "authservice.h"
#include "localization.h"
#include <QCryptographicHash>
#include <QDir>
#include <QFile>
#include <QFileInfo>
#include <QJsonDocument>
#include <QNetworkAccessManager>
#include <QNetworkReply>
#include <QNetworkRequest>
#include <QUuid>
namespace {
const QString kAuthServer = QStringLiteral("https://authserver.ely.by");
const QString kInjectorManifest = QStringLiteral("https://authlib-injector.yushi.moe/artifact/latest.json");
const QString kInjectorFileName = QStringLiteral("authlib-injector.jar");
QString normalizeUuid(const QString &uuid)
{
return QString(uuid).remove(u'-');
}
QString describeElyError(const QJsonObject &response, int status)
{
const QString message = response.value(QStringLiteral("errorMessage")).toString();
if (!message.isEmpty())
return message;
const QString error = response.value(QStringLiteral("error")).toString();
if (!error.isEmpty())
return error;
return Loc::text("auth.error.serverCode").arg(status);
}
}
AuthService::AuthService(QObject *parent)
: QObject(parent)
, m_network(new QNetworkAccessManager(this))
{
}
AuthResult AuthService::offline(const QString &nickname)
{
AuthResult result;
if (nickname.isEmpty()) {
result.error = Loc::text("auth.offline.error.noNickname");
return result;
}
QByteArray digest = QCryptographicHash::hash(
QStringLiteral("OfflinePlayer:%1").arg(nickname).toUtf8(), QCryptographicHash::Md5);
digest[6] = static_cast<char>((digest[6] & 0x0f) | 0x30); // версия UUID = 3
digest[8] = static_cast<char>((digest[8] & 0x3f) | 0x80); // вариант RFC 4122
result.ok = true;
result.playerName = nickname;
result.uuid = QString::fromLatin1(digest.toHex());
result.accessToken = QStringLiteral("0");
result.clientToken = QStringLiteral("0");
result.userType = QStringLiteral("legacy");
return result;
}
QString AuthService::generateClientToken()
{
return QUuid::createUuid().toString(QUuid::WithoutBraces);
}
void AuthService::postJson(
const QString &endpoint,
const QJsonObject &body,
std::function<void(int, const QJsonObject &, const QString &)> handler)
{
QNetworkRequest request{QUrl(kAuthServer + endpoint)};
request.setHeader(QNetworkRequest::ContentTypeHeader, QStringLiteral("application/json"));
request.setAttribute(QNetworkRequest::RedirectPolicyAttribute,
QNetworkRequest::NoLessSafeRedirectPolicy);
QNetworkReply *reply = m_network->post(request, QJsonDocument(body).toJson(QJsonDocument::Compact));
connect(reply, &QNetworkReply::finished, this, [reply, handler = std::move(handler)]() {
reply->deleteLater();
const int status = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
const QByteArray payload = reply->readAll();
// Сетевую ошибку отличаем от ответа сервера: при 401 статус есть, а error — есть всегда.
QString transportError;
if (status == 0 && reply->error() != QNetworkReply::NoError)
transportError = reply->errorString();
handler(status, QJsonDocument::fromJson(payload).object(), transportError);
});
}
void AuthService::loginElyBy(const QString &login,
const QString &password,
const QString &clientToken,
const QString &accessToken,
Callback callback)
{
if (login.isEmpty()) {
AuthResult result;
result.error = Loc::text("auth.ely.error.noLogin");
callback(result);
return;
}
const QString token = clientToken.isEmpty() ? generateClientToken() : clientToken;
if (accessToken.isEmpty()) {
authenticate(login, password, token, std::move(callback));
return;
}
emit progress(Loc::text("auth.ely.progress.checkingToken"));
postJson(QStringLiteral("/auth/validate"),
{{QStringLiteral("accessToken"), accessToken}},
[this, login, password, token, accessToken, callback](
int status, const QJsonObject &, const QString &transportError) {
if (!transportError.isEmpty()) {
AuthResult result;
result.error = Loc::text("auth.ely.error.unreachable").arg(transportError);
callback(result);
return;
}
if (status == 200) {
AuthResult result;
result.ok = true;
result.accessToken = accessToken;
result.clientToken = token;
result.userType = QStringLiteral("ELYBY");
callback(result);
return;
}
// Токен протух — пробуем продлить его, не спрашивая пароль.
emit progress(Loc::text("auth.ely.progress.refreshingToken"));
postJson(QStringLiteral("/auth/refresh"),
{{QStringLiteral("accessToken"), accessToken},
{QStringLiteral("clientToken"), token},
{QStringLiteral("requestUser"), true}},
[this, login, password, token, callback](
int refreshStatus, const QJsonObject &response, const QString &error) {
if (error.isEmpty() && refreshStatus == 200) {
AuthResult result;
result.ok = true;
result.accessToken = response.value(QStringLiteral("accessToken")).toString();
result.clientToken = token;
const QJsonObject profile =
response.value(QStringLiteral("selectedProfile")).toObject();
result.playerName = profile.value(QStringLiteral("name")).toString();
result.uuid = normalizeUuid(profile.value(QStringLiteral("id")).toString());
result.userType = QStringLiteral("ELYBY");
callback(result);
return;
}
authenticate(login, password, token, callback);
});
});
}
void AuthService::loginElyByWithTotp(const QString &login,
const QString &password,
const QString &totp,
const QString &clientToken,
Callback callback)
{
authenticate(login,
password + u':' + totp,
clientToken.isEmpty() ? generateClientToken() : clientToken,
std::move(callback));
}
void AuthService::authenticate(const QString &login,
const QString &password,
const QString &clientToken,
Callback callback)
{
if (password.isEmpty()) {
AuthResult result;
result.error = Loc::text("auth.ely.error.noPassword");
callback(result);
return;
}
emit progress(Loc::text("auth.ely.progress.signingIn"));
postJson(QStringLiteral("/auth/authenticate"),
{{QStringLiteral("username"), login},
{QStringLiteral("password"), password},
{QStringLiteral("clientToken"), clientToken},
{QStringLiteral("requestUser"), true}},
[clientToken, callback](int status, const QJsonObject &response, const QString &transportError) {
AuthResult result;
result.clientToken = clientToken;
if (!transportError.isEmpty()) {
result.error = Loc::text("auth.ely.error.unreachable").arg(transportError);
callback(result);
return;
}
if (status != 200) {
const QString message = describeElyError(response, status);
result.twoFactorRequired = message.contains(QStringLiteral("two factor"),
Qt::CaseInsensitive);
result.error = result.twoFactorRequired
? Loc::text("auth.ely.error.twoFactor")
: message;
callback(result);
return;
}
const QJsonObject profile = response.value(QStringLiteral("selectedProfile")).toObject();
result.playerName = profile.value(QStringLiteral("name")).toString();
result.uuid = normalizeUuid(profile.value(QStringLiteral("id")).toString());
result.accessToken = response.value(QStringLiteral("accessToken")).toString();
result.userType = QStringLiteral("ELYBY");
result.ok = !result.accessToken.isEmpty() && !result.playerName.isEmpty();
if (!result.ok)
result.error = Loc::text("auth.ely.error.noGameProfile");
callback(result);
});
}
void AuthService::ensureAuthlibInjector(
const QString &targetDir,
std::function<void(const QString &, const QString &)> callback)
{
QDir().mkpath(targetDir);
const QString jarPath = targetDir + u'/' + kInjectorFileName;
if (QFileInfo::exists(jarPath)) {
callback(jarPath, {});
return;
}
emit progress(Loc::text("auth.ely.progress.downloadingInjector"));
QNetworkRequest manifestRequest{QUrl(kInjectorManifest)};
manifestRequest.setAttribute(QNetworkRequest::RedirectPolicyAttribute,
QNetworkRequest::NoLessSafeRedirectPolicy);
QNetworkReply *manifestReply = m_network->get(manifestRequest);
connect(manifestReply, &QNetworkReply::finished, this, [this, manifestReply, jarPath, callback]() {
manifestReply->deleteLater();
if (manifestReply->error() != QNetworkReply::NoError) {
callback({}, Loc::text("auth.ely.error.injectorInfoFailed")
.arg(manifestReply->errorString()));
return;
}
const QJsonObject manifest = QJsonDocument::fromJson(manifestReply->readAll()).object();
const QString url = manifest.value(QStringLiteral("download_url")).toString();
const QString expectedSha256 = manifest.value(QStringLiteral("checksums"))
.toObject()
.value(QStringLiteral("sha256"))
.toString();
if (url.isEmpty()) {
callback({}, Loc::text("auth.ely.error.injectorNoUrl"));
return;
}
QNetworkRequest jarRequest{QUrl(url)};
jarRequest.setAttribute(QNetworkRequest::RedirectPolicyAttribute,
QNetworkRequest::NoLessSafeRedirectPolicy);
QNetworkReply *jarReply = m_network->get(jarRequest);
connect(jarReply, &QNetworkReply::finished, this, [jarReply, jarPath, expectedSha256, callback]() {
jarReply->deleteLater();
if (jarReply->error() != QNetworkReply::NoError) {
callback({}, Loc::text("auth.ely.error.injectorDownloadFailed").arg(jarReply->errorString()));
return;
}
const QByteArray payload = jarReply->readAll();
if (!expectedSha256.isEmpty()) {
const QString actual = QString::fromLatin1(
QCryptographicHash::hash(payload, QCryptographicHash::Sha256).toHex());
if (actual != expectedSha256) {
callback({}, Loc::text("auth.ely.error.injectorChecksum"));
return;
}
}
QFile file(jarPath);
if (!file.open(QIODevice::WriteOnly) || file.write(payload) != payload.size()) {
callback({}, Loc::text("common.error.saveFailed").arg(QDir::toNativeSeparators(jarPath)));
return;
}
file.close();
callback(jarPath, {});
});
});
}
+70
View File
@@ -0,0 +1,70 @@
#pragma once
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
#include <functional>
class QNetworkAccessManager;
struct AuthResult
{
bool ok = false;
bool twoFactorRequired = false;
bool licenseMissing = false;
QString error;
QString playerName; // ${auth_player_name}
QString uuid; // ${auth_uuid}, hex без дефисов
QString accessToken; // ${auth_access_token}
QString clientToken; // ${clientid}
QString userType; // ${user_type}: legacy / msa / ELYBY
// Только для аккаунтов Microsoft.
QString refreshToken; // продлевает сессию без ввода пароля
QString xuid; // ${auth_xuid}
QDateTime expiresAt; // UTC-время, когда протухает accessToken
};
class AuthService : public QObject
{
Q_OBJECT
public:
using Callback = std::function<void(const AuthResult &)>;
explicit AuthService(QObject *parent = nullptr);
static AuthResult offline(const QString &nickname);
static QString generateClientToken();
void loginElyBy(const QString &login,
const QString &password,
const QString &clientToken,
const QString &accessToken,
Callback callback);
void loginElyByWithTotp(const QString &login,
const QString &password,
const QString &totp,
const QString &clientToken,
Callback callback);
void ensureAuthlibInjector(const QString &targetDir,
std::function<void(const QString &path, const QString &error)> callback);
signals:
void progress(const QString &message);
private:
void postJson(const QString &endpoint,
const QJsonObject &body,
std::function<void(int status, const QJsonObject &response, const QString &transportError)> handler);
void authenticate(const QString &login,
const QString &password,
const QString &clientToken,
Callback callback);
QNetworkAccessManager *m_network;
};
@@ -1,205 +0,0 @@
{
"configurations" :
[
{
"directories" :
[
{
"build" : ".",
"hasInstallRule" : true,
"jsonFile" : "directory-.-Debug-5a3b003664cfaba559d8.json",
"minimumCMakeVersion" :
{
"string" : "3.16"
},
"projectIndex" : 0,
"source" : ".",
"targetIndexes" :
[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16
]
}
],
"name" : "Debug",
"projects" :
[
{
"directoryIndexes" :
[
0
],
"name" : "Minecraft_launcher",
"targetIndexes" :
[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16
]
}
],
"targets" :
[
{
"directoryIndex" : 0,
"id" : "all_aotstats::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_aotstats-Debug-793ef0fb458fbc383d41.json",
"name" : "all_aotstats",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmllint::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmllint-Debug-996c32dc60230ee530e9.json",
"name" : "all_qmllint",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmllint_json::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmllint_json-Debug-135a1fea15304c3394c5.json",
"name" : "all_qmllint_json",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmllint_module::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmllint_module-Debug-f16378287765d33f9c71.json",
"name" : "all_qmllint_module",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmltyperegistrations-Debug-c6e168f6e9ed61fd645c.json",
"name" : "all_qmltyperegistrations",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher-Debug-f5eb76ead8fdbd00ac2c.json",
"name" : "appMinecraft_launcher",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_autogen::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_autogen-Debug-a178dbb12ea701899961.json",
"name" : "appMinecraft_launcher_autogen",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_autogen_timestamp_deps::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_autogen_timestamp_deps-Debug-3fb60e913241f6f70bfd.json",
"name" : "appMinecraft_launcher_autogen_timestamp_deps",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_copy_qml::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_copy_qml-Debug-c8085bb6ebbc5b77fb15.json",
"name" : "appMinecraft_launcher_copy_qml",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_copy_res::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_copy_res-Debug-aa69a0ccd1eed3b664c8.json",
"name" : "appMinecraft_launcher_copy_res",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmlimportscan::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmlimportscan-Debug-d8fa3bdeb71102ed4e65.json",
"name" : "appMinecraft_launcher_qmlimportscan",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmllint::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmllint-Debug-b1ef86954448b8392667.json",
"name" : "appMinecraft_launcher_qmllint",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmllint_json::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmllint_json-Debug-c5cc3377b60a4d4aa099.json",
"name" : "appMinecraft_launcher_qmllint_json",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmllint_module::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmllint_module-Debug-f3826272502f4f9f2400.json",
"name" : "appMinecraft_launcher_qmllint_module",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmltyperegistration-Debug-adf8ac934a43a15c2215.json",
"name" : "appMinecraft_launcher_qmltyperegistration",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "generate_qmlls_build_ini_file::@6890427a1f51a3e7e1df",
"jsonFile" : "target-generate_qmlls_build_ini_file-Debug-3cbb99c0cfebda7f29fd.json",
"name" : "generate_qmlls_build_ini_file",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "module_appMinecraft_launcher_aotstats_target::@6890427a1f51a3e7e1df",
"jsonFile" : "target-module_appMinecraft_launcher_aotstats_target-Debug-2007fb2a95cb2883513b.json",
"name" : "module_appMinecraft_launcher_aotstats_target",
"projectIndex" : 0
}
]
}
],
"kind" : "codemodel",
"paths" :
{
"build" : "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug",
"source" : "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher"
},
"version" :
{
"major" : 2,
"minor" : 7
}
}
@@ -1,45 +0,0 @@
{
"backtraceGraph" :
{
"commands" :
[
"install"
],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 0,
"file" : 0,
"line" : 38,
"parent" : 0
}
]
},
"installers" :
[
{
"backtrace" : 1,
"component" : "Unspecified",
"destination" : "bin",
"paths" :
[
"appMinecraft_launcher.exe"
],
"targetId" : "appMinecraft_launcher::@6890427a1f51a3e7e1df",
"targetIndex" : 5,
"type" : "target"
}
],
"paths" :
{
"build" : ".",
"source" : "."
}
}
@@ -1,89 +0,0 @@
{
"cmake" :
{
"generator" :
{
"multiConfig" : false,
"name" : "Ninja"
},
"paths" :
{
"cmake" : "E:/Qt/Tools/CMake_64/bin/cmake.exe",
"cpack" : "E:/Qt/Tools/CMake_64/bin/cpack.exe",
"ctest" : "E:/Qt/Tools/CMake_64/bin/ctest.exe",
"root" : "E:/Qt/Tools/CMake_64/share/cmake-3.30"
},
"version" :
{
"isDirty" : false,
"major" : 3,
"minor" : 30,
"patch" : 5,
"string" : "3.30.5",
"suffix" : ""
}
},
"objects" :
[
{
"jsonFile" : "codemodel-v2-3ffd05b7dbbd8b2390c7.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 7
}
},
{
"jsonFile" : "cache-v2-4d5e596c71c19de58177.json",
"kind" : "cache",
"version" :
{
"major" : 2,
"minor" : 0
}
},
{
"jsonFile" : "cmakeFiles-v1-04453fa4a54aa03f3038.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 1
}
}
],
"reply" :
{
"cache-v2" :
{
"jsonFile" : "cache-v2-4d5e596c71c19de58177.json",
"kind" : "cache",
"version" :
{
"major" : 2,
"minor" : 0
}
},
"cmakeFiles-v1" :
{
"jsonFile" : "cmakeFiles-v1-04453fa4a54aa03f3038.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 1
}
},
"codemodel-v2" :
{
"jsonFile" : "codemodel-v2-3ffd05b7dbbd8b2390c7.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 7
}
}
}
}
@@ -1,114 +0,0 @@
{
"backtrace" : 3,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_deferred_aotstats_setup"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:1191:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"file" : 2,
"line" : -1,
"parent" : 0
},
{
"command" : 1,
"file" : 1,
"line" : 1,
"parent" : 1
},
{
"command" : 0,
"file" : 0,
"line" : 1306,
"parent" : 2
}
]
},
"dependencies" :
[
{
"id" : "module_appMinecraft_launcher_aotstats_target::@6890427a1f51a3e7e1df"
}
],
"id" : "all_aotstats::@6890427a1f51a3e7e1df",
"name" : "all_aotstats",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2,
3,
4,
5
]
}
],
"sources" :
[
{
"backtrace" : 3,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/all_aotstats",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/all_aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/all_aotstats.aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/module_appMinecraft_launcher.aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,104 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_add_phony_target",
"_qt_internal_add_all_qmllint_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies",
"_qt_internal_add_phony_target_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6/QtPublicCMakeHelpers.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"command" : 6,
"file" : 2,
"line" : 15,
"parent" : 0
},
{
"command" : 5,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 960,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 3614,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 1762,
"parent" : 4
},
{
"command" : 1,
"file" : 1,
"line" : 1778,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 338,
"parent" : 6
},
{
"command" : 8,
"file" : 1,
"line" : 1782,
"parent" : 5
},
{
"command" : 7,
"file" : 0,
"line" : 367,
"parent" : 8
}
]
},
"dependencies" :
[
{
"backtrace" : 9,
"id" : "appMinecraft_launcher_qmllint::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "all_qmllint::@6890427a1f51a3e7e1df",
"name" : "all_qmllint",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,104 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_add_phony_target",
"_qt_internal_add_all_qmllint_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies",
"_qt_internal_add_phony_target_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6/QtPublicCMakeHelpers.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"command" : 6,
"file" : 2,
"line" : 15,
"parent" : 0
},
{
"command" : 5,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 960,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 3614,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 1764,
"parent" : 4
},
{
"command" : 1,
"file" : 1,
"line" : 1778,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 338,
"parent" : 6
},
{
"command" : 8,
"file" : 1,
"line" : 1782,
"parent" : 5
},
{
"command" : 7,
"file" : 0,
"line" : 367,
"parent" : 8
}
]
},
"dependencies" :
[
{
"backtrace" : 9,
"id" : "appMinecraft_launcher_qmllint_json::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "all_qmllint_json::@6890427a1f51a3e7e1df",
"name" : "all_qmllint_json",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,104 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_add_phony_target",
"_qt_internal_add_all_qmllint_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies",
"_qt_internal_add_phony_target_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6/QtPublicCMakeHelpers.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"command" : 6,
"file" : 2,
"line" : 15,
"parent" : 0
},
{
"command" : 5,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 960,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 3614,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 1766,
"parent" : 4
},
{
"command" : 1,
"file" : 1,
"line" : 1778,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 338,
"parent" : 6
},
{
"command" : 8,
"file" : 1,
"line" : 1782,
"parent" : 5
},
{
"command" : 7,
"file" : 0,
"line" : 367,
"parent" : 8
}
]
},
"dependencies" :
[
{
"backtrace" : 9,
"id" : "appMinecraft_launcher_qmllint_module::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "all_qmllint_module::@6890427a1f51a3e7e1df",
"name" : "all_qmllint_module",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,75 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_type_registration",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 835,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 4221,
"parent" : 3
},
{
"command" : 4,
"file" : 0,
"line" : 4224,
"parent" : 3
}
]
},
"dependencies" :
[
{
"backtrace" : 5,
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df",
"name" : "all_qmltyperegistrations",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,75 +0,0 @@
{
"backtrace" : 0,
"backtraceGraph" :
{
"commands" : [],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
}
]
},
"dependencies" :
[
{
"id" : "appMinecraft_launcher_autogen_timestamp_deps::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_autogen::@6890427a1f51a3e7e1df",
"isGeneratorProvided" : true,
"name" : "appMinecraft_launcher_autogen",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_autogen",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_autogen.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher_autogen/timestamp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,93 +0,0 @@
{
"backtrace" : 0,
"backtraceGraph" :
{
"commands" :
[
"add_dependencies",
"_qt_internal_qml_copy_files_to_build_dir",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"CMakeLists.txt",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 1,
"line" : 970,
"parent" : 2
},
{
"command" : 0,
"file" : 1,
"line" : 3120,
"parent" : 3
},
{
"command" : 1,
"file" : 1,
"line" : 976,
"parent" : 2
},
{
"command" : 0,
"file" : 1,
"line" : 3120,
"parent" : 5
}
]
},
"dependencies" :
[
{
"backtrace" : 0,
"id" : "generate_qmlls_build_ini_file::@6890427a1f51a3e7e1df"
},
{
"backtrace" : 0,
"id" : "appMinecraft_launcher_qmlimportscan::@6890427a1f51a3e7e1df"
},
{
"backtrace" : 4,
"id" : "appMinecraft_launcher_copy_qml::@6890427a1f51a3e7e1df"
},
{
"backtrace" : 6,
"id" : "appMinecraft_launcher_copy_res::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_autogen_timestamp_deps::@6890427a1f51a3e7e1df",
"isGeneratorProvided" : true,
"name" : "appMinecraft_launcher_autogen_timestamp_deps",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,99 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_copy_files_to_build_dir",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 970,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 3101,
"parent" : 3
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_copy_qml::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_copy_qml",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 4,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_qml",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_qml.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,99 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_copy_files_to_build_dir",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 976,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 3101,
"parent" : 3
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_copy_res::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_copy_res",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 4,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_res",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_res.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_res.txt.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,120 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_scan_qml_imports",
"_qt_internal_generate_deploy_qml_imports_script",
"cmake_language",
"_qt_internal_finalize_executable",
"qt6_finalize_target"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Core/Qt6CoreMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Core/Qt6CoreMacros.cmake:846:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 3
},
{
"file" : 3,
"line" : -1,
"parent" : 0
},
{
"command" : 5,
"file" : 2,
"line" : 1,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 877,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 799,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 799,
"parent" : 4
},
{
"command" : 1,
"file" : 0,
"line" : 4780,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 4553,
"parent" : 6
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_qmlimportscan::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmlimportscan",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 7,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmlimportscan",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmlimportscan.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,105 +0,0 @@
{
"backtrace" : 5,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 2,
"file" : 0,
"line" : 960,
"parent" : 2
},
{
"command" : 1,
"file" : 0,
"line" : 3614,
"parent" : 3
},
{
"command" : 0,
"file" : 0,
"line" : 1681,
"parent" : 4
}
]
},
"dependencies" :
[
{
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "appMinecraft_launcher_qmllint::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmllint",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1
]
}
],
"sources" :
[
{
"backtrace" : 5,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,105 +0,0 @@
{
"backtrace" : 5,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 2,
"file" : 0,
"line" : 960,
"parent" : 2
},
{
"command" : 1,
"file" : 0,
"line" : 3614,
"parent" : 3
},
{
"command" : 0,
"file" : 0,
"line" : 1708,
"parent" : 4
}
]
},
"dependencies" :
[
{
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "appMinecraft_launcher_qmllint_json::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmllint_json",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1
]
}
],
"sources" :
[
{
"backtrace" : 5,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_json",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_json.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,105 +0,0 @@
{
"backtrace" : 5,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 2,
"file" : 0,
"line" : 960,
"parent" : 2
},
{
"command" : 1,
"file" : 0,
"line" : 3614,
"parent" : 3
},
{
"command" : 0,
"file" : 0,
"line" : 1746,
"parent" : 4
}
]
},
"dependencies" :
[
{
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "appMinecraft_launcher_qmllint_module::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmllint_module",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1
]
}
],
"sources" :
[
{
"backtrace" : 5,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_module",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_module.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,99 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_type_registration",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 835,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 4214,
"parent" : 3
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmltyperegistration",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 4,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmltyperegistration",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmltyperegistration.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,87 +0,0 @@
{
"backtrace" : 3,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_write_deferred_qmlls_build_ini_file"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:1099:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"file" : 2,
"line" : -1,
"parent" : 0
},
{
"command" : 1,
"file" : 1,
"line" : 1,
"parent" : 1
},
{
"command" : 0,
"file" : 0,
"line" : 1383,
"parent" : 2
}
]
},
"id" : "generate_qmlls_build_ini_file::@6890427a1f51a3e7e1df",
"name" : "generate_qmlls_build_ini_file",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 3,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/generate_qmlls_build_ini_file",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/generate_qmlls_build_ini_file.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/.qmlls.build.ini.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,119 +0,0 @@
{
"backtrace" : 3,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_deferred_aotstats_setup",
"add_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:1191:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"file" : 2,
"line" : -1,
"parent" : 0
},
{
"command" : 1,
"file" : 1,
"line" : 1,
"parent" : 1
},
{
"command" : 0,
"file" : 0,
"line" : 1245,
"parent" : 2
},
{
"command" : 2,
"file" : 0,
"line" : 1250,
"parent" : 2
}
]
},
"dependencies" :
[
{
"backtrace" : 4,
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "module_appMinecraft_launcher_aotstats_target::@6890427a1f51a3e7e1df",
"name" : "module_appMinecraft_launcher_aotstats_target",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2,
3,
4
]
}
],
"sources" :
[
{
"backtrace" : 3,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/module_appMinecraft_launcher_aotstats_target",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/module_appMinecraft_launcher_aotstats_target.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/module_appMinecraft_launcher.aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,205 +0,0 @@
{
"configurations" :
[
{
"directories" :
[
{
"build" : ".",
"hasInstallRule" : true,
"jsonFile" : "directory-.-Debug-8be906a0e3234ffd01ae.json",
"minimumCMakeVersion" :
{
"string" : "3.16"
},
"projectIndex" : 0,
"source" : ".",
"targetIndexes" :
[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16
]
}
],
"name" : "Debug",
"projects" :
[
{
"directoryIndexes" :
[
0
],
"name" : "Minecraft_launcher",
"targetIndexes" :
[
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16
]
}
],
"targets" :
[
{
"directoryIndex" : 0,
"id" : "all_aotstats::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_aotstats-Debug-793ef0fb458fbc383d41.json",
"name" : "all_aotstats",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmllint::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmllint-Debug-996c32dc60230ee530e9.json",
"name" : "all_qmllint",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmllint_json::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmllint_json-Debug-135a1fea15304c3394c5.json",
"name" : "all_qmllint_json",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmllint_module::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmllint_module-Debug-f16378287765d33f9c71.json",
"name" : "all_qmllint_module",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df",
"jsonFile" : "target-all_qmltyperegistrations-Debug-c6e168f6e9ed61fd645c.json",
"name" : "all_qmltyperegistrations",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher-Debug-0db11357c9107d3d9154.json",
"name" : "appMinecraft_launcher",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_autogen::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_autogen-Debug-a178dbb12ea701899961.json",
"name" : "appMinecraft_launcher_autogen",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_autogen_timestamp_deps::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_autogen_timestamp_deps-Debug-1f869ba4d56616e8fe82.json",
"name" : "appMinecraft_launcher_autogen_timestamp_deps",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_copy_qml::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_copy_qml-Debug-c8085bb6ebbc5b77fb15.json",
"name" : "appMinecraft_launcher_copy_qml",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_copy_res::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_copy_res-Debug-aa69a0ccd1eed3b664c8.json",
"name" : "appMinecraft_launcher_copy_res",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmlimportscan::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmlimportscan-Debug-d8fa3bdeb71102ed4e65.json",
"name" : "appMinecraft_launcher_qmlimportscan",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmllint::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmllint-Debug-b1ef86954448b8392667.json",
"name" : "appMinecraft_launcher_qmllint",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmllint_json::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmllint_json-Debug-c5cc3377b60a4d4aa099.json",
"name" : "appMinecraft_launcher_qmllint_json",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmllint_module::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmllint_module-Debug-f3826272502f4f9f2400.json",
"name" : "appMinecraft_launcher_qmllint_module",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df",
"jsonFile" : "target-appMinecraft_launcher_qmltyperegistration-Debug-adf8ac934a43a15c2215.json",
"name" : "appMinecraft_launcher_qmltyperegistration",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "generate_qmlls_build_ini_file::@6890427a1f51a3e7e1df",
"jsonFile" : "target-generate_qmlls_build_ini_file-Debug-3cbb99c0cfebda7f29fd.json",
"name" : "generate_qmlls_build_ini_file",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "module_appMinecraft_launcher_aotstats_target::@6890427a1f51a3e7e1df",
"jsonFile" : "target-module_appMinecraft_launcher_aotstats_target-Debug-2007fb2a95cb2883513b.json",
"name" : "module_appMinecraft_launcher_aotstats_target",
"projectIndex" : 0
}
]
}
],
"kind" : "codemodel",
"paths" :
{
"build" : "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug",
"source" : "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher"
},
"version" :
{
"major" : 2,
"minor" : 7
}
}
@@ -1,45 +0,0 @@
{
"backtraceGraph" :
{
"commands" :
[
"install"
],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 0,
"file" : 0,
"line" : 39,
"parent" : 0
}
]
},
"installers" :
[
{
"backtrace" : 1,
"component" : "Unspecified",
"destination" : "bin",
"paths" :
[
"appMinecraft_launcher.exe"
],
"targetId" : "appMinecraft_launcher::@6890427a1f51a3e7e1df",
"targetIndex" : 5,
"type" : "target"
}
],
"paths" :
{
"build" : ".",
"source" : "."
}
}
@@ -1,89 +0,0 @@
{
"cmake" :
{
"generator" :
{
"multiConfig" : false,
"name" : "Ninja"
},
"paths" :
{
"cmake" : "E:/Qt/Tools/CMake_64/bin/cmake.exe",
"cpack" : "E:/Qt/Tools/CMake_64/bin/cpack.exe",
"ctest" : "E:/Qt/Tools/CMake_64/bin/ctest.exe",
"root" : "E:/Qt/Tools/CMake_64/share/cmake-3.30"
},
"version" :
{
"isDirty" : false,
"major" : 3,
"minor" : 30,
"patch" : 5,
"string" : "3.30.5",
"suffix" : ""
}
},
"objects" :
[
{
"jsonFile" : "codemodel-v2-792a9fdb8409b93f9779.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 7
}
},
{
"jsonFile" : "cache-v2-4d5e596c71c19de58177.json",
"kind" : "cache",
"version" :
{
"major" : 2,
"minor" : 0
}
},
{
"jsonFile" : "cmakeFiles-v1-04453fa4a54aa03f3038.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 1
}
}
],
"reply" :
{
"cache-v2" :
{
"jsonFile" : "cache-v2-4d5e596c71c19de58177.json",
"kind" : "cache",
"version" :
{
"major" : 2,
"minor" : 0
}
},
"cmakeFiles-v1" :
{
"jsonFile" : "cmakeFiles-v1-04453fa4a54aa03f3038.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 1
}
},
"codemodel-v2" :
{
"jsonFile" : "codemodel-v2-792a9fdb8409b93f9779.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 7
}
}
}
}
@@ -1,114 +0,0 @@
{
"backtrace" : 3,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_deferred_aotstats_setup"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:1191:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"file" : 2,
"line" : -1,
"parent" : 0
},
{
"command" : 1,
"file" : 1,
"line" : 1,
"parent" : 1
},
{
"command" : 0,
"file" : 0,
"line" : 1306,
"parent" : 2
}
]
},
"dependencies" :
[
{
"id" : "module_appMinecraft_launcher_aotstats_target::@6890427a1f51a3e7e1df"
}
],
"id" : "all_aotstats::@6890427a1f51a3e7e1df",
"name" : "all_aotstats",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2,
3,
4,
5
]
}
],
"sources" :
[
{
"backtrace" : 3,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/all_aotstats",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/all_aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/all_aotstats.aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/module_appMinecraft_launcher.aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,104 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_add_phony_target",
"_qt_internal_add_all_qmllint_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies",
"_qt_internal_add_phony_target_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6/QtPublicCMakeHelpers.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"command" : 6,
"file" : 2,
"line" : 15,
"parent" : 0
},
{
"command" : 5,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 960,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 3614,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 1762,
"parent" : 4
},
{
"command" : 1,
"file" : 1,
"line" : 1778,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 338,
"parent" : 6
},
{
"command" : 8,
"file" : 1,
"line" : 1782,
"parent" : 5
},
{
"command" : 7,
"file" : 0,
"line" : 367,
"parent" : 8
}
]
},
"dependencies" :
[
{
"backtrace" : 9,
"id" : "appMinecraft_launcher_qmllint::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "all_qmllint::@6890427a1f51a3e7e1df",
"name" : "all_qmllint",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,104 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_add_phony_target",
"_qt_internal_add_all_qmllint_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies",
"_qt_internal_add_phony_target_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6/QtPublicCMakeHelpers.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"command" : 6,
"file" : 2,
"line" : 15,
"parent" : 0
},
{
"command" : 5,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 960,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 3614,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 1764,
"parent" : 4
},
{
"command" : 1,
"file" : 1,
"line" : 1778,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 338,
"parent" : 6
},
{
"command" : 8,
"file" : 1,
"line" : 1782,
"parent" : 5
},
{
"command" : 7,
"file" : 0,
"line" : 367,
"parent" : 8
}
]
},
"dependencies" :
[
{
"backtrace" : 9,
"id" : "appMinecraft_launcher_qmllint_json::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "all_qmllint_json::@6890427a1f51a3e7e1df",
"name" : "all_qmllint_json",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,104 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_add_phony_target",
"_qt_internal_add_all_qmllint_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies",
"_qt_internal_add_phony_target_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6/QtPublicCMakeHelpers.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"command" : 6,
"file" : 2,
"line" : 15,
"parent" : 0
},
{
"command" : 5,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 960,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 3614,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 1766,
"parent" : 4
},
{
"command" : 1,
"file" : 1,
"line" : 1778,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 338,
"parent" : 6
},
{
"command" : 8,
"file" : 1,
"line" : 1782,
"parent" : 5
},
{
"command" : 7,
"file" : 0,
"line" : 367,
"parent" : 8
}
]
},
"dependencies" :
[
{
"backtrace" : 9,
"id" : "appMinecraft_launcher_qmllint_module::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "all_qmllint_module::@6890427a1f51a3e7e1df",
"name" : "all_qmllint_module",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,75 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_type_registration",
"qt6_add_qml_module",
"qt_add_qml_module",
"add_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 835,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 4221,
"parent" : 3
},
{
"command" : 4,
"file" : 0,
"line" : 4224,
"parent" : 3
}
]
},
"dependencies" :
[
{
"backtrace" : 5,
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df",
"name" : "all_qmltyperegistrations",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,75 +0,0 @@
{
"backtrace" : 0,
"backtraceGraph" :
{
"commands" : [],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
}
]
},
"dependencies" :
[
{
"id" : "appMinecraft_launcher_autogen_timestamp_deps::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_autogen::@6890427a1f51a3e7e1df",
"isGeneratorProvided" : true,
"name" : "appMinecraft_launcher_autogen",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_autogen",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_autogen.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher_autogen/timestamp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,93 +0,0 @@
{
"backtrace" : 0,
"backtraceGraph" :
{
"commands" :
[
"add_dependencies",
"_qt_internal_qml_copy_files_to_build_dir",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"CMakeLists.txt",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 1,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 1,
"line" : 970,
"parent" : 2
},
{
"command" : 0,
"file" : 1,
"line" : 3120,
"parent" : 3
},
{
"command" : 1,
"file" : 1,
"line" : 976,
"parent" : 2
},
{
"command" : 0,
"file" : 1,
"line" : 3120,
"parent" : 5
}
]
},
"dependencies" :
[
{
"backtrace" : 4,
"id" : "appMinecraft_launcher_copy_qml::@6890427a1f51a3e7e1df"
},
{
"backtrace" : 6,
"id" : "appMinecraft_launcher_copy_res::@6890427a1f51a3e7e1df"
},
{
"backtrace" : 0,
"id" : "generate_qmlls_build_ini_file::@6890427a1f51a3e7e1df"
},
{
"backtrace" : 0,
"id" : "appMinecraft_launcher_qmlimportscan::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_autogen_timestamp_deps::@6890427a1f51a3e7e1df",
"isGeneratorProvided" : true,
"name" : "appMinecraft_launcher_autogen_timestamp_deps",
"paths" :
{
"build" : ".",
"source" : "."
},
"sources" : [],
"type" : "UTILITY"
}
@@ -1,99 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_copy_files_to_build_dir",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 970,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 3101,
"parent" : 3
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_copy_qml::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_copy_qml",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 4,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_qml",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_qml.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,99 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_copy_files_to_build_dir",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 976,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 3101,
"parent" : 3
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_copy_res::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_copy_res",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 4,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_res",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_copy_res.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_res.txt.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,120 +0,0 @@
{
"backtrace" : 7,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_scan_qml_imports",
"_qt_internal_generate_deploy_qml_imports_script",
"cmake_language",
"_qt_internal_finalize_executable",
"qt6_finalize_target"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Core/Qt6CoreMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Core/Qt6CoreMacros.cmake:846:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 3
},
{
"file" : 3,
"line" : -1,
"parent" : 0
},
{
"command" : 5,
"file" : 2,
"line" : 1,
"parent" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 877,
"parent" : 2
},
{
"command" : 3,
"file" : 1,
"line" : 799,
"parent" : 3
},
{
"command" : 2,
"file" : 1,
"line" : 799,
"parent" : 4
},
{
"command" : 1,
"file" : 0,
"line" : 4780,
"parent" : 5
},
{
"command" : 0,
"file" : 0,
"line" : 4553,
"parent" : 6
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_qmlimportscan::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmlimportscan",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 7,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmlimportscan",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmlimportscan.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,105 +0,0 @@
{
"backtrace" : 5,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 2,
"file" : 0,
"line" : 960,
"parent" : 2
},
{
"command" : 1,
"file" : 0,
"line" : 3614,
"parent" : 3
},
{
"command" : 0,
"file" : 0,
"line" : 1681,
"parent" : 4
}
]
},
"dependencies" :
[
{
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "appMinecraft_launcher_qmllint::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmllint",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1
]
}
],
"sources" :
[
{
"backtrace" : 5,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,105 +0,0 @@
{
"backtrace" : 5,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 2,
"file" : 0,
"line" : 960,
"parent" : 2
},
{
"command" : 1,
"file" : 0,
"line" : 3614,
"parent" : 3
},
{
"command" : 0,
"file" : 0,
"line" : 1708,
"parent" : 4
}
]
},
"dependencies" :
[
{
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "appMinecraft_launcher_qmllint_json::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmllint_json",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1
]
}
],
"sources" :
[
{
"backtrace" : 5,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_json",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_json.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,105 +0,0 @@
{
"backtrace" : 5,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_target_enable_qmllint",
"qt6_target_qml_sources",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 4,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 3,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 2,
"file" : 0,
"line" : 960,
"parent" : 2
},
{
"command" : 1,
"file" : 0,
"line" : 3614,
"parent" : 3
},
{
"command" : 0,
"file" : 0,
"line" : 1746,
"parent" : 4
}
]
},
"dependencies" :
[
{
"id" : "all_qmltyperegistrations::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets/QmlLinter"
},
"id" : "appMinecraft_launcher_qmllint_module::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmllint_module",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1
]
}
],
"sources" :
[
{
"backtrace" : 5,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_module",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmllint_module.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,99 +0,0 @@
{
"backtrace" : 4,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_qml_type_registration",
"qt6_add_qml_module",
"qt_add_qml_module"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 1
},
{
"command" : 3,
"file" : 1,
"line" : 15,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 1418,
"parent" : 1
},
{
"command" : 1,
"file" : 0,
"line" : 835,
"parent" : 2
},
{
"command" : 0,
"file" : 0,
"line" : 4214,
"parent" : 3
}
]
},
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df",
"name" : "appMinecraft_launcher_qmltyperegistration",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 4,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmltyperegistration",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/appMinecraft_launcher_qmltyperegistration.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,87 +0,0 @@
{
"backtrace" : 3,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_write_deferred_qmlls_build_ini_file"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:1099:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"file" : 2,
"line" : -1,
"parent" : 0
},
{
"command" : 1,
"file" : 1,
"line" : 1,
"parent" : 1
},
{
"command" : 0,
"file" : 0,
"line" : 1383,
"parent" : 2
}
]
},
"id" : "generate_qmlls_build_ini_file::@6890427a1f51a3e7e1df",
"name" : "generate_qmlls_build_ini_file",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2
]
}
],
"sources" :
[
{
"backtrace" : 3,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/generate_qmlls_build_ini_file",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/generate_qmlls_build_ini_file.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/.qmlls.build.ini.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,119 +0,0 @@
{
"backtrace" : 3,
"backtraceGraph" :
{
"commands" :
[
"add_custom_target",
"_qt_internal_deferred_aotstats_setup",
"add_dependencies"
],
"files" :
[
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake",
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlMacros.cmake:1191:EVAL",
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 2
},
{
"file" : 2,
"line" : -1,
"parent" : 0
},
{
"command" : 1,
"file" : 1,
"line" : 1,
"parent" : 1
},
{
"command" : 0,
"file" : 0,
"line" : 1245,
"parent" : 2
},
{
"command" : 2,
"file" : 0,
"line" : 1250,
"parent" : 2
}
]
},
"dependencies" :
[
{
"backtrace" : 4,
"id" : "appMinecraft_launcher_qmltyperegistration::@6890427a1f51a3e7e1df"
}
],
"folder" :
{
"name" : "QtInternalTargets"
},
"id" : "module_appMinecraft_launcher_aotstats_target::@6890427a1f51a3e7e1df",
"name" : "module_appMinecraft_launcher_aotstats_target",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "",
"sourceIndexes" :
[
0
]
},
{
"name" : "CMake Rules",
"sourceIndexes" :
[
1,
2,
3,
4
]
}
],
"sources" :
[
{
"backtrace" : 3,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/module_appMinecraft_launcher_aotstats_target",
"sourceGroupIndex" : 0
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/CMakeFiles/module_appMinecraft_launcher_aotstats_target.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/module_appMinecraft_launcher.aotstats.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.rule",
"sourceGroupIndex" : 1
},
{
"backtrace" : 0,
"isGenerated" : true,
"path" : "build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp.rule",
"sourceGroupIndex" : 1
}
],
"type" : "UTILITY"
}
@@ -1,103 +0,0 @@
# ninja log v6
396 461 7879537546974366 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/meta_types/qt6appminecraft_launcher_metatypes.json.gen 36a7f3c9bacd473b
258 290 7879806564165104 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/meta_types/appMinecraft_launcher_json_file_list.txt.timestamp 74691b248804a968
14 51 7879814690617737 .qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
265 348 7879806564644215 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_qmlcache_loader.cpp 5d568cc25f622481
14 51 7879814690617737 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
26 165 7879814691740046 .qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
13 50 7879815536958613 .qt/appMinecraft_launcher_res.txt 45fc6a8580528db9
396 461 7879537546974366 meta_types/qt6appminecraft_launcher_metatypes.json.gen 36a7f3c9bacd473b
26 165 7879814691740046 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
13 50 7879815536958613 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_res.txt 45fc6a8580528db9
29 43 7879537540860380 clean fa92303e789e5432
27 154 7879537543903987 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/.qmlls.build.ini 992cb06c0e13ab55
348 380 7879537546151940 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_qmake_Minecraft_launcher.cpp 60ce66d4822f5aa7
265 348 7879806564644215 .rcc/qmlcache/appMinecraft_launcher_qmlcache_loader.cpp 5d568cc25f622481
27 154 7879537543903987 .qt/.qmlls.build.ini 992cb06c0e13ab55
1340 3193 7879772559439569 CMakeFiles/appMinecraft_launcher.dir/main.cpp.obj ceda8748d359678a
157 258 7879806563157495 appMinecraft_launcher_autogen/timestamp f00cf99c01f2f0a1
258 290 7879806564165104 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/meta_types/appMinecraft_launcher_json_file_list.txt 74691b248804a968
157 258 7879806563157495 appMinecraft_launcher_autogen/mocs_compilation.cpp f00cf99c01f2f0a1
157 258 7879806563157495 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher_autogen/timestamp f00cf99c01f2f0a1
1335 1396 7879772559391732 CMakeFiles/appMinecraft_launcher.dir/appMinecraft_launcher_autogen/mocs_compilation.cpp.obj 8f09dfaee7e060de
1344 3086 7879772559482157 CMakeFiles/appMinecraft_launcher.dir/appminecraft_launcher_qmltyperegistrations.cpp.obj 8df6c2edca0bfdee
157 258 7879806563157495 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher_autogen/mocs_compilation.cpp f00cf99c01f2f0a1
258 290 7879806564165104 meta_types/appMinecraft_launcher_json_file_list.txt 74691b248804a968
258 290 7879806564165104 meta_types/appMinecraft_launcher_json_file_list.txt.timestamp 74691b248804a968
462 733 7879537548691931 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appminecraft_launcher_qmltyperegistrations.cpp 325cdc20c6a1b76a
348 380 7879537546151940 .qt/rcc/qrc_qmake_Minecraft_launcher.cpp 60ce66d4822f5aa7
173 212 7879814692222948 .qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
173 212 7879814692222948 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
396 461 7879537546974366 meta_types/qt6appminecraft_launcher_metatypes.json 36a7f3c9bacd473b
364 2279 7879814693778890 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.obj be0243cdb4388b86
396 461 7879537546974366 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/meta_types/qt6appminecraft_launcher_metatypes.json 36a7f3c9bacd473b
462 733 7879537548691931 appminecraft_launcher_qmltyperegistrations.cpp 325cdc20c6a1b76a
462 733 7879537548691931 Minecraft_launcher/appMinecraft_launcher.qmltypes 325cdc20c6a1b76a
462 733 7879537548691931 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/appMinecraft_launcher.qmltypes 325cdc20c6a1b76a
165 364 7879814693679505 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
176 3123 7879815538265522 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_res_0.cpp.obj e52c4fa4b9e53217
165 364 7879814693679505 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
165 364 7879814693679505 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
165 364 7879814693679505 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
1352 1413 7879772559555547 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_qmake_Minecraft_launcher.cpp.obj 885d5cc08ef0e860
369 426 7879814693831486 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp.obj 524e34f80684a614
485 2399 7879806566441245 CMakeFiles/appMinecraft_launcher.dir/b74d1df3e9cf99ffefd58761f70c6109/.rcc/qmlcache/appMinecraft_launcher_qmlcache_loader.cpp.obj 5bd5067b13963f81
3123 3248 7879815567730712 appMinecraft_launcher.exe 62e5e44a5fc3f884
50 176 7879815538223459 .qt/rcc/qrc_appMinecraft_launcher_raw_res_0.cpp 2b5bb84e6f3b07e
50 176 7879815538223459 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_res_0.cpp 2b5bb84e6f3b07e
8 29 7879537540650918 CMakeFiles/clean.additional 26ab82f82478fbc9
13 44 7879817168616248 .qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
13 44 7879817168616248 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
21 58 7879817168742760 .qt/appMinecraft_launcher_res.txt 45fc6a8580528db9
21 58 7879817168742760 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_res.txt 45fc6a8580528db9
27 156 7879817169703584 .qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
27 156 7879817169703584 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
156 258 7879817169756186 appMinecraft_launcher_autogen/timestamp f00cf99c01f2f0a1
156 258 7879817169756186 appMinecraft_launcher_autogen/mocs_compilation.cpp f00cf99c01f2f0a1
156 258 7879817169756186 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher_autogen/timestamp f00cf99c01f2f0a1
156 258 7879817169756186 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher_autogen/mocs_compilation.cpp f00cf99c01f2f0a1
259 294 7879817170785391 meta_types/appMinecraft_launcher_json_file_list.txt 74691b248804a968
259 294 7879817170785391 meta_types/appMinecraft_launcher_json_file_list.txt.timestamp 74691b248804a968
259 294 7879817170785391 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/meta_types/appMinecraft_launcher_json_file_list.txt 74691b248804a968
259 294 7879817170785391 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/meta_types/appMinecraft_launcher_json_file_list.txt.timestamp 74691b248804a968
273 401 7879817172162066 .qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
273 401 7879817172162066 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
266 413 7879817171332699 .rcc/qmlcache/appMinecraft_launcher_qmlcache_loader.cpp 5d568cc25f622481
266 413 7879817171332699 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_qmlcache_loader.cpp 5d568cc25f622481
282 506 7879817173216830 .qt/rcc/qrc_appMinecraft_launcher_raw_res_0.cpp 2b5bb84e6f3b07e
282 506 7879817173216830 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_res_0.cpp 2b5bb84e6f3b07e
294 522 7879817173308912 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
294 522 7879817173308912 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
294 522 7879817173308912 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
294 522 7879817173308912 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
532 586 7879817173518934 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp.obj 524e34f80684a614
527 2392 7879817173471490 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.obj be0243cdb4388b86
522 2424 7879817173418629 CMakeFiles/appMinecraft_launcher.dir/b74d1df3e9cf99ffefd58761f70c6109/.rcc/qmlcache/appMinecraft_launcher_qmlcache_loader.cpp.obj 5bd5067b13963f81
540 3492 7879817173592829 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_res_0.cpp.obj e52c4fa4b9e53217
3492 3619 7879817203115182 appMinecraft_launcher.exe 62e5e44a5fc3f884
14 46 7879824610305539 .qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
14 46 7879824610305539 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
21 153 7879824611361604 .qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
21 153 7879824611361604 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
161 190 7879824611762197 .qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
161 190 7879824611762197 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
153 291 7879824612707336 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
153 291 7879824612707336 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
153 291 7879824612707336 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
153 291 7879824612707336 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
297 344 7879824612865047 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp.obj 524e34f80684a614
291 2091 7879824612797184 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.obj be0243cdb4388b86
2091 2212 7879824630799063 appMinecraft_launcher.exe 62e5e44a5fc3f884
13 47 7879824951719577 .qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
13 47 7879824951719577 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt 9baa5126b810d44c
21 151 7879824952741624 .qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
21 151 7879824952741624 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake 75470dc3b80e71ed
159 188 7879824953131468 .qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
159 188 7879824953131468 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp dd6997756a3bd1c4
151 304 7879824954230367 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
151 304 7879824954230367 .rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
151 304 7879824954230367 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp ed9a1083fc68256a
151 304 7879824954230367 G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.aotstats ed9a1083fc68256a
310 356 7879824954386467 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qrc_appMinecraft_launcher_raw_qml_0.cpp.obj 524e34f80684a614
305 2083 7879824954332764 CMakeFiles/appMinecraft_launcher.dir/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.rcc/qmlcache/appMinecraft_launcher_Main_qml.cpp.obj be0243cdb4388b86
2083 2208 7879824972117980 appMinecraft_launcher.exe 62e5e44a5fc3f884
@@ -1,4 +0,0 @@
[General]
docDir=E:/Qt/Docs/Qt-6.10.1
[G:<SLASH>Documents<SLASH>The_Grand_Archives<SLASH>Qt_projects<SLASH>Minecraft_launcher]
importPaths="E:/Qt/6.10.1/llvm-mingw_64/qml"
@@ -1,72 +0,0 @@
cmake_minimum_required(VERSION 3.16...3.21)
# These are part of the public API. Projects should use them to provide a
# consistent set of prefix-relative destinations.
if(NOT QT_DEPLOY_BIN_DIR)
set(QT_DEPLOY_BIN_DIR "bin")
endif()
if(NOT QT_DEPLOY_LIBEXEC_DIR)
set(QT_DEPLOY_LIBEXEC_DIR "libexec")
endif()
if(NOT QT_DEPLOY_LIB_DIR)
set(QT_DEPLOY_LIB_DIR "lib")
endif()
if(NOT QT_DEPLOY_PLUGINS_DIR)
set(QT_DEPLOY_PLUGINS_DIR "plugins")
endif()
if(NOT QT_DEPLOY_QML_DIR)
set(QT_DEPLOY_QML_DIR "qml")
endif()
if(NOT QT_DEPLOY_TRANSLATIONS_DIR)
set(QT_DEPLOY_TRANSLATIONS_DIR "translations")
endif()
if(NOT QT_DEPLOY_PREFIX)
set(QT_DEPLOY_PREFIX "$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}")
endif()
if(QT_DEPLOY_PREFIX STREQUAL "")
set(QT_DEPLOY_PREFIX .)
endif()
if(NOT QT_DEPLOY_IGNORED_LIB_DIRS)
set(QT_DEPLOY_IGNORED_LIB_DIRS "")
endif()
# These are internal implementation details. They may be removed at any time.
set(__QT_DEPLOY_SYSTEM_NAME "Windows")
set(__QT_DEPLOY_SHARED_LIBRARY_SUFFIX ".dll")
set(__QT_DEPLOY_IS_SHARED_LIBS_BUILD "ON")
set(__QT_DEPLOY_TOOL "E:/Qt/6.10.1/llvm-mingw_64/bin/windeployqt.exe")
set(__QT_DEPLOY_IMPL_DIR "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt")
set(__QT_DEPLOY_VERBOSE "")
set(__QT_CMAKE_EXPORT_NAMESPACE "Qt6")
set(__QT_LIBINFIX "")
set(__QT_DEPLOY_GENERATOR_IS_MULTI_CONFIG "0")
set(__QT_DEPLOY_ACTIVE_CONFIG "Debug")
set(__QT_NO_CREATE_VERSIONLESS_FUNCTIONS "")
set(__QT_DEFAULT_MAJOR_VERSION "6")
set(__QT_DEPLOY_QT_ADDITIONAL_PACKAGES_PREFIX_PATH "")
set(__QT_DEPLOY_QT_INSTALL_PREFIX "E:/Qt/6.10.1/llvm-mingw_64")
set(__QT_DEPLOY_QT_INSTALL_BINS "bin")
set(__QT_DEPLOY_QT_INSTALL_DATA ".")
set(__QT_DEPLOY_QT_INSTALL_DESCRIPTIONSDIR "modules")
set(__QT_DEPLOY_QT_INSTALL_LIBEXECS "bin")
set(__QT_DEPLOY_QT_INSTALL_PLUGINS "plugins")
set(__QT_DEPLOY_QT_INSTALL_TRANSLATIONS "translations")
set(__QT_DEPLOY_TARGET_QT_PATHS_PATH "E:/Qt/6.10.1/llvm-mingw_64/bin/qtpaths6.exe")
set(__QT_DEPLOY_MUST_ADJUST_PLUGINS_RPATH "OFF")
set(__QT_DEPLOY_USE_PATCHELF "")
set(__QT_DEPLOY_PATCHELF_EXECUTABLE "")
set(__QT_DEPLOY_QT_IS_MULTI_CONFIG_BUILD_WITH_DEBUG "FALSE")
set(__QT_DEPLOY_QT_DEBUG_POSTFIX "")
# Define the CMake commands to be made available during deployment.
set(__qt_deploy_support_files
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/QtDeployTargets.cmake"
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Core/Qt6CoreDeploySupport.cmake"
"E:/Qt/6.10.1/llvm-mingw_64/lib/cmake/Qt6Qml/Qt6QmlDeploySupport.cmake"
)
foreach(__qt_deploy_support_file IN LISTS __qt_deploy_support_files)
include("${__qt_deploy_support_file}")
endforeach()
unset(__qt_deploy_support_file)
unset(__qt_deploy_support_files)
@@ -1,3 +0,0 @@
set(__QT_DEPLOY_TARGET_appMinecraft_launcher_FILE G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/appMinecraft_launcher.exe)
set(__QT_DEPLOY_TARGET_appMinecraft_launcher_TYPE EXECUTABLE)
set(__QT_DEPLOY_TARGET_appMinecraft_launcher_RUNTIME_DLLS E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6Quick.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6OpenGL.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6Gui.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6QmlMeta.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6QmlModels.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6QmlWorkerScript.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6Qml.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6Network.dll;E:/Qt/6.10.1/llvm-mingw_64/bin/Qt6Core.dll)
@@ -1,9 +0,0 @@
set(target "appMinecraft_launcher")
set(working_dir "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher")
set(src_and_dest_list
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/Main.qml"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/Main.qml"
)
set(timestamp_file "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_qml.txt")
@@ -1,55 +0,0 @@
set(target "appMinecraft_launcher")
set(working_dir "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher")
set(src_and_dest_list
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Folder/Folder_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Folder/Folder_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Folder/Folder_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Folder/Folder_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Folder/Folder_Pressed.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Folder/Folder_Pressed.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Options/Options_active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Options/Options_active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Options/Options_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Options/Options_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Options/Options_Pressed.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Options/Options_Pressed.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Play_Button/Play_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Play_Button/Play_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Play_Button/Play_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Play_Button/Play_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Play_Button/Play_pressed.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Play_Button/Play_pressed.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_23.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Asset_23.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_24.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Asset_24.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Kishka_Profile_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Kishka_Profile_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Kishka_Profile_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Kishka_Profile_Idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Kishka_Profile_open.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Kishka_Profile_open.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Scroll/Scroll_Lever.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Scroll/Scroll_Lever.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Scroll/Scroll_palka.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Scroll/Scroll_palka.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Version_box/Kishka_Profile_Open.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Version_box/Kishka_Profile_Open.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Version_box/Kishka_Ver_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Version_box/Kishka_Ver_Active.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Version_box/Kishka_Ver_idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Version_box/Kishka_Ver_idle.svg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/GovuztTW8AAHqBf.jpeg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/GovuztTW8AAHqBf.jpeg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/photo_2025-12-16_15-04-17.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/photo_2025-12-16_15-04-17.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/photo_2025-12-21_02-30-09.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/photo_2025-12-21_02-30-09.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_23.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Asset_23.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_24.jpg"
"G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/images/Profile_Box/Asset_24.jpg"
)
set(timestamp_file "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/appMinecraft_launcher_res.txt")
@@ -1,3 +0,0 @@
@echo off
set PATH=E:\Qt\6.10.1\llvm-mingw_64\bin;%PATH%
%*
@@ -1,20 +0,0 @@
# Auto-generated deploy QML imports script for target "appMinecraft_launcher".
# Do not edit, all changes will be lost.
# This file should only be included by qt6_deploy_qml_imports().
set(__qt_opts )
if(arg_NO_QT_IMPORTS)
list(APPEND __qt_opts NO_QT_IMPORTS)
endif()
_qt_internal_deploy_qml_imports_for_target(
${__qt_opts}
IMPORTS_FILE "G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake"
PLUGINS_FOUND __qt_internal_plugins_found
QML_DIR "${arg_QML_DIR}"
PLUGINS_DIR "${arg_PLUGINS_DIR}"
)
if(arg_PLUGINS_FOUND)
set(${arg_PLUGINS_FOUND} "${__qt_internal_plugins_found}" PARENT_SCOPE)
endif()
@@ -1,32 +0,0 @@
set(qml_import_scanner_imports_count 30)
set(qml_import_scanner_import_0 "CLASSNAME;QtQuick2Plugin;LINKTARGET;Qt6::qtquick2plugin;NAME;QtQuick;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick;PLUGIN;qtquick2plugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/;RELATIVEPATH;QtQuick;TYPE;module;")
set(qml_import_scanner_import_1 "CLASSNAME;QtQmlPlugin;LINKTARGET;Qt6::qmlplugin;NAME;QtQml;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQml;PLUGIN;qmlplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/;RELATIVEPATH;QtQml;TYPE;module;")
set(qml_import_scanner_import_2 "NAME;QML;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QML;PREFER;:/qt-project.org/imports/QML/;RELATIVEPATH;QML;TYPE;module;")
set(qml_import_scanner_import_3 "CLASSNAME;QtQmlModelsPlugin;LINKTARGET;Qt6::modelsplugin;NAME;QtQml.Models;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQml/Models;PLUGIN;modelsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/Models/;RELATIVEPATH;QtQml/Models;TYPE;module;")
set(qml_import_scanner_import_4 "CLASSNAME;QtQmlWorkerScriptPlugin;LINKTARGET;Qt6::workerscriptplugin;NAME;QtQml.WorkerScript;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQml/WorkerScript;PLUGIN;workerscriptplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/WorkerScript/;RELATIVEPATH;QtQml/WorkerScript;TYPE;module;")
set(qml_import_scanner_import_5 "CLASSNAME;QtQuickLayoutsPlugin;LINKTARGET;Qt6::qquicklayoutsplugin;NAME;QtQuick.Layouts;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Layouts;PLUGIN;qquicklayoutsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Layouts/;RELATIVEPATH;QtQuick/Layouts;TYPE;module;")
set(qml_import_scanner_import_6 "CLASSNAME;QtQuickControls2Plugin;LINKTARGET;Qt6::qtquickcontrols2plugin;NAME;QtQuick.Controls;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls;PLUGIN;qtquickcontrols2plugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/;RELATIVEPATH;QtQuick/Controls;TYPE;module;")
set(qml_import_scanner_import_7 "CLASSNAME;QtQuickControls2FusionStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2fusionstyleplugin;NAME;QtQuick.Controls.Fusion;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion;PLUGIN;qtquickcontrols2fusionstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Fusion/;RELATIVEPATH;QtQuick/Controls/Fusion;TYPE;module;")
set(qml_import_scanner_import_8 "CLASSNAME;QtQuickControls2MaterialStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SwipeView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2materialstyleplugin;NAME;QtQuick.Controls.Material;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material;PLUGIN;qtquickcontrols2materialstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Material/;RELATIVEPATH;QtQuick/Controls/Material;TYPE;module;")
set(qml_import_scanner_import_9 "CLASSNAME;QtQuickControls2ImagineStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SwipeView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2imaginestyleplugin;NAME;QtQuick.Controls.Imagine;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine;PLUGIN;qtquickcontrols2imaginestyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Imagine/;RELATIVEPATH;QtQuick/Controls/Imagine;TYPE;module;")
set(qml_import_scanner_import_10 "CLASSNAME;QtQuickControls2UniversalStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2universalstyleplugin;NAME;QtQuick.Controls.Universal;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal;PLUGIN;qtquickcontrols2universalstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Universal/;RELATIVEPATH;QtQuick/Controls/Universal;TYPE;module;")
set(qml_import_scanner_import_11 "CLASSNAME;QtQuickControls2FluentWinUI3StylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Config.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/FocusFrame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/StyleImage.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolTip.qml;LINKTARGET;Qt6::qtquickcontrols2fluentwinui3styleplugin;NAME;QtQuick.Controls.FluentWinUI3;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3;PLUGIN;qtquickcontrols2fluentwinui3styleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/FluentWinUI3/;RELATIVEPATH;QtQuick/Controls/FluentWinUI3;TYPE;module;")
set(qml_import_scanner_import_12 "CLASSNAME;QtQuickControls2WindowsStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/TextField.qml;LINKTARGET;Qt6::qtquickcontrols2windowsstyleplugin;NAME;QtQuick.Controls.Windows;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows;PLUGIN;qtquickcontrols2windowsstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Windows/;RELATIVEPATH;QtQuick/Controls/Windows;TYPE;module;")
set(qml_import_scanner_import_13 "NAME;QtQuick.Controls.macOS;TYPE;module;")
set(qml_import_scanner_import_14 "NAME;QtQuick.Controls.iOS;TYPE;module;")
set(qml_import_scanner_import_15 "CLASSNAME;QtQuickControls2BasicStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/AbstractButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Action.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ActionGroup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ButtonGroup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Calendar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/CalendarModel.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Container.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Control.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/DayOfWeekRow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MonthGrid.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SwipeView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TableViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/VerticalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/WeekNumberColumn.qml;LINKTARGET;Qt6::qtquickcontrols2basicstyleplugin;NAME;QtQuick.Controls.Basic;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic;PLUGIN;qtquickcontrols2basicstyleplugin;PREFER;Line truncated
set(qml_import_scanner_import_16 "CLASSNAME;QtQuickTemplates2Plugin;LINKTARGET;Qt6::qtquicktemplates2plugin;NAME;QtQuick.Templates;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Templates;PLUGIN;qtquicktemplates2plugin;PREFER;:/qt-project.org/imports/QtQuick/Templates/;RELATIVEPATH;QtQuick/Templates;TYPE;module;")
set(qml_import_scanner_import_17 "CLASSNAME;QtQuickControls2ImplPlugin;LINKTARGET;Qt6::qtquickcontrols2implplugin;NAME;QtQuick.Controls.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/impl;PLUGIN;qtquickcontrols2implplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/impl/;RELATIVEPATH;QtQuick/Controls/impl;TYPE;module;")
set(qml_import_scanner_import_18 "CLASSNAME;QtQuickControls2FusionStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/ButtonPanel.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/SliderGroove.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/SliderHandle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/SwitchIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/TextFieldBackground.qml;LINKTARGET;Qt6::qtquickcontrols2fusionstyleimplplugin;NAME;QtQuick.Controls.Fusion.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl;PLUGIN;qtquickcontrols2fusionstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/;RELATIVEPATH;QtQuick/Controls/Fusion/impl;TYPE;module;")
set(qml_import_scanner_import_19 "CLASSNAME;QtQuick_WindowPlugin;LINKTARGET;Qt6::quickwindow;NAME;QtQuick.Window;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Window;PLUGIN;quickwindowplugin;PREFER;:/qt-project.org/imports/QtQuick/Window/;RELATIVEPATH;QtQuick/Window;TYPE;module;")
set(qml_import_scanner_import_20 "CLASSNAME;QtQuickControls2MaterialStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/BoxShadow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/CursorDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/ElevationEffect.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/RectangularGlow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/RoundedElevationEffect.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/SliderHandle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2materialstyleimplplugin;NAME;QtQuick.Controls.Material.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl;PLUGIN;qtquickcontrols2materialstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Material/impl/;RELATIVEPATH;QtQuick/Controls/Material/impl;TYPE;module;")
set(qml_import_scanner_import_21 "CLASSNAME;QtQuickControls2ImagineStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/impl/OpacityMask.qml;LINKTARGET;Qt6::qtquickcontrols2imaginestyleimplplugin;NAME;QtQuick.Controls.Imagine.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/impl;PLUGIN;qtquickcontrols2imaginestyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Imagine/impl/;RELATIVEPATH;QtQuick/Controls/Imagine/impl;TYPE;module;")
set(qml_import_scanner_import_22 "CLASSNAME;QtQuickControls2UniversalStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2universalstyleimplplugin;NAME;QtQuick.Controls.Universal.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl;PLUGIN;qtquickcontrols2universalstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Universal/impl/;RELATIVEPATH;QtQuick/Controls/Universal/impl;TYPE;module;")
set(qml_import_scanner_import_23 "CLASSNAME;QtQuickControls2FluentWinUI3StyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/ButtonBackground.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/FocusFrame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/StyleImage.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2fluentwinui3styleimplplugin;NAME;QtQuick.Controls.FluentWinUI3.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl;PLUGIN;qtquickcontrols2fluentwinui3styleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/FluentWinUI3/impl/;RELATIVEPATH;QtQuick/Controls/FluentWinUI3/impl;TYPE;module;")
set(qml_import_scanner_import_24 "CLASSNAME;QtQuickEffectsPlugin;LINKTARGET;Qt6::effectsplugin;NAME;QtQuick.Effects;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Effects;PLUGIN;effectsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Effects/;RELATIVEPATH;QtQuick/Effects;TYPE;module;")
set(qml_import_scanner_import_25 "CLASSNAME;QmlShapesPlugin;LINKTARGET;Qt6::qmlshapesplugin;NAME;QtQuick.Shapes;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Shapes;PLUGIN;qmlshapesplugin;PREFER;:/qt-project.org/imports/QtQuick/Shapes/;RELATIVEPATH;QtQuick/Shapes;TYPE;module;")
set(qml_import_scanner_import_26 "CLASSNAME;QtQuickControls2NativeStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultCheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultDial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultFrame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultGroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultItemDelegateIconLabel.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultRadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultRadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultSearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultSpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultTextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultTextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultTreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/util/WindowsFocusFrame.qml;LINKTARGET;Qt6::qtquickcontrols2nativestyleplugin;NAME;QtQuick.NativeStyle;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle;PLUGIN;qtquickcontrols2nativestyleplugin;PREFER;:/qt-project.org/imports/QtQuick/NativeStyle/;RELATIVEPATH;QtQuick/NativeStyle;TYPE;module;")
set(qml_import_scanner_import_27 "CLASSNAME;QtQuickControls2WindowsStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2windowsstyleimplplugin;NAME;QtQuick.Controls.Windows.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/impl;PLUGIN;qtquickcontrols2windowsstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Windows/impl/;RELATIVEPATH;QtQuick/Controls/Windows/impl;TYPE;module;")
set(qml_import_scanner_import_28 "CLASSNAME;QtQuickControls2BasicStyleImplPlugin;LINKTARGET;Qt6::qtquickcontrols2basicstyleimplplugin;NAME;QtQuick.Controls.Basic.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/impl;PLUGIN;qtquickcontrols2basicstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Basic/impl/;RELATIVEPATH;QtQuick/Controls/Basic/impl;TYPE;module;")
set(qml_import_scanner_import_29 "CLASSNAME;QtQmlLabsModelsPlugin;LINKTARGET;Qt6::labsmodelsplugin;NAME;Qt.labs.qmlmodels;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/Qt/labs/qmlmodels;PLUGIN;labsmodelsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/Qt/labs/qmlmodels/;RELATIVEPATH;Qt/labs/qmlmodels;TYPE;module;")
@@ -1,15 +0,0 @@
-rootPath
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher
-cmake-output
-output-file
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_build.cmake
-importPath
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher
-importPath
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug
-importPath
E:/Qt/6.10.1/llvm-mingw_64/qml
-qrcFiles
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qmake_Minecraft_launcher.qrc
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/appMinecraft_launcher_raw_qml_0.qrc
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/appMinecraft_launcher_raw_res_0.qrc
@@ -1,32 +0,0 @@
set(qml_import_scanner_imports_count 30)
set(qml_import_scanner_import_0 "CLASSNAME;QtQuick2Plugin;LINKTARGET;Qt6::qtquick2plugin;NAME;QtQuick;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick;PLUGIN;qtquick2plugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/;RELATIVEPATH;QtQuick;TYPE;module;")
set(qml_import_scanner_import_1 "CLASSNAME;QtQmlPlugin;LINKTARGET;Qt6::qmlplugin;NAME;QtQml;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQml;PLUGIN;qmlplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/;RELATIVEPATH;QtQml;TYPE;module;")
set(qml_import_scanner_import_2 "NAME;QML;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QML;PREFER;:/qt-project.org/imports/QML/;RELATIVEPATH;QML;TYPE;module;")
set(qml_import_scanner_import_3 "CLASSNAME;QtQmlModelsPlugin;LINKTARGET;Qt6::modelsplugin;NAME;QtQml.Models;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQml/Models;PLUGIN;modelsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/Models/;RELATIVEPATH;QtQml/Models;TYPE;module;")
set(qml_import_scanner_import_4 "CLASSNAME;QtQmlWorkerScriptPlugin;LINKTARGET;Qt6::workerscriptplugin;NAME;QtQml.WorkerScript;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQml/WorkerScript;PLUGIN;workerscriptplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQml/WorkerScript/;RELATIVEPATH;QtQml/WorkerScript;TYPE;module;")
set(qml_import_scanner_import_5 "CLASSNAME;QtQuickLayoutsPlugin;LINKTARGET;Qt6::qquicklayoutsplugin;NAME;QtQuick.Layouts;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Layouts;PLUGIN;qquicklayoutsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Layouts/;RELATIVEPATH;QtQuick/Layouts;TYPE;module;")
set(qml_import_scanner_import_6 "CLASSNAME;QtQuickControls2Plugin;LINKTARGET;Qt6::qtquickcontrols2plugin;NAME;QtQuick.Controls;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls;PLUGIN;qtquickcontrols2plugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/;RELATIVEPATH;QtQuick/Controls;TYPE;module;")
set(qml_import_scanner_import_7 "CLASSNAME;QtQuickControls2FusionStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/TreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2fusionstyleplugin;NAME;QtQuick.Controls.Fusion;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion;PLUGIN;qtquickcontrols2fusionstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Fusion/;RELATIVEPATH;QtQuick/Controls/Fusion;TYPE;module;")
set(qml_import_scanner_import_8 "CLASSNAME;QtQuickControls2MaterialStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SwipeView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/TreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2materialstyleplugin;NAME;QtQuick.Controls.Material;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material;PLUGIN;qtquickcontrols2materialstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Material/;RELATIVEPATH;QtQuick/Controls/Material;TYPE;module;")
set(qml_import_scanner_import_9 "CLASSNAME;QtQuickControls2ImagineStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SwipeView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2imaginestyleplugin;NAME;QtQuick.Controls.Imagine;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine;PLUGIN;qtquickcontrols2imaginestyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Imagine/;RELATIVEPATH;QtQuick/Controls/Imagine;TYPE;module;")
set(qml_import_scanner_import_10 "CLASSNAME;QtQuickControls2UniversalStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/VerticalHeaderViewDelegate.qml;LINKTARGET;Qt6::qtquickcontrols2universalstyleplugin;NAME;QtQuick.Controls.Universal;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal;PLUGIN;qtquickcontrols2universalstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Universal/;RELATIVEPATH;QtQuick/Controls/Universal;TYPE;module;")
set(qml_import_scanner_import_11 "CLASSNAME;QtQuickControls2FluentWinUI3StylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Config.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/FocusFrame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/StyleImage.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/ToolTip.qml;LINKTARGET;Qt6::qtquickcontrols2fluentwinui3styleplugin;NAME;QtQuick.Controls.FluentWinUI3;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3;PLUGIN;qtquickcontrols2fluentwinui3styleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/FluentWinUI3/;RELATIVEPATH;QtQuick/Controls/FluentWinUI3;TYPE;module;")
set(qml_import_scanner_import_12 "CLASSNAME;QtQuickControls2WindowsStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/TextField.qml;LINKTARGET;Qt6::qtquickcontrols2windowsstyleplugin;NAME;QtQuick.Controls.Windows;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows;PLUGIN;qtquickcontrols2windowsstyleplugin;PREFER;:/qt-project.org/imports/QtQuick/Controls/Windows/;RELATIVEPATH;QtQuick/Controls/Windows;TYPE;module;")
set(qml_import_scanner_import_13 "NAME;QtQuick.Controls.macOS;TYPE;module;")
set(qml_import_scanner_import_14 "NAME;QtQuick.Controls.iOS;TYPE;module;")
set(qml_import_scanner_import_15 "CLASSNAME;QtQuickControls2BasicStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/AbstractButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Action.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ActionGroup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ApplicationWindow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/BusyIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Button.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ButtonGroup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Calendar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/CalendarModel.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/CheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/CheckDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Container.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Control.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/DayOfWeekRow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/DelayButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Dial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Dialog.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/DialogButtonBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Drawer.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Frame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/GroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/HorizontalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/HorizontalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Label.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Menu.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuBarItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuItem.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MenuSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/MonthGrid.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Page.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/PageIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Pane.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Popup.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RangeSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/RoundButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ScrollIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ScrollView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SelectionRectangle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Slider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SplitView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/StackView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SwipeDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SwipeView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Switch.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/SwitchDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TabBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TabButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TableViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolSeparator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/ToolTip.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/TreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/Tumbler.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/VerticalHeaderView.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/VerticalHeaderViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/WeekNumberColumn.qml;LINKTARGET;Qt6::qtquickcontrols2basicstyleplugin;NAME;QtQuick.Controls.Basic;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic;PLUGIN;qtquickcontrols2basicstyleplugin;PREFER;Line truncated
set(qml_import_scanner_import_16 "CLASSNAME;QtQuickTemplates2Plugin;LINKTARGET;Qt6::qtquicktemplates2plugin;NAME;QtQuick.Templates;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Templates;PLUGIN;qtquicktemplates2plugin;PREFER;:/qt-project.org/imports/QtQuick/Templates/;RELATIVEPATH;QtQuick/Templates;TYPE;module;")
set(qml_import_scanner_import_17 "CLASSNAME;QtQuickControls2ImplPlugin;LINKTARGET;Qt6::qtquickcontrols2implplugin;NAME;QtQuick.Controls.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/impl;PLUGIN;qtquickcontrols2implplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/impl/;RELATIVEPATH;QtQuick/Controls/impl;TYPE;module;")
set(qml_import_scanner_import_18 "CLASSNAME;QtQuickControls2FusionStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/ButtonPanel.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/SliderGroove.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/SliderHandle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/SwitchIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl/TextFieldBackground.qml;LINKTARGET;Qt6::qtquickcontrols2fusionstyleimplplugin;NAME;QtQuick.Controls.Fusion.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Fusion/impl;PLUGIN;qtquickcontrols2fusionstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Fusion/impl/;RELATIVEPATH;QtQuick/Controls/Fusion/impl;TYPE;module;")
set(qml_import_scanner_import_19 "CLASSNAME;QtQuick_WindowPlugin;LINKTARGET;Qt6::quickwindow;NAME;QtQuick.Window;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Window;PLUGIN;quickwindowplugin;PREFER;:/qt-project.org/imports/QtQuick/Window/;RELATIVEPATH;QtQuick/Window;TYPE;module;")
set(qml_import_scanner_import_20 "CLASSNAME;QtQuickControls2MaterialStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/BoxShadow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/CursorDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/ElevationEffect.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/RectangularGlow.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/RoundedElevationEffect.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/SliderHandle.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2materialstyleimplplugin;NAME;QtQuick.Controls.Material.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Material/impl;PLUGIN;qtquickcontrols2materialstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Material/impl/;RELATIVEPATH;QtQuick/Controls/Material/impl;TYPE;module;")
set(qml_import_scanner_import_21 "CLASSNAME;QtQuickControls2ImagineStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/impl/OpacityMask.qml;LINKTARGET;Qt6::qtquickcontrols2imaginestyleimplplugin;NAME;QtQuick.Controls.Imagine.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Imagine/impl;PLUGIN;qtquickcontrols2imaginestyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Imagine/impl/;RELATIVEPATH;QtQuick/Controls/Imagine/impl;TYPE;module;")
set(qml_import_scanner_import_22 "CLASSNAME;QtQuickControls2UniversalStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2universalstyleimplplugin;NAME;QtQuick.Controls.Universal.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Universal/impl;PLUGIN;qtquickcontrols2universalstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Universal/impl/;RELATIVEPATH;QtQuick/Controls/Universal/impl;TYPE;module;")
set(qml_import_scanner_import_23 "CLASSNAME;QtQuickControls2FluentWinUI3StyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/ButtonBackground.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/FocusFrame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/RadioIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/StyleImage.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2fluentwinui3styleimplplugin;NAME;QtQuick.Controls.FluentWinUI3.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/FluentWinUI3/impl;PLUGIN;qtquickcontrols2fluentwinui3styleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/FluentWinUI3/impl/;RELATIVEPATH;QtQuick/Controls/FluentWinUI3/impl;TYPE;module;")
set(qml_import_scanner_import_24 "CLASSNAME;QtQuickEffectsPlugin;LINKTARGET;Qt6::effectsplugin;NAME;QtQuick.Effects;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Effects;PLUGIN;effectsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Effects/;RELATIVEPATH;QtQuick/Effects;TYPE;module;")
set(qml_import_scanner_import_25 "CLASSNAME;QmlShapesPlugin;LINKTARGET;Qt6::qmlshapesplugin;NAME;QtQuick.Shapes;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Shapes;PLUGIN;qmlshapesplugin;PREFER;:/qt-project.org/imports/QtQuick/Shapes/;RELATIVEPATH;QtQuick/Shapes;TYPE;module;")
set(qml_import_scanner_import_26 "CLASSNAME;QtQuickControls2NativeStylePlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultCheckBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultComboBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultDial.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultFrame.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultGroupBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultItemDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultItemDelegateIconLabel.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultProgressBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultRadioButton.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultRadioDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultScrollBar.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultSearchField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultSlider.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultSpinBox.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultTextArea.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultTextField.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/controls/DefaultTreeViewDelegate.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle/util/WindowsFocusFrame.qml;LINKTARGET;Qt6::qtquickcontrols2nativestyleplugin;NAME;QtQuick.NativeStyle;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/NativeStyle;PLUGIN;qtquickcontrols2nativestyleplugin;PREFER;:/qt-project.org/imports/QtQuick/NativeStyle/;RELATIVEPATH;QtQuick/NativeStyle;TYPE;module;")
set(qml_import_scanner_import_27 "CLASSNAME;QtQuickControls2WindowsStyleImplPlugin;COMPONENTS;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/impl/CheckIndicator.qml;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/impl/SwitchIndicator.qml;LINKTARGET;Qt6::qtquickcontrols2windowsstyleimplplugin;NAME;QtQuick.Controls.Windows.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Windows/impl;PLUGIN;qtquickcontrols2windowsstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Windows/impl/;RELATIVEPATH;QtQuick/Controls/Windows/impl;TYPE;module;")
set(qml_import_scanner_import_28 "CLASSNAME;QtQuickControls2BasicStyleImplPlugin;LINKTARGET;Qt6::qtquickcontrols2basicstyleimplplugin;NAME;QtQuick.Controls.Basic.impl;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/QtQuick/Controls/Basic/impl;PLUGIN;qtquickcontrols2basicstyleimplplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/QtQuick/Controls/Basic/impl/;RELATIVEPATH;QtQuick/Controls/Basic/impl;TYPE;module;")
set(qml_import_scanner_import_29 "CLASSNAME;QtQmlLabsModelsPlugin;LINKTARGET;Qt6::labsmodelsplugin;NAME;Qt.labs.qmlmodels;PATH;E:/Qt/6.10.1/llvm-mingw_64/qml/Qt/labs/qmlmodels;PLUGIN;labsmodelsplugin;PLUGINISOPTIONAL;;PREFER;:/qt-project.org/imports/Qt/labs/qmlmodels/;RELATIVEPATH;Qt/labs/qmlmodels;TYPE;module;")
@@ -1,15 +0,0 @@
-rootPath
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher
-cmake-output
-output-file
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/qml_imports/appMinecraft_launcher_conf.cmake
-importPath
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher
-importPath
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug
-importPath
E:/Qt/6.10.1/llvm-mingw_64/qml
-qrcFiles
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/qmake_Minecraft_launcher.qrc
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/appMinecraft_launcher_raw_qml_0.qrc
G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/.qt/rcc/appMinecraft_launcher_raw_res_0.qrc
@@ -1,6 +0,0 @@
<RCC>
<qresource prefix="/qt/qml/Minecraft_launcher/">
<file alias="Main.qml">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/Main.qml</file>
</qresource>
</RCC>
@@ -1,29 +0,0 @@
<RCC>
<qresource prefix="/qt/qml/Minecraft_launcher/">
<file alias="images/Folder/Folder_Active.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Folder/Folder_Active.svg</file>
<file alias="images/Folder/Folder_Idle.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Folder/Folder_Idle.svg</file>
<file alias="images/Folder/Folder_Pressed.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Folder/Folder_Pressed.svg</file>
<file alias="images/Options/Options_active.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Options/Options_active.svg</file>
<file alias="images/Options/Options_Idle.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Options/Options_Idle.svg</file>
<file alias="images/Options/Options_Pressed.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Options/Options_Pressed.svg</file>
<file alias="images/Play_Button/Play_Active.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Play_Button/Play_Active.svg</file>
<file alias="images/Play_Button/Play_Idle.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Play_Button/Play_Idle.svg</file>
<file alias="images/Play_Button/Play_pressed.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Play_Button/Play_pressed.svg</file>
<file alias="images/Profile_Box/Asset_23.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_23.svg</file>
<file alias="images/Profile_Box/Asset_24.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_24.svg</file>
<file alias="images/Profile_Box/Kishka_Profile_Active.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Kishka_Profile_Active.svg</file>
<file alias="images/Profile_Box/Kishka_Profile_Idle.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Kishka_Profile_Idle.svg</file>
<file alias="images/Profile_Box/Kishka_Profile_open.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Kishka_Profile_open.svg</file>
<file alias="images/Scroll/Scroll_Lever.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Scroll/Scroll_Lever.svg</file>
<file alias="images/Scroll/Scroll_palka.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Scroll/Scroll_palka.svg</file>
<file alias="images/Version_box/Kishka_Profile_Open.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Version_box/Kishka_Profile_Open.svg</file>
<file alias="images/Version_box/Kishka_Ver_Active.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Version_box/Kishka_Ver_Active.svg</file>
<file alias="images/Version_box/Kishka_Ver_idle.svg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Version_box/Kishka_Ver_idle.svg</file>
<file alias="images/GovuztTW8AAHqBf.jpeg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/GovuztTW8AAHqBf.jpeg</file>
<file alias="images/photo_2025-12-16_15-04-17.jpg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/photo_2025-12-16_15-04-17.jpg</file>
<file alias="images/photo_2025-12-21_02-30-09.jpg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/photo_2025-12-21_02-30-09.jpg</file>
<file alias="images/Profile_Box/Asset_23.jpg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_23.jpg</file>
<file alias="images/Profile_Box/Asset_24.jpg">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/images/Profile_Box/Asset_24.jpg</file>
</qresource>
</RCC>
@@ -1,6 +0,0 @@
<RCC>
<qresource prefix="/qt/qml/Minecraft_launcher">
<file alias="qmldir">G:/Documents/The_Grand_Archives/Qt_projects/Minecraft_launcher/build/Desktop_Qt_6_10_1_llvm_mingw_64_bit-Debug/Minecraft_launcher/qmldir</file>
</qresource>
</RCC>
@@ -1,231 +0,0 @@
/****************************************************************************
** Resource object code
**
** Created by: The Resource Compiler for Qt version 6.10.1
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#ifdef _MSC_VER
// disable informational message "function ... selected for automatic inline expansion"
#pragma warning (disable: 4711)
#endif
static const unsigned char qt_resource_data[] = {
// Main.qml
0x0,0x0,0x6,0x1e,
0x0,
0x0,0x16,0xef,0x78,0xda,0xb5,0x58,0x6d,0x6f,0xd4,0x38,0x10,0xfe,0x8e,0xc4,0x7f,
0x88,0xf6,0xbe,0xb4,0x5c,0x49,0x37,0x69,0x7b,0x2d,0x7b,0xaa,0xd0,0xb6,0xc0,0xb5,
0x12,0x88,0xd2,0xae,0xe8,0x7,0x84,0x90,0x37,0xf1,0xee,0xfa,0x70,0xec,0xd4,0x71,
0xb6,0x5d,0x2a,0xfe,0xfb,0x8d,0xed,0x64,0xe3,0xc4,0xce,0xb6,0x5,0xdd,0x22,0x20,
0xf1,0x8c,0xed,0xf1,0xbc,0x3c,0xf3,0x38,0x24,0xcb,0xb9,0x90,0xc1,0x27,0xf9,0xa9,
0x24,0xc9,0xf7,0xe7,0xcf,0x48,0xeb,0x3d,0x7c,0x8f,0x56,0xbc,0x94,0x45,0x10,0x87,
0xd1,0x81,0x23,0x3c,0xe5,0x4c,0xa,0x4e,0x6b,0xe9,0xf3,0x67,0xd7,0x84,0xa5,0xfc,
0x36,0xb8,0x7f,0xfe,0x2c,0x80,0x1f,0x49,0x47,0xc1,0xad,0x1e,0x31,0xef,0xb7,0x24,
0x95,0x8b,0x51,0x10,0xc5,0x47,0x43,0x33,0xb0,0xc0,0x64,0xbe,0x90,0xa3,0xe0,0x30,
0xae,0x6,0x96,0xa4,0x20,0x53,0x8a,0x47,0x81,0x14,0x25,0x36,0x43,0x33,0x8a,0xe6,
0xc5,0x8,0xb6,0xc,0xaf,0xad,0xa5,0x24,0x91,0x4a,0xed,0xa6,0x98,0x88,0xad,0xc1,
0x19,0xa6,0x94,0x7,0xd7,0x5c,0xd0,0x74,0xb0,0xad,0xcc,0x50,0x1a,0xe7,0x19,0x9a,
0xe3,0xda,0x92,0xda,0x1a,0xa2,0x6,0x9b,0x21,0x9e,0xa3,0x84,0xc8,0xd5,0x28,0x18,
0x86,0xf1,0xab,0xbf,0x9a,0x71,0x8f,0x19,0xea,0x87,0x58,0xb2,0xe0,0xa2,0x8,0x67,
0x84,0xd2,0x51,0x90,0x23,0x81,0x99,0x6c,0xa4,0x20,0x22,0x3f,0xc0,0x21,0x88,0x8e,
0x29,0x99,0xb3,0xc,0x84,0x23,0x63,0x45,0xa8,0x7,0xce,0x4e,0x61,0x4,0xb,0x6b,
0x17,0x2c,0x24,0x49,0xfa,0xd4,0x3f,0x77,0xd5,0xb,0x5e,0x8a,0x4,0x6c,0x1a,0xe8,
0x43,0x14,0xbb,0xff,0xf0,0x65,0xf9,0x43,0x4e,0xae,0x8f,0xc6,0xe3,0xb3,0x9b,0x93,
0x59,0xf8,0x6f,0x8e,0xe7,0x83,0x46,0x7d,0xc6,0x93,0x12,0xfc,0x36,0x43,0xb4,0xb0,
0x8f,0x90,0x48,0xb2,0xc4,0xef,0x94,0xec,0x23,0x9b,0xa0,0xa9,0xa3,0x50,0x48,0x24,
0xd5,0x26,0xd6,0x4a,0x14,0xad,0xb0,0x8,0x31,0x43,0xe0,0x92,0xd4,0x5d,0x91,0x49,
0x82,0x28,0x41,0x5,0x61,0x73,0x47,0x98,0x50,0x92,0x3b,0x83,0x52,0x20,0x56,0xcc,
0xb8,0xc8,0x3e,0xa,0x32,0x27,0xc,0x4e,0x2d,0x71,0x16,0x3a,0xc7,0x5,0xcf,0x80,
0x21,0x51,0x33,0x92,0x11,0x21,0xb8,0x70,0x96,0xcb,0x48,0x9e,0x21,0x77,0x97,0x4,
0x25,0xb,0x37,0x82,0xa5,0xe4,0x93,0x7a,0x7b,0x47,0x58,0xac,0x20,0xc0,0x82,0x33,
0xee,0x71,0x9c,0xf1,0xfe,0x15,0xf9,0x81,0xc3,0x3a,0x6b,0x87,0x5e,0x69,0x95,0xe4,
0x96,0x50,0xa5,0xcb,0x7,0x9e,0xe2,0x3a,0xbc,0x57,0x52,0x60,0x99,0x2c,0x8c,0xc2,
0xcf,0x3a,0x5f,0x4f,0x4a,0x29,0x39,0xeb,0x26,0xec,0x54,0x8f,0x36,0x63,0x77,0xa3,
0x60,0x7f,0xdf,0x5a,0x1b,0x72,0x37,0x1a,0x1e,0x34,0xef,0xd5,0xee,0x7b,0x7b,0xd6,
0x58,0x6d,0x6f,0x74,0x38,0xb4,0xb3,0x15,0xd2,0xef,0x6d,0x6f,0x4c,0x4d,0xa2,0x27,
0x3a,0x26,0xe7,0xcc,0x4d,0xf6,0x75,0xe5,0x58,0xf1,0x99,0xa2,0xe4,0xfb,0x5c,0xf0,
0x92,0xa5,0x23,0xb7,0xfa,0xda,0x7,0x3a,0x6f,0xd7,0xa1,0x2f,0xbd,0x2f,0x20,0xed,
0xbe,0x19,0xa7,0x98,0xe7,0xb1,0x4e,0xdd,0xb0,0x58,0xda,0x59,0xbe,0x76,0x9f,0xfa,
0x1,0x1c,0x31,0xc,0x5a,0x9c,0x15,0xdd,0xad,0x25,0x12,0x73,0x2c,0x5d,0x7f,0xea,
0xf8,0x94,0x4c,0x4f,0xa,0x38,0xbb,0x10,0xb8,0x28,0x70,0xba,0xb5,0x1d,0xdc,0xdb,
0x96,0x86,0xc6,0xb8,0xe0,0xb8,0xdf,0xba,0xdc,0xcc,0xd4,0xe6,0x29,0xab,0xfe,0x27,
0x3,0x2f,0x31,0xc5,0xe8,0xd7,0x2c,0xb4,0xfc,0xd7,0x31,0xb0,0x65,0xe7,0x29,0xcf,
0xa6,0xfc,0x84,0xdf,0x75,0x33,0x31,0x17,0x1c,0x12,0x19,0x83,0xa4,0x9d,0x8d,0x87,
0xb1,0x93,0x7d,0xd1,0xde,0x2b,0x37,0xfb,0xf6,0x63,0x37,0xbf,0xa6,0x1c,0xcc,0xcb,
0xea,0x43,0x87,0x92,0xe7,0x7d,0x3a,0x1f,0xc0,0x3d,0xa,0x2a,0x5e,0xc6,0xd1,0x91,
0x85,0x4c,0x78,0x26,0x2f,0x50,0x9a,0x6a,0xe8,0xb1,0x32,0x3e,0x83,0x6a,0x3,0x84,
0xfe,0x32,0x78,0x47,0x44,0x21,0x7,0x3b,0x83,0x2b,0x9c,0x70,0x96,0xc2,0xc3,0x64,
0x41,0x44,0x3a,0xf8,0xaa,0xe,0xdb,0xa8,0x83,0x32,0x9e,0x6b,0xd8,0x53,0x48,0xf4,
0xa6,0x7a,0xf3,0x65,0x6f,0xad,0x69,0xcf,0x56,0x3f,0x81,0x6f,0x4a,0x22,0x70,0xaa,
0xbc,0x94,0x3,0xac,0xaf,0x82,0x25,0x12,0xc6,0x8c,0x87,0x14,0x9,0x93,0xf0,0x37,
0xc5,0x77,0xdd,0x35,0x2b,0x67,0x36,0x7e,0x37,0xd0,0xd2,0x56,0x82,0x63,0x49,0x28,
0x4c,0x65,0xf7,0x28,0x98,0xe0,0x3b,0xd9,0xb5,0x5a,0xe7,0x16,0x8c,0x37,0xb6,0x87,
0xda,0xac,0x2f,0xd6,0xba,0x4a,0x7e,0xc9,0x29,0xfe,0xea,0x4e,0x4d,0x38,0x55,0x90,
0x3b,0xf8,0x63,0xa6,0x7f,0x3,0x57,0x63,0xc6,0x55,0xe3,0xb2,0x56,0x53,0x3,0xae,
0x1a,0xa6,0x44,0x21,0xa0,0x32,0x31,0x7c,0xab,0x9e,0x2f,0x55,0x5a,0xb8,0x7a,0xde,
0x2e,0xaa,0x67,0xe9,0xf7,0xf7,0x10,0x71,0x77,0x92,0xa7,0x93,0x36,0x53,0xd6,0x8d,
0xb4,0xeb,0xe0,0x9f,0xed,0xd7,0x5,0x18,0x44,0x95,0x51,0xb8,0x95,0xed,0xa1,0x35,
0x7e,0xae,0xe2,0x14,0x1c,0x1f,0x1f,0xd7,0x11,0xb3,0xe7,0xdb,0xf0,0x77,0x9,0x55,
0x8e,0xd8,0x9c,0xe2,0xfb,0x6e,0xb8,0xb4,0x3b,0xd7,0xa1,0xb0,0xd6,0xe,0x5e,0x83,
0x97,0x5f,0x45,0x27,0x7b,0xd1,0xc1,0x20,0x50,0x1e,0x8f,0xf7,0xd4,0x9f,0xc1,0x6,
0xab,0xad,0x47,0xb0,0x7,0x1c,0x20,0xd5,0xe2,0xbd,0xd0,0x9b,0x42,0xca,0xbd,0xe1,
0xb7,0x6c,0xc,0x6d,0xf4,0xb6,0x2d,0xee,0x10,0x9e,0xb6,0xb0,0xae,0x44,0x55,0x6d,
0x75,0x27,0xd0,0x2f,0x7e,0xb5,0x3a,0x18,0xc6,0xed,0xeb,0x9,0xed,0x61,0x3f,0xf6,
0x5b,0x5e,0x7,0xa6,0xc7,0x94,0x4b,0x6a,0x34,0x33,0x92,0x6f,0x20,0xda,0x1d,0x3,
0xd0,0xca,0x6f,0xf1,0x9e,0x81,0xb2,0xd1,0x26,0x9d,0xfd,0x4e,0xbb,0x78,0x3c,0xfd,
0xe8,0xe9,0xf9,0xd1,0x7e,0xaf,0x4a,0xd,0x7e,0x1d,0x8d,0x6e,0xf7,0x57,0x2d,0x6,
0x8b,0x25,0x1e,0x17,0x39,0x24,0xc9,0x3b,0xd2,0xf5,0xe2,0x26,0x86,0x62,0x63,0x6c,
0x67,0x1b,0x9f,0x81,0xad,0xde,0xb3,0xfb,0xc2,0xca,0x91,0x53,0xc4,0x96,0xa8,0xf0,
0x25,0x49,0xa2,0x25,0xed,0xf1,0x55,0x2b,0x32,0x80,0xd2,0x15,0xe6,0x6,0x7f,0x6,
0x5b,0x96,0x0,0x2d,0x11,0xa1,0x8a,0x50,0x9c,0x69,0x5b,0x82,0x97,0x95,0x51,0xdb,
0xc1,0x6e,0x10,0xfb,0xf,0x11,0xfb,0xf,0x71,0xf4,0x5b,0x9,0xa8,0x24,0x75,0xbf,
0x88,0xa2,0x43,0xf,0x60,0xde,0xc9,0xc9,0x2a,0x57,0x5c,0x23,0x4e,0x9d,0xfa,0x2,
0x12,0x80,0x88,0x42,0x90,0x7b,0x1f,0x1a,0xea,0xc9,0xa1,0xa,0xa1,0xdc,0xda,0xfe,
0xbb,0x5f,0x23,0x3,0x7a,0x35,0xe1,0x5b,0xc3,0x9d,0x60,0xb8,0x49,0x8d,0x12,0xa6,
0xd4,0xb4,0x3b,0x9e,0xa0,0xaa,0x1c,0xba,0x53,0x7b,0x77,0xc3,0x9c,0x84,0xf2,0x2,
0x5f,0x20,0xb9,0xd8,0x68,0xab,0xca,0xd0,0x2b,0xb9,0xa2,0x8a,0x3d,0x58,0xe1,0xac,
0x18,0x8d,0xc6,0xa5,0xa,0xfd,0x6d,0x5c,0x7a,0x60,0x41,0x67,0x47,0x1b,0xb7,0x5e,
0xec,0x3e,0x91,0x15,0xf9,0xc8,0x47,0x87,0x19,0x69,0x7a,0x3,0x98,0x6a,0xa8,0x91,
0x49,0xe3,0x50,0xb5,0x5b,0x5c,0x48,0x1d,0x51,0xb0,0xe8,0x77,0x88,0xd9,0x93,0x4d,
0x68,0xc1,0x6d,0x58,0x21,0x2c,0xb8,0x58,0x95,0x74,0xf,0x8a,0x3f,0xd8,0xcd,0x5b,
0x84,0x67,0xd8,0xa1,0x16,0x2a,0x1b,0xd6,0x42,0x2b,0x90,0xeb,0xba,0x37,0x10,0x5,
0x55,0x6b,0x9,0xb,0x45,0xe4,0xd9,0xbc,0x5b,0x5,0x86,0x32,0xd8,0x78,0x4c,0x8a,
0x1c,0x58,0xa4,0x32,0xaa,0x73,0xfe,0x87,0xfb,0x7f,0xd5,0xf5,0x1e,0x91,0x5b,0x5e,
0x96,0xf1,0xb8,0xee,0xfe,0x54,0xb2,0xf1,0x0,0xd1,0x38,0x6b,0x58,0x83,0x37,0x63,
0xbc,0xdd,0xde,0x1,0xd4,0x2c,0xa7,0x4,0xee,0x49,0xd7,0x35,0xdc,0xd,0xfd,0xf2,
0xb3,0x9a,0x23,0x77,0xe4,0x53,0x2e,0x52,0xb8,0x7a,0x3f,0xde,0x7f,0x6b,0xce,0xe0,
0x59,0xc5,0xe5,0x93,0x90,0x93,0x25,0xa2,0xfa,0x63,0x0,0xac,0x14,0x7,0xad,0xdb,
0x9c,0x3f,0x70,0x75,0x5b,0xf6,0x33,0x95,0x56,0x3a,0xa2,0x94,0xa8,0x7b,0x74,0xdc,
0xe3,0xc0,0x9c,0xe7,0x25,0xdc,0xda,0x2f,0xd4,0x7f,0x5d,0xbf,0xb5,0x1b,0xce,0xa2,
0x6e,0x27,0xd1,0x2f,0x10,0xe4,0xba,0xa5,0x7c,0x0,0x14,0xc,0x33,0xc2,0xb6,0xac,
0x1a,0xb,0xdb,0xfe,0xdf,0xb1,0x97,0x32,0x1f,0x9b,0x9a,0xbd,0xa1,0xeb,0x99,0x9e,
0x2,0xcf,0xf6,0x95,0x64,0xbb,0xbd,0x5d,0x5e,0xd7,0x5f,0xd4,0xad,0xa8,0x56,0x6d,
0xbf,0x27,0x85,0xfc,0x4c,0xf0,0xad,0xaf,0xc9,0x8,0x2e,0x91,0x2,0x14,0xa7,0xc0,
0x9b,0xf,0x2a,0x2e,0x2b,0xf0,0x65,0x53,0xb5,0xa3,0x79,0x75,0xd5,0xab,0x4b,0x92,
0x9d,0x55,0x2a,0x16,0x6b,0xa4,0x7a,0xdd,0x8a,0x7b,0xc5,0x58,0x15,0x93,0xa1,0x10,
0x74,0x56,0x52,0xea,0xb1,0xae,0x14,0xaa,0x37,0x6b,0x9a,0xbc,0x91,0x43,0x1b,0x32,
0xee,0x2e,0x70,0x95,0x8,0x4e,0xe9,0xf9,0x1a,0xb0,0xea,0xd2,0x1f,0x75,0x25,0x3e,
0xc7,0x19,0xff,0xb,0x5d,0xc8,0xb5,0x83,0xc3,0xee,0x87,0xb,0x1f,0x61,0x80,0xd8,
0x5a,0x33,0x5a,0xb7,0xd0,0x7e,0x1a,0xb2,0xd6,0x17,0x7e,0xf7,0xfa,0xee,0xb9,0xeb,
0x39,0x66,0xc0,0xe7,0x1,0x43,0xd5,0x1e,0x73,0x97,0x68,0x91,0x96,0xe6,0x43,0xe6,
0x41,0xbf,0xd6,0xfa,0x32,0x57,0x15,0xaf,0x5f,0xb3,0xd3,0x9d,0x7b,0x6e,0x4b,0x3f,
0xbb,0x3a,0x8f,0x2,0x44,0x17,0xd4,0x7a,0xd0,0xa3,0x65,0x6e,0xaf,0x86,0x7,0x63,
0xdc,0x2b,0x92,0xf5,0x7d,0x3,0xfe,0xf9,0xf,0x57,0x8,0x1f,0x57,
};
static const unsigned char qt_resource_name[] = {
// qt
0x0,0x2,
0x0,0x0,0x7,0x84,
0x0,0x71,
0x0,0x74,
// qml
0x0,0x3,
0x0,0x0,0x78,0x3c,
0x0,0x71,
0x0,0x6d,0x0,0x6c,
// Minecraft_launcher
0x0,0x12,
0xd,0x7e,0xf4,0x2,
0x0,0x4d,
0x0,0x69,0x0,0x6e,0x0,0x65,0x0,0x63,0x0,0x72,0x0,0x61,0x0,0x66,0x0,0x74,0x0,0x5f,0x0,0x6c,0x0,0x61,0x0,0x75,0x0,0x6e,0x0,0x63,0x0,0x68,0x0,0x65,
0x0,0x72,
// Main.qml
0x0,0x8,
0x8,0x1,0x5e,0x5c,
0x0,0x4d,
0x0,0x61,0x0,0x69,0x0,0x6e,0x0,0x2e,0x0,0x71,0x0,0x6d,0x0,0x6c,
};
static const unsigned char qt_resource_struct[] = {
// :
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x2,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt/qml
0x0,0x0,0x0,0xa,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x3,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt/qml/Minecraft_launcher
0x0,0x0,0x0,0x16,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt/qml/Minecraft_launcher/Main.qml
0x0,0x0,0x0,0x40,0x0,0x1,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
0x0,0x0,0x1,0x9b,0x3e,0x73,0x2f,0xee,
};
#ifdef QT_NAMESPACE
# define QT_RCC_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name
# define QT_RCC_MANGLE_NAMESPACE0(x) x
# define QT_RCC_MANGLE_NAMESPACE1(a, b) a##_##b
# define QT_RCC_MANGLE_NAMESPACE2(a, b) QT_RCC_MANGLE_NAMESPACE1(a,b)
# define QT_RCC_MANGLE_NAMESPACE(name) QT_RCC_MANGLE_NAMESPACE2( \
QT_RCC_MANGLE_NAMESPACE0(name), QT_RCC_MANGLE_NAMESPACE0(QT_NAMESPACE))
#else
# define QT_RCC_PREPEND_NAMESPACE(name) name
# define QT_RCC_MANGLE_NAMESPACE(name) name
#endif
#if defined(QT_INLINE_NAMESPACE)
inline namespace QT_NAMESPACE {
#elif defined(QT_NAMESPACE)
namespace QT_NAMESPACE {
#endif
bool qRegisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *);
bool qUnregisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *);
#if defined(__ELF__) || defined(__APPLE__)
static inline unsigned char qResourceFeatureZlib()
{
extern const unsigned char qt_resourceFeatureZlib;
return qt_resourceFeatureZlib;
}
#else
unsigned char qResourceFeatureZlib();
#endif
#ifdef QT_NAMESPACE
}
#endif
int QT_RCC_MANGLE_NAMESPACE(qInitResources_appMinecraft_launcher_raw_qml_0)();
int QT_RCC_MANGLE_NAMESPACE(qInitResources_appMinecraft_launcher_raw_qml_0)()
{
int version = 3;
QT_RCC_PREPEND_NAMESPACE(qRegisterResourceData)
(version, qt_resource_struct, qt_resource_name, qt_resource_data);
return 1;
}
int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_appMinecraft_launcher_raw_qml_0)();
int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_appMinecraft_launcher_raw_qml_0)()
{
int version = 3;
version += QT_RCC_PREPEND_NAMESPACE(qResourceFeatureZlib());
QT_RCC_PREPEND_NAMESPACE(qUnregisterResourceData)
(version, qt_resource_struct, qt_resource_name, qt_resource_data);
return 1;
}
#ifdef __clang__
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wexit-time-destructors"
#endif
namespace {
struct initializer {
initializer() { QT_RCC_MANGLE_NAMESPACE(qInitResources_appMinecraft_launcher_raw_qml_0)(); }
~initializer() { QT_RCC_MANGLE_NAMESPACE(qCleanupResources_appMinecraft_launcher_raw_qml_0)(); }
} dummy;
}
#ifdef __clang__
# pragma clang diagnostic pop
#endif
@@ -1,132 +0,0 @@
/****************************************************************************
** Resource object code
**
** Created by: The Resource Compiler for Qt version 6.10.1
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#ifdef _MSC_VER
// disable informational message "function ... selected for automatic inline expansion"
#pragma warning (disable: 4711)
#endif
static const unsigned char qt_resource_data[] = {
// qmldir
0x0,0x0,0x0,0x91,
0x6d,
0x6f,0x64,0x75,0x6c,0x65,0x20,0x4d,0x69,0x6e,0x65,0x63,0x72,0x61,0x66,0x74,0x5f,
0x6c,0x61,0x75,0x6e,0x63,0x68,0x65,0x72,0xd,0xa,0x74,0x79,0x70,0x65,0x69,0x6e,
0x66,0x6f,0x20,0x61,0x70,0x70,0x4d,0x69,0x6e,0x65,0x63,0x72,0x61,0x66,0x74,0x5f,
0x6c,0x61,0x75,0x6e,0x63,0x68,0x65,0x72,0x2e,0x71,0x6d,0x6c,0x74,0x79,0x70,0x65,
0x73,0xd,0xa,0x70,0x72,0x65,0x66,0x65,0x72,0x20,0x3a,0x2f,0x71,0x74,0x2f,0x71,
0x6d,0x6c,0x2f,0x4d,0x69,0x6e,0x65,0x63,0x72,0x61,0x66,0x74,0x5f,0x6c,0x61,0x75,
0x6e,0x63,0x68,0x65,0x72,0x2f,0xd,0xa,0x4d,0x61,0x69,0x6e,0x20,0x32,0x35,0x34,
0x2e,0x30,0x20,0x4d,0x61,0x69,0x6e,0x2e,0x71,0x6d,0x6c,0xd,0xa,0x64,0x65,0x70,
0x65,0x6e,0x64,0x73,0x20,0x51,0x74,0x51,0x75,0x69,0x63,0x6b,0xd,0xa,0xd,0xa,
};
static const unsigned char qt_resource_name[] = {
// qt
0x0,0x2,
0x0,0x0,0x7,0x84,
0x0,0x71,
0x0,0x74,
// qml
0x0,0x3,
0x0,0x0,0x78,0x3c,
0x0,0x71,
0x0,0x6d,0x0,0x6c,
// Minecraft_launcher
0x0,0x12,
0xd,0x7e,0xf4,0x2,
0x0,0x4d,
0x0,0x69,0x0,0x6e,0x0,0x65,0x0,0x63,0x0,0x72,0x0,0x61,0x0,0x66,0x0,0x74,0x0,0x5f,0x0,0x6c,0x0,0x61,0x0,0x75,0x0,0x6e,0x0,0x63,0x0,0x68,0x0,0x65,
0x0,0x72,
// qmldir
0x0,0x6,
0x7,0x84,0x2b,0x2,
0x0,0x71,
0x0,0x6d,0x0,0x6c,0x0,0x64,0x0,0x69,0x0,0x72,
};
static const unsigned char qt_resource_struct[] = {
// :
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x2,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt/qml
0x0,0x0,0x0,0xa,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x3,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt/qml/Minecraft_launcher
0x0,0x0,0x0,0x16,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x4,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/qt/qml/Minecraft_launcher/qmldir
0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
0x0,0x0,0x1,0x9b,0x3c,0x5b,0x52,0x6c,
};
#ifdef QT_NAMESPACE
# define QT_RCC_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name
# define QT_RCC_MANGLE_NAMESPACE0(x) x
# define QT_RCC_MANGLE_NAMESPACE1(a, b) a##_##b
# define QT_RCC_MANGLE_NAMESPACE2(a, b) QT_RCC_MANGLE_NAMESPACE1(a,b)
# define QT_RCC_MANGLE_NAMESPACE(name) QT_RCC_MANGLE_NAMESPACE2( \
QT_RCC_MANGLE_NAMESPACE0(name), QT_RCC_MANGLE_NAMESPACE0(QT_NAMESPACE))
#else
# define QT_RCC_PREPEND_NAMESPACE(name) name
# define QT_RCC_MANGLE_NAMESPACE(name) name
#endif
#if defined(QT_INLINE_NAMESPACE)
inline namespace QT_NAMESPACE {
#elif defined(QT_NAMESPACE)
namespace QT_NAMESPACE {
#endif
bool qRegisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *);
bool qUnregisterResourceData(int, const unsigned char *, const unsigned char *, const unsigned char *);
#ifdef QT_NAMESPACE
}
#endif
int QT_RCC_MANGLE_NAMESPACE(qInitResources_qmake_Minecraft_launcher)();
int QT_RCC_MANGLE_NAMESPACE(qInitResources_qmake_Minecraft_launcher)()
{
int version = 3;
QT_RCC_PREPEND_NAMESPACE(qRegisterResourceData)
(version, qt_resource_struct, qt_resource_name, qt_resource_data);
return 1;
}
int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qmake_Minecraft_launcher)();
int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qmake_Minecraft_launcher)()
{
int version = 3;
QT_RCC_PREPEND_NAMESPACE(qUnregisterResourceData)
(version, qt_resource_struct, qt_resource_name, qt_resource_data);
return 1;
}
#ifdef __clang__
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wexit-time-destructors"
#endif
namespace {
struct initializer {
initializer() { QT_RCC_MANGLE_NAMESPACE(qInitResources_qmake_Minecraft_launcher)(); }
~initializer() { QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qmake_Minecraft_launcher)(); }
} dummy;
}
#ifdef __clang__
# pragma clang diagnostic pop
#endif
@@ -1,21 +0,0 @@
The MIT License (MIT)
Copyright (c) 2019 JFrog
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
@@ -1,405 +0,0 @@
#
# Internal Qt Creator variable reference
#
foreach(qtcreator_var
QT_QMAKE_EXECUTABLE CMAKE_PREFIX_PATH CMAKE_C_COMPILER CMAKE_CXX_COMPILER
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO)
set(__just_reference_${qtcreator_var} ${${qtcreator_var}})
endforeach()
option(QT_CREATOR_SOURCE_GROUPS "Qt Creator source groups extensions" ON)
if (QT_CREATOR_SOURCE_GROUPS)
source_group("Resources" REGULAR_EXPRESSION "\\.(pdf|plist|png|jpeg|jpg|storyboard|xcassets|qrc|svg|gif|ico|webp)$")
source_group("Forms" REGULAR_EXPRESSION "\\.(ui)$")
source_group("State charts" REGULAR_EXPRESSION "\\.(scxml)$")
source_group("Source Files" REGULAR_EXPRESSION
"\\.(C|F|M|c|c\\+\\+|cc|cpp|mpp|cxx|ixx|cppm|ccm|cxxm|c\\+\\+m|cu|f|f90|for|fpp|ftn|m|mm|rc|def|r|odl|idl|hpj|bat|qml|js)$"
)
endif()
#
# Set a better default value for CMAKE_INSTALL_PREFIX
#
function(qtc_modify_default_install_prefix)
# If at configure time the user didn't specify a CMAKE_INSTALL_PREFIX variable
# Modules/CMakeGenericSystem.cmake will set a default value
# to CMAKE_INSTALL_PREFIX and set CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT to ON
# In practice there are cases when CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT is
# set to ON and a custom CMAKE_INSTALL_PREFIX is set
# Do the original CMAKE_INSTALL_PREFIX detection
if(CMAKE_HOST_UNIX)
set(original_cmake_install_prefix "/usr/local")
else()
GetDefaultWindowsPrefixBase(CMAKE_GENERIC_PROGRAM_FILES)
set(original_cmake_install_prefix
"${CMAKE_GENERIC_PROGRAM_FILES}/${PROJECT_NAME}")
unset(CMAKE_GENERIC_PROGRAM_FILES)
endif()
# When the user code didn't modify the CMake set CMAKE_INSTALL_PREFIX
# then set the "/tmp" better value for CMAKE_INSTALL_PREFIX
if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND
CMAKE_INSTALL_PREFIX STREQUAL "${original_cmake_install_prefix}")
set_property(CACHE CMAKE_INSTALL_PREFIX PROPERTY VALUE "/tmp")
endif()
endfunction()
if (CMAKE_VERSION GREATER_EQUAL "3.19")
cmake_language(DEFER CALL qtc_modify_default_install_prefix)
endif()
if (EXISTS "${CMAKE_SOURCE_DIR}/QtCreatorPackageManager.cmake")
include("${CMAKE_SOURCE_DIR}/QtCreatorPackageManager.cmake")
endif()
if (QT_CREATOR_SKIP_PACKAGE_MANAGER_SETUP)
return()
endif()
option(QT_CREATOR_SKIP_PACKAGE_MANAGER_SETUP "Skip Qt Creator's package manager auto-setup" OFF)
# Store the C/C++ object output extension
if (CMAKE_VERSION GREATER_EQUAL "3.19")
cmake_language(DEFER CALL set CMAKE_C_OUTPUT_EXTENSION "${CMAKE_C_OUTPUT_EXTENSION}" CACHE STRING "" FORCE)
cmake_language(DEFER CALL set CMAKE_CXX_OUTPUT_EXTENSION "${CMAKE_CXX_OUTPUT_EXTENSION}" CACHE STRING "" FORCE)
endif()
macro(qtc_auto_setup_compiler_standard toolchainFile)
foreach(lang_var C CXX CUDA OBJC OBJCXX)
foreach(prop_var STANDARD STANDARD_REQUIRED EXTENSIONS)
if (CMAKE_${lang_var}_${prop_var})
file(APPEND "${toolchainFile}"
"set(CMAKE_${lang_var}_${prop_var} ${CMAKE_${lang_var}_${prop_var}})\n")
endif()
endforeach()
endforeach()
# Forward important CMake variables to the package manager in the toolchain file
foreach(fwd_var CMAKE_MSVC_RUNTIME_LIBRARY CMAKE_SYSROOT CMAKE_OSX_SYSROOT CMAKE_OSX_ARCHITECTURES)
if (${fwd_var})
file(APPEND "${toolchainFile}"
"set(${fwd_var} ${${fwd_var}})\n")
endif()
endforeach()
endmacro()
#
# conan
#
macro(qtc_auto_setup_conan)
foreach(file conanfile.txt conanfile.py)
if (EXISTS "${CMAKE_SOURCE_DIR}/${file}")
set(conanfile_txt "${CMAKE_SOURCE_DIR}/${file}")
break()
endif()
endforeach()
if (conanfile_txt AND NOT QT_CREATOR_SKIP_CONAN_SETUP)
option(QT_CREATOR_SKIP_CONAN_SETUP "Skip Qt Creator's conan package manager auto-setup" OFF)
set(QT_CREATOR_CONAN_BUILD_POLICY "missing" CACHE STRING "Qt Creator's conan package manager auto-setup build policy. This is used for the BUILD property of cmake_conan_run")
set_property(
DIRECTORY "${CMAKE_SOURCE_DIR}"
APPEND
PROPERTY CMAKE_CONFIGURE_DEPENDS "${conanfile_txt}")
find_program(conan_program conan)
if (NOT conan_program)
message(WARNING "Qt Creator: conan executable not found. "
"Package manager auto-setup will be skipped. "
"To disable this warning set QT_CREATOR_SKIP_CONAN_SETUP to ON.")
return()
endif()
execute_process(COMMAND ${conan_program} --version
RESULT_VARIABLE result_code
OUTPUT_VARIABLE conan_version_output
ERROR_VARIABLE conan_version_output)
if (NOT result_code EQUAL 0)
message(FATAL_ERROR "conan --version failed='${result_code}: ${conan_version_output}")
endif()
string(REGEX REPLACE ".*Conan version ([0-9].[0-9]).*" "\\1" conan_version "${conan_version_output}")
set(conanfile_timestamp_file "${CMAKE_BINARY_DIR}/conan-dependencies/conanfile.timestamp")
file(TIMESTAMP "${conanfile_txt}" conanfile_timestamp)
set(do_conan_installation ON)
if (EXISTS "${conanfile_timestamp_file}")
file(READ "${conanfile_timestamp_file}" old_conanfile_timestamp)
if ("${conanfile_timestamp}" STREQUAL "${old_conanfile_timestamp}")
set(do_conan_installation OFF)
endif()
endif()
set(conanfile_build_policy_file "${CMAKE_BINARY_DIR}/conan-dependencies/conanfile.buildpolicy")
if (EXISTS "${conanfile_build_policy_file}")
file(READ "${conanfile_build_policy_file}" build_policy)
if (NOT "${build_policy}" STREQUAL "${QT_CREATOR_CONAN_BUILD_POLICY}")
set(do_conan_installation ON)
endif()
endif()
if (do_conan_installation)
message(STATUS "Qt Creator: conan package manager auto-setup. "
"Skip this step by setting QT_CREATOR_SKIP_CONAN_SETUP to ON.")
file(COPY "${conanfile_txt}" DESTINATION "${CMAKE_BINARY_DIR}/conan-dependencies/")
# conanfile should have a generator specified, when both file and conan_install
# specifcy the CMakeDeps generator, conan_install will issue an error
file(READ "${conanfile_txt}" conanfile_text_content)
unset(conan_generator)
if (NOT "${conanfile_text_content}" MATCHES ".*CMakeDeps.*")
set(conan_generator "-g CMakeDeps")
endif()
file(WRITE "${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake" "
set(CMAKE_C_COMPILER \"${CMAKE_C_COMPILER}\")
set(CMAKE_CXX_COMPILER \"${CMAKE_CXX_COMPILER}\")
")
qtc_auto_setup_compiler_standard("${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake")
if (CMAKE_TOOLCHAIN_FILE)
file(APPEND "${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake"
"include(\"${CMAKE_TOOLCHAIN_FILE}\")\n")
endif()
file(WRITE "${CMAKE_BINARY_DIR}/conan-dependencies/CMakeLists.txt" "
cmake_minimum_required(VERSION 3.15)
unset(CMAKE_PROJECT_INCLUDE_BEFORE CACHE)
project(conan-setup)
if (${conan_version} VERSION_GREATER_EQUAL 2.0)
set(CONAN_COMMAND \"${conan_program}\")
include(\"${CMAKE_CURRENT_LIST_DIR}/conan_provider.cmake\")
conan_profile_detect_default()
detect_host_profile(\"${CMAKE_BINARY_DIR}/conan-dependencies/conan_host_profile\")
set(build_types \${CMAKE_BUILD_TYPE})
if (CMAKE_CONFIGURATION_TYPES)
set(build_types \${CMAKE_CONFIGURATION_TYPES})
endif()
foreach(type \${build_types})
conan_install(
-pr \"${CMAKE_BINARY_DIR}/conan-dependencies/conan_host_profile\"
--build=${QT_CREATOR_CONAN_BUILD_POLICY}
-s build_type=\${type}
${conan_generator})
endforeach()
get_property(CONAN_INSTALL_SUCCESS GLOBAL PROPERTY CONAN_INSTALL_SUCCESS)
if (CONAN_INSTALL_SUCCESS)
get_property(CONAN_GENERATORS_FOLDER GLOBAL PROPERTY CONAN_GENERATORS_FOLDER)
file(TO_CMAKE_PATH \"\${CONAN_GENERATORS_FOLDER}\" CONAN_GENERATORS_FOLDER)
file(WRITE \"${CMAKE_BINARY_DIR}/conan-dependencies/conan_paths.cmake\" \"
list(PREPEND CMAKE_PREFIX_PATH \\\"\${CONAN_GENERATORS_FOLDER}\\\")
list(PREPEND CMAKE_MODULE_PATH \\\"\${CONAN_GENERATORS_FOLDER}\\\")
list(PREPEND CMAKE_FIND_ROOT_PATH \\\"\${CONAN_GENERATORS_FOLDER}\\\")
list(REMOVE_DUPLICATES CMAKE_PREFIX_PATH)
list(REMOVE_DUPLICATES CMAKE_MODULE_PATH)
list(REMOVE_DUPLICATES CMAKE_FIND_ROOT_PATH)
set(CMAKE_PREFIX_PATH \\\"\\\${CMAKE_PREFIX_PATH}\\\" CACHE STRING \\\"\\\" FORCE)
set(CMAKE_MODULE_PATH \\\"\\\${CMAKE_MODULE_PATH}\\\" CACHE STRING \\\"\\\" FORCE)
set(CMAKE_FIND_ROOT_PATH \\\"\\\${CMAKE_FIND_ROOT_PATH}\\\" CACHE STRING \\\"\\\" FORCE)
\")
endif()
else()
include(\"${CMAKE_CURRENT_LIST_DIR}/conan.cmake\")
conan_cmake_run(
CONANFILE \"${conanfile_txt}\"
INSTALL_FOLDER \"${CMAKE_BINARY_DIR}/conan-dependencies\"
GENERATORS cmake_paths cmake_find_package json
BUILD ${QT_CREATOR_CONAN_BUILD_POLICY}
ENV CONAN_CMAKE_TOOLCHAIN_FILE=\"${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake\"
)
endif()
")
if (NOT DEFINED CMAKE_BUILD_TYPE AND NOT DEFINED CMAKE_CONFIGURATION_TYPES)
set(CMAKE_CONFIGURATION_TYPES "Debug;Release")
endif()
execute_process(COMMAND ${CMAKE_COMMAND}
-S "${CMAKE_BINARY_DIR}/conan-dependencies/"
-B "${CMAKE_BINARY_DIR}/conan-dependencies/build"
-C "${CMAKE_BINARY_DIR}/qtcsettings.cmake"
-D "CMAKE_TOOLCHAIN_FILE=${CMAKE_BINARY_DIR}/conan-dependencies/toolchain.cmake"
-G ${CMAKE_GENERATOR}
-D CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-D "CMAKE_CONFIGURATION_TYPES=${CMAKE_CONFIGURATION_TYPES}"
RESULT_VARIABLE result
)
if (result EQUAL 0)
file(WRITE "${conanfile_timestamp_file}" "${conanfile_timestamp}")
file(WRITE "${conanfile_build_policy_file}" ${QT_CREATOR_CONAN_BUILD_POLICY})
else()
message(WARNING "Qt Creator's conan package manager auto-setup failed. Consider setting "
"QT_CREATOR_SKIP_CONAN_SETUP to ON and reconfigure to skip this step.")
return()
endif()
endif()
include("${CMAKE_BINARY_DIR}/conan-dependencies/conan_paths.cmake")
endif()
unset(conanfile_txt)
endmacro()
qtc_auto_setup_conan()
#
# vcpkg
#
macro(qtc_auto_setup_vcpkg)
if (EXISTS "${CMAKE_SOURCE_DIR}/vcpkg.json" AND NOT QT_CREATOR_SKIP_VCPKG_SETUP)
option(QT_CREATOR_SKIP_VCPKG_SETUP "Skip Qt Creator's vcpkg package manager auto-setup" OFF)
set_property(
DIRECTORY "${CMAKE_SOURCE_DIR}"
APPEND
PROPERTY CMAKE_CONFIGURE_DEPENDS "${CMAKE_SOURCE_DIR}/vcpkg.json")
find_program(vcpkg_program vcpkg
PATHS ${CMAKE_SOURCE_DIR}/vcpkg ${CMAKE_SOURCE_DIR}/3rdparty/vcpkg $ENV{VCPKG_ROOT}
NO_DEFAULT_PATH
)
if (NOT vcpkg_program)
message(WARNING "Qt Creator: vcpkg executable not found. "
"Package manager auto-setup will be skipped. "
"To disable this warning set QT_CREATOR_SKIP_VCPKG_SETUP to ON.")
return()
endif()
execute_process(COMMAND ${vcpkg_program} version
RESULT_VARIABLE result_code
OUTPUT_VARIABLE vcpkg_version_output
ERROR_VARIABLE vcpkg_version_output)
if (NOT result_code EQUAL 0)
message(FATAL_ERROR "vcpkg version failed='${result_code}: ${vcpkg_version_output}")
endif()
# Resolve any symlinks
get_filename_component(vpkg_program_real_path ${vcpkg_program} REALPATH)
get_filename_component(vpkg_root ${vpkg_program_real_path} DIRECTORY)
if (NOT EXISTS "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake")
message(STATUS "Qt Creator: vcpkg package manager auto-setup. "
"Skip this step by setting QT_CREATOR_SKIP_VCPKG_SETUP to ON.")
file(WRITE "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" "
set(CMAKE_C_COMPILER \"${CMAKE_C_COMPILER}\")
set(CMAKE_CXX_COMPILER \"${CMAKE_CXX_COMPILER}\")
")
qtc_auto_setup_compiler_standard("${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake")
if (CMAKE_TOOLCHAIN_FILE AND NOT
CMAKE_TOOLCHAIN_FILE STREQUAL "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake")
file(APPEND "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake"
"include(\"${CMAKE_TOOLCHAIN_FILE}\")\n")
endif()
if (VCPKG_TARGET_TRIPLET)
set(vcpkg_triplet ${VCPKG_TARGET_TRIPLET})
else()
if (ANDROID_ABI)
if (ANDROID_ABI STREQUAL "armeabi-v7a")
set(vcpkg_triplet arm-neon-android)
elseif (ANDROID_ABI STREQUAL "arm64-v8a")
set(vcpkg_triplet arm64-android)
elseif (ANDROID_ABI STREQUAL "x86")
set(vcpkg_triplet x86-android)
elseif (ANDROID_ABI STREQUAL "x86_64")
set(vcpkg_triplet x64-android)
else()
message(FATAL_ERROR "Unsupported Android ABI: ${ANDROID_ABI}")
endif()
# Needed by vcpkg/scripts/toolchains/android.cmake
file(APPEND "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" "
set(ENV{ANDROID_NDK_HOME} \"${ANDROID_NDK}\")
")
elseif (WIN32)
if ("$ENV{PROCESSOR_ARCHITECTURE}" STREQUAL "ARM64")
set(vcpkg_triplet arm64-mingw-static)
else()
set(vcpkg_triplet x64-mingw-static)
endif()
if (CMAKE_CXX_COMPILER MATCHES ".*/(.*)/cl.exe")
string(TOLOWER ${CMAKE_MATCH_1} host_arch_lowercase)
set(vcpkg_triplet ${host_arch_lowercase}-windows)
endif()
elseif(APPLE)
# We're too early to use CMAKE_HOST_SYSTEM_PROCESSOR
execute_process(
COMMAND uname -m
OUTPUT_VARIABLE __apple_host_system_processor
OUTPUT_STRIP_TRAILING_WHITESPACE)
if (__apple_host_system_processor MATCHES "arm64")
set(vcpkg_triplet arm64-osx)
else()
set(vcpkg_triplet x64-osx)
endif()
else()
# We're too early to use CMAKE_HOST_SYSTEM_PROCESSOR
execute_process(
COMMAND uname -m
OUTPUT_VARIABLE __linux_host_system_processor
OUTPUT_STRIP_TRAILING_WHITESPACE)
if (__linux_host_system_processor MATCHES "aarch64")
set(vcpkg_triplet arm64-linux)
else()
set(vcpkg_triplet x64-linux)
endif()
endif()
endif()
file(APPEND "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" "
set(VCPKG_TARGET_TRIPLET ${vcpkg_triplet})
include(\"${vpkg_root}/scripts/buildsystems/vcpkg.cmake\")
")
endif()
set(CMAKE_TOOLCHAIN_FILE "${CMAKE_BINARY_DIR}/vcpkg-dependencies/toolchain.cmake" CACHE PATH "" FORCE)
# Save CMAKE_PREFIX_PATH and CMAKE_MODULE_PATH as cache variables
if (CMAKE_VERSION GREATER_EQUAL "3.19")
cmake_language(DEFER CALL list REMOVE_DUPLICATES CMAKE_PREFIX_PATH)
cmake_language(DEFER CALL list REMOVE_DUPLICATES CMAKE_MODULE_PATH)
cmake_language(DEFER CALL set CMAKE_PREFIX_PATH "${CMAKE_PREFIX_PATH}" CACHE STRING "" FORCE)
cmake_language(DEFER CALL set CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" CACHE STRING "" FORCE)
endif()
endif()
endmacro()
qtc_auto_setup_vcpkg()
#
# MaintenanceTool
#
if (QT_CREATOR_SKIP_MAINTENANCE_TOOL_PROVIDER)
return()
endif()
option(QT_CREATOR_SKIP_MAINTENANCE_TOOL_PROVIDER
"Skip Qt Creator's MaintenanceTool find_package provider" OFF)
option(QT_CREATOR_MAINTENANCE_TOOL_PROVIDER_USE_CLI
"Use CLI mode for Qt Creator's MaintenanceTool find_package provider" OFF)
function(qtc_maintenance_provider_missing_variable_message variable)
message(STATUS "Qt Creator: ${variable} was not set. "
"Qt MaintenanceTool cannot be used to install missing Qt modules that you specify in find_package(). "
"To disable this message set QT_CREATOR_SKIP_MAINTENANCE_TOOL_PROVIDER to ON.")
endfunction()
if (NOT QT_MAINTENANCE_TOOL)
qtc_maintenance_provider_missing_variable_message(QT_MAINTENANCE_TOOL)
return()
endif()
if (NOT QT_QMAKE_EXECUTABLE)
qtc_maintenance_provider_missing_variable_message(QT_QMAKE_EXECUTABLE)
return()
endif()
if (CMAKE_VERSION GREATER_EQUAL "3.24")
list(APPEND CMAKE_PROJECT_TOP_LEVEL_INCLUDES ${CMAKE_CURRENT_LIST_DIR}/maintenance_tool_provider.cmake)
else()
message(WARNING "Qt Creator: CMake version 3.24 is needed for MaintenanceTool find_package() provider. "
"To disable this warning set QT_CREATOR_SKIP_MAINTENANCE_TOOL_PROVIDER to ON.")
endif()
File diff suppressed because it is too large. Load diff
Loaded 100 of 1347 files, more files were not shown because too many files have changed in this diff. Show more