From 79ac3e6d1d650ca78a9db1ac07190eddf0933aa6 Mon Sep 17 00:00:00 2001 From: isanae <14251494+isanae@users.noreply.github.com> Date: Wed, 6 May 2020 14:14:32 -0400 Subject: [PATCH] explorer++ --- mob.ini | 1 + src/conf.cpp | 1 + src/conf.h | 1 + src/main.cpp | 1 + src/tasks/explorerpp.cpp | 38 ++++++++++++++++++++++++++++++++++++++ src/tasks/tasks.h | 14 ++++++++++++++ vs/mob.vcxproj | 1 + vs/mob.vcxproj.filters | 3 +++ 8 files changed, 60 insertions(+) create mode 100644 src/tasks/explorerpp.cpp diff --git a/mob.ini b/mob.ini index a72fc69..7af12f8 100644 --- a/mob.ini +++ b/mob.ini @@ -45,6 +45,7 @@ pyqt = 5.14.2 pyqt_builder = 1.3.0 sip = 5.1.2 pyqt_sip = 12.7.2 +explorerpp = 1.3.5 ss_6788_paper_lad = 6.0 ss_6788_paper_automata = 2.2 diff --git a/src/conf.cpp b/src/conf.cpp index 658b456..9bf4331 100644 --- a/src/conf.cpp +++ b/src/conf.cpp @@ -75,6 +75,7 @@ static string_map g_versions = {"pyqt_builder", ""}, {"sip", ""}, {"pyqt_sip", ""}, + {"explorerpp", ""}, {"ss_6788_paper_lad", ""}, {"ss_6788_paper_automata", ""}, diff --git a/src/conf.h b/src/conf.h index 194a173..e04cdde 100644 --- a/src/conf.h +++ b/src/conf.h @@ -87,6 +87,7 @@ struct versions VALUE(pyqt_builder); VALUE(sip); VALUE(pyqt_sip); + VALUE(explorerpp); VALUE(ss_6788_paper_lad); VALUE(ss_6788_paper_automata); diff --git a/src/main.cpp b/src/main.cpp index 7cafd37..f8d4982 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -185,6 +185,7 @@ void add_tasks() add_task(); add_task(); add_task(); + add_task(); add_task("cmake_common"); add_task("modorganizer-uibase"); diff --git a/src/tasks/explorerpp.cpp b/src/tasks/explorerpp.cpp new file mode 100644 index 0000000..d76b78b --- /dev/null +++ b/src/tasks/explorerpp.cpp @@ -0,0 +1,38 @@ +#include "pch.h" +#include "tasks.h" + +namespace mob +{ + +explorerpp::explorerpp() + : basic_task("explorerpp", "explorer++") +{ +} + +fs::path explorerpp::source_path() +{ + return paths::build() / "explorer++"; +} + +void explorerpp::do_fetch() +{ + const auto file = run_tool(downloader(source_url())); + + run_tool(extractor() + .file(file) + .output(source_path())); + + op::copy_glob_to_dir_if_better(cx(), + source_path() / "*", + paths::install_bin() / "explorer++", + op::copy_files); +} + +url explorerpp::source_url() +{ + return + "https://explorerplusplus.com/software/" + "explorer++_" + versions::explorerpp() + "_x64.zip"; +} + +} // namespace diff --git a/src/tasks/tasks.h b/src/tasks/tasks.h index c5fd88f..b3e306a 100644 --- a/src/tasks/tasks.h +++ b/src/tasks/tasks.h @@ -82,6 +82,20 @@ private: }; +class explorerpp : public basic_task +{ +public: + explorerpp(); + static fs::path source_path(); + +protected: + void do_fetch() override; + +private: + static url source_url(); +}; + + class fmt : public basic_task { public: diff --git a/vs/mob.vcxproj b/vs/mob.vcxproj index 492e0a7..373fc09 100644 --- a/vs/mob.vcxproj +++ b/vs/mob.vcxproj @@ -91,6 +91,7 @@ + diff --git a/vs/mob.vcxproj.filters b/vs/mob.vcxproj.filters index a281a36..3b7a242 100644 --- a/vs/mob.vcxproj.filters +++ b/vs/mob.vcxproj.filters @@ -135,6 +135,9 @@ src\tasks + + src\tasks +