;i% NddlmZmZddlmZdgZGddejZdS))QtCore QtWidgets) VerticalLabel CheckTablec\eZdZejeeeZdZdZdZ dZ dZ dZ dZ dS) rctj|tj|_|jd||jg|_||_d}|D]S}tj |d}|j ||j |d||dz }Tg|_ g|_ i|_dS)Nrvertical) orientation)rQWidget__init__ QGridLayoutlayout setSpacing setLayoutheaderscolumnsrappend addWidgetrowNames rowWidgetsoldRows)selfrcolclabels PC:\PYTHON\MyICR_Workspace\venv\Lib\site-packages\pyqtgraph/widgets/CheckTable.pyrzCheckTable.__init__ s""4(((+--  q!!! t{###    A!/zJJJE L   & & & K ! !%C 0 0 0 1HCC  c|jddD]}||vr|||D] }||jvr||!dSN)r removeRowaddRow)rrowsrs r updateRowszCheckTable.updateRowssnqqq! " "A}}q!!!  A %% A  rcltj|}t|jdz}|j||dg}d}|jD]}tjd}||_||_ |j|||| |||j vr&| |j |||dz }|j |j|j ||j |g|zdS)Nrr )rQLabellenrrrr QCheckBoxrrowrr setChecked stateChangedconnect checkChangedr)rnamerr,checksrrchecks rr#zCheckTable.addRow%s1 &&$-  " eS!,,, : :A'++EEIEI K ! !%c 2 2 2 MM% t|##  d!3C!8999 1HC   & &t'8 9 9 9 9 T""" w/00000rc|j|}|d||j|<|j||j|D]P}|dt|tj r|j |j Q|j|t|t|jD]n}|j|}tt|D]B}||d|j|||dz|CodS)Nr$r)rindex saveStaterpopr setParent isinstancerr+r. disconnectr0ranger*rr)rr1r,wiwidgetsjs rr"zCheckTable.removeRow9sRm!!$''!^^--f5c: T #% = =A KK   !Y011 =))$*;<<< C   sC ..// : :Aoa(G3w<<(( : : $$T*** %%gaj!A#q9999 : : :rctj|}|j|j|j|dSr!)rQObjectsendersigStateChangedemitr,r)rstater3s rr0zCheckTable.checkChangedIs<%%d++ !!%)UY>>>>>rcg}tt|jD]E}|j|gd|j|ddDz}||F|j|dS)Nc6g|]}|S) isChecked).0rs r z(CheckTable.saveState..Qs 'V'V'V! 'V'V'Vrr)colsr$)r;r*rrrr)rr$r=r,s rr6zCheckTable.saveStateNss4=))**  A=#$'V'Vtq?QRSRTRT?U'V'V'VVC KK     d333rcBd|dD}|||dD]n}|j|d}tdt |D].}|j||||/odS)Ncg|] }|d S)r rH)rJr%s rrKz+CheckTable.restoreState..Vs,,,!,,,rr$r r)r&rr5r;r*rr-)rrEr$r%rowNumr=s r restoreStatezCheckTable.restoreStateUs,,eFm,,, v < rXsw"""""""" .U<U<U<U<U<"U<U<U<U<U