package at.medevit.elexis.inbox.ui.dialog;
import java.util.List;
import org.eclipse.jface.dialogs.TitleAreaDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Shell;
import ch.elexis.core.data.events.ElexisEventDispatcher;
import ch.elexis.core.ui.util.SWTHelper;
import ch.elexis.data.Kontakt;
import ch.elexis.data.Mandant;
import ch.elexis.data.PersistentObject;
import ch.elexis.data.Query;
public class MandantSelectorDialog extends TitleAreaDialog {
List<Mandant> lMandant;
org.eclipse.swt.widgets.List lbMandant;
Mandant selMandant;
public MandantSelectorDialog(Shell parentShell){
super(parentShell);
selMandant = ElexisEventDispatcher.getSelectedMandator();
}
@Override
public Control createDialogArea(final Composite parent){
setTitle("Mandant ändern");
setMessage("Bitte wählen Sie einen Mandanten");
lbMandant = new org.eclipse.swt.widgets.List(parent, SWT.BORDER | SWT.SINGLE);
lbMandant.setLayoutData(SWTHelper.getFillGridData(1, true, 1, true));
Query<Mandant> qbe = new Query<Mandant>(Mandant.class);
lMandant = qbe.execute();
for (PersistentObject m : lMandant) {
lbMandant.add(m.get(Kontakt.FLD_NAME2) + " " + m.get(Kontakt.FLD_NAME1) + " - "
+ m.getLabel());
}
return lbMandant;
}
@Override
protected void okPressed(){
int idx = lbMandant.getSelectionIndex();
if (idx > -1) {
selMandant = lMandant.get(idx);
}
super.okPressed();
}
public Mandant getSelectedMandant(){
return selMandant;
}
}