package com.constellio.app.ui.framework.buttons;
import static com.constellio.app.ui.i18n.i18n.$;
import com.constellio.app.ui.application.ConstellioUI;
import com.constellio.app.ui.entities.RecordVO;
import com.constellio.app.ui.pages.base.SessionContext;
import com.vaadin.ui.themes.ValoTheme;
public class AddToOrRemoveFromSelectionButton extends BaseButton {
private String recordId;
private String schemaTypeCode;
public AddToOrRemoveFromSelectionButton(RecordVO recordVO) {
this(recordVO.getId(), recordVO.getSchema().getTypeCode());
}
public AddToOrRemoveFromSelectionButton(String recordId, String schemaTypeCode) {
super($("addToOrRemoveFromSelection"));
this.recordId = recordId;
this.schemaTypeCode = schemaTypeCode;
addStyleName(ValoTheme.BUTTON_LINK);
}
@Override
protected void buttonClick(ClickEvent event) {
SessionContext sessionContext = ConstellioUI.getCurrentSessionContext();
if (sessionContext.getSelectedRecordIds().contains(recordId)) {
sessionContext.removeSelectedRecordId(recordId, schemaTypeCode);
} else {
sessionContext.addSelectedRecordId(recordId, schemaTypeCode);
}
}
}