def edit(cls, record, parent=None, autoCommit=True, title=''):
        """
        Prompts the user to edit the inputed record.
        
        :param      record | <orb.Table>
                    parent | <QWidget>
        
        :return     <bool> | accepted
        """
        dlg = cls.getDialog('edit', parent)
        
        # update the title
        try:
            name = record.schema().displayName()
        except AttributeError:
            name = record.__class__.__name__
        
        if not title:
            title = 'Edit {0}'.format(name)
        dlg.setWindowTitle(title)
        
        widget = dlg._mainwidget
        widget.setRecord(record)
        widget.setAutoCommitOnSave(autoCommit)
        
        result = dlg.exec_()
        
        return result == 1