From 3c32ef39c7510bf6f2bd1f9e6b649b2f51e215da Mon Sep 17 00:00:00 2001 From: huangyuhui Date: Tue, 1 Aug 2017 18:56:13 +0800 Subject: [PATCH] Fixed compile error --- .../org/jackhuang/hmcl/setting/Settings.kt | 24 +++++++++++++++++ .../java/org/jackhuang/hmcl/ui/Decorator.kt | 26 ++++++++----------- HMCLCore/hmcl.log.1 | 8 ------ .../hmcl/download/BMCLAPIDownloadProvider.kt | 5 ---- .../hmcl/download/DefaultDependencyManager.kt | 5 ---- .../hmcl/download/DefaultGameBuilder.kt | 8 ++---- .../hmcl/download/ForgeInstallTask.kt | 3 +-- .../hmcl/download/GameVersionList.kt | 4 +-- .../hmcl/download/LiteLoaderInstallTask.kt | 1 - .../hmcl/download/MojangDownloadProvider.kt | 3 --- .../hmcl/download/OptiFineBMCLVersionList.kt | 5 +--- .../hmcl/download/OptiFineInstallTask.kt | 1 - .../jackhuang/hmcl/download/VersionList.kt | 5 ++-- .../hmcl/game/DefaultGameRepository.kt | 2 +- .../java/org/jackhuang/hmcl/mod/ModManager.kt | 2 +- 15 files changed, 45 insertions(+), 57 deletions(-) create mode 100644 HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.kt delete mode 100644 HMCLCore/hmcl.log.1 diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.kt b/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.kt new file mode 100644 index 000000000..7ac8bbab4 --- /dev/null +++ b/HMCL/src/main/java/org/jackhuang/hmcl/setting/Settings.kt @@ -0,0 +1,24 @@ +/* + * Hello Minecraft! Launcher. + * Copyright (C) 2017 huangyuhui + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see {http://www.gnu.org/licenses/}. + */ +package org.jackhuang.hmcl.setting + +object Settings { + init { + + } +} \ No newline at end of file diff --git a/HMCL/src/main/java/org/jackhuang/hmcl/ui/Decorator.kt b/HMCL/src/main/java/org/jackhuang/hmcl/ui/Decorator.kt index 002cddf88..186b49c47 100644 --- a/HMCL/src/main/java/org/jackhuang/hmcl/ui/Decorator.kt +++ b/HMCL/src/main/java/org/jackhuang/hmcl/ui/Decorator.kt @@ -44,12 +44,12 @@ import javafx.stage.StageStyle import java.util.ArrayList class Decorator @JvmOverloads constructor(private val primaryStage: Stage, node: Node, max: Boolean = true, min: Boolean = true) : VBox() { - private var xOffset: Double = 0.toDouble() - private var yOffset: Double = 0.toDouble() - private var newX: Double = 0.toDouble() - private var newY: Double = 0.toDouble() - private var initX: Double = 0.toDouble() - private var initY: Double = 0.toDouble() + private var xOffset: Double = 0.0 + private var yOffset: Double = 0.0 + private var newX: Double = 0.0 + private var newY: Double = 0.0 + private var initX: Double = 0.0 + private var initY: Double = 0.0 private var allowMove: Boolean = false private var isDragging: Boolean = false private var windowDecoratorAnimation: Timeline? = null @@ -189,12 +189,12 @@ class Decorator @JvmOverloads constructor(private val primaryStage: Stage, node: (node as Region).setMinSize(0.0, 0.0) VBox.setVgrow(this.contentPlaceHolder, Priority.ALWAYS) this.contentPlaceHolder.styleClass.add("resize-border") - this.contentPlaceHolder.border = Border(*arrayOf(BorderStroke(Color.BLACK, BorderStrokeStyle.SOLID, CornerRadii.EMPTY, BorderWidths(0.0, 4.0, 4.0, 4.0)))) + this.contentPlaceHolder.border = Border(BorderStroke(Color.BLACK, BorderStrokeStyle.SOLID, CornerRadii.EMPTY, BorderWidths(0.0, 4.0, 4.0, 4.0))) val clip = Rectangle() clip.widthProperty().bind(node.widthProperty()) clip.heightProperty().bind(node.heightProperty()) node.setClip(clip) - this.children.addAll(*arrayOf(titleContainer, this.contentPlaceHolder)) + this.children.addAll(titleContainer, this.contentPlaceHolder) this.setOnMouseMoved { mouseEvent -> if (!this.primaryStage.isMaximized && !this.primaryStage.isFullScreen && !this.maximized) { if (!this.primaryStage.isResizable) { @@ -328,15 +328,13 @@ class Decorator @JvmOverloads constructor(private val primaryStage: Stage, node: } internal fun setStageWidth(width: Double): Boolean { - var width = width if (width >= this.primaryStage.minWidth && width >= this.titleContainer.minWidth) { this.primaryStage.width = width this.initX = this.newX return true } else { if (width >= this.primaryStage.minWidth && width <= this.titleContainer.minWidth) { - width = this.titleContainer.minWidth - this.primaryStage.width = width + this.primaryStage.width = this.titleContainer.minWidth } return false @@ -344,15 +342,13 @@ class Decorator @JvmOverloads constructor(private val primaryStage: Stage, node: } internal fun setStageHeight(height: Double): Boolean { - var height = height if (height >= this.primaryStage.minHeight && height >= this.titleContainer.height) { this.primaryStage.height = height this.initY = this.newY return true } else { if (height >= this.primaryStage.minHeight && height <= this.titleContainer.height) { - height = this.titleContainer.height - this.primaryStage.height = height + this.primaryStage.height = this.titleContainer.height } return false @@ -379,6 +375,6 @@ class Decorator @JvmOverloads constructor(private val primaryStage: Stage, node: } fun setContent(content: Node) { - this.contentPlaceHolder.children.setAll(*arrayOf(content)) + this.contentPlaceHolder.children.setAll(content) } } diff --git a/HMCLCore/hmcl.log.1 b/HMCLCore/hmcl.log.1 deleted file mode 100644 index 8a384687d..000000000 --- a/HMCLCore/hmcl.log.1 +++ /dev/null @@ -1,8 +0,0 @@ -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINER] Executing task: class org.jackhuang.hmcl.util.task.ParallelTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINER] Executing task: class org.jackhuang.hmcl.download.game.GameAssetDownloadTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINER] Executing task: class org.jackhuang.hmcl.download.game.GameLibrariesTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINER] Executing task: class org.jackhuang.hmcl.download.game.GameLoggingDownloadTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINEST] Task finished: class org.jackhuang.hmcl.download.game.GameAssetDownloadTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINEST] Task finished: class org.jackhuang.hmcl.download.game.GameLoggingDownloadTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINEST] Task finished: class org.jackhuang.hmcl.download.game.GameLibrariesTask -[13:06:53] [org.jackhuang.hmcl.util.task.Subscription.executeTask/FINEST] Task finished: class org.jackhuang.hmcl.util.task.ParallelTask diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/BMCLAPIDownloadProvider.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/BMCLAPIDownloadProvider.kt index 28059ed0c..fbd931e86 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/BMCLAPIDownloadProvider.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/BMCLAPIDownloadProvider.kt @@ -17,11 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.forge.ForgeVersionList -import org.jackhuang.hmcl.download.game.GameVersionList -import org.jackhuang.hmcl.download.liteloader.LiteLoaderVersionList -import org.jackhuang.hmcl.download.optifine.OptiFineBMCLVersionList - object BMCLAPIDownloadProvider : DownloadProvider() { override val libraryBaseURL: String = "http://bmclapi2.bangbang93.com/libraries/" override val versionListURL: String = "http://bmclapi2.bangbang93.com/mc/game/version_manifest.json" diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultDependencyManager.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultDependencyManager.kt index 4aeee51f4..9ea979b2f 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultDependencyManager.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultDependencyManager.kt @@ -17,11 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.game.GameAssetDownloadTask -import org.jackhuang.hmcl.download.game.GameLibrariesTask -import org.jackhuang.hmcl.download.game.GameLoggingDownloadTask -import org.jackhuang.hmcl.download.game.VersionJSONSaveTask -import org.jackhuang.hmcl.download.liteloader.LiteLoaderInstallTask import org.jackhuang.hmcl.game.DefaultGameRepository import org.jackhuang.hmcl.game.Version import org.jackhuang.hmcl.task.ParallelTask diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultGameBuilder.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultGameBuilder.kt index c068efc6b..0e2a96b92 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultGameBuilder.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/DefaultGameBuilder.kt @@ -17,10 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.game.GameAssetDownloadTask -import org.jackhuang.hmcl.download.game.GameLibrariesTask -import org.jackhuang.hmcl.download.game.GameLoggingDownloadTask -import org.jackhuang.hmcl.download.game.VersionJSONSaveTask import org.jackhuang.hmcl.game.* import org.jackhuang.hmcl.task.* import org.jackhuang.hmcl.util.* @@ -31,8 +27,8 @@ class DefaultGameBuilder(val dependencyManager: DefaultDependencyManager): GameB val downloadProvider = dependencyManager.downloadProvider override fun buildAsync(): Task { - return VersionJSONDownloadTask(gameVersion = gameVersion) then { task -> - var version = GSON.fromJson(task.result!!) + return VersionJSONDownloadTask(gameVersion = gameVersion) then a@{ task -> + var version = GSON.fromJson(task.result!!) ?: return@a null version = version.copy(jar = version.id, id = name) var result = ParallelTask( GameAssetDownloadTask(dependencyManager, version), diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/ForgeInstallTask.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/ForgeInstallTask.kt index 61933bc58..c92e03783 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/ForgeInstallTask.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/ForgeInstallTask.kt @@ -17,7 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.game.GameLibrariesTask import org.jackhuang.hmcl.game.Library import org.jackhuang.hmcl.game.SimpleVersionProvider import org.jackhuang.hmcl.game.Version @@ -55,7 +54,7 @@ class ForgeInstallTask(private val dependencyManager: DefaultDependencyManager, override fun execute() { ZipFile(installer).use { zipFile -> - val installProfile = GSON.fromJson(zipFile.getInputStream(zipFile.getEntry("install_profile.json")).readFullyAsString()) + val installProfile = GSON.fromJson(zipFile.getInputStream(zipFile.getEntry("install_profile.json")).readFullyAsString()) ?: throw IOException("install_profile.json is not found.") // unpack the universal jar in the installer file. diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/GameVersionList.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/GameVersionList.kt index 735b50744..a74e95be8 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/GameVersionList.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/GameVersionList.kt @@ -35,7 +35,6 @@ object GameVersionList : VersionList() { val task = GetTask(provider.versionListURL.toURL()) override val dependents: Collection = listOf(task) override fun execute() { - versionMap.clear() versions.clear() val root = GSON.fromJson(task.result!!) ?: return @@ -50,8 +49,7 @@ object GameVersionList : VersionList() { time = remoteVersion.releaseTime ) ) - versions.add(x) - versionMap[gg] = listOf(x) + versions.put(gg, x) } } } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/LiteLoaderInstallTask.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/LiteLoaderInstallTask.kt index 5924d132a..1daa520f9 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/LiteLoaderInstallTask.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/LiteLoaderInstallTask.kt @@ -17,7 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.game.GameLibrariesTask import org.jackhuang.hmcl.game.LibrariesDownloadInfo import org.jackhuang.hmcl.game.Library import org.jackhuang.hmcl.game.LibraryDownloadInfo diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/MojangDownloadProvider.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/MojangDownloadProvider.kt index c75df41a2..d074dcc06 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/MojangDownloadProvider.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/MojangDownloadProvider.kt @@ -17,9 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.forge.ForgeVersionList -import org.jackhuang.hmcl.download.game.GameVersionList -import org.jackhuang.hmcl.download.liteloader.LiteLoaderVersionList import java.util.* object MojangDownloadProvider : DownloadProvider() { diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineBMCLVersionList.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineBMCLVersionList.kt index 29f495256..17cf0164e 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineBMCLVersionList.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineBMCLVersionList.kt @@ -34,7 +34,6 @@ object OptiFineBMCLVersionList : VersionList() { val task = GetTask("http://bmclapi.bangbang93.com/optifine/versionlist".toURL()) override val dependents: Collection = listOf(task) override fun execute() { - versionMap.clear() versions.clear() val duplicates = mutableSetOf() @@ -55,9 +54,7 @@ object OptiFineBMCLVersionList : VersionList() { tag = Unit ) - val set = versionMap.getOrPut(gameVersion, { TreeSet>() }) as MutableCollection> - set.add(remoteVersion) - versions.add(remoteVersion) + versions.put(gameVersion, remoteVersion) } } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineInstallTask.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineInstallTask.kt index b722afa08..d95ee98ff 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineInstallTask.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/OptiFineInstallTask.kt @@ -17,7 +17,6 @@ */ package org.jackhuang.hmcl.download -import org.jackhuang.hmcl.download.game.GameLibrariesTask import org.jackhuang.hmcl.game.LibrariesDownloadInfo import org.jackhuang.hmcl.game.Library import org.jackhuang.hmcl.game.LibraryDownloadInfo diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/VersionList.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/VersionList.kt index e013dbadd..b5178e2c3 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/download/VersionList.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/download/VersionList.kt @@ -31,7 +31,8 @@ abstract class VersionList { abstract fun refreshAsync(downloadProvider: DownloadProvider): Task protected open fun getVersionsImpl(gameVersion: String): Collection> { - return versions[gameVersion] ?: versions.values + val ans = versions[gameVersion] + return if (ans.isEmpty()) versions.values else ans } /** @@ -44,7 +45,7 @@ abstract class VersionList { fun getVersion(gameVersion: String, remoteVersion: String): RemoteVersion? { var result : RemoteVersion? = null - versions[gameVersion]?.forEach { + versions[gameVersion].forEach { if (it.selfVersion == remoteVersion) result = it } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/DefaultGameRepository.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/DefaultGameRepository.kt index ceadcd463..a540eade9 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/DefaultGameRepository.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/DefaultGameRepository.kt @@ -127,7 +127,7 @@ open class DefaultGameRepository(val baseDirectory: File): GameRepository { } override fun getAssetIndex(assetId: String): AssetIndex { - return GSON.fromJson(getIndexFile(assetId).readText()) + return GSON.fromJson(getIndexFile(assetId).readText())!! } override fun getActualAssetDirectory(assetId: String): File { diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.kt b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.kt index 7fb59823b..70724ec1b 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.kt +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.kt @@ -43,7 +43,7 @@ class ModManager(private val repository: GameRepository) { fun getMods(id: String) : Collection { if (!modCache.containsKey(id)) refreshMods(id) - return modCache[id] ?: emptyList() + return modCache[id] } fun addMod(id: String, file: File) {