77
77
<a name="L13"></a><tt class="py-lineno">13</tt> <tt class="py-line"><tt class="py-comment"># GNU General Public License for more details.</tt> </tt>
78
78
<a name="L14"></a><tt class="py-lineno">14</tt> <tt class="py-line"><tt class="py-comment"># </tt> </tt>
79
79
<a name="L15"></a><tt class="py-lineno">15</tt> <tt class="py-line"><tt class="py-comment"># You should have received a copy of the GNU General Public License</tt> </tt>
80
<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-comment"># along with this program; if not, write to the Free Software</tt> </tt>
81
<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-comment"># Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</tt> </tt>
82
<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-comment"># </tt> </tt>
83
<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
84
<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">String options, these classes will display a text box.</tt> </tt>
85
<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
86
<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"> </tt>
87
<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">gtk</tt> </tt>
88
<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"> </tt>
89
<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package screenlets=screenlets-module.html"><a title="screenlets" class="py-name" href="#" onclick="return doclink('link-0', 'screenlets', 'link-0');">screenlets</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package screenlets.options=screenlets.options-module.html"><a title="screenlets.options" class="py-name" href="#" onclick="return doclink('link-1', 'options', 'link-1');">options</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Function screenlets._()=screenlets-module.html#_,Function screenlets.backend._()=screenlets.backend-module.html#_,Function screenlets.install._()=screenlets.install-module.html#_,Function screenlets.menu._()=screenlets.menu-module.html#_,Function screenlets.options._()=screenlets.options-module.html#_,Function screenlets.sensors._()=screenlets.sensors-module.html#_,Function screenlets.services._()=screenlets.services-module.html#_,Function screenlets.session._()=screenlets.session-module.html#_,Function screenlets.utils._()=screenlets.utils-module.html#_"><a title="screenlets._
80
<a name="L16"></a><tt class="py-lineno">16</tt> <tt class="py-line"><tt class="py-comment"># along with this program. If not, see <http://www.gnu.org/licenses/>.</tt> </tt>
81
<a name="L17"></a><tt class="py-lineno">17</tt> <tt class="py-line"><tt class="py-comment"># </tt> </tt>
82
<a name="L18"></a><tt class="py-lineno">18</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
83
<a name="L19"></a><tt class="py-lineno">19</tt> <tt class="py-line"><tt class="py-docstring">String options, these classes will display a text box.</tt> </tt>
84
<a name="L20"></a><tt class="py-lineno">20</tt> <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
85
<a name="L21"></a><tt class="py-lineno">21</tt> <tt class="py-line"> </tt>
86
<a name="L22"></a><tt class="py-lineno">22</tt> <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">gtk</tt> </tt>
87
<a name="L23"></a><tt class="py-lineno">23</tt> <tt class="py-line"> </tt>
88
<a name="L24"></a><tt class="py-lineno">24</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package screenlets=screenlets-module.html"><a title="screenlets" class="py-name" href="#" onclick="return doclink('link-0', 'screenlets', 'link-0');">screenlets</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Package screenlets.options=screenlets.options-module.html"><a title="screenlets.options" class="py-name" href="#" onclick="return doclink('link-1', 'options', 'link-1');">options</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Function screenlets._()=screenlets-module.html#_,Function screenlets.backend._()=screenlets.backend-module.html#_,Function screenlets.install._()=screenlets.install-module.html#_,Function screenlets.menu._()=screenlets.menu-module.html#_,Function screenlets.options._()=screenlets.options-module.html#_,Function screenlets.sensors._()=screenlets.sensors-module.html#_,Function screenlets.services._()=screenlets.services-module.html#_,Function screenlets.session._()=screenlets.session-module.html#_,Function screenlets.utils._()=screenlets.utils-module.html#_"><a title="screenlets._
90
89
screenlets.backend._
91
90
screenlets.install._
95
94
screenlets.services._
96
95
screenlets.session._
97
96
screenlets.utils._" class="py-name" href="#" onclick="return doclink('link-2', '_', 'link-2');">_</a></tt> </tt>
98
<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name" targets="Module screenlets.options.base=screenlets.options.base-module.html"><a title="screenlets.options.base" class="py-name" href="#" onclick="return doclink('link-3', 'base', 'link-3');">base</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class screenlets.options.base.Option=screenlets.options.base.Option-class.html"><a title="screenlets.options.base.Option" class="py-name" href="#" onclick="return doclink('link-4', 'Option', 'link-4');">Option</a></tt> </tt>
99
<a name="L27"></a><tt class="py-lineno">27</tt> <tt class="py-line"> </tt>
100
<a name="StringOption"></a><div id="StringOption-def"><a name="L28"></a><tt class="py-lineno">28</tt> <a class="py-toggle" href="#" id="StringOption-toggle" onclick="return toggle('StringOption');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html">StringOption</a><tt class="py-op">(</tt><tt class="py-base-class">Option</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
101
</div><div id="StringOption-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="StringOption-expanded"><a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt class="py-docstring">"""An Option for string options."""</tt> </tt>
102
<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Variable screenlets.options.string_option.StringOption.choices=screenlets.options.string_option.StringOption-class.html#choices"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-5', 'choices', 'link-5');">choices</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
103
<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Variable screenlets.options.string_option.StringOption.password=screenlets.options.string_option.StringOption-class.html#password,Variable screenlets.plugins.keyring.KeyRing.Key.password=screenlets.plugins.keyring.KeyRing.Key-class.html#password"><a title="screenlets.options.string_option.StringOption.password
97
<a name="L25"></a><tt class="py-lineno">25</tt> <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name" targets="Module screenlets.options.base=screenlets.options.base-module.html"><a title="screenlets.options.base" class="py-name" href="#" onclick="return doclink('link-3', 'base', 'link-3');">base</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class screenlets.options.base.Option=screenlets.options.base.Option-class.html"><a title="screenlets.options.base.Option" class="py-name" href="#" onclick="return doclink('link-4', 'Option', 'link-4');">Option</a></tt> </tt>
98
<a name="L26"></a><tt class="py-lineno">26</tt> <tt class="py-line"> </tt>
99
<a name="StringOption"></a><div id="StringOption-def"><a name="L27"></a><tt class="py-lineno">27</tt> <a class="py-toggle" href="#" id="StringOption-toggle" onclick="return toggle('StringOption');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html">StringOption</a><tt class="py-op">(</tt><tt class="py-base-class">Option</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
100
</div><div id="StringOption-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="StringOption-expanded"><a name="L28"></a><tt class="py-lineno">28</tt> <tt class="py-line"> <tt class="py-docstring">"""An Option for string options."""</tt> </tt>
101
<a name="L29"></a><tt class="py-lineno">29</tt> <tt class="py-line"> <tt id="link-5" class="py-name" targets="Variable screenlets.options.string_option.StringOption.choices=screenlets.options.string_option.StringOption-class.html#choices"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-5', 'choices', 'link-5');">choices</a></tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
102
<a name="L30"></a><tt class="py-lineno">30</tt> <tt class="py-line"> <tt id="link-6" class="py-name" targets="Variable screenlets.options.string_option.StringOption.password=screenlets.options.string_option.StringOption-class.html#password,Variable screenlets.plugins.keyring.KeyRing.Key.password=screenlets.plugins.keyring.KeyRing.Key-class.html#password"><a title="screenlets.options.string_option.StringOption.password
104
103
screenlets.plugins.keyring.KeyRing.Key.password" class="py-name" href="#" onclick="return doclink('link-6', 'password', 'link-6');">password</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
105
<a name="L32"></a><tt class="py-lineno">32</tt> <tt class="py-line"> </tt>
106
<a name="StringOption.on_import"></a><div id="StringOption.on_import-def"><a name="L33"></a><tt class="py-lineno">33</tt> <a class="py-toggle" href="#" id="StringOption.on_import-toggle" onclick="return toggle('StringOption.on_import');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#on_import">on_import</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">strvalue</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
107
</div><div id="StringOption.on_import-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.on_import-expanded"><a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-docstring">"""When a string is imported from the config."""</tt> </tt>
108
<a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">strvalue</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Variable screenlets.plugins.Convert.Converter.replace=screenlets.plugins.Convert.Converter-class.html#replace"><a title="screenlets.plugins.Convert.Converter.replace" class="py-name" href="#" onclick="return doclink('link-7', 'replace', 'link-7');">replace</a></tt><tt class="py-op">(</tt><tt class="py-string">"\\n"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
109
</div><a name="L36"></a><tt class="py-lineno">36</tt> <tt class="py-line"> </tt>
110
<a name="StringOption.on_export"></a><div id="StringOption.on_export-def"><a name="L37"></a><tt class="py-lineno">37</tt> <a class="py-toggle" href="#" id="StringOption.on_export-toggle" onclick="return toggle('StringOption.on_export');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#on_export">on_export</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
111
</div><div id="StringOption.on_export-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.on_export-expanded"><a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-docstring">"""When a string is exported to the config."""</tt> </tt>
112
<a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-8" class="py-name" targets="Method screenlets.plugins.Convert.Converter.str()=screenlets.plugins.Convert.Converter-class.html#str"><a title="screenlets.plugins.Convert.Converter.str" class="py-name" href="#" onclick="return doclink('link-8', 'str', 'link-8');">str</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="screenlets.plugins.Convert.Converter.replace" class="py-name" href="#" onclick="return doclink('link-9', 'replace', 'link-7');">replace</a></tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt class="py-string">"\\n"</tt><tt class="py-op">)</tt> </tt>
113
</div><a name="L40"></a><tt class="py-lineno">40</tt> <tt class="py-line"> </tt>
114
<a name="StringOption.generate_widget"></a><div id="StringOption.generate_widget-def"><a name="L41"></a><tt class="py-lineno">41</tt> <a class="py-toggle" href="#" id="StringOption.generate_widget-toggle" onclick="return toggle('StringOption.generate_widget');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#generate_widget">generate_widget</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
115
</div><div id="StringOption.generate_widget-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.generate_widget-expanded"><a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-docstring">"""Generate a textbox for a string options"""</tt> </tt>
116
<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-10', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
117
<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-comment"># if a list of values is defined, show combobox</tt> </tt>
118
<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Variable screenlets.options.base.Option.widget=screenlets.options.base.Option-class.html#widget"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-11', 'widget', 'link-11');">widget</a></tt> <tt class="py-op">=</tt> <tt class="py-name">gtk</tt><tt class="py-op">.</tt><tt class="py-name">combo_box_new_text</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
119
<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
120
<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
121
<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-12', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
122
<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-13', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt class="py-name">append_text</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
123
<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">s</tt><tt class="py-op">==</tt><tt class="py-name">value</tt><tt class="py-op">:</tt> </tt>
124
<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> </tt>
125
<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">i</tt><tt class="py-op">+=</tt><tt class="py-number">1</tt> </tt>
126
<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-14', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt class="py-name">set_active</tt><tt class="py-op">(</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
127
<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
128
<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-15', 'widget', 'link-11');">widget</a></tt> <tt class="py-op">=</tt> <tt class="py-name">gtk</tt><tt class="py-op">.</tt><tt class="py-name">Entry</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
129
<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-comment"># if it is a password, set text to be invisible</tt> </tt>
130
<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="screenlets.options.string_option.StringOption.password
104
<a name="L31"></a><tt class="py-lineno">31</tt> <tt class="py-line"> </tt>
105
<a name="StringOption.on_import"></a><div id="StringOption.on_import-def"><a name="L32"></a><tt class="py-lineno">32</tt> <a class="py-toggle" href="#" id="StringOption.on_import-toggle" onclick="return toggle('StringOption.on_import');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#on_import">on_import</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">strvalue</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
106
</div><div id="StringOption.on_import-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.on_import-expanded"><a name="L33"></a><tt class="py-lineno">33</tt> <tt class="py-line"> <tt class="py-docstring">"""When a string is imported from the config."""</tt> </tt>
107
<a name="L34"></a><tt class="py-lineno">34</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">strvalue</tt><tt class="py-op">.</tt><tt id="link-7" class="py-name" targets="Variable screenlets.plugins.Convert.Converter.replace=screenlets.plugins.Convert.Converter-class.html#replace"><a title="screenlets.plugins.Convert.Converter.replace" class="py-name" href="#" onclick="return doclink('link-7', 'replace', 'link-7');">replace</a></tt><tt class="py-op">(</tt><tt class="py-string">"\\n"</tt><tt class="py-op">,</tt> <tt class="py-string">"\n"</tt><tt class="py-op">)</tt> </tt>
108
</div><a name="L35"></a><tt class="py-lineno">35</tt> <tt class="py-line"> </tt>
109
<a name="StringOption.on_export"></a><div id="StringOption.on_export-def"><a name="L36"></a><tt class="py-lineno">36</tt> <a class="py-toggle" href="#" id="StringOption.on_export-toggle" onclick="return toggle('StringOption.on_export');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#on_export">on_export</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
110
</div><div id="StringOption.on_export-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.on_export-expanded"><a name="L37"></a><tt class="py-lineno">37</tt> <tt class="py-line"> <tt class="py-docstring">"""When a string is exported to the config."""</tt> </tt>
111
<a name="L38"></a><tt class="py-lineno">38</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt id="link-8" class="py-name" targets="Method screenlets.plugins.Convert.Converter.str()=screenlets.plugins.Convert.Converter-class.html#str"><a title="screenlets.plugins.Convert.Converter.str" class="py-name" href="#" onclick="return doclink('link-8', 'str', 'link-8');">str</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="screenlets.plugins.Convert.Converter.replace" class="py-name" href="#" onclick="return doclink('link-9', 'replace', 'link-7');">replace</a></tt><tt class="py-op">(</tt><tt class="py-string">"\n"</tt><tt class="py-op">,</tt> <tt class="py-string">"\\n"</tt><tt class="py-op">)</tt> </tt>
112
</div><a name="L39"></a><tt class="py-lineno">39</tt> <tt class="py-line"> </tt>
113
<a name="StringOption.generate_widget"></a><div id="StringOption.generate_widget-def"><a name="L40"></a><tt class="py-lineno">40</tt> <a class="py-toggle" href="#" id="StringOption.generate_widget-toggle" onclick="return toggle('StringOption.generate_widget');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#generate_widget">generate_widget</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
114
</div><div id="StringOption.generate_widget-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.generate_widget-expanded"><a name="L41"></a><tt class="py-lineno">41</tt> <tt class="py-line"> <tt class="py-docstring">"""Generate a textbox for a string options"""</tt> </tt>
115
<a name="L42"></a><tt class="py-lineno">42</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-10', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
116
<a name="L43"></a><tt class="py-lineno">43</tt> <tt class="py-line"> <tt class="py-comment"># if a list of values is defined, show combobox</tt> </tt>
117
<a name="L44"></a><tt class="py-lineno">44</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Variable screenlets.options.base.Option.widget=screenlets.options.base.Option-class.html#widget"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-11', 'widget', 'link-11');">widget</a></tt> <tt class="py-op">=</tt> <tt class="py-name">gtk</tt><tt class="py-op">.</tt><tt class="py-name">combo_box_new_text</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
118
<a name="L45"></a><tt class="py-lineno">45</tt> <tt class="py-line"> <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-op">-</tt><tt class="py-number">1</tt> </tt>
119
<a name="L46"></a><tt class="py-lineno">46</tt> <tt class="py-line"> <tt class="py-name">i</tt> <tt class="py-op">=</tt> <tt class="py-number">0</tt> </tt>
120
<a name="L47"></a><tt class="py-lineno">47</tt> <tt class="py-line"> <tt class="py-keyword">for</tt> <tt class="py-name">s</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-12', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
121
<a name="L48"></a><tt class="py-lineno">48</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-13" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-13', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt class="py-name">append_text</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
122
<a name="L49"></a><tt class="py-lineno">49</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">s</tt><tt class="py-op">==</tt><tt class="py-name">value</tt><tt class="py-op">:</tt> </tt>
123
<a name="L50"></a><tt class="py-lineno">50</tt> <tt class="py-line"> <tt class="py-name">p</tt> <tt class="py-op">=</tt> <tt class="py-name">i</tt> </tt>
124
<a name="L51"></a><tt class="py-lineno">51</tt> <tt class="py-line"> <tt class="py-name">i</tt><tt class="py-op">+=</tt><tt class="py-number">1</tt> </tt>
125
<a name="L52"></a><tt class="py-lineno">52</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-14', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt class="py-name">set_active</tt><tt class="py-op">(</tt><tt class="py-name">p</tt><tt class="py-op">)</tt> </tt>
126
<a name="L53"></a><tt class="py-lineno">53</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
127
<a name="L54"></a><tt class="py-lineno">54</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-15', 'widget', 'link-11');">widget</a></tt> <tt class="py-op">=</tt> <tt class="py-name">gtk</tt><tt class="py-op">.</tt><tt class="py-name">Entry</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
128
<a name="L55"></a><tt class="py-lineno">55</tt> <tt class="py-line"> <tt class="py-comment"># if it is a password, set text to be invisible</tt> </tt>
129
<a name="L56"></a><tt class="py-lineno">56</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name"><a title="screenlets.options.string_option.StringOption.password
131
130
screenlets.plugins.keyring.KeyRing.Key.password" class="py-name" href="#" onclick="return doclink('link-16', 'password', 'link-6');">password</a></tt><tt class="py-op">:</tt> </tt>
132
<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-17', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt class="py-name">set_visibility</tt><tt class="py-op">(</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
133
<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> </tt>
134
<a name="L60"></a><tt class="py-lineno">60</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method screenlets.options.account_option.AccountOption.set_value()=screenlets.options.account_option.AccountOption-class.html#set_value,Method screenlets.options.base.Option.set_value()=screenlets.options.base.Option-class.html#set_value,Method screenlets.options.boolean_option.BoolOption.set_value()=screenlets.options.boolean_option.BoolOption-class.html#set_value,Method screenlets.options.colour_option.ColorOption.set_value()=screenlets.options.colour_option.ColorOption-class.html#set_value,Method screenlets.options.file_option.FileOption.set_value()=screenlets.options.file_option.FileOption-class.html#set_value,Method screenlets.options.font_option.FontOption.set_value()=screenlets.options.font_option.FontOption-class.html#set_value,Method screenlets.options.list_option.ListOption.set_value()=screenlets.options.list_option.ListOption-class.html#set_value,Method screenlets.options.number_option.IntOption.set_value()=screenlets.options.number_option.IntOption-class.html#set_value,Method screenlets.options.string_option.StringOption.set_value()=screenlets.options.string_option.StringOption-class.html#set_value,Method screenlets.options.time_option.TimeOption.set_value()=screenlets.options.time_option.TimeOption-class.html#set_value"><a title="screenlets.options.account_option.AccountOption.set_value
131
<a name="L57"></a><tt class="py-lineno">57</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-17', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt class="py-name">set_visibility</tt><tt class="py-op">(</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
132
<a name="L58"></a><tt class="py-lineno">58</tt> <tt class="py-line"> </tt>
133
<a name="L59"></a><tt class="py-lineno">59</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-18" class="py-name" targets="Method screenlets.options.account_option.AccountOption.set_value()=screenlets.options.account_option.AccountOption-class.html#set_value,Method screenlets.options.base.Option.set_value()=screenlets.options.base.Option-class.html#set_value,Method screenlets.options.boolean_option.BoolOption.set_value()=screenlets.options.boolean_option.BoolOption-class.html#set_value,Method screenlets.options.colour_option.ColorOption.set_value()=screenlets.options.colour_option.ColorOption-class.html#set_value,Method screenlets.options.file_option.FileOption.set_value()=screenlets.options.file_option.FileOption-class.html#set_value,Method screenlets.options.font_option.FontOption.set_value()=screenlets.options.font_option.FontOption-class.html#set_value,Method screenlets.options.list_option.ListOption.set_value()=screenlets.options.list_option.ListOption-class.html#set_value,Method screenlets.options.number_option.IntOption.set_value()=screenlets.options.number_option.IntOption-class.html#set_value,Method screenlets.options.string_option.StringOption.set_value()=screenlets.options.string_option.StringOption-class.html#set_value,Method screenlets.options.time_option.TimeOption.set_value()=screenlets.options.time_option.TimeOption-class.html#set_value"><a title="screenlets.options.account_option.AccountOption.set_value
135
134
screenlets.options.base.Option.set_value
136
135
screenlets.options.boolean_option.BoolOption.set_value
137
136
screenlets.options.colour_option.ColorOption.set_value
166
166
screenlets.options.number_option.FloatOption.has_changed
167
167
screenlets.options.number_option.IntOption.has_changed
168
168
screenlets.options.string_option.StringOption.has_changed
169
screenlets.options.time_option.TimeOption.has_changed" class="py-name" href="#" onclick="return doclink('link-21', 'has_changed', 'link-21');">has_changed</a></tt><tt class="py-op">)</tt> </tt>
169
screenlets.options.time_option.TimeOption.has_changed" class="py-name" href="#" onclick="return doclink('link-22', 'has_changed', 'link-22');">has_changed</a></tt><tt class="py-op">)</tt> </tt>
170
170
<a name="L62"></a><tt class="py-lineno">62</tt> <tt class="py-line"> <tt class="py-comment">#self.widget.set_size_request(180, 28)</tt> </tt>
171
<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-22', 'widget', 'link-11');">widget</a></tt> </tt>
171
<a name="L63"></a><tt class="py-lineno">63</tt> <tt class="py-line"> <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-23', 'widget', 'link-11');">widget</a></tt> </tt>
172
172
</div><a name="L64"></a><tt class="py-lineno">64</tt> <tt class="py-line"> </tt>
173
173
<a name="StringOption.set_value"></a><div id="StringOption.set_value-def"><a name="L65"></a><tt class="py-lineno">65</tt> <a class="py-toggle" href="#" id="StringOption.set_value-toggle" onclick="return toggle('StringOption.set_value');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#set_value">set_value</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
174
174
</div><div id="StringOption.set_value-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.set_value-expanded"><a name="L66"></a><tt class="py-lineno">66</tt> <tt class="py-line"> <tt class="py-docstring">"""Set the string value as required."""</tt> </tt>
175
175
<a name="L67"></a><tt class="py-lineno">67</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
176
<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-23', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
176
<a name="L68"></a><tt class="py-lineno">68</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-24', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
177
177
<a name="L69"></a><tt class="py-lineno">69</tt> <tt class="py-line"> <tt class="py-comment"># TODO self.widget.set_active(p)</tt> </tt>
178
178
<a name="L70"></a><tt class="py-lineno">70</tt> <tt class="py-line"> <tt class="py-keyword">pass</tt> </tt>
179
179
<a name="L71"></a><tt class="py-lineno">71</tt> <tt class="py-line"> <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
180
<a name="L72"></a><tt class="py-lineno">72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-24', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt id="link-25" class="py-name" targets="Method screenlets.WrapLabel.set_text()=screenlets.WrapLabel-class.html#set_text"><a title="screenlets.WrapLabel.set_text" class="py-name" href="#" onclick="return doclink('link-25', 'set_text', 'link-25');">set_text</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
180
<a name="L72"></a><tt class="py-lineno">72</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-25" class="py-name"><a title="screenlets.options.base.Option.widget" class="py-name" href="#" onclick="return doclink('link-25', 'widget', 'link-11');">widget</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method screenlets.WrapLabel.set_text()=screenlets.WrapLabel-class.html#set_text"><a title="screenlets.WrapLabel.set_text" class="py-name" href="#" onclick="return doclink('link-26', 'set_text', 'link-26');">set_text</a></tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
181
181
</div><a name="L73"></a><tt class="py-lineno">73</tt> <tt class="py-line"> </tt>
182
182
<a name="StringOption.has_changed"></a><div id="StringOption.has_changed-def"><a name="L74"></a><tt class="py-lineno">74</tt> <a class="py-toggle" href="#" id="StringOption.has_changed-toggle" onclick="return toggle('StringOption.has_changed');">-</a><tt class="py-line"> <tt class="py-keyword">def</tt> <a class="py-def-name" href="screenlets.options.string_option.StringOption-class.html#has_changed">has_changed</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">widget</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
183
183
</div><div id="StringOption.has_changed-collapsed" style="display:none;" pad="++" indent="++++++++"></div><div id="StringOption.has_changed-expanded"><a name="L75"></a><tt class="py-lineno">75</tt> <tt class="py-line"> <tt class="py-docstring">"""Executed when the widget event kicks off."""</tt> </tt>
184
<a name="L76"></a><tt class="py-lineno">76</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-26', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
185
<a name="L77"></a><tt class="py-lineno">77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="screenlets.options.account_option.AccountOption.set_value
184
<a name="L76"></a><tt class="py-lineno">76</tt> <tt class="py-line"> <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="screenlets.options.string_option.StringOption.choices" class="py-name" href="#" onclick="return doclink('link-27', 'choices', 'link-5');">choices</a></tt><tt class="py-op">:</tt> </tt>
185
<a name="L77"></a><tt class="py-lineno">77</tt> <tt class="py-line"> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name"><a title="screenlets.options.account_option.AccountOption.set_value
186
186
screenlets.options.base.Option.set_value
187
187
screenlets.options.boolean_option.BoolOption.set_value
188
188
screenlets.options.colour_option.ColorOption.set_value