150 lines
3.7 KiB
Java
150 lines
3.7 KiB
Java
package net.minecraft.client.gui.layouts;
|
|
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public interface LayoutSettings {
|
|
LayoutSettings padding(int padding);
|
|
|
|
LayoutSettings padding(int horizontalPadding, int verticalPadding);
|
|
|
|
LayoutSettings padding(int paddingLeft, int paddingTop, int paddingRight, int paddingBottom);
|
|
|
|
LayoutSettings paddingLeft(int paddingLeft);
|
|
|
|
LayoutSettings paddingTop(int paddingTop);
|
|
|
|
LayoutSettings paddingRight(int paddingRight);
|
|
|
|
LayoutSettings paddingBottom(int paddingBottom);
|
|
|
|
LayoutSettings paddingHorizontal(int horizontalPadding);
|
|
|
|
LayoutSettings paddingVertical(int verticalPadding);
|
|
|
|
LayoutSettings align(float xAlignment, float yAlignment);
|
|
|
|
LayoutSettings alignHorizontally(float xAlignment);
|
|
|
|
LayoutSettings alignVertically(float yAlignment);
|
|
|
|
default LayoutSettings alignHorizontallyLeft() {
|
|
return this.alignHorizontally(0.0F);
|
|
}
|
|
|
|
default LayoutSettings alignHorizontallyCenter() {
|
|
return this.alignHorizontally(0.5F);
|
|
}
|
|
|
|
default LayoutSettings alignHorizontallyRight() {
|
|
return this.alignHorizontally(1.0F);
|
|
}
|
|
|
|
default LayoutSettings alignVerticallyTop() {
|
|
return this.alignVertically(0.0F);
|
|
}
|
|
|
|
default LayoutSettings alignVerticallyMiddle() {
|
|
return this.alignVertically(0.5F);
|
|
}
|
|
|
|
default LayoutSettings alignVerticallyBottom() {
|
|
return this.alignVertically(1.0F);
|
|
}
|
|
|
|
LayoutSettings copy();
|
|
|
|
LayoutSettings.LayoutSettingsImpl getExposed();
|
|
|
|
static LayoutSettings defaults() {
|
|
return new LayoutSettings.LayoutSettingsImpl();
|
|
}
|
|
|
|
@Environment(EnvType.CLIENT)
|
|
public static class LayoutSettingsImpl implements LayoutSettings {
|
|
public int paddingLeft;
|
|
public int paddingTop;
|
|
public int paddingRight;
|
|
public int paddingBottom;
|
|
public float xAlignment;
|
|
public float yAlignment;
|
|
|
|
public LayoutSettingsImpl() {
|
|
}
|
|
|
|
public LayoutSettingsImpl(LayoutSettings.LayoutSettingsImpl other) {
|
|
this.paddingLeft = other.paddingLeft;
|
|
this.paddingTop = other.paddingTop;
|
|
this.paddingRight = other.paddingRight;
|
|
this.paddingBottom = other.paddingBottom;
|
|
this.xAlignment = other.xAlignment;
|
|
this.yAlignment = other.yAlignment;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl padding(int i) {
|
|
return this.padding(i, i);
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl padding(int i, int j) {
|
|
return this.paddingHorizontal(i).paddingVertical(j);
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl padding(int i, int j, int k, int l) {
|
|
return this.paddingLeft(i).paddingRight(k).paddingTop(j).paddingBottom(l);
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl paddingLeft(int i) {
|
|
this.paddingLeft = i;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl paddingTop(int i) {
|
|
this.paddingTop = i;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl paddingRight(int i) {
|
|
this.paddingRight = i;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl paddingBottom(int i) {
|
|
this.paddingBottom = i;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl paddingHorizontal(int i) {
|
|
return this.paddingLeft(i).paddingRight(i);
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl paddingVertical(int i) {
|
|
return this.paddingTop(i).paddingBottom(i);
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl align(float f, float g) {
|
|
this.xAlignment = f;
|
|
this.yAlignment = g;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl alignHorizontally(float f) {
|
|
this.xAlignment = f;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl alignVertically(float f) {
|
|
this.yAlignment = f;
|
|
return this;
|
|
}
|
|
|
|
public LayoutSettings.LayoutSettingsImpl copy() {
|
|
return new LayoutSettings.LayoutSettingsImpl(this);
|
|
}
|
|
|
|
@Override
|
|
public LayoutSettings.LayoutSettingsImpl getExposed() {
|
|
return this;
|
|
}
|
|
}
|
|
}
|