Exemplo n.º 1
0
    def remove(self, acct):
        import services.service_provider as sp
        with sp.ServiceProviderContainer(
                self.profile).rebuilding() as container:
            log.info('removing account %r', acct)

            with acct.flagged(DELETING):
                if acct.connected and hasattr(acct, 'disable'):
                    with traceguard:
                        acct.disable()
                elif get(acct, 'enabled', False):
                    acct.enabled = False

            removed = False

            for x in self._all_accounts.values():
                try:
                    x.accounts.remove(acct)
                except ValueError:
                    continue
                else:
                    break

            try:
                self.connected_accounts.remove(acct)
            except ValueError:  #ok, so it wasn't in the list
                pass

            self.unwatch_account(acct)

            from gui import toast
            for id in getattr(acct, 'popupids', ()):
                toast.cancel_id(id)

            container.rebuild(self)
Exemplo n.º 2
0
    def remove(self, acct):
        import services.service_provider as sp
        with sp.ServiceProviderContainer(self.profile).rebuilding() as container:
            log.info('removing account %r', acct)

            with acct.flagged(DELETING):
                if acct.connected and hasattr(acct, 'disable'):
                    with traceguard:
                        acct.disable()
                elif get(acct, 'enabled', False):
                    acct.enabled = False

            removed = False

            for x in self._all_accounts.values():
                try:
                    x.accounts.remove(acct)
                except ValueError:
                    continue
                else:
                    break

            try:
                self.connected_accounts.remove(acct)
            except ValueError: #ok, so it wasn't in the list
                pass

            self.unwatch_account(acct)

            from gui import toast
            for id in getattr(acct, 'popupids',()):
                toast.cancel_id(id)

            container.rebuild(self)
Exemplo n.º 3
0
    def acct_del(self, accts):
        '''
        Network account delete.
        '''
        for acct in accts:
            for account in self:
                if acct.id == account.id:
                    acct2 = account
                    break
            else:
                acct2 = None
            if acct2 is not None:
                with self.accounts_flagged(NETWORK_FLAG):
                    if get(acct2, 'enabled', False):
                        acct2.enabled = False

                    self.remove(acct2)
                    self._all_acct_hash.pop(acct2.id, None)

                    from gui import toast
                    for id in getattr(acct2, 'popupids', ()):
                        toast.cancel_id(id)
Exemplo n.º 4
0
    def acct_del(self, accts):
        '''
        Network account delete.
        '''
        for acct in accts:
            for account in self:
                if acct.id == account.id:
                    acct2 = account
                    break
            else:
                acct2 = None
            if acct2 is not None:
                with self.accounts_flagged(NETWORK_FLAG):
                    if get(acct2, 'enabled', False):
                        acct2.enabled = False

                    self.remove(acct2)
                    self._all_acct_hash.pop(acct2.id, None)

                    from gui import toast
                    for id in getattr(acct2, 'popupids',()):
                        toast.cancel_id(id)