source: sasview/_modules/sas/perspectives/calculator/detector_editor.html @ a462c6a

gh-pages
Last change on this file since a462c6a was a462c6a, checked in by ajj, 9 years ago

Rebuild to fix index and modules docs

  • Property mode set to 100644
File size: 189.0 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
4
5<html xmlns="http://www.w3.org/1999/xhtml">
6  <head>
7    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8   
9    <title>sas.perspectives.calculator.detector_editor &mdash; SasView 3.0.0 documentation</title>
10   
11    <link rel="stylesheet" href="../../../../_static/default.css" type="text/css" />
12    <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
13   
14    <script type="text/javascript">
15      var DOCUMENTATION_OPTIONS = {
16        URL_ROOT:    '../../../../',
17        VERSION:     '3.0.0',
18        COLLAPSE_INDEX: false,
19        FILE_SUFFIX: '.html',
20        HAS_SOURCE:  true
21      };
22    </script>
23    <script type="text/javascript" src="../../../../_static/jquery.js"></script>
24    <script type="text/javascript" src="../../../../_static/underscore.js"></script>
25    <script type="text/javascript" src="../../../../_static/doctools.js"></script>
26    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
27    <link rel="top" title="SasView 3.0.0 documentation" href="../../../../index.html" />
28    <link rel="up" title="sas.perspectives.calculator" href="../calculator.html" /> 
29  </head>
30  <body>
31    <div class="related">
32      <h3>Navigation</h3>
33      <ul>
34        <li class="right" style="margin-right: 10px">
35          <a href="../../../../genindex.html" title="General Index"
36             accesskey="I">index</a></li>
37        <li class="right" >
38          <a href="../../../../py-modindex.html" title="Python Module Index"
39             >modules</a> |</li>
40        <li><a href="../../../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
41          <li><a href="../../../index.html" >Module code</a> &raquo;</li>
42          <li><a href="../calculator.html" accesskey="U">sas.perspectives.calculator</a> &raquo;</li> 
43      </ul>
44    </div> 
45
46    <div class="document">
47      <div class="documentwrapper">
48        <div class="bodywrapper">
49          <div class="body">
50           
51  <h1>Source code for sas.perspectives.calculator.detector_editor</h1><div class="highlight"><pre>
52<span class="kn">import</span> <span class="nn">wx</span>
53<span class="kn">import</span> <span class="nn">sys</span>
54<span class="kn">from</span> <span class="nn">copy</span> <span class="kn">import</span> <span class="n">deepcopy</span>
55<span class="kn">from</span> <span class="nn">sas.dataloader.data_info</span> <span class="kn">import</span> <span class="n">Detector</span>
56<span class="kn">from</span> <span class="nn">sas.guiframe.utils</span> <span class="kn">import</span> <span class="n">check_float</span>
57
58<span class="n">_BOX_WIDTH</span> <span class="o">=</span> <span class="mi">60</span>
59<span class="k">if</span> <span class="n">sys</span><span class="o">.</span><span class="n">platform</span><span class="o">.</span><span class="n">count</span><span class="p">(</span><span class="s">&quot;win32&quot;</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
60    <span class="n">_STATICBOX_WIDTH</span> <span class="o">=</span> <span class="mi">465</span>
61    <span class="n">PANEL_WIDTH</span> <span class="o">=</span> <span class="mi">500</span>
62    <span class="n">PANEL_HEIGHT</span> <span class="o">=</span> <span class="mi">450</span>
63    <span class="n">FONT_VARIANT</span> <span class="o">=</span> <span class="mi">0</span>
64<span class="k">else</span><span class="p">:</span>
65    <span class="n">_STATICBOX_WIDTH</span> <span class="o">=</span> <span class="mi">480</span>
66    <span class="n">PANEL_WIDTH</span> <span class="o">=</span> <span class="mi">550</span>
67    <span class="n">PANEL_HEIGHT</span> <span class="o">=</span> <span class="mi">480</span>
68    <span class="n">FONT_VARIANT</span> <span class="o">=</span> <span class="mi">1</span>
69   
70<span class="k">class</span> <span class="nc">DetectorDialog</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">Dialog</span><span class="p">):</span>
71<div class="viewcode-block" id="DetectorDialog"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog">[docs]</a>    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">parent</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">detector</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
72                        <span class="n">title</span><span class="o">=</span><span class="s">&quot;Detector Editor&quot;</span><span class="p">,</span>
73                        <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">PANEL_WIDTH</span><span class="p">,</span> <span class="n">PANEL_HEIGHT</span><span class="p">)):</span>
74        <span class="n">wx</span><span class="o">.</span><span class="n">Dialog</span><span class="o">.</span><span class="n">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">parent</span><span class="o">=</span><span class="n">parent</span><span class="p">,</span> <span class="nb">id</span><span class="o">=</span><span class="nb">id</span><span class="p">,</span> <span class="n">title</span><span class="o">=</span><span class="n">title</span><span class="p">,</span> <span class="n">size</span><span class="o">=</span><span class="n">size</span><span class="p">)</span>
75        <span class="k">try</span><span class="p">:</span>
76            <span class="bp">self</span><span class="o">.</span><span class="n">parent</span> <span class="o">=</span> <span class="n">parent</span>
77            <span class="bp">self</span><span class="o">.</span><span class="n">manager</span> <span class="o">=</span> <span class="n">manager</span> 
78            <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span> <span class="o">=</span> <span class="n">detector</span>
79         
80            <span class="bp">self</span><span class="o">.</span><span class="n">_reset_detector</span> <span class="o">=</span> <span class="n">deepcopy</span><span class="p">(</span><span class="n">detector</span><span class="p">)</span>
81            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">=</span> <span class="s">&quot;&quot;</span>
82            <span class="bp">self</span><span class="o">.</span><span class="n">_description</span> <span class="o">=</span> <span class="s">&quot;Edit Detector&quot;</span>
83            <span class="bp">self</span><span class="o">.</span><span class="n">_do_layout</span><span class="p">()</span>
84            <span class="bp">self</span><span class="o">.</span><span class="n">set_values</span><span class="p">()</span>
85        <span class="k">except</span><span class="p">:</span>
86            <span class="k">print</span> <span class="s">&quot;error&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">exc_value</span>
87           
88    <span class="k">def</span> <span class="nf">_define_structure</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
89        <span class="sd">&quot;&quot;&quot;</span>
90<span class="sd">            define initial sizer </span>
91<span class="sd">        &quot;&quot;&quot;</span>
92        <span class="bp">self</span><span class="o">.</span><span class="n">main_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">VERTICAL</span><span class="p">)</span>
93        <span class="bp">self</span><span class="o">.</span><span class="n">box_detector</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticBox</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="nb">str</span><span class="p">(</span><span class="s">&quot;Edit Selected Detector&quot;</span><span class="p">))</span>
94        <span class="bp">self</span><span class="o">.</span><span class="n">boxsizer_detector</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticBoxSizer</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">box_detector</span><span class="p">,</span>
95                                                    <span class="n">wx</span><span class="o">.</span><span class="n">VERTICAL</span><span class="p">)</span>
96        <span class="n">detector_box</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticBox</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&quot;Edit Number of Detectors&quot;</span><span class="p">)</span>
97        <span class="bp">self</span><span class="o">.</span><span class="n">detector_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticBoxSizer</span><span class="p">(</span><span class="n">detector_box</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">VERTICAL</span><span class="p">)</span>
98        <span class="bp">self</span><span class="o">.</span><span class="n">detector_sizer</span><span class="o">.</span><span class="n">SetMinSize</span><span class="p">((</span><span class="n">_STATICBOX_WIDTH</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">))</span>
99        <span class="bp">self</span><span class="o">.</span><span class="n">detector_button_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
100        <span class="bp">self</span><span class="o">.</span><span class="n">detector_hint_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
101       
102        <span class="bp">self</span><span class="o">.</span><span class="n">detector_button_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
103        <span class="bp">self</span><span class="o">.</span><span class="n">detector_hint_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
104        <span class="bp">self</span><span class="o">.</span><span class="n">instrument_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
105        <span class="bp">self</span><span class="o">.</span><span class="n">distance_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
106        <span class="bp">self</span><span class="o">.</span><span class="n">offset_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
107        <span class="bp">self</span><span class="o">.</span><span class="n">orientation_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
108        <span class="bp">self</span><span class="o">.</span><span class="n">beam_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
109        <span class="bp">self</span><span class="o">.</span><span class="n">pixel_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
110        <span class="bp">self</span><span class="o">.</span><span class="n">slit_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
111        <span class="bp">self</span><span class="o">.</span><span class="n">button_sizer</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">BoxSizer</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">HORIZONTAL</span><span class="p">)</span>
112       
113    <span class="k">def</span> <span class="nf">_layout_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
114        <span class="sd">&quot;&quot;&quot;</span>
115<span class="sd">            Do the layout for detector related widgets</span>
116<span class="sd">        &quot;&quot;&quot;</span>
117        <span class="n">detector_name_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&quot;Detector:&quot;</span><span class="p">)</span> 
118        <span class="n">hint_detector_txt</span> <span class="o">=</span> <span class="s">&#39;Current available detector.&#39;</span>
119        <span class="n">detector_name_txt</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="n">hint_detector_txt</span><span class="p">)</span> 
120        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">ComboBox</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="n">style</span><span class="o">=</span><span class="n">wx</span><span class="o">.</span><span class="n">CB_READONLY</span><span class="p">)</span>
121        <span class="n">hint_detector_name_txt</span> <span class="o">=</span> <span class="s">&#39;Name of detectors.&#39;</span>
122        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="n">hint_detector_name_txt</span><span class="p">)</span> 
123   
124        <span class="bp">self</span><span class="o">.</span><span class="n">bt_add_detector</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">Button</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&quot;Add&quot;</span><span class="p">)</span>
125        <span class="bp">self</span><span class="o">.</span><span class="n">bt_add_detector</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="s">&quot;Add data&#39;s detector.&quot;</span><span class="p">)</span>
126        <span class="bp">self</span><span class="o">.</span><span class="n">bt_add_detector</span><span class="o">.</span><span class="n">Bind</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">EVT_BUTTON</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">add_detector</span><span class="p">)</span>
127       
128        <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">Button</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&quot;Remove&quot;</span><span class="p">)</span>
129        <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="s">&quot;Remove data&#39;s detector.&quot;</span><span class="p">)</span>
130        <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="o">.</span><span class="n">Bind</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">EVT_BUTTON</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">remove_detector</span><span class="p">)</span>
131     
132        <span class="bp">self</span><span class="o">.</span><span class="n">detector_button_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">detector_name_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">15</span><span class="p">),</span>
133                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
134                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">bt_add_detector</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
135                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">5</span><span class="p">)])</span>
136        <span class="n">detector_hint_txt</span> <span class="o">=</span> <span class="s">&#39;No detector is available for this data.&#39;</span>
137        <span class="bp">self</span><span class="o">.</span><span class="n">detector_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="n">detector_hint_txt</span><span class="p">)</span> 
138        <span class="bp">self</span><span class="o">.</span><span class="n">detector_hint_sizer</span><span class="o">.</span><span class="n">Add</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">detector_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
139        <span class="bp">self</span><span class="o">.</span><span class="n">detector_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="bp">self</span><span class="o">.</span><span class="n">detector_button_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
140                                       <span class="n">wx</span><span class="o">.</span><span class="n">ALL</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
141                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">detector_hint_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">ALL</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>
142     
143        <span class="bp">self</span><span class="o">.</span><span class="n">fill_detector_combox</span><span class="p">()</span>
144        <span class="bp">self</span><span class="o">.</span><span class="n">enable_detector</span><span class="p">()</span>
145       
146    <span class="k">def</span> <span class="nf">_layout_instrument_sizer</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
147        <span class="sd">&quot;&quot;&quot;</span>
148<span class="sd">            Do the layout for instrument related widgets</span>
149<span class="sd">        &quot;&quot;&quot;</span>
150        <span class="c">#Instrument</span>
151        <span class="n">instrument_name_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Instrument Name : &#39;</span><span class="p">)</span> 
152        <span class="bp">self</span><span class="o">.</span><span class="n">instrument_name_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
153                                             <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="o">*</span><span class="mi">5</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
154        <span class="bp">self</span><span class="o">.</span><span class="n">instrument_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">instrument_name_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> 
155                                        <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
156                                    <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">instrument_name_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">)])</span>
157    <span class="k">def</span> <span class="nf">_layout_distance</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
158        <span class="sd">&quot;&quot;&quot;</span>
159<span class="sd">            Do the  layout for distance related widgets</span>
160<span class="sd">        &quot;&quot;&quot;</span>
161        <span class="n">distance_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Sample to Detector Distance : &#39;</span><span class="p">)</span> 
162        <span class="bp">self</span><span class="o">.</span><span class="n">distance_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
163                                         <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
164        <span class="n">distance_unit_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Unit: &#39;</span><span class="p">)</span> 
165        <span class="bp">self</span><span class="o">.</span><span class="n">distance_unit_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
166                                              <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
167        <span class="bp">self</span><span class="o">.</span><span class="n">distance_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">distance_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
168                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">distance_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
169                                     <span class="p">(</span><span class="n">distance_unit_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
170                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">distance_unit_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>
171       
172    <span class="k">def</span> <span class="nf">_layout_offset</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
173        <span class="sd">&quot;&quot;&quot;</span>
174<span class="sd">            Do the  layout for offset related widgets</span>
175<span class="sd">        &quot;&quot;&quot;</span>
176        <span class="c">#Offset</span>
177        <span class="n">offset_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Offset:&#39;</span><span class="p">)</span> 
178        <span class="n">x_offset_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;x = &#39;</span><span class="p">)</span> 
179        <span class="bp">self</span><span class="o">.</span><span class="n">x_offset_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> 
180                                        <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
181        <span class="n">y_offset_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;y = &#39;</span><span class="p">)</span> 
182        <span class="bp">self</span><span class="o">.</span><span class="n">y_offset_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
183                                         <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
184        <span class="n">z_offset_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;z = &#39;</span><span class="p">)</span> 
185        <span class="bp">self</span><span class="o">.</span><span class="n">z_offset_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
186                                         <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
187        <span class="n">offset_unit_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Unit: &#39;</span><span class="p">)</span> 
188        <span class="bp">self</span><span class="o">.</span><span class="n">offset_unit_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> 
189                                           <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
190        <span class="bp">self</span><span class="o">.</span><span class="n">offset_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">offset_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
191                                     <span class="p">(</span><span class="n">x_offset_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">30</span><span class="p">),</span>
192                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_offset_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
193                                     <span class="p">(</span><span class="n">y_offset_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
194                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_offset_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
195                                     <span class="p">(</span><span class="n">z_offset_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
196                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_offset_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
197                                     <span class="p">(</span><span class="n">offset_unit_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
198                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">offset_unit_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>
199         
200    <span class="k">def</span> <span class="nf">_layout_orientation</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
201        <span class="sd">&quot;&quot;&quot;</span>
202<span class="sd">            Do the  layout for orientation related widgets</span>
203<span class="sd">        &quot;&quot;&quot;</span>
204        <span class="c">#Orientation</span>
205        <span class="n">orientation_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Orientation:&#39;</span><span class="p">)</span> 
206        <span class="n">x_orientation_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;x = &#39;</span><span class="p">)</span> 
207        <span class="bp">self</span><span class="o">.</span><span class="n">x_orientation_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
208                                              <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
209        <span class="n">y_orientation_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;y = &#39;</span><span class="p">)</span> 
210        <span class="bp">self</span><span class="o">.</span><span class="n">y_orientation_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> 
211                                             <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
212        <span class="n">z_orientation_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;z = &#39;</span><span class="p">)</span> 
213        <span class="bp">self</span><span class="o">.</span><span class="n">z_orientation_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
214                                              <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
215        <span class="n">orientation_unit_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Unit: &#39;</span><span class="p">)</span> 
216        <span class="bp">self</span><span class="o">.</span><span class="n">orientation_unit_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
217                                             <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
218        <span class="bp">self</span><span class="o">.</span><span class="n">orientation_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">orientation_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
219                                          <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
220                                     <span class="p">(</span><span class="n">x_orientation_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">7</span><span class="p">),</span>
221                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_orientation_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
222                                     <span class="p">(</span><span class="n">y_orientation_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
223                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_orientation_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
224                                     <span class="p">(</span><span class="n">z_orientation_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
225                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_orientation_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
226                                     <span class="p">(</span><span class="n">orientation_unit_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
227                            <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">orientation_unit_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span> 
228       
229    <span class="k">def</span> <span class="nf">_layout_beam_center</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
230        <span class="sd">&quot;&quot;&quot;</span>
231<span class="sd">            Do the  layout for beam center related widgets</span>
232<span class="sd">        &quot;&quot;&quot;</span>
233        <span class="c">#Beam center</span>
234        <span class="n">beam_center_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Beam Center:&#39;</span><span class="p">)</span> 
235        <span class="n">x_beam_center_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;x = &#39;</span><span class="p">)</span> 
236        <span class="bp">self</span><span class="o">.</span><span class="n">x_beam_center_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
237                                              <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
238        <span class="n">y_beam_center_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;y = &#39;</span><span class="p">)</span> 
239        <span class="bp">self</span><span class="o">.</span><span class="n">y_beam_center_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
240                                              <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
241        <span class="n">z_beam_center_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;z = &#39;</span><span class="p">)</span> 
242        <span class="bp">self</span><span class="o">.</span><span class="n">z_beam_center_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
243                                              <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
244        <span class="n">beam_center_unit_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Unit: &#39;</span><span class="p">)</span> 
245        <span class="bp">self</span><span class="o">.</span><span class="n">beam_center_unit_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
246                                                 <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
247        <span class="bp">self</span><span class="o">.</span><span class="n">beam_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">beam_center_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
248                                     <span class="p">(</span><span class="n">x_beam_center_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
249                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_beam_center_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
250                                     <span class="p">(</span><span class="n">y_beam_center_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
251                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_beam_center_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
252                                     <span class="p">(</span><span class="n">z_beam_center_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
253                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_beam_center_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
254                                     <span class="p">(</span><span class="n">beam_center_unit_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
255                                <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">beam_center_unit_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>   
256   
257    <span class="k">def</span> <span class="nf">_layout_pixel_size</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
258        <span class="sd">&quot;&quot;&quot;</span>
259<span class="sd">            Do the  layout for pixel size related widgets</span>
260<span class="sd">        &quot;&quot;&quot;</span>
261        <span class="c">#Pixel Size</span>
262        <span class="n">pixel_size_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Pixel Size:&#39;</span><span class="p">)</span> 
263        <span class="n">x_pixel_size_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;x = &#39;</span><span class="p">)</span> 
264        <span class="bp">self</span><span class="o">.</span><span class="n">x_pixel_size_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
265                                             <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span><span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
266        <span class="n">y_pixel_size_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;y = &#39;</span><span class="p">)</span> 
267        <span class="bp">self</span><span class="o">.</span><span class="n">y_pixel_size_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> 
268                                            <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span><span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
269        <span class="n">z_pixel_size_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;z = &#39;</span><span class="p">)</span> 
270        <span class="bp">self</span><span class="o">.</span><span class="n">z_pixel_size_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
271                                             <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span><span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
272        <span class="n">pixel_size_unit_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Unit: &#39;</span><span class="p">)</span> 
273        <span class="bp">self</span><span class="o">.</span><span class="n">pixel_size_unit_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
274                                             <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span><span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> 
275        <span class="bp">self</span><span class="o">.</span><span class="n">pixel_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">pixel_size_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
276                                     <span class="p">(</span><span class="n">x_pixel_size_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">17</span><span class="p">),</span>
277                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_pixel_size_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
278                                     <span class="p">(</span><span class="n">y_pixel_size_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
279                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_pixel_size_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
280                                     <span class="p">(</span><span class="n">z_pixel_size_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
281                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_pixel_size_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
282                                     <span class="p">(</span><span class="n">pixel_size_unit_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
283                                <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">pixel_size_unit_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>
284   
285    <span class="k">def</span> <span class="nf">_layout_slit_length</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
286        <span class="sd">&quot;&quot;&quot;</span>
287<span class="sd">            Do the  layout for slit length related widgets</span>
288<span class="sd">        &quot;&quot;&quot;</span>
289        <span class="c">#slit length</span>
290        <span class="n">slit_length_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Slit Length: &#39;</span><span class="p">)</span> 
291        <span class="bp">self</span><span class="o">.</span><span class="n">slit_length_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
292                                            <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span><span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>
293        <span class="n">slit_length_unit_txt</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">StaticText</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="s">&#39;Unit: &#39;</span><span class="p">)</span> 
294        <span class="bp">self</span><span class="o">.</span><span class="n">slit_length_unit_tcl</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">TextCtrl</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span>
295                                                 <span class="n">size</span><span class="o">=</span><span class="p">(</span><span class="n">_BOX_WIDTH</span><span class="p">,</span><span class="mi">20</span><span class="p">),</span> <span class="n">style</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span>   
296        <span class="bp">self</span><span class="o">.</span><span class="n">slit_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="n">slit_length_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
297                                     <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">slit_length_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
298                                     <span class="p">(</span><span class="n">slit_length_unit_txt</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="p">),</span>
299                            <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">slit_length_unit_tcl</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span><span class="n">wx</span><span class="o">.</span><span class="n">RIGHT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>
300       
301    <span class="k">def</span> <span class="nf">_layout_button</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> 
302        <span class="sd">&quot;&quot;&quot;</span>
303<span class="sd">            Do the layout for the button widgets</span>
304<span class="sd">        &quot;&quot;&quot;</span> 
305        <span class="bp">self</span><span class="o">.</span><span class="n">bt_apply</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">Button</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="s">&#39;Apply&#39;</span><span class="p">)</span>
306        <span class="bp">self</span><span class="o">.</span><span class="n">bt_apply</span><span class="o">.</span><span class="n">Bind</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">EVT_BUTTON</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_click_apply</span><span class="p">)</span>
307        <span class="bp">self</span><span class="o">.</span><span class="n">bt_apply</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="s">&quot;Apply current changes to the detector.&quot;</span><span class="p">)</span>
308        <span class="bp">self</span><span class="o">.</span><span class="n">bt_cancel</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">Button</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">,</span><span class="s">&#39;Cancel&#39;</span><span class="p">)</span>
309        <span class="bp">self</span><span class="o">.</span><span class="n">bt_cancel</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="s">&quot;Cancel current changes.&quot;</span><span class="p">)</span>
310        <span class="bp">self</span><span class="o">.</span><span class="n">bt_cancel</span><span class="o">.</span><span class="n">Bind</span><span class="p">(</span><span class="n">wx</span><span class="o">.</span><span class="n">EVT_BUTTON</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_click_cancel</span><span class="p">)</span>
311        <span class="bp">self</span><span class="o">.</span><span class="n">bt_close</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">Button</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">ID_CANCEL</span><span class="p">,</span><span class="s">&#39;Close&#39;</span><span class="p">)</span>
312        <span class="bp">self</span><span class="o">.</span><span class="n">bt_close</span><span class="o">.</span><span class="n">SetToolTipString</span><span class="p">(</span><span class="s">&quot;Close window.&quot;</span><span class="p">)</span>
313        <span class="bp">self</span><span class="o">.</span><span class="n">button_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="bp">self</span><span class="o">.</span><span class="n">bt_apply</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">200</span><span class="p">),</span>
314                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">bt_cancel</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
315                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">bt_close</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">LEFT</span><span class="p">,</span> <span class="mi">10</span><span class="p">)])</span>
316       
317    <span class="k">def</span> <span class="nf">_do_layout</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
318        <span class="sd">&quot;&quot;&quot;</span>
319<span class="sd">             Draw the current panel</span>
320<span class="sd">        &quot;&quot;&quot;</span>
321        <span class="bp">self</span><span class="o">.</span><span class="n">_define_structure</span><span class="p">()</span>
322        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_detector</span><span class="p">()</span>
323        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_instrument_sizer</span><span class="p">()</span>
324        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_distance</span><span class="p">()</span>
325        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_offset</span><span class="p">()</span>
326        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_orientation</span><span class="p">()</span>
327        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_beam_center</span><span class="p">()</span>
328        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_pixel_size</span><span class="p">()</span>
329        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_slit_length</span><span class="p">()</span>
330        <span class="bp">self</span><span class="o">.</span><span class="n">_layout_button</span><span class="p">()</span>
331     
332        <span class="bp">self</span><span class="o">.</span><span class="n">boxsizer_detector</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="bp">self</span><span class="o">.</span><span class="n">instrument_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
333                                          <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
334                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">distance_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
335                                     <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
336                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">offset_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
337                                     <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
338                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">orientation_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
339                                    <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
340                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">beam_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
341                                    <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
342                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">pixel_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
343                                    <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span>
344                                   <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">slit_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
345                                     <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">)])</span>
346        <span class="bp">self</span><span class="o">.</span><span class="n">main_sizer</span><span class="o">.</span><span class="n">AddMany</span><span class="p">([(</span><span class="bp">self</span><span class="o">.</span><span class="n">detector_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">ALL</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
347                                 <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">boxsizer_detector</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">wx</span><span class="o">.</span><span class="n">ALL</span><span class="p">,</span> <span class="mi">10</span><span class="p">),</span>
348                                  <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">button_sizer</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span>
349                                    <span class="n">wx</span><span class="o">.</span><span class="n">EXPAND</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">TOP</span><span class="o">|</span><span class="n">wx</span><span class="o">.</span><span class="n">BOTTOM</span><span class="p">,</span> <span class="mi">5</span><span class="p">)])</span>
350       
351        <span class="bp">self</span><span class="o">.</span><span class="n">SetSizer</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">main_sizer</span><span class="p">)</span>
352        <span class="bp">self</span><span class="o">.</span><span class="n">SetAutoLayout</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
353       
354    <span class="k">def</span> <span class="nf">reset_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
355<div class="viewcode-block" id="DetectorDialog.reset_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.reset_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
356<span class="sd">            put the default value of the detector back to the current detector</span>
357<span class="sd">        &quot;&quot;&quot;</span>
358        <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span> <span class="o">=</span> <span class="n">deepcopy</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_reset_detector</span><span class="p">)</span>
359        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Clear</span><span class="p">()</span>
360        <span class="bp">self</span><span class="o">.</span><span class="n">fill_detector_combox</span><span class="p">()</span>
361        <span class="bp">self</span><span class="o">.</span><span class="n">set_values</span><span class="p">()</span>
362       
363    <span class="k">def</span> <span class="nf">set_manager</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">manager</span><span class="p">):</span></div>
364<div class="viewcode-block" id="DetectorDialog.set_manager"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.set_manager">[docs]</a>        <span class="sd">&quot;&quot;&quot;    </span>
365<span class="sd">            Set manager of this window</span>
366<span class="sd">        &quot;&quot;&quot;</span>
367        <span class="bp">self</span><span class="o">.</span><span class="n">manager</span> <span class="o">=</span> <span class="n">manager</span>
368       
369    <span class="k">def</span> <span class="nf">fill_detector_combox</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
370<div class="viewcode-block" id="DetectorDialog.fill_detector_combox"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.fill_detector_combox">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
371<span class="sd">            fill the current combobox with the available detector</span>
372<span class="sd">        &quot;&quot;&quot;</span>
373        <span class="k">for</span> <span class="n">detector</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">:</span>
374            <span class="n">pos</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Append</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
375            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">pos</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
376            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetSelection</span><span class="p">(</span><span class="n">pos</span><span class="p">)</span>
377            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
378           
379    <span class="k">def</span> <span class="nf">reset_detector_combobox</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">edited_detector</span><span class="p">):</span></div>
380<div class="viewcode-block" id="DetectorDialog.reset_detector_combobox"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.reset_detector_combobox">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
381<span class="sd">            take all edited editor and reset clientdata of detector combo box</span>
382<span class="sd">        &quot;&quot;&quot;</span>
383        <span class="k">for</span> <span class="n">position</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetCount</span><span class="p">()):</span>
384            <span class="n">detector</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">)</span>
385            <span class="k">if</span> <span class="n">detector</span> <span class="o">==</span> <span class="n">edited_detector</span><span class="p">:</span>
386                <span class="n">detector</span> <span class="o">=</span> <span class="n">edited_detector</span>
387                <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
388                <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
389                <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
390         
391    <span class="k">def</span> <span class="nf">add_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span></div>
392<div class="viewcode-block" id="DetectorDialog.add_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.add_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
393<span class="sd">            Append empty detector to data&#39;s list of detector</span>
394<span class="sd">        &quot;&quot;&quot;</span>
395       
396        <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">IsEnabled</span><span class="p">():</span>
397            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Enable</span><span class="p">()</span>
398        <span class="n">detector</span> <span class="o">=</span> <span class="n">Detector</span><span class="p">()</span>
399        <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">detector</span><span class="p">)</span>
400        <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Append</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
401        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
402        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetSelection</span><span class="p">(</span><span class="n">position</span><span class="p">)</span> 
403        <span class="bp">self</span><span class="o">.</span><span class="n">enable_detector</span><span class="p">()</span> 
404        <span class="bp">self</span><span class="o">.</span><span class="n">set_values</span><span class="p">()</span>
405       
406    <span class="k">def</span> <span class="nf">remove_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span></div>
407<div class="viewcode-block" id="DetectorDialog.remove_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.remove_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
408<span class="sd">            Remove detector to data&#39;s list of detector</span>
409<span class="sd">        &quot;&quot;&quot;</span>
410        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">IsEnabled</span><span class="p">():</span>
411            <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetCount</span><span class="p">()</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
412                <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetCurrentSelection</span><span class="p">()</span>
413                <span class="n">detector</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">)</span>
414                <span class="k">if</span> <span class="n">detector</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">:</span>
415                    <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="o">.</span><span class="n">remove</span><span class="p">(</span><span class="n">detector</span><span class="p">)</span>
416                    <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Delete</span><span class="p">(</span><span class="n">position</span><span class="p">)</span> 
417                    <span class="c">#set the combo box box the next available item</span>
418                    <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetCount</span><span class="p">()</span>
419                    <span class="k">if</span> <span class="n">position</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
420                        <span class="n">position</span> <span class="o">-=</span> <span class="mi">1</span> 
421                    <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetSelection</span><span class="p">(</span><span class="n">position</span><span class="p">)</span>
422                    <span class="bp">self</span><span class="o">.</span><span class="n">set_values</span><span class="p">()</span>
423        <span class="c">#disable or enable the combo box when necessary</span>
424        <span class="bp">self</span><span class="o">.</span><span class="n">enable_detector</span><span class="p">()</span>
425       
426    <span class="k">def</span> <span class="nf">enable_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
427<div class="viewcode-block" id="DetectorDialog.enable_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.enable_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
428<span class="sd">            Enable /disable widgets crelated to detector</span>
429<span class="sd">        &quot;&quot;&quot;</span>
430        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span> <span class="ow">and</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetCount</span><span class="p">()</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
431            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Enable</span><span class="p">()</span>
432            <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="o">.</span><span class="n">Enable</span><span class="p">()</span>
433            <span class="n">n_detector</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetCount</span><span class="p">()</span>
434            <span class="n">detector_hint_txt</span> <span class="o">=</span> <span class="s">&#39;Detectors available: </span><span class="si">%s</span><span class="s"> &#39;</span><span class="o">%</span><span class="nb">str</span><span class="p">(</span><span class="n">n_detector</span><span class="p">)</span>
435            <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">)</span> <span class="o">&gt;</span> <span class="mi">1</span><span class="p">:</span>
436                <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="o">.</span><span class="n">Enable</span><span class="p">()</span>
437            <span class="k">else</span><span class="p">:</span>
438                <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="o">.</span><span class="n">Disable</span><span class="p">()</span>
439        <span class="k">else</span><span class="p">:</span>
440            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">Disable</span><span class="p">()</span>
441            <span class="bp">self</span><span class="o">.</span><span class="n">bt_remove_detector</span><span class="o">.</span><span class="n">Disable</span><span class="p">()</span>
442            <span class="n">detector_hint_txt</span> <span class="o">=</span> <span class="s">&#39;No detector is available for this data.&#39;</span>
443        <span class="bp">self</span><span class="o">.</span><span class="n">detector_txt</span><span class="o">.</span><span class="n">SetLabel</span><span class="p">(</span><span class="n">detector_hint_txt</span><span class="p">)</span>
444           
445    <span class="k">def</span> <span class="nf">set_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">detector</span><span class="p">):</span></div>
446<div class="viewcode-block" id="DetectorDialog.set_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.set_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
447<span class="sd">            set detector for data</span>
448<span class="sd">        &quot;&quot;&quot;</span>
449        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
450            <span class="k">return</span>
451        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">:</span>
452            <span class="k">for</span> <span class="n">item</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">:</span>
453                <span class="k">if</span> <span class="n">item</span> <span class="o">==</span> <span class="n">detector</span><span class="p">:</span>
454                    <span class="n">item</span> <span class="o">=</span> <span class="n">detector</span>
455                    <span class="bp">self</span><span class="o">.</span><span class="n">reset_detector_combobox</span><span class="p">(</span><span class="n">edited_detector</span><span class="o">=</span><span class="n">detector</span><span class="p">)</span>
456                    <span class="k">return</span>
457               
458    <span class="k">def</span> <span class="nf">get_current_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
459<div class="viewcode-block" id="DetectorDialog.get_current_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.get_current_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
460<span class="sd">        &quot;&quot;&quot;</span>
461        <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">IsEnabled</span><span class="p">():</span>
462            <span class="k">return</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span>
463        <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetSelection</span><span class="p">()</span> 
464        <span class="k">if</span> <span class="n">position</span> <span class="o">==</span> <span class="n">wx</span><span class="o">.</span><span class="n">NOT_FOUND</span><span class="p">:</span>
465            <span class="k">return</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span>
466        <span class="n">detector_name</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetStringSelection</span><span class="p">()</span> 
467        <span class="n">detector</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">GetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">)</span>
468        <span class="k">return</span> <span class="n">detector</span><span class="p">,</span> <span class="n">detector_name</span><span class="p">,</span> <span class="n">position</span>
469   
470    <span class="k">def</span> <span class="nf">set_values</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
471<div class="viewcode-block" id="DetectorDialog.set_values"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.set_values">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
472<span class="sd">            take the detector values of the current data and display them</span>
473<span class="sd">            through the panel</span>
474<span class="sd">        &quot;&quot;&quot;</span>
475        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">_</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
476        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
477            <span class="k">return</span>
478        <span class="bp">self</span><span class="o">.</span><span class="n">instrument_name_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span>
479        <span class="c">#Distance</span>
480        <span class="n">distance</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">distance</span>
481        <span class="bp">self</span><span class="o">.</span><span class="n">distance_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">distance</span><span class="p">))</span>
482        <span class="bp">self</span><span class="o">.</span><span class="n">distance_unit_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">distance_unit</span><span class="p">))</span>
483        <span class="c">#Offset</span>
484        <span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">z</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">y</span> <span class="p">,</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">z</span>
485        <span class="bp">self</span><span class="o">.</span><span class="n">x_offset_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">))</span> 
486        <span class="bp">self</span><span class="o">.</span><span class="n">y_offset_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span> 
487        <span class="bp">self</span><span class="o">.</span><span class="n">z_offset_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">z</span><span class="p">))</span> 
488        <span class="bp">self</span><span class="o">.</span><span class="n">offset_unit_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset_unit</span><span class="p">))</span>
489        <span class="c">#Orientation</span>
490        <span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">y</span>
491        <span class="n">z</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">z</span>
492        <span class="bp">self</span><span class="o">.</span><span class="n">x_orientation_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">))</span> 
493        <span class="bp">self</span><span class="o">.</span><span class="n">y_orientation_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span> 
494        <span class="bp">self</span><span class="o">.</span><span class="n">z_orientation_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">z</span><span class="p">))</span> 
495        <span class="bp">self</span><span class="o">.</span><span class="n">orientation_unit_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation_unit</span><span class="p">))</span>
496        <span class="c">#Beam center</span>
497        <span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">y</span>
498        <span class="n">z</span>  <span class="o">=</span>   <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">z</span>
499        <span class="bp">self</span><span class="o">.</span><span class="n">x_beam_center_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">))</span> 
500        <span class="bp">self</span><span class="o">.</span><span class="n">y_beam_center_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span> 
501        <span class="bp">self</span><span class="o">.</span><span class="n">z_beam_center_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">z</span><span class="p">))</span> 
502        <span class="bp">self</span><span class="o">.</span><span class="n">beam_center_unit_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center_unit</span><span class="p">))</span>
503        <span class="c">#Pixel size </span>
504        <span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">y</span>
505        <span class="n">z</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">z</span>
506        <span class="bp">self</span><span class="o">.</span><span class="n">x_pixel_size_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">x</span><span class="p">))</span> 
507        <span class="bp">self</span><span class="o">.</span><span class="n">y_pixel_size_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">y</span><span class="p">))</span> 
508        <span class="bp">self</span><span class="o">.</span><span class="n">z_pixel_size_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">z</span><span class="p">))</span> 
509        <span class="bp">self</span><span class="o">.</span><span class="n">pixel_size_unit_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size_unit</span><span class="p">))</span>
510        <span class="c">#Slit length</span>
511        <span class="n">slit_length</span> <span class="o">=</span> <span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span>
512        <span class="bp">self</span><span class="o">.</span><span class="n">slit_length_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span><span class="p">))</span>
513        <span class="bp">self</span><span class="o">.</span><span class="n">slit_length_unit_tcl</span><span class="o">.</span><span class="n">SetValue</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">slit_length_unit</span><span class="p">))</span>
514       
515    <span class="k">def</span> <span class="nf">get_detector</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
516<div class="viewcode-block" id="DetectorDialog.get_detector"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.get_detector">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
517<span class="sd">            return the current detector</span>
518<span class="sd">        &quot;&quot;&quot;</span>
519        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span>
520   
521    <span class="k">def</span> <span class="nf">get_notes</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
522<div class="viewcode-block" id="DetectorDialog.get_notes"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.get_notes">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
523<span class="sd">            return notes</span>
524<span class="sd">        &quot;&quot;&quot;</span>
525        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span>
526   
527    <span class="k">def</span> <span class="nf">on_change_instrument</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
528<div class="viewcode-block" id="DetectorDialog.on_change_instrument"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_instrument">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
529<span class="sd">            Change instrument</span>
530<span class="sd">        &quot;&quot;&quot;</span>
531        <span class="n">detector</span><span class="p">,</span> <span class="n">detector_name</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
532        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span> 
533            <span class="k">return</span>
534        <span class="c">#Change the name of the detector</span>
535        <span class="n">name</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">instrument_name_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
536        <span class="k">if</span> <span class="n">name</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">name</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
537            <span class="n">name</span> <span class="o">=</span> <span class="bp">None</span>
538        <span class="k">if</span> <span class="n">detector_name</span> <span class="o">!=</span> <span class="n">name</span><span class="p">:</span>
539            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Instrument&#39;s &quot;</span>
540            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;name from </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector_name</span><span class="p">,</span> <span class="n">name</span><span class="p">)</span>
541            <span class="n">detector</span><span class="o">.</span><span class="n">name</span> <span class="o">=</span> <span class="n">name</span>
542            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
543            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
544            <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
545       
546    <span class="k">def</span> <span class="nf">on_change_distance</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
547<div class="viewcode-block" id="DetectorDialog.on_change_distance"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_distance">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
548<span class="sd">            Change distance of the sample to the detector</span>
549<span class="sd">        &quot;&quot;&quot;</span>
550        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
551        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
552            <span class="k">return</span>
553        <span class="c">#Change the distance</span>
554        <span class="n">distance</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">distance_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
555        <span class="k">if</span> <span class="n">distance</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">distance</span>  <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
556            <span class="n">distance</span> <span class="o">=</span> <span class="bp">None</span>
557            <span class="n">detector</span><span class="o">.</span><span class="n">distance</span> <span class="o">=</span> <span class="n">distance</span>
558        <span class="k">else</span><span class="p">:</span>
559            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">distance_tcl</span><span class="p">):</span>
560                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">distance</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">distance</span><span class="p">):</span>
561                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change Distance from&quot;</span>
562                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">distance</span><span class="p">,</span> <span class="n">distance</span><span class="p">)</span>
563                    <span class="n">detector</span><span class="o">.</span><span class="n">distance</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">distance</span><span class="p">)</span>
564            <span class="k">else</span><span class="p">:</span>
565                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for &quot;</span>
566                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; the distance won&#39;t changes &quot;</span>
567                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">distance</span><span class="p">,</span> <span class="n">distance</span><span class="p">)</span>
568        <span class="c">#change the distance unit</span>
569        <span class="n">unit</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">distance_unit_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
570        <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">distance_unit</span> <span class="o">!=</span> <span class="n">unit</span><span class="p">:</span>
571            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change distance&#39;s unit from &quot;</span>
572            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">distance_unit</span><span class="p">,</span> <span class="n">unit</span><span class="p">)</span>
573           
574        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
575        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
576        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
577       
578    <span class="k">def</span> <span class="nf">on_change_offset</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
579<div class="viewcode-block" id="DetectorDialog.on_change_offset"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_offset">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
580<span class="sd">            Change the detector offset</span>
581<span class="sd">        &quot;&quot;&quot;</span>
582        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
583        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
584            <span class="k">return</span>
585        <span class="c">#Change x coordinate</span>
586        <span class="n">x_offset</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">x_offset_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
587        <span class="k">if</span> <span class="n">x_offset</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">x_offset</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
588            <span class="n">x_offset</span> <span class="o">=</span> <span class="bp">None</span>
589            <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">x</span> <span class="o">=</span> <span class="n">x_offset</span>
590        <span class="k">else</span><span class="p">:</span>
591            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_offset_tcl</span><span class="p">):</span>
592                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">x</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_offset</span><span class="p">):</span>
593                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change x of offset from&quot;</span>
594                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">x</span><span class="p">,</span>
595                                                      <span class="n">x_offset</span><span class="p">)</span>
596                    <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">x</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_offset</span><span class="p">)</span>
597            <span class="k">else</span><span class="p">:</span>
598                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the offset &#39;s x &quot;</span>
599                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;won&#39;t changes x offset&quot;</span>
600                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; from </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> <span class="n">x_offset</span><span class="p">)</span>
601        <span class="c">#Change y coordinate</span>
602        <span class="n">y_offset</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">y_offset_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
603        <span class="k">if</span> <span class="n">y_offset</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">y_offset</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
604            <span class="n">y_offset</span> <span class="o">=</span> <span class="bp">None</span>
605            <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">y</span> <span class="o">=</span> <span class="n">y_offset</span>
606        <span class="k">else</span><span class="p">:</span>
607            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_offset_tcl</span><span class="p">):</span>
608                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">y</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_offset</span><span class="p">):</span>
609                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change y of offset from &quot;</span>
610                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">y</span><span class="p">,</span> <span class="n">y_offset</span><span class="p">)</span>
611                    <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">y</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_offset</span><span class="p">)</span>
612            <span class="k">else</span><span class="p">:</span>
613                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the offset &#39;s y &quot;</span>
614                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;won&#39;t changes y &quot;</span>
615                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;offset from </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
616                                                         <span class="n">y_offset</span><span class="p">)</span>
617        <span class="c">#Change z coordinate</span>
618        <span class="n">z_offset</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">z_offset_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
619        <span class="k">if</span> <span class="n">z_offset</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">z_offset</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
620            <span class="n">z_offset</span> <span class="o">=</span> <span class="bp">None</span>
621            <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">z</span> <span class="o">=</span> <span class="n">z_offset</span>
622        <span class="k">else</span><span class="p">:</span>
623            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_offset_tcl</span><span class="p">):</span>
624                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">z</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_offset</span><span class="p">):</span>
625                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change z of offset from&quot;</span>
626                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">z</span><span class="p">,</span>
627                                                              <span class="n">z_offset</span><span class="p">)</span>
628                    <span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">z</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_offset</span><span class="p">)</span>
629            <span class="k">else</span><span class="p">:</span>
630                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the offset &#39;s x &quot;</span>
631                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;won&#39;t changes z&quot;</span>
632                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;offset from </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset</span><span class="o">.</span><span class="n">z</span><span class="p">,</span> 
633                                                       <span class="n">z_offset</span><span class="p">)</span>
634        <span class="c">#change the offset unit</span>
635        <span class="n">unit</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">offset_unit_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
636        <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">offset_unit</span> <span class="o">!=</span> <span class="n">unit</span><span class="p">:</span>
637            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change Offset&#39;s&quot;</span>
638            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;unit from </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">offset_unit</span><span class="p">,</span> <span class="n">unit</span><span class="p">)</span>
639           
640        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
641        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
642        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
643       
644    <span class="k">def</span> <span class="nf">on_change_orientation</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
645<div class="viewcode-block" id="DetectorDialog.on_change_orientation"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_orientation">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
646<span class="sd">            Change the detector orientation</span>
647<span class="sd">        &quot;&quot;&quot;</span>
648        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
649        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
650            <span class="k">return</span>
651        <span class="c">#Change x coordinate</span>
652        <span class="n">x_orientation</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">x_orientation_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
653        <span class="k">if</span> <span class="n">x_orientation</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">x_orientation</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
654            <span class="n">x_orientation</span> <span class="o">=</span> <span class="bp">None</span>
655            <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">x</span> <span class="o">=</span> <span class="n">x_orientation</span>
656        <span class="k">else</span><span class="p">:</span>
657            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_orientation_tcl</span><span class="p">):</span>
658                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">x</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_orientation</span><span class="p">):</span>
659                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change x of orientation from &quot;</span>
660                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">x</span><span class="p">,</span>
661                                                   <span class="n">x_orientation</span><span class="p">)</span>
662                    <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">x</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_orientation</span><span class="p">)</span>
663            <span class="k">else</span><span class="p">:</span>
664                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the orientation &quot;</span>
665                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;&#39;s x  won&#39;t changes x orientation from &quot;</span>
666                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">x</span><span class="p">,</span>
667                                              <span class="n">x_orientation</span><span class="p">)</span>
668        <span class="c">#Change y coordinate</span>
669        <span class="n">y_orientation</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">y_orientation_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
670        <span class="k">if</span> <span class="n">y_orientation</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">y_orientation</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
671            <span class="n">y_orientation</span> <span class="o">=</span> <span class="bp">None</span>
672            <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">y</span> <span class="o">=</span> <span class="n">y_orientation</span>
673        <span class="k">else</span><span class="p">:</span>
674            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_orientation_tcl</span><span class="p">):</span>
675                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">y</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_orientation</span><span class="p">):</span>
676                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change y of orientation from &quot;</span>
677                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
678                                                     <span class="n">y_orientation</span><span class="p">)</span>
679                    <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">y</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_orientation</span><span class="p">)</span>
680            <span class="k">else</span><span class="p">:</span>
681                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the orientation&#39;s &quot;</span>
682                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; y won&#39;t changes y orientation from &quot;</span>
683                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
684                                            <span class="n">y_orientation</span><span class="p">)</span>
685        <span class="c">#Change z coordinate</span>
686        <span class="n">z_orientation</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">z_orientation_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
687        <span class="k">if</span> <span class="n">z_orientation</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">z_orientation</span>  <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
688            <span class="n">z_orientation</span> <span class="o">=</span> <span class="bp">None</span>
689            <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">z</span> <span class="o">=</span> <span class="n">z_orientation</span>
690        <span class="k">else</span><span class="p">:</span>
691            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_orientation_tcl</span><span class="p">):</span>
692                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">z</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_orientation</span><span class="p">):</span>
693                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change z of offset from &quot;</span>
694                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">z</span><span class="p">,</span>
695                                                   <span class="n">z_orientation</span><span class="p">)</span>
696                    <span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">z</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_orientation</span><span class="p">)</span>
697            <span class="k">else</span><span class="p">:</span>
698                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the orientation &#39;s&quot;</span>
699                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; x won&#39;t changes z orientation from &quot;</span>
700                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation</span><span class="o">.</span><span class="n">z</span><span class="p">,</span>
701                                              <span class="n">z_orientation</span><span class="p">)</span>
702        <span class="c">#change the orientation unit</span>
703        <span class="n">unit</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">orientation_unit_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
704        <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">orientation_unit</span> <span class="o">!=</span> <span class="n">unit</span><span class="p">:</span>
705            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change orientation&#39;s unit from &quot;</span>
706            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">orientation_unit</span><span class="p">,</span> <span class="n">unit</span><span class="p">)</span>
707           
708        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
709        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
710        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
711       
712    <span class="k">def</span> <span class="nf">on_change_beam_center</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
713<div class="viewcode-block" id="DetectorDialog.on_change_beam_center"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_beam_center">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
714<span class="sd">            Change the detector beam center</span>
715<span class="sd">        &quot;&quot;&quot;</span>
716       
717        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
718        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
719            <span class="k">return</span>
720        <span class="c">#Change x coordinate</span>
721        <span class="n">x_beam_center</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">x_beam_center_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
722        <span class="k">if</span> <span class="n">x_beam_center</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">x_beam_center</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
723            <span class="n">x_beam_center</span> <span class="o">=</span> <span class="bp">None</span>
724            <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">x</span> <span class="o">=</span> <span class="n">x_beam_center</span>
725        <span class="k">else</span><span class="p">:</span>
726            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_beam_center_tcl</span><span class="p">):</span>
727                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">x</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_beam_center</span><span class="p">):</span>
728                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change x of offset from &quot;</span>
729                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">x</span><span class="p">,</span>
730                                                     <span class="n">x_beam_center</span><span class="p">)</span>
731                    <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">x</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_beam_center</span><span class="p">)</span>
732            <span class="k">else</span><span class="p">:</span>
733                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the beam &quot;</span>
734                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;center &#39;s x won&#39;t changes x beam center from &quot;</span>
735                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">x</span><span class="p">,</span>
736                                            <span class="n">x_beam_center</span><span class="p">)</span>
737        <span class="c">#Change y coordinate</span>
738        <span class="n">y_beam_center</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">y_beam_center_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
739        <span class="k">if</span> <span class="n">y_beam_center</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">y_beam_center</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
740            <span class="n">y_beam_center</span> <span class="o">=</span> <span class="bp">None</span>
741            <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">y</span>  <span class="o">=</span> <span class="n">y_beam_center</span>
742        <span class="k">else</span><span class="p">:</span>
743            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_beam_center_tcl</span><span class="p">):</span>
744                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">y</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_beam_center</span><span class="p">):</span>
745                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change y of beam center from &quot;</span>
746                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
747                                                     <span class="n">y_beam_center</span><span class="p">)</span>
748                    <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">y</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_beam_center</span><span class="p">)</span>
749            <span class="k">else</span><span class="p">:</span>
750                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the beam &quot;</span>
751                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;center &#39;s y won&#39;t changes y beam center from &quot;</span>
752                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
753                                              <span class="n">y_beam_center</span><span class="p">)</span>
754        <span class="c">#Change z coordinate</span>
755        <span class="n">z_beam_center</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">z_beam_center_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
756        <span class="k">if</span> <span class="n">z_beam_center</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">z_beam_center</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
757            <span class="n">z_beam_center</span> <span class="o">=</span> <span class="bp">None</span>
758            <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">z</span> <span class="o">=</span> <span class="n">z_beam_center</span>
759        <span class="k">else</span><span class="p">:</span>
760            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_beam_center_tcl</span><span class="p">):</span>
761                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">z</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_beam_center</span><span class="p">):</span>
762                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change z of beam center from &quot;</span>
763                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">z</span><span class="p">,</span>
764                                                     <span class="n">z_beam_center</span><span class="p">)</span>
765                    <span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">z</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_beam_center</span><span class="p">)</span>
766            <span class="k">else</span><span class="p">:</span>
767                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the offset &#39;s x &quot;</span>
768                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;won&#39;t changes z beam center from &quot;</span>
769                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center</span><span class="o">.</span><span class="n">z</span><span class="p">,</span>
770                                            <span class="n">z_beam_center</span><span class="p">)</span>
771        <span class="c">#change the beam center unit</span>
772        <span class="n">unit</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">beam_center_unit_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
773        <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">beam_center_unit</span> <span class="o">!=</span> <span class="n">unit</span><span class="p">:</span>
774            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change beam center&#39;s unit from &quot;</span>
775            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">beam_center_unit</span><span class="p">,</span> <span class="n">unit</span><span class="p">)</span>
776       
777        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
778        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
779        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
780       
781    <span class="k">def</span> <span class="nf">on_change_pixel_size</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
782<div class="viewcode-block" id="DetectorDialog.on_change_pixel_size"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_pixel_size">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
783<span class="sd">            Change the detector pixel size</span>
784<span class="sd">        &quot;&quot;&quot;</span>
785        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
786        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
787            <span class="k">return</span>
788        <span class="c">#Change x coordinate</span>
789        <span class="n">x_pixel_size</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">x_pixel_size_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
790        <span class="k">if</span> <span class="n">x_pixel_size</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">x_pixel_size</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
791            <span class="n">x_pixel_size</span> <span class="o">=</span> <span class="bp">None</span>
792        <span class="k">else</span><span class="p">:</span>
793            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">x_pixel_size_tcl</span><span class="p">):</span>
794                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">x</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_pixel_size</span><span class="p">)</span> <span class="p">:</span>
795                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change x of pixel size from &quot;</span>
796                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">x</span><span class="p">,</span>
797                                                   <span class="n">x_pixel_size</span><span class="p">)</span>
798                    <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">x</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">x_pixel_size</span><span class="p">)</span>
799            <span class="k">else</span><span class="p">:</span>
800                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the pixel&quot;</span>
801                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; size &#39;s x  won&#39;t changes x pixel size from &quot;</span>
802                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">x</span><span class="p">,</span> 
803                                             <span class="n">x_pixel_size</span><span class="p">)</span>
804        <span class="c">#Change y coordinate</span>
805        <span class="n">y_pixel_size</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">y_pixel_size_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
806        <span class="k">if</span> <span class="n">y_pixel_size</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">y_pixel_size</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
807            <span class="n">y_pixel_size</span> <span class="o">=</span> <span class="bp">None</span>
808            <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">y</span> <span class="o">=</span> <span class="n">y_pixel_size</span>
809        <span class="k">else</span><span class="p">:</span>
810            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">y_pixel_size_tcl</span><span class="p">):</span>
811                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">y</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_pixel_size</span><span class="p">):</span>
812                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change y of pixel size from &quot;</span>
813                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
814                                                   <span class="n">y_pixel_size</span><span class="p">)</span>
815                    <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">y</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">y_pixel_size</span><span class="p">)</span>
816            <span class="k">else</span><span class="p">:</span>
817                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the pixel &quot;</span>
818                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;size&#39;s y  won&#39;t changes y pixel size from &quot;</span>
819                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">y</span><span class="p">,</span>
820                                              <span class="n">y_pixel_size</span><span class="p">)</span>
821        <span class="c">#Change z coordinate</span>
822        <span class="n">z_pixel_size</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">z_pixel_size_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
823        <span class="k">if</span> <span class="n">z_pixel_size</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">z_pixel_size</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
824            <span class="n">z_pixel_size</span> <span class="o">=</span> <span class="bp">None</span>
825            <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">z</span> <span class="o">=</span> <span class="n">z_pixel_size</span>
826        <span class="k">else</span><span class="p">:</span>
827            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">z_pixel_size_tcl</span><span class="p">):</span>
828                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">z</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_pixel_size</span><span class="p">):</span>
829                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Change z of pixel size from &quot;</span>
830                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">z</span><span class="p">,</span>
831                                                   <span class="n">z_pixel_size</span><span class="p">)</span>
832                    <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">z</span>  <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">z_pixel_size</span><span class="p">)</span>
833            <span class="k">else</span><span class="p">:</span>
834                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float for the offset &#39;s x &quot;</span>
835                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;won&#39;t changes z pixel size from &quot;</span>
836                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size</span><span class="o">.</span><span class="n">z</span><span class="p">,</span> <span class="n">z_pixel_size</span><span class="p">)</span>
837        <span class="c">#change the beam center unit</span>
838        <span class="n">unit</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">pixel_size_unit_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
839        <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">pixel_size_unit</span> <span class="o">!=</span> <span class="n">unit</span><span class="p">:</span>
840            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change pixel size&#39;s unit from &quot;</span>
841            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">pixel_size_unit</span><span class="p">,</span> <span class="n">unit</span><span class="p">)</span>
842           
843        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
844        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
845        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
846           
847    <span class="k">def</span> <span class="nf">on_change_slit_length</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div>
848<div class="viewcode-block" id="DetectorDialog.on_change_slit_length"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_change_slit_length">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
849<span class="sd">            Change slit length of the detector</span>
850<span class="sd">        &quot;&quot;&quot;</span>
851        <span class="n">detector</span><span class="p">,</span> <span class="n">_</span><span class="p">,</span> <span class="n">position</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_current_detector</span><span class="p">()</span>
852        <span class="k">if</span> <span class="n">detector</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
853            <span class="k">return</span>
854        <span class="c">#Change the distance</span>
855        <span class="n">slit_length</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">slit_length_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
856        <span class="k">if</span> <span class="n">slit_length</span> <span class="o">==</span> <span class="s">&quot;&quot;</span> <span class="ow">or</span> <span class="n">slit_length</span> <span class="o">==</span> <span class="nb">str</span><span class="p">(</span><span class="bp">None</span><span class="p">):</span>
857            <span class="n">slit_length</span> <span class="o">=</span> <span class="bp">None</span>
858            <span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span> <span class="o">=</span> <span class="n">slit_length</span>
859        <span class="k">else</span><span class="p">:</span>
860            <span class="k">if</span> <span class="n">check_float</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">slit_length_tcl</span><span class="p">):</span>
861                <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span> <span class="o">!=</span> <span class="nb">float</span><span class="p">(</span><span class="n">slit_length</span><span class="p">):</span>
862                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change slit length from&quot;</span>
863                    <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; </span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s"> </span><span class="se">\n</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span><span class="p">,</span>
864                                                    <span class="n">slit_length</span><span class="p">)</span>
865                    <span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span> <span class="o">=</span> <span class="nb">float</span><span class="p">(</span><span class="n">slit_length</span><span class="p">)</span>
866            <span class="k">else</span><span class="p">:</span>
867                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;Error: Expected a float&quot;</span>
868                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; for the slit length won&#39;t changes &quot;</span>
869                <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">slit_length</span><span class="p">,</span> <span class="n">slit_length</span><span class="p">)</span>
870        <span class="c">#change the distance unit</span>
871        <span class="n">unit</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">slit_length_unit_tcl</span><span class="o">.</span><span class="n">GetValue</span><span class="p">()</span><span class="o">.</span><span class="n">lstrip</span><span class="p">()</span><span class="o">.</span><span class="n">rstrip</span><span class="p">()</span>
872        <span class="k">if</span> <span class="n">detector</span><span class="o">.</span><span class="n">slit_length_unit</span> <span class="o">!=</span> <span class="n">unit</span><span class="p">:</span>
873            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot; Change slit length&#39;s unit from &quot;</span>
874            <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span> <span class="o">+=</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s"> to </span><span class="si">%s</span><span class="s">&quot;</span><span class="o">%</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">slit_length_unit_tcl</span><span class="p">,</span> <span class="n">unit</span><span class="p">)</span> 
875           
876        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetString</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
877        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetClientData</span><span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">detector</span><span class="p">)</span>
878        <span class="bp">self</span><span class="o">.</span><span class="n">detector_cbox</span><span class="o">.</span><span class="n">SetStringSelection</span><span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">detector</span><span class="o">.</span><span class="n">name</span><span class="p">))</span> 
879           
880    <span class="k">def</span> <span class="nf">on_click_cancel</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span></div>
881<div class="viewcode-block" id="DetectorDialog.on_click_cancel"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_click_cancel">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
882<span class="sd">            reset the current detector to its initial values</span>
883<span class="sd">        &quot;&quot;&quot;</span>
884        <span class="bp">self</span><span class="o">.</span><span class="n">reset_detector</span><span class="p">()</span>
885        <span class="bp">self</span><span class="o">.</span><span class="n">set_values</span><span class="p">()</span>
886        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">manager</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
887             <span class="bp">self</span><span class="o">.</span><span class="n">manager</span><span class="o">.</span><span class="n">set_detector</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">)</span>
888             
889    <span class="k">def</span> <span class="nf">on_click_apply</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span></div>
890<div class="viewcode-block" id="DetectorDialog.on_click_apply"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.detector_editor.DetectorDialog.on_click_apply">[docs]</a>        <span class="sd">&quot;&quot;&quot;</span>
891<span class="sd">            Apply user values to the detector</span>
892<span class="sd">        &quot;&quot;&quot;</span>
893        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_instrument</span><span class="p">()</span>
894        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_distance</span><span class="p">()</span>
895        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_instrument</span><span class="p">()</span>
896        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_beam_center</span><span class="p">()</span>
897        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_offset</span><span class="p">()</span>
898        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_orientation</span><span class="p">()</span>
899        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_pixel_size</span><span class="p">()</span>
900        <span class="bp">self</span><span class="o">.</span><span class="n">on_change_slit_length</span><span class="p">()</span>
901        <span class="k">for</span> <span class="n">detector</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">:</span>
902            <span class="bp">self</span><span class="o">.</span><span class="n">manager</span><span class="o">.</span><span class="n">set_detector</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_detector</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_notes</span><span class="p">)</span>
903           
904<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&quot;__main__&quot;</span><span class="p">:</span></div></div>
905    <span class="n">app</span> <span class="o">=</span> <span class="n">wx</span><span class="o">.</span><span class="n">App</span><span class="p">()</span>
906    <span class="n">test_detector</span> <span class="o">=</span> <span class="n">Detector</span><span class="p">()</span>
907    <span class="n">dlg</span> <span class="o">=</span> <span class="n">DetectorDialog</span><span class="p">(</span><span class="n">detector</span><span class="o">=</span><span class="p">[</span><span class="n">test_detector</span><span class="p">])</span>
908    <span class="n">dlg</span><span class="o">.</span><span class="n">ShowModal</span><span class="p">()</span>
909    <span class="n">app</span><span class="o">.</span><span class="n">MainLoop</span><span class="p">()</span>
910 
911</pre></div>
912
913          </div>
914        </div>
915      </div>
916      <div class="sphinxsidebar">
917        <div class="sphinxsidebarwrapper">
918<div id="searchbox" style="display: none">
919  <h3>Quick search</h3>
920    <form class="search" action="../../../../search.html" method="get">
921      <input type="text" name="q" />
922      <input type="submit" value="Go" />
923      <input type="hidden" name="check_keywords" value="yes" />
924      <input type="hidden" name="area" value="default" />
925    </form>
926    <p class="searchtip" style="font-size: 90%">
927    Enter search terms or a module, class or function name.
928    </p>
929</div>
930<script type="text/javascript">$('#searchbox').show(0);</script>
931        </div>
932      </div>
933      <div class="clearer"></div>
934    </div>
935    <div class="related">
936      <h3>Navigation</h3>
937      <ul>
938        <li class="right" style="margin-right: 10px">
939          <a href="../../../../genindex.html" title="General Index"
940             >index</a></li>
941        <li class="right" >
942          <a href="../../../../py-modindex.html" title="Python Module Index"
943             >modules</a> |</li>
944        <li><a href="../../../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
945          <li><a href="../../../index.html" >Module code</a> &raquo;</li>
946          <li><a href="../calculator.html" >sas.perspectives.calculator</a> &raquo;</li> 
947      </ul>
948    </div>
949    <div class="footer">
950        &copy; Copyright 2013, The SasView Project.
951      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
952    </div>
953  </body>
954</html>
Note: See TracBrowser for help on using the repository browser.