Compare commits

..
Author SHA1 Message Date
isanae 08e0d85d85 added DownloadInfo for headers and user agent 2021-03-02 19:14:14 -05:00
isanae 2094d7d15f added IPluginRepository to container
downloads now have an IRepositoryDownload to manage the actual downloads
curl downloader uses IDownload and IDownloader
download stats, allow downloading to buffer
2021-03-02 17:15:52 -05:00
isanae 25a69bccd3 split queue back into manager 2021-02-17 14:16:55 -05:00
isanae a39a80ec4c log wrapper, verbose log
log curl version
2021-02-17 11:18:28 -05:00
isanae 42d432e5aa moved to curldownloader 2021-02-16 04:53:49 -05:00
isanae acb55d431c fixed output file staying opened when moving to queue
refactored removing from queue
2021-02-16 04:43:26 -05:00
isanae 95a2cc93b9 queue management 2021-02-16 04:23:20 -05:00
isanae 35a0474ac1 initial new download manager 2021-02-16 02:33:20 -05:00
556 changed files with 51210 additions and 51602 deletions
-41
View File
@@ -1,41 +0,0 @@
---
# We'll use defaults from the LLVM style, but with 4 columns indentation.
BasedOnStyle: LLVM
IndentWidth: 2
---
Language: Cpp
DeriveLineEnding: false
UseCRLF: true
DerivePointerAlignment: false
PointerAlignment: Left
AlignConsecutiveAssignments: true
AllowShortFunctionsOnASingleLine: Inline
AllowShortIfStatementsOnASingleLine: Never
AllowShortLambdasOnASingleLine: Empty
AlwaysBreakTemplateDeclarations: Yes
AccessModifierOffset: -2
AlignTrailingComments: true
SpacesBeforeTrailingComments: 2
NamespaceIndentation: Inner
MaxEmptyLinesToKeep: 1
BreakBeforeBraces: Custom
BraceWrapping:
AfterCaseLabel: false
AfterClass: true
AfterControlStatement: false
AfterEnum: true
AfterFunction: true
AfterNamespace: true
AfterStruct: true
AfterUnion: true
AfterExternBlock: true
BeforeCatch: false
BeforeElse: false
BeforeLambdaBody: false
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: false
SplitEmptyRecord: false
SplitEmptyNamespace: true
ColumnLimit: 88
ForEachMacros: ['Q_FOREACH', 'foreach']
-2
View File
@@ -1,2 +0,0 @@
d13f6bb870cdda71257f665367be8ef9fca86255
86bb01ba9eac879d3685c439ac9da0028bc4bc80
-7
View File
@@ -1,7 +0,0 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.cpp text eol=crlf
*.h text eol=crlf
@@ -2,7 +2,7 @@
name: Game support Request
about: Request support for a new game
title: Add support for game [GAME NAME]
labels: 'Feature Request, additional games support, area: mo2 game plugins'
labels: 'additional games support, Feature Request, area: mo2 game plugins'
assignees: ''
---
@@ -18,7 +18,7 @@ assignees: ''
- **Nexus ID [optional]:** ID of the game on Nexus (you can usually find this in Nexus URL).
- **Executable:** Name of the main executable for the game (relative to the game folder).
- **Launcher [optional]:** Name of the game launcher (relative to the game folder).
- **Data path:** Path to the data folder of the game (relative to the game folder). Please note that the Virtual Files System often does not work for top level dlls or exe files.
- **Data path:** Path to the data folder of the game (relative to the game folder).
- **Documents path:** Path to folder containing INI files, etc., for the game (usually under "My Games", or the game folder itself).
- **Saves directory [optional]:** Path to the folder containing save games (this default to the path above).
- **Save extension [optional]:** Extension of the saves
+1 -1
View File
@@ -8,7 +8,7 @@ assignees: ''
---
## The problem:
Briefly describe the issue you are experiencing. Tell us what you were trying to do and what happened instead. Remember, this is _not_ a place to ask questions. For that, go to our [Discord server](https://discord.gg/ewUVAqyrQX).
Briefly describe the issue you are experiencing. Tell us what you were trying to do and what happened instead. Remember, this is _not_ a place to ask questions. For that, go to our [discord channel](https://discord.gg/5tCqt6V)
## To Reproduce:
-52
View File
@@ -1,52 +0,0 @@
name: Build ModOrganizer 2
on:
push:
branches: master
pull_request:
types: [opened, synchronize, reopened]
env:
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite"
jobs:
build:
runs-on: windows-2022
steps:
# https://learn.microsoft.com/en-us/vcpkg/consume/binary-caching-github-actions-cache
- name: Export GitHub Actions cache environment variables
uses: actions/github-script@v7
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
version: 6.7.1
modules: qtpositioning qtwebchannel qtwebengine qtwebsockets
cache: true
- uses: actions/checkout@v4
- name: "Set environmental variables"
shell: bash
run: |
echo "VCPKG_ROOT=$VCPKG_INSTALLATION_ROOT" >> $GITHUB_ENV
- name: Configure ModOrganizer
shell: pwsh
run: |
cmake --preset vs2022-windows-standalone `
"-DCMAKE_PREFIX_PATH=${env:QT_ROOT_DIR}\msvc2019_64" `
"-DCMAKE_INSTALL_PREFIX=install"
- name: Build ModOrganizer
run: cmake --build vsbuild --config RelWithDebInfo --target INSTALL
- name: Package ModOrganizer
uses: actions/upload-artifact@master
with:
name: modorganizer
path: ./install
-17
View File
@@ -1,17 +0,0 @@
name: Lint ModOrganizer 2
on:
push:
pull_request:
types: [opened, synchronize, reopened]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check format
uses: ModOrganizer2/check-formatting-action@master
with:
check-path: "."
exclude-regex: "third-party"
-1
View File
@@ -12,6 +12,5 @@ edit
/msbuild.log
/*std*.log
/*build
.vscode
/src/version.aps
+46
View File
@@ -0,0 +1,46 @@
syntax: glob
scons_configure.py
scons-ModOrganizer-*
ModOrganizer-build-desktop*
outputd/*
output/*
build-ModOrganizer-*
source/NCC/*/bin
source/NCC/*/obj
source/NCC/bin
*.orig
source/plugins/proxyPython/build
staging/*
source - Copy/*
ModOrganizer-build-*
pdbs/*
source/NCC/BossDummy.x/*
*.ts
staging_prepare/*
staging_trans/*
tools/python_zip/*
Makefile
html
*.vcxproj
*.pdb
*.dll
*.exp
*.tlog
*.user
*.obj
*.suo
*.sln
*.log
*.filters
*.lib
source/organizer/resources/contents/icons
source/plugins/build-*
*/GeneratedFiles/*
translations/*
source/LocalPaths.pri
source/*/Win32/Debug/*
source/plugins/*/Win32/Debug/*
*~
syntax: regexp
Makefile\.(Debug|Release)
source/.*/debug/.*
+12 -9
View File
@@ -1,17 +1,20 @@
cmake_minimum_required(VERSION 3.16)
# TODO: clean include directives
set(MO2_CMAKE_DEPRECATED_UIBASE_INCLUDE ON)
project(organizer)
set(project_type exe)
set(executable_name ModOrganizer)
set(enable_warnings OFF)
find_package(mo2-cmake CONFIG REQUIRED)
# appveyor does not build modorganizer in its standard location, so use
# DEPENDENCIES_DIR to find cmake_common
if(DEFINED DEPENDENCIES_DIR)
include(${DEPENDENCIES_DIR}/modorganizer_super/cmake_common/project.cmake)
else()
include(../cmake_common/project.cmake)
endif()
set(CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1)
set(additional_translations ${uibase_path}/src)
add_subdirectory(src)
add_subdirectory(themes)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT organizer)
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/dump_running_process.bat DESTINATION ${MO2_INSTALL_BIN})
install(FILES dump_running_process.bat DESTINATION bin)
-59
View File
@@ -1,59 +0,0 @@
{
"configurePresets": [
{
"errors": {
"deprecated": true
},
"hidden": true,
"name": "cmake-dev",
"warnings": {
"deprecated": true,
"dev": true
}
},
{
"cacheVariables": {
"VCPKG_MANIFEST_NO_DEFAULT_FEATURES": {
"type": "BOOL",
"value": "ON"
}
},
"toolchainFile": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
"hidden": true,
"name": "vcpkg"
},
{
"binaryDir": "${sourceDir}/vsbuild",
"architecture": {
"strategy": "set",
"value": "x64"
},
"cacheVariables": {
"CMAKE_CXX_FLAGS": "/EHsc /MP /W3",
"VCPKG_TARGET_TRIPLET": {
"type": "STRING",
"value": "x64-windows-static-md"
}
},
"generator": "Visual Studio 17 2022",
"inherits": ["cmake-dev", "vcpkg"],
"name": "vs2022-windows",
"toolset": "v143"
},
{
"cacheVariables": {
"VCPKG_MANIFEST_FEATURES": {
"type": "STRING",
"value": "standalone"
},
"MO2_INSTALL_IS_BIN": {
"type": "BOOL",
"value": "ON"
}
},
"inherits": "vs2022-windows",
"name": "vs2022-windows-standalone"
}
],
"version": 4
}
+713
View File
File diff suppressed because it is too large Load Diff
+77
View File
@@ -0,0 +1,77 @@
version: dev-appveyor{build}
skip_branch_with_pr: true
image: Visual Studio 2019
init:
- ps: >-
# define build version depending on nightly or normal build
if($env:APPVEYOR_SCHEDULED_BUILD -eq 'True'){
$timestamp= Get-Date -Format "ddMMyyyy-HHmm"
Update-AppveyorBuild -Version "$($env:MO_VERSION)$($env:VER_STUB_NIGHTLY)$timestamp"
} else {
Update-AppveyorBuild -Version "$($env:MO_VERSION)$($env:VER_STUB_NORMAL)$($env:APPVEYOR_BUILD_NUMBER)"
}
Write-Host Build version set to: $env:APPVEYOR_BUILD_VERSION
environment:
WEBHOOK_URL:
secure: gOKbXaZM9ImtMD5XrYITvdyZUW/az082G9OIN1EC1VaKiI9iefpxhBavJ6Al6CzIZvQ+3pxnLqjmNgA7cDc22wcj2kB4hSG5qhbTI8wGa8jLQ5L65nuRZ3vrIqghBz9G3GLglgZkg6eqH9r3Kqc6UzcpCGzxxPOqm550nRcIiUU=
MO_VERSION: 2.4.0
VER_STUB_NORMAL: dev-appveyor-
VER_STUB_NIGHTLY: dev-nightly-
build_script:
- pwsh: >-
# Maintenance comments:
# APPVEYOR_BUILD_FOLDER= "c:\projects\modorganizer-slug"
# -Need to update py3 version used to invoke unimake.py once in a while.
# -Need update MO_VERSION env variable after each release.
# -Always clones umbrella master
# -Will checkout all the branches matching the one that triggered the build on the main repo.
# End comments.
$ErrorActionPreference = 'Stop'
git clone --depth=1 --no-single-branch https://github.com/ModOrganizer2/modorganizer-umbrella.git c:\projects\modorganizer-umbrella
New-Item -ItemType Directory -Path ${env:APPVEYOR_BUILD_FOLDER}\modorganizer-build
cd c:\projects\modorganizer-umbrella
($env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH -eq $null) ? ($branch = $env:APPVEYOR_REPO_BRANCH) : ($branch = $env:APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH)
git checkout $(git show-ref --verify --quiet refs/remotes/origin/${branch} || echo '-b') ${branch}
C:\Python38-x64\python.exe unimake.py -d ${env:APPVEYOR_BUILD_FOLDER}\modorganizer-build -s Appveyor_Build=True -s Feature_Branch=${env:APPVEYOR_REPO_BRANCH} -s override_build_version=${env:APPVEYOR_BUILD_VERSION}
if($LastExitCode -ne 0) { $host.SetShouldExit($LastExitCode ) }
test: off
artifacts:
- path: '\modorganizer-build\install\bin\ModOrganizer.exe'
name: Mod.Organizer-$(APPVEYOR_BUILD_VERSION)
- path: '\modorganizer-build\install\pdb\ModOrganizer.pdb'
name: PDB-Mod.Organizer-$(APPVEYOR_BUILD_VERSION)
deploy: off
on_success:
- ps: >-
Set-Location -Path $env:APPVEYOR_BUILD_FOLDER
Invoke-RestMethod https://raw.githubusercontent.com/DiscordHooks/appveyor-discord-webhook/master/send.ps1 -o send.ps1
if($env:APPVEYOR_SCHEDULED_BUILD -ne 'True'){
./send.ps1 success $env:WEBHOOK_URL
}
on_failure:
- ps: >-
Set-Location -Path $env:APPVEYOR_BUILD_FOLDER
Invoke-RestMethod https://raw.githubusercontent.com/DiscordHooks/appveyor-discord-webhook/master/send.ps1 -o send.ps1
if($env:APPVEYOR_SCHEDULED_BUILD -ne 'True'){
./send.ps1 failure $env:WEBHOOK_URL
}
+30
View File
@@ -0,0 +1,30 @@
[
# for boost???
# These are probably correct but might need a revisit as if you look at the boost documentation pages, it
# can give you huge lists of alternate includes...
{ symbol: [ "BOOST_FOREACH", "private", "<boost/foreach.hpp>", "public" ] },
{ include: [ "@\"boost/bind/.*\"", "private", "<boost/bind.hpp>", "public" ] },
{ include: [ "@\"boost/algorithm/string/.*\"", "private", "<boost/algorithm/string.hpp>", "public" ] },
{ include: [ "@\"boost/assign/.*\"", "private", "<boost/assign.hpp>", "public" ] },
{ include: [ "@\"boost/filesystem/.*\"", "private", "<boost/filesystem.hpp>", "public" ] },
{ include: [ "@\"boost/format/.*\"", "private", "<boost/format.hpp>", "public" ] },
{ include: [ "@\"boost/function/.*\"", "private", "<boost/function.hpp>", "public" ] },
{ include: [ "@\"boost/local/.*\"", "private", "<boost/locale.hpp>", "public" ] },
{ include: [ "@\"boost/python/.*\"", "private", "<boost/python.hpp>", "public" ] },
{ include: [ "@\"boost/signals2/.*\"", "private", "<boost/signals2.hpp>", "public" ] },
{ include: [ "\"boost/smart_ptr/scoped_array.hpp\"", "private", "<boost/scoped_array.hpp>", "public" ] },
{ include: [ "\"boost/smart_ptr/shared_ptr.hpp\"", "private", "<boost/shared_ptr.hpp>", "public" ] },
# this appears to be excessive
#{ include: [ "@\"boost/thread/.*\"", "private", "<boost/thread.hpp>", "public" ] },
# And this is specific to us
{ include: [ "\"appconfig.inc\"", "private", "\"appconfig.h\"", "public" ] },
]
# Ones I don't yet know how to deal with
#include "boost/fusion/container/vector/vector10_fwd.hpp" // for fusion
#include "boost/iterator/iterator_facade.hpp" // for operator!=
#include "boost/iterator/iterator_facade.hpp"
BIN
View File
Binary file not shown.
+2478
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -12,7 +12,7 @@ The project took up speed again after a few more coders showed up in late 2017,
## Help Wanted!
Mod Organizer 2 is an open project in the hands of the community, there are problems that need to be solved and things that could be added. MO2 really needs developers and if you have the programming skills and some free time you can really improve the experience of the modding community.
To have more information, please join the open MO2 Development discord server: [Mod Organizer 2](https://discord.gg/ewUVAqyrQX)
To have more information, please join the open MO2 Development discord server: [Mod Organizer 2](https://discord.gg/vD2ZbfX)
If you want to help translate MO2 to your language you should join the discord server too and head to the #translation channel.
To setup a development environment on your machine, there is the [mob project](https://github.com/modorganizer2/mob) that handles that.
If you want to submit your code changes, please use a good formatting style like the default one in Visual Studio.
@@ -20,7 +20,7 @@ If you want to submit your code changes, please use a good formatting style like
Through the work of a few people of the community MO2 has come quite far, now it needs some more of those people to go further.
## Reporting Issues:
Issues should be reported to the GitHub page or on the open discord server: [Mod Organizer 2](https://discord.gg/ewUVAqyrQX). Here is also where dev builds are tested, bugs are reported and investigated, suggestions are discussed and a lot more.
Issues should be reported to the GitHub page or on the open discord server: [Mod Organizer 2](https://discord.gg/vD2ZbfX). Here is also where dev builds are tested, bugs are reported and investigated, suggestions are discussed and a lot more.
Credits to Tannin, LePresidente, Silarn, erasmux, AL12, LostDragonist, AnyOldName3, isa, Holt59 and many others for the development.
+33
View File
@@ -0,0 +1,33 @@
# This python script contains the configuration for scons
# Copy this to scons_configure.py and adjust to taste.
# Path to your boost install - it should have a boost/ subdirectory and a stage/
# subdirectory. The scons script will use stage/lib if there, or the appropriate
# version for your compiler, if you installed the multiple-build version
BOOSTPATH = r"C:\Apps\boost_1_55_0"
# Version of Visual Studio to use, if you wish to use a specific version. If you
# don't specify a version, the latest will be picked.. See the scons manual for
# supported values.
#MSVC_VERSION = '10.0Exp'
# Path to your python install
# You don't really need to set this up but you might if (say) you have a 32- and
# 64-bit python install and scons has been installed for the 64 bit version
#PYTHONPATH=r"C:\Apps\Python"
# Path to your QT install. This might constrain the version of MSVC you can use.
# This seems to be set by QTCreator
#QTDIR = r"C:\Apps\Qt\4.8.6"
# Path to 7-zip sources
SEVENZIPPATH = r"C:\Apps\7-Zip\7z920"
# Path to zlib. Please read the README file for more information about how this
# needs to be set up
ZLIBPATH = r"C:\Apps\zlib-1.2.8"
# Source control programs. Sadly I can't get this information from qt, even
# though you have to set it up in the configuration
GIT = r"C:\Program Files\git\bin\git.exe"
MERCURIAL = r"C:\Program Files\TortoiseHg\hg.exe"
+57 -141
View File
@@ -1,101 +1,15 @@
cmake_minimum_required(VERSION 3.16)
find_package(mo2-cmake CONFIG REQUIRED)
find_package(usvfs CONFIG REQUIRED)
find_package(mo2-uibase CONFIG REQUIRED)
find_package(mo2-archive CONFIG REQUIRED)
find_package(mo2-lootcli-header CONFIG REQUIRED)
find_package(mo2-bsatk CONFIG REQUIRED)
find_package(mo2-esptk CONFIG REQUIRED)
find_package(mo2-dds-header CONFIG REQUIRED)
find_package(mo2-libbsarch CONFIG REQUIRED)
find_package(Qt6 REQUIRED COMPONENTS WebEngineWidgets WebSockets)
find_package(Boost CONFIG REQUIRED COMPONENTS program_options thread interprocess signals2 uuid accumulators)
find_package(7zip CONFIG REQUIRED)
find_package(lz4 CONFIG REQUIRED)
find_package(ZLIB REQUIRED)
add_executable(organizer)
set_target_properties(organizer PROPERTIES
OUTPUT_NAME "ModOrganizer"
WIN32_EXECUTABLE TRUE)
# disable translations because we want to be able to install somewhere else if
# required
mo2_configure_target(organizer WARNINGS 3 TRANSLATIONS OFF)
# we add translations "manually" to handle MO2_INSTALL_IS_BIN
mo2_add_translations(organizer
INSTALL_RELEASE
INSTALL_DIRECTORY "${MO2_INSTALL_BIN}/translations"
SOURCES ${CMAKE_CURRENT_SOURCE_DIR})
mo2_set_project_to_run_from_install(
organizer EXECUTABLE ${CMAKE_INSTALL_PREFIX}/${MO2_INSTALL_BIN}/ModOrganizer.exe)
target_link_libraries(organizer PRIVATE
Shlwapi Bcrypt
usvfs::usvfs mo2::uibase mo2::archive mo2::libbsarch
mo2::bsatk mo2::esptk mo2::lootcli-header
Boost::program_options Boost::signals2 Boost::uuid Boost::accumulators
Qt6::WebEngineWidgets Qt6::WebSockets Version Dbghelp)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/dlls.manifest.qt6"
DESTINATION ${MO2_INSTALL_BIN}/dlls
CONFIGURATIONS Release RelWithDebInfo
RENAME dlls.manifest)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/dlls.manifest.debug.qt6"
DESTINATION ${MO2_INSTALL_BIN}/dlls
CONFIGURATIONS Debug
RENAME dlls.manifest)
if (NOT MO2_SKIP_TUTORIALS_INSTALL)
install(
DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tutorials"
DESTINATION ${MO2_INSTALL_BIN})
# appveyor does not build modorganizer in its standard location, so use
# DEPENDENCIES_DIR to find cmake_common
if(DEFINED DEPENDENCIES_DIR)
include(${DEPENDENCIES_DIR}/modorganizer_super/cmake_common/src.cmake)
else()
include(../cmake_common/src.cmake)
endif()
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/resources/markdown.html"
DESTINATION ${MO2_INSTALL_BIN}/resources)
# install ModOrganizer.exe itself
install(FILES $<TARGET_FILE:organizer> DESTINATION ${MO2_INSTALL_BIN})
# install dependencies DLLs
install(FILES $<TARGET_FILE:mo2::libbsarch> DESTINATION ${MO2_INSTALL_BIN}/dlls)
install(FILES $<TARGET_FILE:mo2::archive> DESTINATION ${MO2_INSTALL_BIN}/dlls)
install(FILES $<TARGET_FILE:7zip::7zip> DESTINATION ${MO2_INSTALL_BIN}/dlls)
# this may copy over the ones from uibase/usvfs
# - when building with mob, this should not matter as the files should be identical
# - when building standalone, this should help having matching USVFS DLL between the
# build and the installation
# - this may cause issue with uibase in standalone mode if the installed version does
# not match the one used for the build, but there would be other issue anyway (e.g.
# different uibase.dll between modorganizer and plugins)
#
install(FILES
$<TARGET_FILE:mo2::uibase>
$<TARGET_FILE:usvfs_x64::usvfs_dll>
$<TARGET_FILE:usvfs_x86::usvfs_dll>
$<TARGET_FILE:usvfs_x64::usvfs_proxy>
$<TARGET_FILE:usvfs_x86::usvfs_proxy>
DESTINATION ${MO2_INSTALL_BIN})
# do not install PDB if CMAKE_INSTALL_PREFIX is "bin"
if (NOT MO2_INSTALL_IS_BIN)
install(FILES $<TARGET_PDB_FILE:organizer> DESTINATION pdb)
endif()
mo2_deploy_qt(
DIRECTORY ${MO2_INSTALL_BIN}
BINARIES ModOrganizer.exe $<TARGET_FILE_NAME:mo2::uibase>)
# set source groups for VS
mo2_add_filter(NAME src/application GROUPS
add_filter(NAME src/application GROUPS
iuserinterface
commandline
main
@@ -107,46 +21,29 @@ mo2_add_filter(NAME src/application GROUPS
updatedialog
)
mo2_add_filter(NAME src/browser GROUPS
add_filter(NAME src/browser GROUPS
browserdialog
browserview
)
mo2_add_filter(NAME src/categories GROUPS
add_filter(NAME src/core GROUPS
categories
categoriestable
categoriesdialog
categoryimportdialog
)
mo2_add_filter(NAME src/core GROUPS
archivefiletree
github
inibakery
installationmanager
nexusinterface
nxmaccessmanager
organizercore
plugincontainer
apiuseraccount
processrunner
qdirfiletree
virtualfiletree
uilocker
)
mo2_add_filter(NAME src/extensions GROUPS
game_features
thememanager
translationmanager
extensionmanager
extensionwatcher
pluginmanager
proxyqt
)
mo2_add_filter(NAME src/dialogs GROUPS
add_filter(NAME src/dialogs GROUPS
aboutdialog
activatemodsdialog
categoriesdialog
credentialsdialog
filedialogmemory
forcedloaddialog
@@ -164,13 +61,14 @@ mo2_add_filter(NAME src/dialogs GROUPS
waitingonclosedialog
)
mo2_add_filter(NAME src/downloads GROUPS
add_filter(NAME src/downloads GROUPS
downloadlist
downloadlistview
downloadmanager
downloadmanager2
)
mo2_add_filter(NAME src/env GROUPS
add_filter(NAME src/env GROUPS
env
envdump
envfs
@@ -182,24 +80,24 @@ mo2_add_filter(NAME src/env GROUPS
envwindows
)
mo2_add_filter(NAME src/executables GROUPS
add_filter(NAME src/executables GROUPS
executableslist
editexecutablesdialog
)
mo2_add_filter(NAME src/instances GROUPS
add_filter(NAME src/instances GROUPS
createinstancedialog
createinstancedialogpages
instancemanager
instancemanagerdialog
)
mo2_add_filter(NAME src/loot GROUPS
add_filter(NAME src/loot GROUPS
loot
lootdialog
)
mo2_add_filter(NAME src/mainwindow GROUPS
add_filter(NAME src/mainwindow GROUPS
datatab
downloadstab
iconfetcher
@@ -211,7 +109,7 @@ mo2_add_filter(NAME src/mainwindow GROUPS
statusbar
)
mo2_add_filter(NAME src/modinfo GROUPS
add_filter(NAME src/modinfo GROUPS
modinfo
modinfobackup
modinfoforeign
@@ -221,7 +119,7 @@ mo2_add_filter(NAME src/modinfo GROUPS
modinfowithconflictinfo
)
mo2_add_filter(NAME src/modinfo/dialog GROUPS
add_filter(NAME src/modinfo/dialog GROUPS
modinfodialog
modinfodialogcategories
modinfodialogconflicts
@@ -235,18 +133,18 @@ mo2_add_filter(NAME src/modinfo/dialog GROUPS
modinfodialogtextfiles
)
mo2_add_filter(NAME src/modinfo/dialog/widgets GROUPS
add_filter(NAME src/modinfo/dialog/widgets GROUPS
modidlineedit
)
mo2_add_filter(NAME src/modlist GROUPS
add_filter(NAME src/modlist GROUPS
modlist
modlistdropinfo
modlistsortproxy
modlistbypriorityproxy
)
mo2_add_filter(NAME src/modlist/view GROUPS
add_filter(NAME src/modlist/view GROUPS
filterlist
modlistview
modlistviewactions
@@ -257,35 +155,33 @@ mo2_add_filter(NAME src/modlist/view GROUPS
modlistversiondelegate
)
mo2_add_filter(NAME src/plugins GROUPS
add_filter(NAME src/plugins GROUPS
pluginlist
pluginlistsortproxy
pluginlistview
pluginlistcontextmenu
)
mo2_add_filter(NAME src/previews GROUPS
add_filter(NAME src/previews GROUPS
previewdialog
previewgenerator
)
mo2_add_filter(NAME src/profiles GROUPS
add_filter(NAME src/profiles GROUPS
profile
profileinputdialog
profilesdialog
)
mo2_add_filter(NAME src/proxies GROUPS
add_filter(NAME src/proxies GROUPS
downloadmanagerproxy
gamefeaturesproxy
modlistproxy
extensionlistproxy
organizerproxy
pluginlistproxy
proxyutils
)
mo2_add_filter(NAME src/register GROUPS
add_filter(NAME src/register GROUPS
shared/directoryentry
shared/fileentry
shared/filesorigin
@@ -295,28 +191,25 @@ mo2_add_filter(NAME src/register GROUPS
directoryrefresher
)
mo2_add_filter(NAME src/settings GROUPS
extensionsettings
add_filter(NAME src/settings GROUPS
settings
settingsutilities
)
mo2_add_filter(NAME src/settingsdialog GROUPS
add_filter(NAME src/settingsdialog GROUPS
settingsdialog
settingsdialogdiagnostics
settingsdialoggeneral
settingsdialognexus
settingsdialogpaths
settingsdialogextensions
settingsdialogextensionrow
settingsdialogextensioninfo
settingsdialogplugins
settingsdialogworkarounds
settingsdialogmodlist
settingsdialogtheme
disableproxyplugindialog
)
mo2_add_filter(NAME src/utilities GROUPS
add_filter(NAME src/utilities GROUPS
shared/appconfig
bbcode
csvbuilder
@@ -331,7 +224,7 @@ mo2_add_filter(NAME src/utilities GROUPS
glob_matching
)
mo2_add_filter(NAME src/widgets GROUPS
add_filter(NAME src/widgets GROUPS
colortable
genericicondelegate
filerenamer
@@ -346,3 +239,26 @@ mo2_add_filter(NAME src/widgets GROUPS
modelutils
copyeventfilter
)
requires_project(game_features githubpp bsatk esptk archive usvfs)
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
${modorganizer_super_path}/lootcli/include
)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/dlls.manifest.qt5"
DESTINATION bin/dlls
RENAME dlls.manifest)
install(FILES ${qm_files} DESTINATION bin/translations)
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/stylesheets"
"${CMAKE_CURRENT_SOURCE_DIR}/tutorials"
DESTINATION bin)
deploy_qt(BINARIES ModOrganizer.exe uibase.dll plugins/bsa_packer.dll)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/../qdds.dll" DESTINATION bin/dlls/imageformats)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/resources/markdown.html" DESTINATION bin/resources)
+56
View File
@@ -0,0 +1,56 @@
TEMPLATE = subdirs
SUBDIRS = bsatk \
shared \
uibase \
esptk \
organizer \
hookdll \
archive \
helper \
plugins \
nxmhandler \
BossDummy \
pythonRunner \
loot_cli
pythonRunner.depends = uibase
plugins.depends = pythonRunner uibase
hookdll.depends = shared
organizer.depends = shared uibase plugins
CONFIG(debug, debug|release) {
DESTDIR = $$PWD/../outputd
} else {
DESTDIR = $$PWD/../output
}
STATICDATAPATH = $${DESTDIR}\\..\\tools\\static_data\\dlls
DLLSPATH = $${DESTDIR}\\dlls
otherlibs.path = $$DLLSPATH
otherlibs.files += $${STATICDATAPATH}\\7z.dll \
$${BOOSTPATH}\\stage\\lib\\boost_python-vc*-mt-1*.dll
qtlibs.path = $$DLLSPATH
greaterThan(QT_MAJOR_VERSION, 4) {
QTLIBNAMES += Core Gui Network OpenGL Script Sql Svg Qml Quick Webkit Widgets Xml XmlPatterns
} else {
QTLIBNAMES += Core Declarative Gui Network OpenGL Script Sql Svg Webkit Xml XmlPatterns
}
QTLIBSUFFIX = $${QT_MAJOR_VERSION}.dll
CONFIG(debug, debug|release): QTLIBSUFFIX = "d$${QTLIBSUFFIX}" # Can't use Debug: .. here, it ignores the line - no idea why, as it works in BossDummy.pro
for(QTNAME, QTLIBNAMES) {
QTFILE = Qt$${QTNAME}
qtlibs.files += $$[QT_INSTALL_BINS]\\$${QTFILE}$${QTLIBSUFFIX}
}
INSTALLS += qtlibs otherlibs
OTHER_FILES +=\
../SConstruct\
../scons_configure.py\
SConscript

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