package org.nightlabs.jfire.contact.pbx.ui;
import javax.jdo.JDOHelper;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.ui.IViewActionDelegate;
import org.eclipse.ui.IViewPart;
import org.nightlabs.jfire.contact.ui.ContactDetailView;
import org.nightlabs.jfire.pbx.ui.call.CallHandlerRegistry;
import org.nightlabs.jfire.prop.PropertySet;
import org.nightlabs.jfire.prop.id.PropertySetID;
public class ContactDetailViewCallAction implements IViewActionDelegate {
private ContactDetailView view;
@Override
public void init(IViewPart view) {
this.view = (ContactDetailView) view;
}
@Override
public void run(IAction action) {
final PropertySet selectedPerson = view.getPerson();
if (selectedPerson == null)
return;
PropertySetID personID = (PropertySetID) JDOHelper.getObjectId(selectedPerson);
CallHandlerRegistry.sharedInstance().call(personID);
}
@Override
public void selectionChanged(IAction action, ISelection selection) {
}
}