PHP WebShell
Текущая директория: /usr/lib/python3/dist-packages/UpdateManager/backend/__pycache__
Просмотр файла: InstallBackendAptdaemon.cpython-310.pyc
o
��{f�L � @ sL d dl mZ d dlmZ d dlmZmZ d dlmZ d dl m
Z
mZmZm
Z
mZ d dlmZmZmZmZmZmZmZmZmZ d dlmZ d dlmZ d d lmZ d d
lmZ d dl!Z!d dl"Z"G dd
� d
e�Z#G dd� dej$�Z%G dd� dee�Z&e'dkr�d dl(Z(e(�)� Z*dZ+d dl,m-Z- e-e+e*�Z.e&e.d�Z/e/�0dgg g � e�1� dS dS )� )�print_function)�Gtk)�client�errors)�inline_callbacks)�AptCancelButton�AptConfigFileConflictDialog�AptDetailsExpander�AptMediumRequiredDialog�AptProgressBar) �EXIT_SUCCESS�EXIT_FAILED�STATUS_COMMITTING�STATUS_DOWNLOADING�STATUS_DOWNLOADING_REPO�STATUS_FINISHED�get_error_description_from_enum�get_error_string_from_enum�get_status_string_from_enum)�InstallBackend)�UnitySupport)�
BuilderDialog)�gettextNc s* e Zd ZdZd� fdd� Zdd� Z� ZS ) �UpdateManagerExpanderaF An AptDetailsExpander which can be used with multiple terminals.
The default AptDetailsExpander will shrink/hide when its transaction
finishes. But here we want to support "chaining" transactions. So we
override the status-changed handler to only do that when we are
running the final transaction.TFc s t � �||� || _d S �N)�super�__init__�final)�self�transaction�terminalr �� __class__� �O/usr/lib/python3/dist-packages/UpdateManager/backend/InstallBackendAptdaemon.pyr - s
zUpdateManagerExpander.__init__c C s� |t tfv r| �d� | j�� | jr| j�� d S d S |tkrE| j�� | jr4| j�� | �d� d S | jrC| � d� | �d� d S d S | jre|t
krg| j�� | jrY| j�� | �d� | � d� d S d S d S �NTF)r r �
set_sensitive�download_scrolled�showr �hider r �set_expandedr )r �trans�statusr# r# r$ �_on_status_changed1 s,
�
�
�z(UpdateManagerExpander._on_status_changed)TF)�__name__�
__module__�__qualname__�__doc__r r- �
__classcell__r# r# r! r$ r % s r c s8 e Zd ZdZ� fdd�Zdd� Zdd� Zdd � Z� ZS )
�AptStackedProgressBaraq A GtkProgressBar which represents the state of many aptdaemon
transactions.
aptdaemon provides AptProgressBar for the state of *one* transaction to
be represented in a progress bar. This widget creates one of those per
containing transaction, and scales its progress to the given ratio, so
one progress bar can show the state of many transactions.c s d| _ g | _|| _t� �� d S )Nr )�current_max_progress�
progress_bars�unityr r )r r6 r! r# r$ r P s zAptStackedProgressBar.__init__c C s~ d| krdksJ � J �t |�}| j�|� | j|_| j|7 _| jdkr+d| _| j|_|�d| j� |�d| j� d S )Nr � znotify::fractionznotify::text) r r5 �appendr4 �min�max�connect�_update_progress�_update_text)r r+ �max_progress�progressr# r# r$ �add_transactionW s
z%AptStackedProgressBar.add_transactionc C s@ |j |j }||�� }|j| }| �|� | j�|d � d S )N�d )r: r9 �get_fraction�set_fractionr6 �set_progress)r �inner_progress�data�delta�position_in_delta�new_progressr# r# r$ r<