1 package com.irtimaled.bbor.client.gui;
3 import net.minecraft.client.Minecraft;
4 import net.minecraft.client.gui.widget.Widget;
8 abstract class AbstractControl extends Widget implements IControl {
9 private static final int PADDING = 4;
10 protected final Minecraft minecraft;
12 AbstractControl(int x, int y, int width, String name) {
13 super(x, y, width, 20, name);
14 this.minecraft = Minecraft.getInstance();
18 public void render(int mouseX, int mouseY) {
19 super.render(mouseX, mouseY, 0f);
22 public void setX(int x) {
26 public void setY(int y) {
30 public int getControlHeight() {
31 return this.height + PADDING;
34 public int getControlWidth() {
35 return this.width + PADDING;
39 protected void renderBg(Minecraft minecraft, int mouseX, int mouseY) {
40 if (active) renderBackground(mouseX, mouseY);
43 protected void renderBackground(int mouseX, int mouseY) {
47 public boolean isVisible() {
51 public void filter(String lowerValue) {
52 String lowerString = this.getMessage().toLowerCase();
53 this.visible = lowerValue.equals("") ||
54 lowerString.startsWith(lowerValue) ||
55 lowerString.contains(" " + lowerValue);
58 void drawRectangle(int left, int top, int right, int bottom, Color color) {
59 fill(left, top, right, bottom, color.getRGB());
63 public void clearFocus() {
64 this.setFocused(false);