30 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package net.minecraft.client.gui.components;
 | |
| 
 | |
| import net.fabricmc.api.EnvType;
 | |
| import net.fabricmc.api.Environment;
 | |
| import net.minecraft.client.gui.Font;
 | |
| import net.minecraft.client.gui.GuiGraphics;
 | |
| import net.minecraft.network.chat.Component;
 | |
| import net.minecraft.network.chat.ComponentUtils;
 | |
| import net.minecraft.network.chat.Style;
 | |
| import net.minecraft.util.Mth;
 | |
| 
 | |
| @Environment(EnvType.CLIENT)
 | |
| public class PlainTextButton extends Button {
 | |
| 	private final Font font;
 | |
| 	private final Component message;
 | |
| 	private final Component underlinedMessage;
 | |
| 
 | |
| 	public PlainTextButton(int x, int y, int width, int height, Component message, Button.OnPress onPress, Font font) {
 | |
| 		super(x, y, width, height, message, onPress, DEFAULT_NARRATION);
 | |
| 		this.font = font;
 | |
| 		this.message = message;
 | |
| 		this.underlinedMessage = ComponentUtils.mergeStyles(message.copy(), Style.EMPTY.withUnderlined(true));
 | |
| 	}
 | |
| 
 | |
| 	@Override
 | |
| 	public void renderWidget(GuiGraphics guiGraphics, int mouseX, int mouseY, float partialTick) {
 | |
| 		Component component = this.isHoveredOrFocused() ? this.underlinedMessage : this.message;
 | |
| 		guiGraphics.drawString(this.font, component, this.getX(), this.getY(), 16777215 | Mth.ceil(this.alpha * 255.0F) << 24);
 | |
| 	}
 | |
| }
 |