3
w]                 @   s   d dl mZ d dl mZ d dl mZ d dl mZ d dl mZ d dlZd dlmZmZ G dd	 d	ej	Z
ed
krej Ze
ej  dS )    )IBus)Gdk)	GdkPixbuf)Gtk)PangoN)_N_c                   s>   e Zd Zd fdd	Zdd Zdd Zdd	 Zd
d Z  ZS )EngineAboutNc                sD   || _ tt| jtd|d tdtjjf}| j|  | j	  d S )NZAbout)titletransient_forZ_Close)
_EngineAbout__engine_descsuperr	   __init__r   r   ZResponseTypeZCLOSEZadd_buttons_EngineAbout__init_ui)selfZenginer   Zbuttons)	__class__ $/usr/share/ibus/setup/engineabout.pyr   "   s    

zEngineAbout.__init__c             C   s   | j d tj }|jtjj |jtjjtjj |j	dd tj
 | _| jjd |j| j |j  | jj|ddd | j  d S )Nz
help-abouti  FTr   )Zset_icon_namer   ZScrolledWindowZset_shadow_typeZ
ShadowTypeZ	ETCHED_INZ
set_policyZ
PolicyTypeZ	AUTOMATICZset_size_requestZTextView_EngineAbout__text_viewZset_editableaddZshow_allZvboxZ
pack_start_EngineAbout__fill_text_view)r   swr   r   r   Z	__init_ui,   s    

zEngineAbout.__init_uic             C   s   | j j }| j| |jd}|j|dd |j|| j| jj  |j|dt	j
| j dd |j|tdtj| jj  ddd |j|td	| jj  ddd |j|td
| jj  ddd |j|tdddd |j|t	j| jdd d S )Nr   z
 left_margin_16z
%s
headingzLanguage: %s
smallboldzKeyboard layout: %s
zAuthor: %s
zDescription:
	wrap_textleft_margin_32)r   Z
get_buffer_EngineAbout__create_tagsZget_iter_at_offsetZinsert_with_tags_by_nameZinsert_pixbuf_EngineAbout__load_iconr   Zget_iconi18nZgettext_engine_longnamer   r   Zget_language_nameZget_languageZ
get_layoutZ
get_authorZgettext_engine_description)r   text_bufferiterr   r   r   Z__fill_text_view;   s0    






zEngineAbout.__fill_text_viewc             C   s   |j dtjjdtj d |j dtjjd |j dtjjd |j dd	d
 |j ddd |j dtjj	d |j ddd |j ddd d S )Nr      )weightsizer   )r$   Zitalic)Zstyler   g𞪪?)ZscaleZgray_foregroundz	dark gray)Z
foregroundr   )Z	wrap_moder   )Zleft_marginr       )
Z
create_tagr   ZWeightZBOLDZSCALEZStyleZITALICr   ZWrapModeZWORD)r   r!   r   r   r   Z__create_tagsW   s"    zEngineAbout.__create_tagsc             C   st   yt jj|ddd}W nX   tjj }|j|dd}|d krL|jddd}|d krb|jddd}|j }Y nX |S )N0   Tr   zibus-enginezimage-missing)r   ZPixbufZnew_from_file_at_scaler   Z	IconThemeZget_defaultZlookup_iconZ	load_icon)r   Z	icon_nameZpixbufZthemeZiconr   r   r   Z__load_iconj   s    

zEngineAbout.__load_icon)N)	__name__
__module____qualname__r   r   r   r   r   __classcell__r   r   )r   r   r	   !   s
   
r	   __main__)Zgi.repositoryr   r   r   r   r   r    r   r   ZDialogr	   r(   Z
EngineDescZdescZrunr   r   r   r   <module>   s   Y