From 1dee4bb60d08995f0fd4eb229f131f2ca546d24c Mon Sep 17 00:00:00 2001 From: Sky Date: Sat, 5 Oct 2013 01:08:13 +0100 Subject: Add naive Windows Java detection - JavaUtils for finding it on other systems (incomplete) --- logic/JavaUtils.h | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 logic/JavaUtils.h (limited to 'logic/JavaUtils.h') diff --git a/logic/JavaUtils.h b/logic/JavaUtils.h new file mode 100644 index 00000000..fef2a1bf --- /dev/null +++ b/logic/JavaUtils.h @@ -0,0 +1,26 @@ +/* Copyright 2013 MultiMC Contributors + * + * 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. + */ + +#pragma once + +#include + +class JavaUtils +{ +public: + JavaUtils(); + + QStringList FindJavaPath(); +}; -- cgit v1.2.3 From 17c98655f86f8ea41c4528e3fc25d12388a36861 Mon Sep 17 00:00:00 2001 From: Sky Date: Sun, 6 Oct 2013 19:54:52 +0100 Subject: First draft of multiple Java installation detection on Windows --- logic/JavaUtils.h | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'logic/JavaUtils.h') diff --git a/logic/JavaUtils.h b/logic/JavaUtils.h index fef2a1bf..63daac12 100644 --- a/logic/JavaUtils.h +++ b/logic/JavaUtils.h @@ -17,10 +17,28 @@ #include +#include "osutils.h" + +#if WINDOWS + #include +#endif + +#define JI_ID 0 +#define JI_ARCH 1 +#define JI_PATH 2 +#define JI_REC 3 +typedef std::tuple java_install; + class JavaUtils { public: JavaUtils(); - QStringList FindJavaPath(); + std::vector FindJavaPaths(); + +private: + std::vector GetDefaultJava(); +#if WINDOWS + std::vector FindJavaFromRegistryKey(DWORD keyType, QString keyName); +#endif }; -- cgit v1.2.3 From 40a2456646df96e0dd8731ab78cba920a734a8e3 Mon Sep 17 00:00:00 2001 From: Sky Date: Mon, 14 Oct 2013 02:59:21 +0100 Subject: Huge Java detection refactor, version dialogs on first run (no JavaPath set) and "auto detect" button --- logic/JavaUtils.h | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'logic/JavaUtils.h') diff --git a/logic/JavaUtils.h b/logic/JavaUtils.h index 63daac12..e4f777d0 100644 --- a/logic/JavaUtils.h +++ b/logic/JavaUtils.h @@ -16,29 +16,25 @@ #pragma once #include - +#include +#include #include "osutils.h" #if WINDOWS #include #endif -#define JI_ID 0 -#define JI_ARCH 1 -#define JI_PATH 2 -#define JI_REC 3 -typedef std::tuple java_install; - class JavaUtils { public: JavaUtils(); - std::vector FindJavaPaths(); + QList FindJavaPaths(); + JavaVersionPtr GetDefaultJava(); private: - std::vector GetDefaultJava(); + #if WINDOWS - std::vector FindJavaFromRegistryKey(DWORD keyType, QString keyName); + QList FindJavaFromRegistryKey(DWORD keyType, QString keyName); #endif }; -- cgit v1.2.3