f Qc@sFdZddlTddlZdddYZdd dYZdS( sdChip viewer and widget. In the lower left corner of the main Pynche window, you will see two ChipWidgets, one for the selected color and one for the nearest color. The selected color is the actual RGB value expressed as an X11 #COLOR name. The nearest color is the named color from the X11 database that is closest to the selected color in 3D space. There may be other colors equally close, but the nearest one is the first one found. Clicking on the nearest color chip selects that named color. The ChipViewer class includes the entire lower left quandrant; i.e. both the selected and nearest ChipWidgets. i(t*Nt ChipWidgetcBsheZdZdZd eeddd d dZdZdZdZdZ d Z d Z RS( iiPtColortbluec Csxt|d||_|jjddddt|dtddd|d |d ||_|jjdd ddt|_|jj|t |d |jdt d t dt d|jd|_ |j jddddt|_t |d |jdt d t dt d|jd|_ |j jdddd|rX|jjd|n|rt|jjd|ndS(Nttexttrowitcolumntrelieft borderwidthitwidththeightt backgroundit textvariabletjustifytstatetfontiss(tLabelt_ChipWidget__labeltgridtFrametRAISEDt_ChipWidget__chipt StringVart_ChipWidget__namevartsettEntrytFLATtCENTERtDISABLEDt_ChipWidget__namet_ChipWidget__msgvartbind(tselftmasterR R Rt initialcolortpresscmdt releasecmd((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyt__init__s,    cCs|jjd|dS(NR (Rtconfig(R tcolor((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyt set_color<scCs |jdS(NR (R(R ((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyt get_color?scCs|jj|dS(N(RR(R t colorname((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pytset_nameBscCs|jj|dS(N(RR(R tmessage((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyt set_messageEscCs|jjdtdS(NR(Rt configuretSUNKEN(R ((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pytpressHscCs|jjdtdS(NR(RR.R(R ((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pytreleaseKsN( t__name__t __module__t_WIDTHt_HEIGHTtNoneR%R(R)R+R-R0R1(((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyRs      t ChipViewercBs5eZddZdZddZddZRS(c Cs||_t|dtdd|_|jjdddddd d d t|j|_|jjddddt|jd d |_t|j|_|jjddddt|jd dd|j d|j |_ dS(NRRiRiRitipadxitstickytNSEWRtSelectedtNearestR#R$( t_ChipViewer__sbRRt_ChipViewer__frameRt_ChipViewer__sframeRt_ChipViewer__selectedt_ChipViewer__nframet_ChipViewer__buttonpresst_ChipViewer__buttonreleaset_ChipViewer__nearest(R t switchboardR!((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyR%Qs % c Cs|jj}|||f}tj|}|j|||}|j|}tj|} |jj||jj| |jj ||| kr|jj |n|jj d|jj | |jj |dS(Nt( R=tcolordbtColorDBttriplet_to_rrggbbtnearestt find_bynameR@R(RDR+R-( R tredtgreenRRGtrgbtupletrrggbbRJt nearest_tupletnearest_rrggbb((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pytupdate_yourselfbs cCs|jjdS(N(RDR0(R tevent((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyt __buttonpress{scCsN|jj|jj}tj|\}}}|jj|||dS(N(RDR1R)RHtrrggbb_to_tripletR=t update_views(R RSRORLRMR((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyt__buttonrelease~s N(R2R3R6R%RRRBRC(((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyR7Ps   (((t__doc__tTkinterRHRR7(((s7/usr/lib64/python2.7/site-packages/pynche/ChipViewer.pyts  <