graphic command input

This commit is contained in:
ryoii 2020-02-21 18:47:03 +08:00
parent b30246cda1
commit ca9440d3e3
2 changed files with 15 additions and 0 deletions

View File

@ -28,6 +28,8 @@ class MiraiGraphicalUIController : Controller(), MiraiConsoleUI {
MiraiConsole.CommandListener.commandChannel.send("/login $qq $psd")
}
suspend fun sendCommand(command: String) = MiraiConsole.CommandListener.commandChannel.send(command)
override fun pushLog(identity: Long, message: String) = Platform.runLater {
when (identity) {
0L -> mainLog.add(message)

View File

@ -5,6 +5,8 @@ import javafx.collections.ObservableList
import javafx.scene.control.Tab
import javafx.scene.control.TabPane
import javafx.scene.image.Image
import javafx.scene.input.KeyCode
import kotlinx.coroutines.runBlocking
import net.mamoe.mirai.console.graphical.controller.MiraiGraphicalUIController
import net.mamoe.mirai.console.graphical.model.BotModel
import net.mamoe.mirai.console.graphical.util.jfxListView
@ -52,6 +54,17 @@ class PrimaryView : View() {
}
}
}
// command input
textfield {
setOnKeyPressed {
if (it.code == KeyCode.ENTER) {
runAsync {
runBlocking { controller.sendCommand(text) }
}.ui { text = "" }
}
}
}
}
center = jfxTabPane {