
    e                     "   d Z ddlZddlZddlmZ  ej                  d      Zd ej                  dddgd      fd	 ej                  d
ddddd      fd ej                  ddd      fd ej                  dddddd      fd ej                  dddddd      fd ej                  dddddd      fd ej                  ddddd       fd! ej                  d"d#      fd$ ej                  d%d&d'(      fd) ej                  d*ddd+      fd, ej                  d-ddddgd.d/d0 1      fd2 ej                  d
d
d3gdddd4      fgZ	 ej                         Zej                  d5        ej                         Z ej                         Zej#                  e       ej%                  e       ej'                           ej(                         Z ej(                         Zej/                  d6       ej1                         Zej3                  d       ej5                  d7       ej7                  e       ej7                  e       g Zd8 Zd9 Ze	D ]  \  ZZ  ej(                  e      Z!ejE                  e!       ejG                  e!       ejG                  e        e jH                  jK                  e       e jL                  jK                  e        ejG                  edd       ejG                  ed:d       e'd;k(  r ejP                          yy)<z
This example demonstrates the SpinBox widget, which is an extension of 
QDoubleSpinBox providing some advanced features:

  * SI-prefixed units
  * Non-linear stepping modes
  * Bounded/unbounded values

    N)	QtWidgetszSpinBox ExamplezZFloating-point spin box, min=0, no maximum.<br>Non-finite values (nan, inf) are permitted.g      @F)valueboundsfinitezHInteger spin box, dec stepping<br>(1-9, 10-90, 100-900, etc), decimals=4
   T      )r   intdecminStepstepdecimalsz4Float with SI-prefixed units<br>(n, u, m, k, M, etc)g?V)r   suffixsiPrefixz:Float with SI-prefixed units,<br>dec step=0.1, minStep=0.1g      ?PSIg?)r   r   r   r   r   r   z;Float with SI-prefixed units,<br>dec step=0.5, minStep=0.01g      ?g{Gz?z<Float with SI-prefixed units,<br>dec step=1.0, minStep=0.001gMbP?z<Float with SI-prefixed units,<br>scaleAtZero=1e-6, step=1e-9gư>g&.>)r   r   r   scaleAtZeror   z"Float with SI prefix but no suffixg    eA)r   r   zFloat with custom formattinggR7@z${value:0.02f}z)\$?(?P<number>(-?\d+(\.\d+)?)|(-?\.\d+))$)r   formatregexzInt with suffixi  )r   r   r
   r   zInt with custom formattingi  z0x{value:X}z(0x)?(?P<number>[0-9a-fA-F]+)$c                 2    t        j                  d| z         S )N0x)astliteral_eval)ss    </usr/lib/python3/dist-packages/pyqtgraph/examples/SpinBox.py<lambda>r   ,   s    3#3#3DF#;     )r   r   r
   r   r   r   evalFuncz)Integer with bounds=[10, 20] and wrapping   )r   r   r
   r   r   wrappingzpyqtgraph example: SpinBox      c                 b    t         j                  dt        | j                               z         y )NzFinal value: %s)changedLabelsetTextstrr   )sbs    r   valueChangedr(   E   s     *S_<=r   c                 b    t         j                  dt        | j                               z         y )NzValue changing: %s)changingLabelr%   r&   r   )r'   r   s     r   valueChangingr+   H   s     .RXXZ@Ar      __main__))__doc__r   	pyqtgraphpgpyqtgraph.Qtr   mkQAppappSpinBoxspinsQMainWindowwinsetWindowTitleQWidgetcwQGridLayoutlayout	setLayoutsetCentralWidgetshowQLabelr*   r$   setMinimumWidthfontsetBoldsetPointSizesetFontlabelsr(   r+   textspinlabelappend	addWidgetsigValueChangedconnectsigValueChanging__name__exec r   r   <module>rR      sT     "bii!" bRZZc1d)E:<ORZZbdaa!LN;RZZc#57ARZZc%$DsTWXZBRZZc#$SRVWYCRZZc#$SRWXZCRZZad4PR)RZZcD)+#RZZe$4ACD RZZctC8:!RZZdaXm6;=> 1RZZb"btQQQUVX5	> i   / 0Y				  V    R  
 	  "y!   c " T    "    d    T 	>B  1JD$IT"E
MM%
U
T  .!!-01   1 %   q! $\ zBGGI r   