Dashboard
PHP:
8.2.30
OS:
Linux
User:
dh_nv8b2m
/
/
usr
/
lib
/
python3
/
dist-packages
/
xdg
/
__pycache__
📤 Upload
📝 New File
📁 New Folder
Close
Editing: MenuEditor.cpython-310.pyc
o =�_�I � @ s� d Z ddlZzddlm mZ W n ey# ddlm mZ Y nw ddlm Z m Z mZmZm Z ddlmZmZ ddlmZ ddlmZ G dd� de�ZdS ) z CLass to edit XDG Menus � N)�Menu� MenuEntry�Layout� Separator�XMLMenuBuilder)�xdg_config_dirs� xdg_data_dirs)�ParsingError)�setRootModec @ s\ e Zd ZdQdd�ZdQdd�Zdd� ZdRd d �ZdSdd�ZdTd d�ZdTdd�Z dTdd�Z dTdd�ZdTdd�ZdUdd�Z dVdd�Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� Zd+d,� Z d-d.� Zd/d0� Zd1d2� Zd3d4� ZdWd6d7�Zd8d9� Zd:d;� ZdXd=d>�Zd?d@� Z dAdB� Z!dCdD� Z"dTdEdF�Z#dTdGdH�Z$dIdJ� Z%dKdL� Z&dMdN� Z'dOdP� Z(dS )Y� MenuEditorNFc C s2 d | _ d | _d | _t� | _| �|||� g | _d S �N)�menu�filename�treer �parser�parse� filenames��selfr r �root� r �0/usr/lib/python3/dist-packages/xdg/MenuEditor.py�__init__ s zMenuEditor.__init__c C s� |rt d� t|t�r|| _n|r| j�|�| _n| j�� | _|r'| jj| _n|r-|| _ntj � td dtj �| jj�d �| _z t �| j�| _W n$ tya t �d| jj �}t �|�| _Y n tym td| j��w | �| j� d S )NTr �menus� z� <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://standards.freedesktop.org/menu-spec/menu-1.0.dtd"> <Menu> <Name>Applications</Name> <MergeFile type="parent">%s</MergeFile> </Menu> zNot a valid .menu file)r � isinstancer r r r �Filenamer �os�path�joinr �split�etreer �IOError� fromstring�ElementTreer �$_MenuEditor__remove_whitespace_nodesr r r r r $ s. &��zMenuEditor.parsec C s | � | j� | �� d S r )�_MenuEditor__saveEntriesr �_MenuEditor__saveMenu�r r r r �saveG s zMenuEditor.savec C sD t | �|d��} | �| ||||||�} | �|| || � | j�� | S )N�.desktop)r �_MenuEditor__getFileName� editMenuEntry�_MenuEditor__addEntryr �sort)r �parent�name�command�genericname�comment�icon�terminal�after�before� menuentryr r r �createMenuEntryK s zMenuEditor.createMenuEntryc C sX t � }||_|jd |_|j|_|j|_| �|||||�}| �||||� | j�� |S )Nr ) r �Parent�Depth� DefaultLayoutr �editMenur- r r. ) r r/ r0 r2 r3 r4 r6 r7 r r r r � createMenuU s zMenuEditor.createMenuc C s&