Skip to content

Commit

Permalink
Merge pull request #294 from Modorganizer2/Develop
Browse files Browse the repository at this point in the history
Release 2.1.2
  • Loading branch information
LePresidente authored Apr 13, 2018
2 parents d6aab78 + 8be73d2 commit bc75009
Show file tree
Hide file tree
Showing 56 changed files with 757 additions and 261 deletions.
7 changes: 4 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12)

ADD_COMPILE_OPTIONS($<$<CXX_COMPILER_ID:MSVC>:/MP>)

PROJECT(organizer)

Expand All @@ -8,7 +10,6 @@ set_property(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" PROPERTY VS_STARTUP_PROJECT
SET(DEPENDENCIES_DIR CACHE PATH "")
# hint to find qt in dependencies path
LIST(APPEND CMAKE_PREFIX_PATH ${QT_ROOT}/lib/cmake)
FILE(GLOB_RECURSE BOOST_ROOT ${DEPENDENCIES_DIR}/boost*/project-config.jam)
GET_FILENAME_COMPONENT(BOOST_ROOT ${BOOST_ROOT} DIRECTORY)
LIST(APPEND CMAKE_PREFIX_PATH ${LZ4_ROOT}/dll)

ADD_SUBDIRECTORY(src)
78 changes: 41 additions & 37 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Mod Organizer 2 is an open project in the hands of the community, there are prob

To have more information, please join the open MO2 Development discord server :* [ModOrganizerDevs](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 [umbrella project](https://github.com/LePresidente/modorganizer-umbrella) that handles that.
To setup a development environment on your machine, there is the [umbrella project](https://github.com/Modorganizer2/modorganizer-umbrella) that handles that.
If you want to submit your code changes, please use a good formating style like the default one in Visual Studio.

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.
Expand All @@ -24,7 +24,7 @@ Credits to Tannin, LePresidente, Silarn, erasmux, AL12 and many others for the d

## Download Location

* on [GitHub.com](https://github.com/LePresidente/modorganizer/releases)
* on [GitHub.com](https://github.com/Modorganizer2/modorganizer/releases)
* on [NexusMods.com](https://www.nexusmods.com/skyrimspecialedition/mods/6194)

## Old Download Location
Expand All @@ -33,47 +33,51 @@ Credits to Tannin, LePresidente, Silarn, erasmux, AL12 and many others for the d

## Building

Please refer to [LePresidente/modorganizer-umbrella](https://github.com/LePresidente/modorganizer-umbrella) for build instructions.
Please refer to [Modorganizer2/modorganizer-umbrella](https://github.com/Modorganizer2/modorganizer-umbrella) for build instructions.

## Other Repositories

MO2 consists of multiple repositories on github. The Umbrella project will download them automatically as required. They should however also be buildable individually.
Here is a complete list:

* https://github.com/LePresidente/cpython-1
* https://github.com/LePresidente/githubpp
* https://github.com/LePresidente/modorganizer
* https://github.com/LePresidente/modorganizer-archive
* https://github.com/LePresidente/modorganizer-bsatk
* https://github.com/LePresidente/modorganizer-bsa_extractor
* https://github.com/LePresidente/modorganizer-check_fnis
* https://github.com/LePresidente/modorganizer-diagnose_basic
* https://github.com/LePresidente/modorganizer-esptk
* https://github.com/LePresidente/modorganizer-helper
* https://github.com/LePresidente/modorganizer-game_fallout3
* https://github.com/LePresidente/modorganizer-game_fallout4
* https://github.com/LePresidente/modorganizer-game_fallout4vr
* https://github.com/LePresidente/modorganizer-game_falloutnv
* https://github.com/LePresidente/modorganizer-game_features
* https://github.com/LePresidente/modorganizer-game_gamebryo
* https://github.com/LePresidente/modorganizer-game_oblivion
* https://github.com/LePresidente/modorganizer-game_skyrim
* https://github.com/LePresidente/modorganizer-game_skyrimSE
* https://github.com/LePresidente/modorganizer-hookdll
* https://github.com/LePresidente/modorganizer-installer_bain
* https://github.com/LePresidente/modorganizer-installer_bundle
* https://github.com/LePresidente/modorganizer-installer_fomod
* https://github.com/LePresidente/modorganizer-installer_manual
* https://github.com/LePresidente/modorganizer-installer_ncc
* https://github.com/LePresidente/modorganizer-installer_quick
* https://github.com/LePresidente/modorganizer-lootcli
* https://github.com/LePresidente/modorganizer-NCC
* https://github.com/LePresidente/modorganizer-nxmhandler
* https://github.com/LePresidente/modorganizer-plugin_python
* https://github.com/LePresidente/modorganizer-preview_base
* https://github.com/LePresidente/modorganizer-tool_configurator
* https://github.com/LePresidente/modorganizer-tool_inibakery
* https://github.com/LePresidente/modorganizer-uibase
* https://github.com/LePresidente/usvfs
* https://github.com/Modorganizer2/githubpp
* https://github.com/Modorganizer2/modorganizer
* https://github.com/Modorganizer2/modorganizer-archive
* https://github.com/Modorganizer2/modorganizer-bsatk
* https://github.com/Modorganizer2/modorganizer-bsa_extractor
* https://github.com/Modorganizer2/modorganizer-check_fnis
* https://github.com/Modorganizer2/modorganizer-diagnose_basic
* https://github.com/Modorganizer2/modorganizer-esptk
* https://github.com/Modorganizer2/modorganizer-helper
* https://github.com/Modorganizer2/modorganizer-game_fallout3
* https://github.com/Modorganizer2/modorganizer-game_fallout4
* https://github.com/Modorganizer2/modorganizer-game_fallout4vr
* https://github.com/Modorganizer2/modorganizer-game_falloutnv
* https://github.com/Modorganizer2/modorganizer-game_features
* https://github.com/Modorganizer2/modorganizer-game_gamebryo
* https://github.com/Modorganizer2/modorganizer-game_morrowind
* https://github.com/Modorganizer2/modorganizer-game_oblivion
* https://github.com/Modorganizer2/modorganizer-game_skyrim
* https://github.com/Modorganizer2/modorganizer-game_skyrimSE
* https://github.com/Modorganizer2/modorganizer-game_ttw
* https://github.com/Modorganizer2/modorganizer-installer_bain
* https://github.com/Modorganizer2/modorganizer-installer_bundle
* https://github.com/Modorganizer2/modorganizer-installer_fomod
* https://github.com/Modorganizer2/modorganizer-installer_manual
* https://github.com/Modorganizer2/modorganizer-installer_ncc
* https://github.com/Modorganizer2/modorganizer-installer_quick
* https://github.com/Modorganizer2/modorganizer-lootcli
* https://github.com/Modorganizer2/modorganizer-NCC
* https://github.com/Modorganizer2/modorganizer-nxmhandler
* https://github.com/Modorganizer2/modorganizer-plugin_python
* https://github.com/Modorganizer2/modorganizer-preview_base
* https://github.com/Modorganizer2/modorganizer-tool_configurator
* https://github.com/Modorganizer2/modorganizer-tool_inibakery
* https://github.com/Modorganizer2/modorganizer-uibase
* https://github.com/Modorganizer2/usvfs

### Unused Repositories
* https://github.com/Modorganizer2/modorganizer-hookdll
* https://github.com/TanninOne/modorganizer-tool_nmmimport

22 changes: 15 additions & 7 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
CMAKE_MINIMUM_REQUIRED (VERSION 2.8)
CMAKE_MINIMUM_REQUIRED (VERSION 2.8.11)

CMAKE_POLICY(SET CMP0020 NEW)
#CMAKE_POLICY(SET CMP0043 NEW)
Expand Down Expand Up @@ -249,10 +249,13 @@ FIND_PACKAGE(Qt5Quick REQUIRED)
FIND_PACKAGE(Qt5Network REQUIRED)
FIND_PACKAGE(Qt5WinExtras REQUIRED)
FIND_PACKAGE(Qt5WebEngineWidgets REQUIRED)
FIND_PACKAGE(Qt5Script REQUIRED)
FIND_PACKAGE(Qt5Qml REQUIRED)
FIND_PACKAGE(Qt5LinguistTools)
QT5_WRAP_UI(organizer_UIHDRS ${organizer_UIS})
QT5_ADD_RESOURCES(organizer_RCCPPS ${organizer_QRCS})
QT5_CREATE_TRANSLATION(organizer_translations_qm ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/src/organizer_en.ts)
ADD_CUSTOM_TARGET(translations DEPENDS ${organizer_translations_qm})

INCLUDE_DIRECTORIES(${Qt5Declarative_INCLUDES})

Expand Down Expand Up @@ -288,11 +291,13 @@ INCLUDE_DIRECTORIES(${project_path}/uibase/src
${project_path}/../usvfs/include
${project_path}/game_gamebryo/src
${project_path}/game_features/src
${project_path}/githubpp/src)
${project_path}/githubpp/src
${LZ4_ROOT}/include)

INCLUDE_DIRECTORIES(shared ${ZLIB_INCLUDE_DIRS})
LINK_DIRECTORIES(${lib_path}
${ZLIB_ROOT}/lib)
${ZLIB_ROOT}/lib
${LZ4_ROOT}/dll)
EXECUTE_PROCESS(
COMMAND git log -1 --format=%h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
Expand All @@ -311,11 +316,12 @@ ENDIF()
ADD_EXECUTABLE(ModOrganizer WIN32 ${organizer_HDRS} ${organizer_SRCS} ${organizer_UIHDRS} ${organizer_RCS} ${organizer_RCCPPS} ${organizer_translations_qm})
TARGET_LINK_LIBRARIES(ModOrganizer
Qt5::Widgets Qt5::WinExtras Qt5::WebEngineWidgets Qt5::Quick
Qt5::Script Qt5::Qml Qt5::QuickWidgets Qt5::Network
${Boost_LIBRARIES}
zlibstatic
uibase esptk bsatk githubpp
${usvfs_name}
Dbghelp advapi32 Version Shlwapi)
Dbghelp advapi32 Version Shlwapi liblz4)
IF (NOT "${OPTIMIZE_COMPILE_FLAGS}" STREQUAL "")
SET_TARGET_PROPERTIES(ModOrganizer PROPERTIES COMPILE_FLAGS_RELWITHDEBINFO
${OPTIMIZE_COMPILE_FLAGS})
Expand All @@ -324,9 +330,6 @@ SET_TARGET_PROPERTIES(ModOrganizer PROPERTIES LINK_FLAGS_RELWITHDEBINFO
"/LARGEADDRESSAWARE ${OPTIMIZE_LINK_FLAGS}")


QT5_USE_MODULES(ModOrganizer Widgets Script Qml QuickWidgets Quick Network WebEngineWidgets)


###############
## Installation

Expand Down Expand Up @@ -368,6 +371,11 @@ INSTALL(
file(REMOVE_RECURSE ${CMAKE_INSTALL_PREFIX}/bin/qtplugins)"
)

# qdds.dll needs installing manually as Qt no longer ships with it by default.
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/../qdds.dll DESTINATION bin/dlls/imageformats)

install(FILES ${organizer_translations_qm} DESTINATION bin/translations)

INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/stylesheets
${CMAKE_CURRENT_SOURCE_DIR}/tutorials
DESTINATION bin)
42 changes: 32 additions & 10 deletions src/aboutdialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,32 +29,52 @@ along with Mod Organizer. If not, see <http://www.gnu.org/licenses/>.
#include <QTextBrowser>
#include <QVariant>
#include <Qt>

#include <QFontDatabase>

AboutDialog::AboutDialog(const QString &version, QWidget *parent)
: QDialog(parent)
, ui(new Ui::AboutDialog)
{
ui->setupUi(this);

m_LicenseFiles[LICENSE_LGPL3] = "lgpl-3.0.txt";
m_LicenseFiles[LICENSE_GPL3] = "gpl-3.0.txt";
m_LicenseFiles[LICENSE_BSD3] = "bsd3.txt";
m_LicenseFiles[LICENSE_LGPL3] = "LGPL-v3.0.txt";
m_LicenseFiles[LICENSE_LGPL21] = "GNU-LGPL-v2.1.txt";
m_LicenseFiles[LICENSE_GPL3] = "GPL-v3.0.txt";
m_LicenseFiles[LICENSE_GPL2] = "GPL-v2.0.txt";
m_LicenseFiles[LICENSE_BOOST] = "boost.txt";
m_LicenseFiles[LICENSE_CCBY3] = "by-sa3.txt";
m_LicenseFiles[LICENSE_7ZIP] = "7zip.txt";
m_LicenseFiles[LICENSE_CCBY3] = "BY-SA-v3.0.txt";
m_LicenseFiles[LICENSE_ZLIB] = "zlib.txt";
m_LicenseFiles[LICENSE_APACHE2] = "apache-license-2.0.txt";
m_LicenseFiles[LICENSE_PYTHON] = "python.txt";
m_LicenseFiles[LICENSE_SSL] = "openssl.txt";
m_LicenseFiles[LICENSE_CPPTOML] = "cpptoml.txt";
m_LicenseFiles[LICENSE_UDIS] = "udis86.txt";
m_LicenseFiles[LICENSE_SPDLOG] = "spdlog.txt";
m_LicenseFiles[LICENSE_FMT] = "fmt.txt";
m_LicenseFiles[LICENSE_SIP] = "sip.txt";
m_LicenseFiles[LICENSE_CASTLE] = "Castle.txt";
m_LicenseFiles[LICENSE_ANTLR] = "AntlrBuildTask.txt";
m_LicenseFiles[LICENSE_DXTEX] = "DXTex.txt";

addLicense("Qt", LICENSE_LGPL3);
addLicense("Qt Json", LICENSE_GPL3);
addLicense("Boost Library", LICENSE_BOOST);
addLicense("7-zip", LICENSE_LGPL3);
addLicense("ZLib", LICENSE_ZLIB);
addLicense("7-zip", LICENSE_7ZIP);
addLicense("ZLib", LICENSE_NONE);
addLicense("Tango Icon Theme", LICENSE_NONE);
addLicense("RRZE Icon Set", LICENSE_CCBY3);
addLicense("Icons by Lorc, Delapouite and sbed available on http://game-icons.net", LICENSE_CCBY3);
addLicense("Castle Core", LICENSE_APACHE2);
addLicense("Castle Core", LICENSE_CASTLE);
addLicense("ANTLR", LICENSE_ANTLR);
addLicense("LOOT", LICENSE_GPL3);
addLicense("Python", LICENSE_PYTHON);
addLicense("OpenSSL", LICENSE_SSL);
addLicense("cpptoml", LICENSE_CPPTOML);
addLicense("Udis86", LICENSE_UDIS);
addLicense("spdlog", LICENSE_SPDLOG);
addLicense("{fmt}", LICENSE_FMT);
addLicense("SIP", LICENSE_SIP);
addLicense("DXTex Headers", LICENSE_DXTEX);

ui->nameLabel->setText(QString("<span style=\"font-size:12pt; font-weight:600;\">%1 %2</span>").arg(ui->nameLabel->text()).arg(version));
#if defined(HGID)
Expand All @@ -64,6 +84,8 @@ AboutDialog::AboutDialog(const QString &version, QWidget *parent)
#else
ui->revisionLabel->setText(ui->revisionLabel->text() + " unknown");
#endif

ui->licenseText->setFont(QFontDatabase::systemFont(QFontDatabase::FixedFont));
}


Expand All @@ -85,7 +107,7 @@ void AboutDialog::on_creditsList_currentItemChanged(QListWidgetItem *current, QL
{
auto iter = m_LicenseFiles.find(current->data(Qt::UserRole).toInt());
if (iter != m_LicenseFiles.end()) {
QString filePath = qApp->applicationDirPath() + "/license/" + iter->second;
QString filePath = qApp->applicationDirPath() + "/licenses/" + iter->second;
QString text = MOBase::readFileText(filePath);
ui->licenseText->setText(text);
} else {
Expand Down
15 changes: 13 additions & 2 deletions src/aboutdialog.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,12 +45,23 @@ class AboutDialog : public QDialog
enum Licenses {
LICENSE_NONE,
LICENSE_LGPL3,
LICENSE_LGPL21,
LICENSE_GPL3,
LICENSE_BSD3,
LICENSE_GPL2,
LICENSE_BOOST,
LICENSE_CCBY3,
LICENSE_PYTHON,
LICENSE_SSL,
LICENSE_CPPTOML,
LICENSE_7ZIP,
LICENSE_ZLIB,
LICENSE_APACHE2
LICENSE_UDIS,
LICENSE_SPDLOG,
LICENSE_FMT,
LICENSE_SIP,
LICENSE_CASTLE,
LICENSE_ANTLR,
LICENSE_DXTEX
};

private:
Expand Down
Loading

0 comments on commit bc75009

Please sign in to comment.