def get_actions(self, request):
        # If self.actions is explicitly set to None that means that we don't
        # want *any* actions enabled on this page.
        from django.contrib.admin.views.main import _is_changelist_popup
        if self.actions is None or _is_changelist_popup(request):
            return SortedDict()

        actions = []

        # Gather actions from the admin site first
        for (name, func) in self.admin_site.actions:
            description = getattr(func, 'short_description', name.replace('_', ' '))
            actions.append((func, name, description))

        # Then gather them from the model admin and all parent classes,
        # starting with self and working back up.
        for klass in self.__class__.mro()[::-1]:
            class_actions = getattr(klass, 'actions', [])
            # Avoid trying to iterate over None
            if not class_actions:
                continue
            actions.extend([self.get_action(action) for action in class_actions])

        # get_action might have returned None, so filter any of those out.
        actions = filter(None, actions)

        # Convert the actions into a SortedDict keyed by name.
        actions = SortedDict([
            (name, (func, name, desc))
            for func, name, desc in actions
        ])

        return actions
@return: the base name of this file path.
dataset/ETHPy150Open cloudera/hue/desktop/core/ext-py/Django-1.6.10/django/contrib/admin/options.py/ModelAdmin.get_actions--crossover with--dataset/ETHPy150Open nlloyd/SubliminalCollaborator/libs/twisted/python/filepath.py/IFilePath.basename