source: sasview/_modules/sas/perspectives/calculator/calculator.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: 40.2 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.calculator &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.calculator</h1><div class="highlight"><pre>
52<span class="sd">&quot;&quot;&quot;</span>
53<span class="sd">Calculator Module</span>
54<span class="sd">&quot;&quot;&quot;</span>
55<span class="c">################################################################################</span>
56<span class="c">#This software was developed by the University of Tennessee as part of the</span>
57<span class="c">#Distributed Data Analysis of Neutron Scattering Experiments (DANSE)</span>
58<span class="c">#project funded by the US National Science Foundation. </span>
59<span class="c">#</span>
60<span class="c">#See the license text in license.txt</span>
61<span class="c">#</span>
62<span class="c">#copyright 2010, University of Tennessee</span>
63<span class="c">################################################################################</span>
64
65<span class="kn">import</span> <span class="nn">wx</span>
66<span class="kn">from</span> <span class="nn">sas.guiframe.plugin_base</span> <span class="kn">import</span> <span class="n">PluginBase</span>
67<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.data_operator</span> <span class="kn">import</span> <span class="n">DataOperatorWindow</span>
68<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.data_editor</span> <span class="kn">import</span> <span class="n">DataEditorWindow</span>
69<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.kiessig_calculator_panel</span> <span class="kn">import</span> <span class="n">KiessigWindow</span>
70<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.sld_panel</span> <span class="kn">import</span> <span class="n">SldWindow</span>
71<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.density_panel</span> <span class="kn">import</span> <span class="n">DensityWindow</span>
72<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.slit_length_calculator_panel</span> \
73            <span class="kn">import</span> <span class="n">SlitLengthCalculatorWindow</span>
74<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.resolution_calculator_panel</span> \
75            <span class="kn">import</span> <span class="n">ResolutionWindow</span>
76<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.gen_scatter_panel</span> <span class="kn">import</span> <span class="n">SasGenWindow</span>
77<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.image_viewer</span> <span class="kn">import</span> <span class="n">ImageView</span>
78<span class="kn">from</span> <span class="nn">sas.perspectives.calculator.pyconsole</span> <span class="kn">import</span> <span class="n">PyConsole</span>
79<span class="kn">import</span> <span class="nn">logging</span>
80
81<div class="viewcode-block" id="Plugin"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin">[docs]</a><span class="k">class</span> <span class="nc">Plugin</span><span class="p">(</span><span class="n">PluginBase</span><span class="p">):</span>
82    <span class="sd">&quot;&quot;&quot;</span>
83<span class="sd">    This class defines the interface for a Plugin class</span>
84<span class="sd">    for calculator perspective</span>
85<span class="sd">    &quot;&quot;&quot;</span>
86    <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">standalone</span><span class="o">=</span><span class="bp">True</span><span class="p">):</span>
87        <span class="n">PluginBase</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">name</span><span class="o">=</span><span class="s">&quot;Calculator&quot;</span><span class="p">,</span> <span class="n">standalone</span><span class="o">=</span><span class="n">standalone</span><span class="p">)</span>
88        <span class="c"># Log startup</span>
89        <span class="n">logging</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s">&quot;Calculator plug-in started&quot;</span><span class="p">)</span>   
90        <span class="bp">self</span><span class="o">.</span><span class="n">sub_menu</span> <span class="o">=</span> <span class="s">&quot;Tool&quot;</span> 
91        <span class="bp">self</span><span class="o">.</span><span class="n">data_edit_frame</span> <span class="o">=</span> <span class="bp">None</span>
92        <span class="c"># data operator use one frame all the time</span>
93        <span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span> <span class="o">=</span> <span class="bp">None</span>
94        <span class="bp">self</span><span class="o">.</span><span class="n">kiessig_frame</span> <span class="o">=</span> <span class="bp">None</span>
95        <span class="bp">self</span><span class="o">.</span><span class="n">sld_frame</span> <span class="o">=</span> <span class="bp">None</span>
96        <span class="bp">self</span><span class="o">.</span><span class="n">cal_md_frame</span> <span class="o">=</span> <span class="bp">None</span>
97        <span class="bp">self</span><span class="o">.</span><span class="n">cal_slit_frame</span> <span class="o">=</span> <span class="bp">None</span>
98        <span class="bp">self</span><span class="o">.</span><span class="n">cal_res_frame</span> <span class="o">=</span> <span class="bp">None</span>
99        <span class="bp">self</span><span class="o">.</span><span class="n">gen_frame</span> <span class="o">=</span> <span class="bp">None</span>
100        <span class="bp">self</span><span class="o">.</span><span class="n">image_view</span> <span class="o">=</span> <span class="bp">None</span>
101        <span class="bp">self</span><span class="o">.</span><span class="n">py_frame</span> <span class="o">=</span> <span class="bp">None</span>
102       
103       
104<div class="viewcode-block" id="Plugin.help"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.help">[docs]</a>    <span class="k">def</span> <span class="nf">help</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">evt</span><span class="p">):</span>
105        <span class="sd">&quot;&quot;&quot;</span>
106<span class="sd">        Show a general help dialog. </span>
107<span class="sd">        </span>
108<span class="sd">        :TODO: replace the text with a nice image</span>
109<span class="sd">            provide more hint on the SLD calculator</span>
110<span class="sd">        &quot;&quot;&quot;</span>
111        <span class="kn">from</span> <span class="nn">help_panel</span> <span class="kn">import</span>  <span class="n">HelpWindow</span>
112        <span class="n">frame</span> <span class="o">=</span> <span class="n">HelpWindow</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span> 
113        <span class="k">if</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">frame</span><span class="p">,</span> <span class="s">&quot;IsIconized&quot;</span><span class="p">):</span>
114            <span class="k">if</span> <span class="ow">not</span> <span class="n">frame</span><span class="o">.</span><span class="n">IsIconized</span><span class="p">():</span>
115                <span class="k">try</span><span class="p">:</span>
116                    <span class="n">icon</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="o">.</span><span class="n">GetIcon</span><span class="p">()</span>
117                    <span class="n">frame</span><span class="o">.</span><span class="n">SetIcon</span><span class="p">(</span><span class="n">icon</span><span class="p">)</span>
118                <span class="k">except</span><span class="p">:</span>
119                    <span class="k">pass</span> 
120        <span class="n">frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
121</div>
122<div class="viewcode-block" id="Plugin.get_tools"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.get_tools">[docs]</a>    <span class="k">def</span> <span class="nf">get_tools</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
123        <span class="sd">&quot;&quot;&quot;</span>
124<span class="sd">        Returns a set of menu entries for tools</span>
125<span class="sd">        &quot;&quot;&quot;</span>
126        <span class="n">data_oper_help</span> <span class="o">=</span> <span class="s">&quot;Perform arithmetic data operation (+...) &quot;</span>
127        <span class="n">data_oper_help</span> <span class="o">+=</span> <span class="s">&quot;and combination (|)&quot;</span>
128        <span class="n">kiessig_help</span> <span class="o">=</span> <span class="s">&quot;Approximately computes the &quot;</span>
129        <span class="n">kiessig_help</span> <span class="o">+=</span> <span class="s">&quot;thickness of a shell or the size of &quot;</span>
130        <span class="n">kiessig_help</span> <span class="o">+=</span> <span class="s">&quot;particles </span><span class="se">\n</span><span class="s"> from the width of a Kiessig fringe.&quot;</span>
131        <span class="n">sld_help</span> <span class="o">=</span> <span class="s">&quot;Computes the Scattering Length Density.&quot;</span>
132        <span class="n">slit_length_help</span> <span class="o">=</span> <span class="s">&quot;Computes the slit length from the beam profile.&quot;</span>
133        <span class="n">resolution_help</span> <span class="o">=</span> <span class="s">&quot;Approximately estimates the &quot;</span>
134        <span class="n">resolution_help</span> <span class="o">+=</span> <span class="s">&quot;resolution of Q in 2D based on the SAS &quot;</span>
135        <span class="n">resolution_help</span> <span class="o">+=</span> <span class="s">&quot;instrumental parameter values.&quot;</span>
136        <span class="n">mass_volume_help</span> <span class="o">=</span> <span class="s">&quot;Based on the chemical formula, &quot;</span>
137        <span class="n">mass_volume_help</span> <span class="o">+=</span> <span class="s">&quot;compute the mass density or the molar volume.&quot;</span>
138        <span class="n">gensas_help</span> <span class="o">=</span> <span class="s">&quot;Generic SAS&quot;</span>
139        <span class="n">pyconsole_help</span> <span class="o">=</span> <span class="s">&quot;Python Console.&quot;</span>
140        <span class="n">imageviewer_help</span> <span class="o">=</span> <span class="s">&quot;Load an image file and display the image.&quot;</span>
141        <span class="c">#data_editor_help = &quot;Meta Data Editor&quot;</span>
142        <span class="k">return</span> <span class="p">[(</span><span class="s">&quot;Data Operation&quot;</span><span class="p">,</span> 
143                        <span class="n">data_oper_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_data_operation</span><span class="p">),</span>
144                <span class="p">(</span><span class="s">&quot;SLD Calculator&quot;</span><span class="p">,</span> <span class="n">sld_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_calculate_sld</span><span class="p">),</span>
145                <span class="p">(</span><span class="s">&quot;Density/Volume Calculator&quot;</span><span class="p">,</span> <span class="n">mass_volume_help</span><span class="p">,</span> 
146                                            <span class="bp">self</span><span class="o">.</span><span class="n">on_calculate_dv</span><span class="p">),</span>
147                <span class="p">(</span><span class="s">&quot;Slit Size Calculator&quot;</span><span class="p">,</span> <span class="n">slit_length_help</span><span class="p">,</span>
148                        <span class="bp">self</span><span class="o">.</span><span class="n">on_calculate_slit_size</span><span class="p">),</span>
149                <span class="p">(</span><span class="s">&quot;Kiessig Thickness Calculator&quot;</span><span class="p">,</span> 
150                        <span class="n">kiessig_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_calculate_kiessig</span><span class="p">),</span>
151                          <span class="p">(</span><span class="s">&quot;SAS Resolution Estimator&quot;</span><span class="p">,</span> 
152                        <span class="n">resolution_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_calculate_resoltuion</span><span class="p">),</span>
153                <span class="p">(</span><span class="s">&quot;Generic Scattering Calculator&quot;</span><span class="p">,</span> 
154                        <span class="n">gensas_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_gen_model</span><span class="p">),</span>
155                <span class="p">(</span><span class="s">&quot;Python Shell/Editor&quot;</span><span class="p">,</span> <span class="n">pyconsole_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_python_console</span><span class="p">),</span>
156                <span class="p">(</span><span class="s">&quot;Image Viewer&quot;</span><span class="p">,</span> <span class="n">imageviewer_help</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_image_viewer</span><span class="p">),]</span>
157              </div>
158<div class="viewcode-block" id="Plugin.on_edit_data"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_edit_data">[docs]</a>    <span class="k">def</span> <span class="nf">on_edit_data</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
159        <span class="sd">&quot;&quot;&quot;</span>
160<span class="sd">        Edit meta data </span>
161<span class="sd">        &quot;&quot;&quot;</span>
162        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">data_edit_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
163            <span class="bp">self</span><span class="o">.</span><span class="n">data_edit_frame</span> <span class="o">=</span> <span class="n">DataEditorWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> 
164                                                    <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">data</span><span class="o">=</span><span class="p">[],</span>
165                                                    <span class="n">title</span><span class="o">=</span><span class="s">&quot;Data Editor&quot;</span><span class="p">)</span>
166            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">data_edit_frame</span><span class="p">)</span>
167        <span class="k">else</span><span class="p">:</span>
168            <span class="bp">self</span><span class="o">.</span><span class="n">data_edit_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>   
169        <span class="bp">self</span><span class="o">.</span><span class="n">data_edit_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
170              </div>
171<div class="viewcode-block" id="Plugin.on_data_operation"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_data_operation">[docs]</a>    <span class="k">def</span> <span class="nf">on_data_operation</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
172        <span class="sd">&quot;&quot;&quot;</span>
173<span class="sd">        Data operation</span>
174<span class="sd">        &quot;&quot;&quot;</span>
175        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
176            <span class="c"># Use one frame all the time</span>
177            <span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span> <span class="o">=</span> <span class="n">DataOperatorWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> 
178                                                <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> 
179                                                <span class="n">title</span><span class="o">=</span><span class="s">&quot;Data Operation&quot;</span><span class="p">)</span>
180            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span><span class="p">)</span>
181        <span class="k">else</span><span class="p">:</span>
182            <span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
183        <span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span><span class="o">.</span><span class="n">panel</span><span class="o">.</span><span class="n">set_panel_on_focus</span><span class="p">(</span><span class="bp">None</span><span class="p">)</span>
184        <span class="bp">self</span><span class="o">.</span><span class="n">data_operator_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
185        </div>
186<div class="viewcode-block" id="Plugin.on_calculate_kiessig"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_calculate_kiessig">[docs]</a>    <span class="k">def</span> <span class="nf">on_calculate_kiessig</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
187        <span class="sd">&quot;&quot;&quot;</span>
188<span class="sd">        Compute the Kiessig thickness</span>
189<span class="sd">        &quot;&quot;&quot;</span>
190        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">kiessig_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
191            <span class="n">frame</span> <span class="o">=</span> <span class="n">KiessigWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
192            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
193            <span class="bp">self</span><span class="o">.</span><span class="n">kiessig_frame</span> <span class="o">=</span> <span class="n">frame</span>
194        <span class="k">else</span><span class="p">:</span>
195            <span class="bp">self</span><span class="o">.</span><span class="n">kiessig_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
196        <span class="bp">self</span><span class="o">.</span><span class="n">kiessig_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> 
197        </div>
198<div class="viewcode-block" id="Plugin.on_calculate_sld"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_calculate_sld">[docs]</a>    <span class="k">def</span> <span class="nf">on_calculate_sld</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
199        <span class="sd">&quot;&quot;&quot;</span>
200<span class="sd">        Compute the scattering length density of molecula</span>
201<span class="sd">        &quot;&quot;&quot;</span>
202        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">sld_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
203            <span class="n">frame</span> <span class="o">=</span> <span class="n">SldWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> 
204                                  <span class="n">base</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
205            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
206            <span class="bp">self</span><span class="o">.</span><span class="n">sld_frame</span> <span class="o">=</span> <span class="n">frame</span>
207        <span class="k">else</span><span class="p">:</span>
208            <span class="bp">self</span><span class="o">.</span><span class="n">sld_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
209        <span class="bp">self</span><span class="o">.</span><span class="n">sld_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> 
210    </div>
211<div class="viewcode-block" id="Plugin.on_calculate_dv"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_calculate_dv">[docs]</a>    <span class="k">def</span> <span class="nf">on_calculate_dv</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
212        <span class="sd">&quot;&quot;&quot;</span>
213<span class="sd">        Compute the mass density or molar voulme</span>
214<span class="sd">        &quot;&quot;&quot;</span>
215        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">cal_md_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
216            <span class="n">frame</span> <span class="o">=</span> <span class="n">DensityWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> 
217                                  <span class="n">base</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
218            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
219            <span class="bp">self</span><span class="o">.</span><span class="n">cal_md_frame</span> <span class="o">=</span> <span class="n">frame</span>
220        <span class="k">else</span><span class="p">:</span>
221            <span class="bp">self</span><span class="o">.</span><span class="n">cal_md_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
222        <span class="bp">self</span><span class="o">.</span><span class="n">cal_md_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> 
223              </div>
224<div class="viewcode-block" id="Plugin.on_calculate_slit_size"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_calculate_slit_size">[docs]</a>    <span class="k">def</span> <span class="nf">on_calculate_slit_size</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
225        <span class="sd">&quot;&quot;&quot;</span>
226<span class="sd">        Compute the slit size a given data</span>
227<span class="sd">        &quot;&quot;&quot;</span>
228        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">cal_slit_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
229            <span class="n">frame</span> <span class="o">=</span> <span class="n">SlitLengthCalculatorWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span> 
230            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
231            <span class="bp">self</span><span class="o">.</span><span class="n">cal_slit_frame</span> <span class="o">=</span> <span class="n">frame</span> 
232        <span class="k">else</span><span class="p">:</span>
233            <span class="bp">self</span><span class="o">.</span><span class="n">cal_slit_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>     
234        <span class="bp">self</span><span class="o">.</span><span class="n">cal_slit_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
235        </div>
236<div class="viewcode-block" id="Plugin.on_calculate_resoltuion"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_calculate_resoltuion">[docs]</a>    <span class="k">def</span> <span class="nf">on_calculate_resoltuion</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
237        <span class="sd">&quot;&quot;&quot;</span>
238<span class="sd">        Estimate the instrumental resolution</span>
239<span class="sd">        &quot;&quot;&quot;</span>
240        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">cal_res_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
241            <span class="n">frame</span> <span class="o">=</span> <span class="n">ResolutionWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
242            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
243            <span class="bp">self</span><span class="o">.</span><span class="n">cal_res_frame</span> <span class="o">=</span> <span class="n">frame</span>
244        <span class="k">else</span><span class="p">:</span>
245            <span class="bp">self</span><span class="o">.</span><span class="n">cal_res_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
246        <span class="bp">self</span><span class="o">.</span><span class="n">cal_res_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> 
247        </div>
248<div class="viewcode-block" id="Plugin.on_gen_model"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_gen_model">[docs]</a>    <span class="k">def</span> <span class="nf">on_gen_model</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
249        <span class="sd">&quot;&quot;&quot;</span>
250<span class="sd">        On Generic model menu event</span>
251<span class="sd">        &quot;&quot;&quot;</span>
252        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">gen_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
253            <span class="n">frame</span> <span class="o">=</span> <span class="n">SasGenWindow</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">manager</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
254            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
255            <span class="bp">self</span><span class="o">.</span><span class="n">gen_frame</span> <span class="o">=</span> <span class="n">frame</span>
256        <span class="k">else</span><span class="p">:</span>
257            <span class="bp">self</span><span class="o">.</span><span class="n">gen_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
258        <span class="bp">self</span><span class="o">.</span><span class="n">gen_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> 
259</div>
260<div class="viewcode-block" id="Plugin.on_image_viewer"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_image_viewer">[docs]</a>    <span class="k">def</span> <span class="nf">on_image_viewer</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
261        <span class="sd">&quot;&quot;&quot;</span>
262<span class="sd">        Get choose an image file dialog</span>
263<span class="sd">        </span>
264<span class="sd">        :param event: menu event</span>
265<span class="sd">        &quot;&quot;&quot;</span>
266        <span class="bp">self</span><span class="o">.</span><span class="n">image_view</span> <span class="o">=</span> <span class="n">ImageView</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">)</span>
267        <span class="bp">self</span><span class="o">.</span><span class="n">image_view</span><span class="o">.</span><span class="n">load</span><span class="p">()</span>
268        </div>
269<div class="viewcode-block" id="Plugin.on_python_console"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.on_python_console">[docs]</a>    <span class="k">def</span> <span class="nf">on_python_console</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
270        <span class="sd">&quot;&quot;&quot;</span>
271<span class="sd">        Open Python Console</span>
272<span class="sd">        </span>
273<span class="sd">        :param event: menu event</span>
274<span class="sd">        &quot;&quot;&quot;</span>
275        <span class="bp">self</span><span class="o">.</span><span class="n">get_python_panel</span><span class="p">(</span><span class="n">filename</span><span class="o">=</span><span class="bp">None</span><span class="p">)</span>
276        </div>
277<div class="viewcode-block" id="Plugin.get_python_panel"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.get_python_panel">[docs]</a>    <span class="k">def</span> <span class="nf">get_python_panel</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">filename</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
278        <span class="sd">&quot;&quot;&quot;</span>
279<span class="sd">        Get the python shell panel</span>
280<span class="sd">        </span>
281<span class="sd">        :param filename: file name to open in editor</span>
282<span class="sd">        &quot;&quot;&quot;</span>
283        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">py_frame</span> <span class="o">==</span> <span class="bp">None</span><span class="p">:</span>
284            <span class="n">frame</span> <span class="o">=</span> <span class="n">PyConsole</span><span class="p">(</span><span class="n">parent</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="p">,</span> <span class="n">base</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> 
285                              <span class="n">filename</span><span class="o">=</span><span class="n">filename</span><span class="p">)</span>
286            <span class="bp">self</span><span class="o">.</span><span class="n">put_icon</span><span class="p">(</span><span class="n">frame</span><span class="p">)</span>
287            <span class="bp">self</span><span class="o">.</span><span class="n">py_frame</span> <span class="o">=</span> <span class="n">frame</span>
288        <span class="k">else</span><span class="p">:</span>
289            <span class="bp">self</span><span class="o">.</span><span class="n">py_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">False</span><span class="p">)</span>
290        <span class="bp">self</span><span class="o">.</span><span class="n">py_frame</span><span class="o">.</span><span class="n">Show</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span> 
291        </div>
292<div class="viewcode-block" id="Plugin.put_icon"><a class="viewcode-back" href="../../../../dev/api/sas.perspectives.calculator.html#sas.perspectives.calculator.calculator.Plugin.put_icon">[docs]</a>    <span class="k">def</span> <span class="nf">put_icon</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">frame</span><span class="p">):</span>
293        <span class="sd">&quot;&quot;&quot;</span>
294<span class="sd">        Put icon in the frame title bar</span>
295<span class="sd">        &quot;&quot;&quot;</span>
296        <span class="k">if</span> <span class="nb">hasattr</span><span class="p">(</span><span class="n">frame</span><span class="p">,</span> <span class="s">&quot;IsIconized&quot;</span><span class="p">):</span>
297            <span class="k">if</span> <span class="ow">not</span> <span class="n">frame</span><span class="o">.</span><span class="n">IsIconized</span><span class="p">():</span>
298                <span class="k">try</span><span class="p">:</span>
299                    <span class="n">icon</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">parent</span><span class="o">.</span><span class="n">GetIcon</span><span class="p">()</span>
300                    <span class="n">frame</span><span class="o">.</span><span class="n">SetIcon</span><span class="p">(</span><span class="n">icon</span><span class="p">)</span>
301                <span class="k">except</span><span class="p">:</span>
302                    <span class="k">pass</span>      </div></div>
303</pre></div>
304
305          </div>
306        </div>
307      </div>
308      <div class="sphinxsidebar">
309        <div class="sphinxsidebarwrapper">
310<div id="searchbox" style="display: none">
311  <h3>Quick search</h3>
312    <form class="search" action="../../../../search.html" method="get">
313      <input type="text" name="q" />
314      <input type="submit" value="Go" />
315      <input type="hidden" name="check_keywords" value="yes" />
316      <input type="hidden" name="area" value="default" />
317    </form>
318    <p class="searchtip" style="font-size: 90%">
319    Enter search terms or a module, class or function name.
320    </p>
321</div>
322<script type="text/javascript">$('#searchbox').show(0);</script>
323        </div>
324      </div>
325      <div class="clearer"></div>
326    </div>
327    <div class="related">
328      <h3>Navigation</h3>
329      <ul>
330        <li class="right" style="margin-right: 10px">
331          <a href="../../../../genindex.html" title="General Index"
332             >index</a></li>
333        <li class="right" >
334          <a href="../../../../py-modindex.html" title="Python Module Index"
335             >modules</a> |</li>
336        <li><a href="../../../../index.html">SasView 3.0.0 documentation</a> &raquo;</li>
337          <li><a href="../../../index.html" >Module code</a> &raquo;</li>
338          <li><a href="../calculator.html" >sas.perspectives.calculator</a> &raquo;</li> 
339      </ul>
340    </div>
341    <div class="footer">
342        &copy; Copyright 2013, The SasView Project.
343      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.3.
344    </div>
345  </body>
346</html>
Note: See TracBrowser for help on using the repository browser.