;i XddlmZmZmZejjZGddejZdS))QtCoreQtGui QtWidgetsceZdZdZddZdZdZdZdZdd Z d Z d Z d Z d Z dZdZdZdZdZdZdZdZdZdZdZdZdZdZdS) ParameterItema Abstract ParameterTree item. Used to represent the state of a Parameter from within a ParameterTree. - Sets first column of item to name - generates context menu if item is renamable or removable - handles child added / removed events - provides virtual functions for handling changes from parameter For more ParameterItem types, see ParameterTree.parameterTypes module. ctj||dg||_|j|||_|j|j |j |j |j |j |j|j|j|j|j|j|j|j|j|j|d|_dS)NF)rQTreeWidgetItem__init__titleparam registerItemdepthsigValueChangedconnect valueChanged sigChildAdded childAddedsigChildRemoved childRemovedsigNameChanged nameChangedsigLimitsChanged limitsChangedsigDefaultChangeddefaultChangedsigOptionsChanged optsChangedsigParentChanged parentChanged updateFlagsignoreNameColumnChange)selfrrs YC:\PYTHON\MyICR_Workspace\venv\Lib\site-packages\pyqtgraph/parametertree/ParameterItem.pyr zParameterItem.__init__s=!**4%++--1DEEE  %%%  %%d&7888 ##DO444 %%d&7888 $$T%5666 &&t'9::: ''(;<<< ''(8999 &&t'9::: ',###c|jj}tjjjtjjjz}|ddr>|ddtd|tjjj z}|ddr|tjjj z}|ddr|tjjj z}| |dS)N renamableFr zDCannot make parameter with both title != None and renamable == True.movable dropEnabled) roptsrQtItemFlagItemIsSelectable ItemIsEnabledget ExceptionItemIsEditableItemIsDragEnabledItemIsDropEnabledsetFlags)r$r+flagss r%r"zParameterItem.updateFlags'sz "3fi6H6VV 88K ' ' 7xx&&2 fggg VY'6 6E 88Iu % % : VY'9 9E 88M5 ) ) : VY'9 9E er&cdSN)r$rvals r%rzParameterItem.valueChanged9 r&cdS)zBReturn True if this item should be included in the tab-focus orderFr9r$s r% isFocusablezParameterItem.isFocusable=sur&cdS)zdGive input focus to this item. Can be reimplemented to display editor widgets, etc. Nr9r=s r%setFocuszParameterItem.setFocusAs  r&TcX|||dS)zIGive focus to the next (or previous) focusable item in the parameter tree)forwardN) treeWidget focusNext)r$rBs r%rDzParameterItem.focusNextGs+ ##D'#:::::r&c||jjdd ||jjdddS)zCalled when this item is added or removed from a tree. Expansion, visibility, and column widgets must all be configured AFTER the item is added to a tree, not during __init__. visibleTexpandedN) setHiddenrr+r0 setExpandedr=s r%treeWidgetChangedzParameterItem.treeWidgetChangedLs[ 4:?..y$???@@@ ,,Z>>?????r&c||jdz}||||t |D]\}}||||dS)N)r) makeTreeItemr insertChildrJ enumerater)r$rchildpositemichs r%rzParameterItem.childAddedTs!! 1 !55 d###    u%% * *EAr OOE2q ) ) ) ) * *r&ct|D]8}||}|j|ur||dS9dSr8)range childCountrPr takeChild)r$rrPrSrRs r%rzParameterItem.childRemoved\sgt(())  A::a==DzU""q!!!#  r&cdSr8r9)r$rparents r%r!zParameterItem.parentChangedcr;r&c||jj}|dds|ddsd|vrdStj|_|j|ddrE|jtddj |j |ddrE|jtddj |j |dd}t|trK|D]G}|j|j ||Hntt|t r_|D]J\}}|j|j ||K|j|dS)N removableFr(contextrRenameRemove)rr+r0rQMenu contextMenu addSeparator addAction translate triggeredreditName requestRemove isinstancelistcontextMenuTriggereddictitemspopup globalPos)r$evr+r]namer s r%contextMenuEventzParameterItem.contextMenuEventgszxx U++ DHH[%4P4P T)) F%?,, %%''' 88K ' ' n   & &y('K'K L L V ^ ^_c_l m m m 88K ' ' s   & &y('K'K L L V ^ ^_c_q r r r((9d++ gt $ $ 5 5 5 **400:BB--d335555 5 & & 5&}} 5 5 e **511;CC--d335555 r||~~.....r&c|dkr|jjdd|jrdS |j||}n<#t $r/|d|jwxYw d|_| ||d|_dS#d|_wxYwdSdS)zCalled when the text in a column has been edited (or otherwise changed). By default, we only use changes to column 0 to rename the parameter. rr NTF) rr+r0r#setNametextr1setTextrpr)r$colnewNames r%columnChangedEventz ParameterItem.columnChangedEvents !88$*/--gt<<D*  *,,TYYs^^<<    Q  1 1222  4.2+  w///.3+++e+3333 8DDs-A9BC C cd|jjdr|j|dSdS)N syncExpanded)rG)rr+setOpts)r$rGs r%expandedChangedEventz"ParameterItem.expandedChangedEvents< :?> * 2 J    1 1 1 1 1 2 2r&cr|jjdd|dSdS)Nr )rr+r0 titleChanged)r$rrps r%rzParameterItem.nameChangeds< :?  w - - 5         6 5r&cL|j}|r|dkrdS|d|tj|d}t jjj }| || d}| t|dz|t|dz|d|dS)Nparamsrg?gffffff?)rr rur QFontMetricsfontrr,TextFlagTextSingleLinesizert setHeightintheightsetWidthwidth setSizeHint)r$r fm textFlagsrs r%r~zParameterItem.titleChangeds   "" )) F Q   ! - -I&5 wwy$))A,,// s4;;==4/00111 c$**,,-../// D!!!!!r&cdS)z/Called when the parameter's limits have changedNr9)r$rlimitss r%rzParameterItem.limitsChangedr;r&cdS)z5Called when the parameter's default value has changedNr9)r$rdefaults r%rzParameterItem.defaultChangedr;r&cd|vr||d d|vr9||dkr||dd|vr||dS)zXCalled when any options are changed that are not name, value, default, or limitsrFrGr N)rH isExpandedrIr~r")r$rr+s r%rzParameterItem.optsChangeds    NNtI. / / /     D$444  j!1222 d??       r&cfd}|S)Nc<jdSr8)rra)rpr$sr%triggerz3ParameterItem.contextMenuTriggered..triggers J " "4 ( ( ( ( (r&r9)r$rprs`` r%rjz"ParameterItem.contextMenuTriggereds' ) ) ) ) ) )r&cV||ddSNr)rCeditItemr=s r%rfzParameterItem.editNames( ""4+++++r&cdS)zLCalled when this item has been selected (sel=True) OR deselected (sel=False)Nr9)r$sels r%selectedzParameterItem.selectedr;r&cZtjd|jjdSr)rQTimer singleShotrremover=s r%rgzParameterItem.requestRemoves'    DJ$566666r&c t|Sr8)idr=s r%__hash__zParameterItem.__hash__s $xxr&c ||uSr8r9)r$xs r%__eq__zParameterItem.__eq__s Dyr&N)r)T)__name__ __module__ __qualname____doc__r r"rr>r@rDrJrrr!rqrxr|rr~rrrrjrfrrgrrr9r&r%rrs  ,,,,*$      ;;;; @@@***   ///8444&222   " " "          ,,,   777r&rN)r,rrrQCoreApplicationrdr rr9r&r%rso))))))))))  # - WWWWWI-WWWWWr&