
    @};d                     *    d dl mZmZ  G d de      Zy)    )RBGtkc                   V    e Zd Zd Zd Zd Zd ZddZd Zd Z	d Z
d	 Zd
 Zd Zd Zy)AlbumArtPagec                    d| _         d | _        || _        || _        |j                  j
                  | _        t        j                  d      | _	        | j                  j                  d| j                         t        j                  dddd      }t        j                  dd	      | _        d| j                  j                  _        d| j                  j                  _        |j%                  | j                  d
d
dd       t        j&                  t        j(                  j*                        }|j-                  d       |j/                  t        j0                  j2                         |j%                  |d
ddd       t        j4                  t7        d      d      }|j                  d| j8                         |j;                  |       t        j4                  t7        d      d      }|j                  d| j<                         |j;                  |       t        j4                  t7        d      d      }|j                  d| j>                         |j;                  |       |jA                  t7        d      |      | _!        |j                  d| jD                        | _#        |jI                         j                  d| jJ                        | _&        y )NFz	album-art)nameaddedT   )hexpandvexpandmarginrow_spacingzrhythmbox-missing-artwork)fallbackuse_tooltipr      )orientationClear)labeluse_underlineclicked_Fetch_Browsez	Album Artznotify::current-entryzswitch-page)'visibleart_keyshell	song_infopropscurrent_entryentryr   ExtDB	art_storeconnectart_added_cbr   GridFadingImageimager   r   attach	ButtonBoxOrientation
HORIZONTALset_spacing
set_layoutButtonBoxStyleCENTERButton_clear_button_cbaddfetch_button_cbbrowse_button_cbappend_pagepage_numentry_changed_cbec_id
get_parentswitch_page_cbsp_id)selfr   r   gridbuttonsclearfetchbrowse_files           A/usr/lib/x86_64-linux-gnu/rhythmbox/plugins/artsearch/songinfo.py__init__zAlbumArtPage.__init__   s   $,$,$*$.,,$*88-$...$"3"34	$QA	F$~~'BPUV$*!$**!$**++djj!Q1%MMcoo&@&@A'	a	S''../++gq!Q"
**1W:T
:%--	4//0	++e
**1X;d
;%--	4//0	++e

9TB+i!6!67	++k''+=$-  !8$:O:OP$* ((8K8KL$*    c                     | j                   j                  j                  }|j                  | j                  |      r#| j
                  j                  |       || _        y y N)r   r   dbentry_matches_ext_db_keyr   r&   
set_pixbufr   )r<   keydatarG   s       rB   
art_updatezAlbumArtPage.art_updateE   sI    zz"  S1::4< 2rD   c                 >    t        d       | j                  ||       y )Nz
art added?printrL   )r<   rG   rJ   filenamerK   s        rB   r#   zAlbumArtPage.art_added_cbK   s    //#trD   c                 >    t        d       | j                  ||       y )Nzart request finished?rN   )r<   rJ   skeyrP   rK   s        rB   art_request_cbzAlbumArtPage.art_request_cbO   s     //$rD   c                     | j                   j                  d       |j                  t        j                  j
                        }|r|j                  dd       | j                  j                  || j                         y )Nd   zuser-explicittrue)
r&   startcreate_ext_db_keyr   RhythmDBPropTypeALBUMadd_infor!   requestrS   )r<   r   user_explicitrJ   s       rB   get_artzAlbumArtPage.get_artS   s[    **3 3 3 9 9:#<<(..d112rD   c                    t         j                  j                  d|j                  t         j                  j
                              }|j                  t         j                  j                        }||dk(  s|t        d      k(  r)|j                  t         j                  j                        }|j                  d|       |S )Nalbum Unknownartist)
r   ExtDBKeycreate_storage
get_stringrY   rZ   ALBUM_ARTISTr0   ARTIST	add_field)r<   r   rJ   rc   s       rB   storage_keyzAlbumArtPage.storage_keyZ   s    
""7E,<,<R=P=P=V=V,WX#B//<<=&^v|v9'=R007786--&!	*rD   c                 T   | j                   j                  j                  | _        | j                  j                  j
                  }| j                  r'|j                  | j                  | j                        ry d | _        | j                  r| j                  | j                  d       y y NF)
r   r   r   r   r   rG   r   rH   r   r^   )r<   pspecduhrG   s       rB   r7   zAlbumArtPage.entry_changed_cbb   st    ~~##11$*zz"	\\b11$**dllK	$,	\\<<

E" rD   c                     | j                   y || j                  k(  | _        | j                  r| j                  | j                  d       y y rl   )r   r6   r   r^   r   )r<   notebookpager6   s       rB   r:   zAlbumArtPage.switch_page_cbm   s=    	\\	dmm+$,	\\<<

E" rD   c                     | j                  | j                        }| j                  j                  |t        j
                  j                  d        y rF   )rj   r   r!   storer   ExtDBSourceTypeUSER_EXPLICIT)r<   buttonrJ   s      rB   r1   zAlbumArtPage.clear_button_cbu   s8    $#..sB..<<dCrD   c                     | j                   %| j                  j                  | j                          | j                  | j                  d       y )NT)r   r!   deleter^   r   )r<   rv   s     rB   r3   zAlbumArtPage.fetch_button_cby   s4    	\\>>&,,tzz4 rD   c                    |t         j                  j                  k(  r^| j                  | j                        }| j
                  j                  |t        j                  j                  |j                                |j                          y rF   )r   ResponseTypeOKrj   r   r!   	store_urir   rt   ru   get_uridestroy)r<   dialogresponserJ   s       rB   browse_file_response_cbz$AlbumArtPage.browse_file_response_cb~   s]    !!$$$			$**	%3>>C!3!3!A!A6>>CST..rD   c                 &   t        j                  t        d      | j                  j                  j
                  t         j                  j                        }|j                  t        d      t         j                  j                         |j                  t        d      t         j                  j                         |j                  t         j                  j                         |j                  d| j                         |j                          y )NzSelect new artwork_Cancel_Selectr   )r   FileChooserDialogr0   r   r   windowFileChooserActionOPEN
add_buttonrz   CANCELr{   set_default_responser"   r   show_all)r<   rv   ds      rB   r4   zAlbumArtPage.browse_button_cb   s    	A23TZZ5E5E5L5LcNcNcNhNhi!,,q|S--445,,q|S--001)),,-))J445**,rD   N)F)__name__
__module____qualname__rC   rL   r#   rS   r^   rj   r7   r:   r1   r3   r   r4    rD   rB   r   r      sA    %MN3	##D!
rD   r   N)gi.repositoryr   r   objectr   r   rD   rB   <module>r      s   6 "n6 nrD   