package advancedsystemsmanager.flow.menus;
import advancedsystemsmanager.flow.FlowComponent;
import advancedsystemsmanager.flow.elements.RadioButton;
import advancedsystemsmanager.reference.Names;
import advancedsystemsmanager.registry.ConnectionSet;
import java.util.List;
public class MenuRedstoneSidesTrigger extends MenuRedstoneSides
{
public MenuRedstoneSidesTrigger(FlowComponent parent)
{
super(parent);
}
@Override
public void initRadioButtons()
{
radioButtonList.add(new RadioButton(RADIO_BUTTON_X_LEFT, RADIO_BUTTON_Y, Names.REQUIRES_ALL));
radioButtonList.add(new RadioButton(RADIO_BUTTON_X_RIGHT, RADIO_BUTTON_Y, Names.IF_ANY));
}
@Override
public String getMessage()
{
if (isBUD())
{
return Names.UPDATE_SIDES_INFO;
} else
{
return Names.REDSTONE_SIDES_INFO;
}
}
public boolean isBUD()
{
return getParent().getConnectionSet() == ConnectionSet.BUD;
}
@Override
public void addErrors(List<String> errors)
{
if (isVisible() && selection == 0)
{
errors.add(Names.NO_SIDES_ERROR);
}
}
public boolean requireAll()
{
return useFirstOption();
}
@Override
public String getName()
{
return isBUD() ? Names.UPDATE_SIDES_MENU : Names.REDSTONE_SIDES_MENU_TRIGGER;
}
@Override
public boolean isVisible()
{
return getParent().getConnectionSet() == ConnectionSet.REDSTONE || isBUD();
}
}