Your IP : 3.21.98.206


Current Path : /lib64/python2.7/site-packages/pynche/
Upload File :
Current File : //lib64/python2.7/site-packages/pynche/DetailsViewer.pyc

�
f
�Qc@sEdZddlTdZdZdZdZdZddd	��YZd
S(s�DetailsViewer class.

This class implements a pure input window which allows you to meticulously
edit the current color.  You have both mouse control of the color (via the
buttons along the bottom row), and there are keyboard bindings for each of the
increment/decrement buttons.

The top three check buttons allow you to specify which of the three color
variations are tied together when incrementing and decrementing.  Red, green,
and blue are self evident.  By tying together red and green, you can modify
the yellow level of the color.  By tying together red and blue, you can modify
the magenta level of the color.  By tying together green and blue, you can
modify the cyan level, and by tying all three together, you can modify the
grey level.

The behavior at the boundaries (0 and 255) are defined by the `At boundary'
option menu:

    Stop
        When the increment or decrement would send any of the tied variations
        out of bounds, the entire delta is discarded.

    Wrap Around
        When the increment or decrement would send any of the tied variations
        out of bounds, the out of bounds variation is wrapped around to the
        other side.  Thus if red were at 238 and 25 were added to it, red
        would have the value 7.

    Preseve Distance
        When the increment or decrement would send any of the tied variations
        out of bounds, all tied variations are wrapped as one, so as to
        preserve the distance between them.  Thus if green and blue were tied,
        and green was at 238 while blue was at 223, and an increment of 25
        were applied, green would be at 15 and blue would be at 0.

    Squash
        When the increment or decrement would send any of the tied variations
        out of bounds, the out of bounds variation is set to the ceiling of
        255 or floor of 0, as appropriate.  In this way, all tied variations
        are squashed to one edge or the other.

The following key bindings can be used as accelerators.  Note that Pynche can
fall behind if you hold the key down as a key repeat:

Left arrow == -1
Right arrow == +1

Control + Left == -10
Control + Right == 10

Shift + Left == -25
Shift + Right == +25
i����(t*tStopsWrap AroundsPreserve DistancetSquashsDetails Window...t
DetailsViewercBs�eZdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Z	dd�Z
dd�Zdd	�Zdd
�Z
d�Zd�Zd
�ZRS(cCs�||_|j�}|j�\|_|_|_t|dd�}|_|jd|j	�|j
d�|jd�|jd|j
�|jd|j
�|jd|j	�|jd|j	�|jd	|j�|jd
|j�|jd|j�|jd|j�|jd
|j�|jd|j�t|�}|_|jdtdt�t|dd�|_|jjdddddt�t�|_|jj|j dd��t!|ddd|jd|j"dddd�|_#|j#jdddddt$�t�|_%|j%j|j dd ��t!|dd!d|j%d|j"dd dd�|_&|j&jdd dddt$�t�|_'|j'j|j d"d��t!|dd#d|j'd|j"dddd�|_(|j(jdd$dddt$�t|�|_)|j)jdddddt$�|j"�t|dd%�|_*|j*jdd&dddt�t+�|_,|j,j|j d't-��t.||j,t-t/t0t1�|_2|j2jdd&dddt$�|j2j3d(d)�t|�}|_4|jddddd*d dd+�t5|dd,d|j�|_6t5|dd-d|j�|_7t5|dd.d|j�|_8t5|dd/d|j�|_9t5|dd0d|j�|_:t5|dd1d|j�|_;|j6jdtdtd2t<�|j7jdtdtd2t<�|j8jdtdtd2t<�|j9jdtdtd2t<�|j:jdtdtd2t<�|j;jdtdtd2t<�dS(3Ntclass_tPynchetWM_DELETE_WINDOWsPynche Details Windows<Alt-q>s<Alt-Q>s<Alt-w>s<Alt-W>s<KeyPress-Left>s<KeyPress-Right>s<Control-KeyPress-Left>s<Control-KeyPress-Right>s<Shift-KeyPress-Left>s<Shift-KeyPress-Right>texpandtfillttexts
Move Sliders:trowitcolumnitstickytRSLIDERitRedtvariabletcommandtonvaluetoffvaluetGSLIDERitGreentBSLIDERtBlueisAt boundary:itATBOUNDtwidthit
columnspantEWs-25s-10s-1s+1s+10s+25tside(=t_DetailsViewer__sbtoptiondbtcurrent_rgbt_DetailsViewer__redt_DetailsViewer__greent_DetailsViewer__bluetToplevelt_DetailsViewer__roottprotocoltwithdrawttitleticonnametbindt_DetailsViewer__quitt_DetailsViewer__minus1t_DetailsViewer__plus1t_DetailsViewer__minus10t_DetailsViewer__plus10t_DetailsViewer__minus25t_DetailsViewer__plus25tFramet_DetailsViewer__frametpacktYEStXtLabelt_DetailsViewer__l1tgridtEtIntVart_DetailsViewer__rvartsettgettCheckbuttont_DetailsViewer__effectt_DetailsViewer__radio1tWt_DetailsViewer__gvart_DetailsViewer__radio2t_DetailsViewer__bvart_DetailsViewer__radio3t_DetailsViewer__l2t_DetailsViewer__l3t	StringVart_DetailsViewer__boundvartSTOPt
OptionMenutWRAPtRATIOtGRAVt_DetailsViewer__omenut	configuret_DetailsViewer__btnframetButtont_DetailsViewer__down25t_DetailsViewer__down10t_DetailsViewer__down1t_DetailsViewer__up1t_DetailsViewer__up10t_DetailsViewer__up25tLEFT(tselftswitchboardtmasterRtroottframe((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__init__Bs�	

						
"cCs|jj�|jj�|jj�}|dkr>d}n*didd6d	d
6dd6d
d6|}|jjd|�dS(Niiiits(= %s Level)tCyanitMagentaitYellowitGreyiR	(iiii(R:R<RARCRERO(RYteventttieR	((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__effect�s)	
cCs|jj�dS(N(R#tquit(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__quit�scCs|jj�dS(N(R#R%(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyR%�scCs|jj�dS(N(R#t	deiconify(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyRi�scCs|jd�dS(Ni��(t_DetailsViewer__delta(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt	__minus25�scCs|jd�dS(Ni����(Rj(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt	__minus10�scCs|jd�dS(Ni����(Rj(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__minus1�scCs|jd�dS(Ni(Rj(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__plus1�scCs|jd�dS(Ni
(Rj(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__plus10�scCs|jd�dS(Ni(Rj(RYRd((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__plus25�sc		Cs�g}|jj�r2|j|}|j|�n	|j}|jj�rg|j|}|j|�n	|j}|jj�r�|j|}|j|�n	|j}|jj�}|t	kr+|dks|dks|dks|dks|dks|dkr�|j|j|j}}}q�n�|t
ksU|tkr�t|�dkr�|dkrn|d7}n|dkr�|d7}n|dkr�|d7}n|dkr�|d8}n|dkr�|d8}n|dkr�|d8}q�n�|tkr(d}x8|D]0}|dkr"d}q|dkrd}qqW|dkr�t
|�}|jj�rs|d|}n|jj�r�|d|}n|jj�r%|d|}q%q�|dkr�t|�}|jj�r�||}n|jj�r||}n|jj�r%||}q%q�n�|tkr�|dkrId}n|dkr^d}n|dkrsd}n|dkr�d}n|dkr�d}n|dkr�d}q�n|jj|||�|jj�dS(Nii�iii����i(R:R<RtappendRAR RCR!RHRIRKRLtlentmaxtminRMRtupdate_viewsR#tupdate_idletasks(	RYtdeltaRetredtgreentbluetatboundtdirtc((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt__delta�s�
	
	
	$$#*





	


					cCs||_||_||_dS(N(RR R!(RYRxRyRz((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pytupdate_yourselfs		cCsP|jj�|d<|jj�|d<|jj�|d<|jj�|d<dS(NR
RRR(R:R<RARCRH(RYR((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pytsave_options
sN(t__name__t
__module__tNoneR^R>R)R%RiR.R,R*R+R-R/RjRR�(((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyRAsS	M	N((t__doc__tTkinterRIRKRLRMt	ADDTOVIEWR(((s:/usr/lib64/python2.7/site-packages/pynche/DetailsViewer.pyt<module>5s