From dae6a98f826f78bda7511ba6de4c8b813353501e Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sat, 21 Aug 2021 14:15:43 +0200 Subject: proto/freetrack: implement more dll location controls --- proto-ft/ftnoir_protocol_ft.h | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'proto-ft/ftnoir_protocol_ft.h') diff --git a/proto-ft/ftnoir_protocol_ft.h b/proto-ft/ftnoir_protocol_ft.h index a59796dd..4b7ab89e 100644 --- a/proto-ft/ftnoir_protocol_ft.h +++ b/proto-ft/ftnoir_protocol_ft.h @@ -27,11 +27,12 @@ using namespace options; struct settings : opts { - value intUsedInterface; - settings() : - opts("proto-freetrack"), - intUsedInterface(b, "used-interfaces", 0) - {} + enum enable_status { enable_both, enable_freetrack, enable_npclient, }; + value used_interface{b, "used-interfaces", (int)enable_both}; + value ephemeral_library_location{b, "ephemeral-library-location", false}; + value use_custom_location{b, "use-custom-location", false}; + value custom_location_pathname{b, "custom-library-location", {}}; + settings() : opts("proto-freetrack") {} }; class freetrack : TR, public IProtocol @@ -58,7 +59,9 @@ private: void start_dummy(); public: - static void set_protocols(bool ft, bool npclient); + enum class status { starting, stopping }; + [[nodiscard]] module_status set_protocols(); + void clear_protocols(); }; class FTControls: public IProtocolDialog @@ -75,6 +78,7 @@ private slots: void selectDLL(); void doOK(); void doCancel(); + void set_custom_location(); }; class freetrackDll : public Metadata -- cgit v1.2.3