use of ivorius.reccomplex.gui.table.cell.TableCell in project RecurrentComplex by Ivorforce.
the class TableDataSourceItemCollectionComponent method cellForIndexInSegment.
@Override
public TableCell cellForIndexInSegment(GuiTable table, int index, int segment) {
if (segment == 0) {
TableCellString cell = new TableCellString(null, key);
cell.setShowsValidityState(true);
cell.setValidityState(currentKeyState());
cell.addPropertyConsumer(val -> {
key = val;
cell.setValidityState(currentKeyState());
});
return new TitledCell(IvTranslations.get("reccomplex.gui.inventorygen.componentid"), cell).withTitleTooltip(IvTranslations.formatLines("reccomplex.gui.inventorygen.componentid.tooltip"));
} else if (segment == 2) {
TableCellString cell = new TableCellString(null, component.inventoryGeneratorID);
cell.setShowsValidityState(true);
cell.setValidityState(currentGroupIDState());
cell.addPropertyConsumer(val -> {
component.inventoryGeneratorID = val;
cell.setValidityState(currentGroupIDState());
});
return new TitledCell(IvTranslations.get("reccomplex.gui.inventorygen.groupid"), cell).withTitleTooltip(IvTranslations.formatLines("reccomplex.gui.inventorygen.groupid.tooltip"));
}
return super.cellForIndexInSegment(table, index, segment);
}
use of ivorius.reccomplex.gui.table.cell.TableCell in project RecurrentComplex by Ivorforce.
the class TableDataSourceVanillaStructureGeneration method cellForIndexInSegment.
@Override
public TableCell cellForIndexInSegment(GuiTable table, int index, int segment) {
switch(segment) {
case 1:
{
TableCellEnum<String> cell = new TableCellEnum<>("type", "village", new TableCellEnum.Option<String>("village", IvTranslations.get("reccomplex.generationInfo.vanilla.type.village")));
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.vanilla.type"), cell);
}
case 2:
{
switch(index) {
case 0:
return RCGuiTables.defaultWeightElement(val -> generationInfo.generationWeight = TableCells.toDouble(val), generationInfo.generationWeight);
case 1:
{
TableCellEnum<EnumFacing> cell = new TableCellEnum<>("front", generationInfo.front, TableDirections.getDirectionOptions(Directions.HORIZONTAL));
cell.addPropertyConsumer(val -> generationInfo.front = val);
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.vanilla.front"), cell);
}
}
}
case 3:
switch(index) {
case 0:
{
TableCellFloatRange cell = new TableCellFloatRange("baseLimit", new FloatRange((float) generationInfo.minBaseLimit, (float) generationInfo.maxBaseLimit), 0, 1000, "%.2f");
cell.setScale(Scales.pow(5));
cell.addPropertyConsumer(val -> {
generationInfo.minBaseLimit = val.getMin();
generationInfo.maxBaseLimit = val.getMax();
});
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.vanilla.amount.pervillage"), cell).withTitleTooltip(IvTranslations.getLines("reccomplex.generationInfo.vanilla.amount.pervillage.tooltip"));
}
case 1:
{
TableCellFloatRange cell = new TableCellFloatRange("scaledLimit", new FloatRange((float) generationInfo.minScaledLimit, (float) generationInfo.maxScaledLimit), 0, 1000, "%.2f");
cell.setScale(Scales.pow(5));
cell.addPropertyConsumer(val -> {
generationInfo.minScaledLimit = val.getMin();
generationInfo.maxScaledLimit = val.getMax();
});
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.vanilla.amount.scaled"), cell).withTitleTooltip(IvTranslations.getLines("reccomplex.generationInfo.vanilla.amount.scaled.tooltip"));
}
}
break;
}
return super.cellForIndexInSegment(table, index, segment);
}
use of ivorius.reccomplex.gui.table.cell.TableCell in project RecurrentComplex by Ivorforce.
the class GuiTable method mouseClicked.
public void mouseClicked(int x, int y, int button) {
for (TableCell cell : currentCells) cell.mouseClicked(button, x, y);
if (scrollBarBounds().contains(x, y)) {
dragsScrollBar = true;
dragScrollBar(x, y);
}
}
use of ivorius.reccomplex.gui.table.cell.TableCell in project RecurrentComplex by Ivorforce.
the class TableDataSourceStaticPattern method cellForIndexInSegment.
@Override
public TableCell cellForIndexInSegment(GuiTable table, int index, int segment) {
switch(segment) {
case 0:
{
if (index == 0) {
TableCellStringInt cell = new TableCellStringInt("repeatX", pattern.repeatX);
cell.addPropertyConsumer(val -> pattern.repeatX = val);
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.static.pattern.repeat.x"), cell).withTitleTooltip(IvTranslations.getLines("reccomplex.generationInfo.static.pattern.repeat.tooltip"));
} else if (index == 1) {
TableCellStringInt cell = new TableCellStringInt("repeatZ", pattern.repeatZ);
cell.addPropertyConsumer(val -> pattern.repeatZ = val);
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.static.pattern.repeat.z"), cell).withTitleTooltip(IvTranslations.getLines("reccomplex.generationInfo.static.pattern.repeat.tooltip"));
}
}
case 1:
{
if (index == 0) {
TableCellInteger cell = new TableCellInteger("shiftX", pattern.randomShiftX, 0, 10);
cell.addPropertyConsumer(val -> pattern.randomShiftX = val);
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.static.pattern.rshift.x"), cell).withTitleTooltip(IvTranslations.getLines("reccomplex.generationInfo.static.pattern.rshift.tooltip"));
} else if (index == 1) {
TableCellInteger cell = new TableCellInteger("shiftZ", pattern.randomShiftZ, 0, 10);
cell.addPropertyConsumer(val -> pattern.randomShiftZ = val);
return new TitledCell(IvTranslations.get("reccomplex.generationInfo.static.pattern.rshift.z"), cell).withTitleTooltip(IvTranslations.getLines("reccomplex.generationInfo.static.pattern.rshift.tooltip"));
}
}
}
return super.cellForIndexInSegment(table, index, segment);
}
use of ivorius.reccomplex.gui.table.cell.TableCell in project RecurrentComplex by Ivorforce.
the class TableDataSourceBlockPatternIngredient method cellForIndexInSegment.
@Override
public TableCell cellForIndexInSegment(GuiTable table, int index, int segment) {
if (segment == 0) {
TableCellString cell = new TableCellString("", ingredient.identifier);
cell.addPropertyConsumer(s -> ingredient.identifier = s);
return new TitledCell(IvTranslations.get("reccomplex.blockpattern.ingredient.identifier"), cell);
} else if (segment == 2) {
TableCellBoolean cell = new TableCellBoolean("", ingredient.delete);
cell.addPropertyConsumer(d -> ingredient.delete = d);
return new TitledCell(IvTranslations.get("reccomplex.blockpattern.ingredient.delete"), cell);
}
return super.cellForIndexInSegment(table, index, segment);
}
Aggregations