aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/cc/woverflow
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/cc/woverflow')
-rw-r--r--src/main/kotlin/cc/woverflow/chatting/gui/components/ClearButton.kt25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/main/kotlin/cc/woverflow/chatting/gui/components/ClearButton.kt b/src/main/kotlin/cc/woverflow/chatting/gui/components/ClearButton.kt
index 3035a98..2e46974 100644
--- a/src/main/kotlin/cc/woverflow/chatting/gui/components/ClearButton.kt
+++ b/src/main/kotlin/cc/woverflow/chatting/gui/components/ClearButton.kt
@@ -1,18 +1,41 @@
package cc.woverflow.chatting.gui.components
import cc.woverflow.chatting.Chatting
+import gg.essential.api.EssentialAPI
+import gg.essential.api.gui.buildConfirmationModal
+import gg.essential.elementa.ElementaVersion
+import gg.essential.elementa.WindowScreen
+import gg.essential.elementa.components.UIBlock
+import gg.essential.elementa.dsl.childOf
+import gg.essential.elementa.utils.withAlpha
+import gg.essential.universal.ChatColor
import gg.essential.universal.UResolution
import net.minecraft.client.Minecraft
import net.minecraft.client.gui.Gui
import net.minecraft.client.renderer.GlStateManager
import net.minecraft.util.ResourceLocation
+import java.awt.Color
class ClearButton :
CleanButton(13379014, { UResolution.scaledWidth - 28 }, { UResolution.scaledHeight - 27 }, 12, 12, "",
{ RenderType.NONE }) {
override fun onMousePress() {
- Minecraft.getMinecraft().ingameGUI.chatGUI.clearChatMessages()
+ EssentialAPI.getGuiUtil().openScreen(object : WindowScreen(ElementaVersion.V1, restoreCurrentGuiOnClose = true, drawDefaultBackground = false) {
+ init {
+ UIBlock(Color.BLACK.withAlpha(0.3f)) childOf window
+ EssentialAPI.getEssentialComponentFactory().buildConfirmationModal {
+ text = "${ChatColor.RED}Are ${ChatColor.RED}you ${ChatColor.RED}sure ${ChatColor.RED}you ${ChatColor.RED}want ${ChatColor.RED}to ${ChatColor.RED}clear ${ChatColor.RED}the ${ChatColor.RED}chat?${ChatColor.RESET}"
+ secondaryText = "${ChatColor.BOLD}This${ChatColor.BOLD} ${ChatColor.BOLD}is${ChatColor.BOLD} ${ChatColor.BOLD}irreversible.${ChatColor.RESET}"
+
+ onConfirm = {
+ Minecraft.getMinecraft().ingameGUI.chatGUI.clearChatMessages()
+ restorePreviousScreen()
+ }
+ onDeny = { restorePreviousScreen() }
+ } childOf window
+ }
+ })
}
override fun drawButton(mc: Minecraft, mouseX: Int, mouseY: Int) {