<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Generating a Dialog from a File</title>
	<atom:link href="http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/</link>
	<description>Python Programming from the Frontlines</description>
	<lastBuildDate>Sun, 05 Sep 2010 11:08:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Mike</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-19096</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Fri, 26 Feb 2010 20:02:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-19096</guid>
		<description>Hi Iain,

I&#039;m glad you liked it. All my code on my blog is free for anyone who wishes to use it.

- Mike</description>
		<content:encoded><![CDATA[<p>Hi Iain,</p>
<p>I&#8217;m glad you liked it. All my code on my blog is free for anyone who wishes to use it.</p>
<p>- Mike</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-22796</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Fri, 26 Feb 2010 20:02:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-22796</guid>
		<description>Hi Iain,

I&#039;m glad you liked it. All my code on my blog is free for anyone who wishes to use it.

- Mike</description>
		<content:encoded><![CDATA[<p>Hi Iain,</p>
<p>I&#8217;m glad you liked it. All my code on my blog is free for anyone who wishes to use it.</p>
<p>- Mike</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Iain McLaren</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-19027</link>
		<dc:creator>Iain McLaren</dc:creator>
		<pubDate>Fri, 26 Feb 2010 07:25:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-19027</guid>
		<description>Fantastic idea!  I hope you don&#039;t mind, but I have used your code as a base to create pDialog:

http://iainmclaren.com/2010/02/26/pdialog-create-a-preferences-dialog-box-using-a-simple-text-file/

Basically, I have added file and directory downloads (and used a wx.FlexGridSizer to line up the columns).

Thanks

Iain</description>
		<content:encoded><![CDATA[<p>Fantastic idea!  I hope you don&#8217;t mind, but I have used your code as a base to create pDialog:</p>
<p><a href="http://iainmclaren.com/2010/02/26/pdialog-create-a-preferences-dialog-box-using-a-simple-text-file/" rel="nofollow">http://iainmclaren.com/2010/02/26/pdialog-create-a-preferences-dialog-box-using-a-simple-text-file/</a></p>
<p>Basically, I have added file and directory downloads (and used a wx.FlexGridSizer to line up the columns).</p>
<p>Thanks</p>
<p>Iain</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Iain McLaren</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-22795</link>
		<dc:creator>Iain McLaren</dc:creator>
		<pubDate>Fri, 26 Feb 2010 07:25:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-22795</guid>
		<description>Fantastic idea!  I hope you don&#039;t mind, but I have used your code as a base to create pDialog:

http://iainmclaren.com/2010/02/26/pdialog-create-a-preferences-dialog-box-using-a-simple-text-file/

Basically, I have added file and directory downloads (and used a wx.FlexGridSizer to line up the columns).

Thanks

Iain</description>
		<content:encoded><![CDATA[<p>Fantastic idea!  I hope you don&#8217;t mind, but I have used your code as a base to create pDialog:</p>
<p><a href="http://iainmclaren.com/2010/02/26/pdialog-create-a-preferences-dialog-box-using-a-simple-text-file/" rel="nofollow">http://iainmclaren.com/2010/02/26/pdialog-create-a-preferences-dialog-box-using-a-simple-text-file/</a></p>
<p>Basically, I have added file and directory downloads (and used a wx.FlexGridSizer to line up the columns).</p>
<p>Thanks</p>
<p>Iain</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: plc programs</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-17382</link>
		<dc:creator>plc programs</dc:creator>
		<pubDate>Fri, 12 Feb 2010 09:05:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-17382</guid>
		<description>Did you write this yourself? Very fascinating, either way. Couldn’t agree me — enjoy visiting your site, Thanks for your site and post - really like this one! Professional article - enjoy your site! Good information. Keep up the good work. I could not have said it better!</description>
		<content:encoded><![CDATA[<p>Did you write this yourself? Very fascinating, either way. Couldn’t agree me — enjoy visiting your site, Thanks for your site and post &#8211; really like this one! Professional article &#8211; enjoy your site! Good information. Keep up the good work. I could not have said it better!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: plc programs</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-22794</link>
		<dc:creator>plc programs</dc:creator>
		<pubDate>Fri, 12 Feb 2010 09:05:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-22794</guid>
		<description>Did you write this yourself? Very fascinating, either way. Couldn’t agree me — enjoy visiting your site, Thanks for your site and post - really like this one! Professional article - enjoy your site! Good information. Keep up the good work. I could not have said it better!</description>
		<content:encoded><![CDATA[<p>Did you write this yourself? Very fascinating, either way. Couldn’t agree me — enjoy visiting your site, Thanks for your site and post &#8211; really like this one! Professional article &#8211; enjoy your site! Good information. Keep up the good work. I could not have said it better!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Axel</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-16001</link>
		<dc:creator>Axel</dc:creator>
		<pubDate>Fri, 22 Jan 2010 12:16:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-16001</guid>
		<description>Hi, Mike!

Thanx for following up on my feedback so quickly. I like your solution.

The original idea behind this was that typically, as a pythonista, you have a couple of useful programs that are called from the command line (be it Linux, some other flavor of Unix, or Windows). But if you are on a system with a graphical ui, you want to offer the user the same functionality but with more comfort. 

One could subclass the ConfigObj, and this subclass either just goes ahead and reads the config file, or -- if in a UI environment -- displays the preferences panel, and returns as soon as the user has clicked on ok. And/or one combines it with an OptionParser (for the non-ui case) that allows the user to override the preferences from the config file.

ideas over ideas :-)

But thanx again!
Axel</description>
		<content:encoded><![CDATA[<p>Hi, Mike!</p>
<p>Thanx for following up on my feedback so quickly. I like your solution.</p>
<p>The original idea behind this was that typically, as a pythonista, you have a couple of useful programs that are called from the command line (be it Linux, some other flavor of Unix, or Windows). But if you are on a system with a graphical ui, you want to offer the user the same functionality but with more comfort. </p>
<p>One could subclass the ConfigObj, and this subclass either just goes ahead and reads the config file, or &#8212; if in a UI environment &#8212; displays the preferences panel, and returns as soon as the user has clicked on ok. And/or one combines it with an OptionParser (for the non-ui case) that allows the user to override the preferences from the config file.</p>
<p>ideas over ideas <img src='http://www.blog.pythonlibrary.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>But thanx again!<br />
Axel</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Axel</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-22793</link>
		<dc:creator>Axel</dc:creator>
		<pubDate>Fri, 22 Jan 2010 12:16:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-22793</guid>
		<description>Hi, Mike!

Thanx for following up on my feedback so quickly. I like your solution.

The original idea behind this was that typically, as a pythonista, you have a couple of useful programs that are called from the command line (be it Linux, some other flavor of Unix, or Windows). But if you are on a system with a graphical ui, you want to offer the user the same functionality but with more comfort. 

One could subclass the ConfigObj, and this subclass either just goes ahead and reads the config file, or -- if in a UI environment -- displays the preferences panel, and returns as soon as the user has clicked on ok. And/or one combines it with an OptionParser (for the non-ui case) that allows the user to override the preferences from the config file.

ideas over ideas :-)

But thanx again!
Axel</description>
		<content:encoded><![CDATA[<p>Hi, Mike!</p>
<p>Thanx for following up on my feedback so quickly. I like your solution.</p>
<p>The original idea behind this was that typically, as a pythonista, you have a couple of useful programs that are called from the command line (be it Linux, some other flavor of Unix, or Windows). But if you are on a system with a graphical ui, you want to offer the user the same functionality but with more comfort. </p>
<p>One could subclass the ConfigObj, and this subclass either just goes ahead and reads the config file, or &#8212; if in a UI environment &#8212; displays the preferences panel, and returns as soon as the user has clicked on ok. And/or one combines it with an OptionParser (for the non-ui case) that allows the user to override the preferences from the config file.</p>
<p>ideas over ideas <img src='http://www.blog.pythonlibrary.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>But thanx again!<br />
Axel</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steven Sproat</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-15976</link>
		<dc:creator>Steven Sproat</dc:creator>
		<pubDate>Fri, 22 Jan 2010 05:38:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-15976</guid>
		<description>And the immediate benefit of this is that you can add new preferences to the .ini file, and your dialog gets re-built with the most up-to-date &quot;view&quot;. This is actually really cool, because the ini file acts as meta data and avoids data duplication.

You could even go as far as creating separate ConfigObj sections for each preference, containing things such as widget type (checkbox/radio), label, tooltip etc

Taking actions such as updating the GUI based on the new user&#039;s preferences can easily be done in the OnSave method by maintaining a copy of the (application&#039;s) configuration file in the Preference class, and checking its new values against the original config file. You could, for example change the font by doing:

if old_config[&#039;font&#039;] != new_config[&#039;font&#039;]:
    self.update_font()  # or something

if config[&#039;show_statusbar&#039;]:
    self.show_statusbar()
else:
    self.hide_statusbar()

if config[&#039;show_toolbar&#039;]:
    self.show_toolbar()
else:
    self.hide_toolbar()


hope that makes sense :)</description>
		<content:encoded><![CDATA[<p>And the immediate benefit of this is that you can add new preferences to the .ini file, and your dialog gets re-built with the most up-to-date &#8220;view&#8221;. This is actually really cool, because the ini file acts as meta data and avoids data duplication.</p>
<p>You could even go as far as creating separate ConfigObj sections for each preference, containing things such as widget type (checkbox/radio), label, tooltip etc</p>
<p>Taking actions such as updating the GUI based on the new user&#8217;s preferences can easily be done in the OnSave method by maintaining a copy of the (application&#8217;s) configuration file in the Preference class, and checking its new values against the original config file. You could, for example change the font by doing:</p>
<p>if old_config['font'] != new_config['font']:<br />
    self.update_font()  # or something</p>
<p>if config['show_statusbar']:<br />
    self.show_statusbar()<br />
else:<br />
    self.hide_statusbar()</p>
<p>if config['show_toolbar']:<br />
    self.show_toolbar()<br />
else:<br />
    self.hide_toolbar()</p>
<p>hope that makes sense <img src='http://www.blog.pythonlibrary.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steven Sproat</title>
		<link>http://www.blog.pythonlibrary.org/2010/01/20/generating-a-dialog-from-a-file/comment-page-1/#comment-22792</link>
		<dc:creator>Steven Sproat</dc:creator>
		<pubDate>Fri, 22 Jan 2010 05:38:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.blog.pythonlibrary.org/?p=462#comment-22792</guid>
		<description>And the immediate benefit of this is that you can add new preferences to the .ini file, and your dialog gets re-built with the most up-to-date &quot;view&quot;. This is actually really cool, because the ini file acts as meta data and avoids data duplication.

You could even go as far as creating separate ConfigObj sections for each preference, containing things such as widget type (checkbox/radio), label, tooltip etc

Taking actions such as updating the GUI based on the new user&#039;s preferences can easily be done in the OnSave method by maintaining a copy of the (application&#039;s) configuration file in the Preference class, and checking its new values against the original config file. You could, for example change the font by doing:

if old_config[&#039;font&#039;] != new_config[&#039;font&#039;]:
    self.update_font()  # or something

if config[&#039;show_statusbar&#039;]:
    self.show_statusbar()
else:
    self.hide_statusbar()

if config[&#039;show_toolbar&#039;]:
    self.show_toolbar()
else:
    self.hide_toolbar()


hope that makes sense :)</description>
		<content:encoded><![CDATA[<p>And the immediate benefit of this is that you can add new preferences to the .ini file, and your dialog gets re-built with the most up-to-date &#8220;view&#8221;. This is actually really cool, because the ini file acts as meta data and avoids data duplication.</p>
<p>You could even go as far as creating separate ConfigObj sections for each preference, containing things such as widget type (checkbox/radio), label, tooltip etc</p>
<p>Taking actions such as updating the GUI based on the new user&#8217;s preferences can easily be done in the OnSave method by maintaining a copy of the (application&#8217;s) configuration file in the Preference class, and checking its new values against the original config file. You could, for example change the font by doing:</p>
<p>if old_config['font'] != new_config['font']:<br />
    self.update_font()  # or something</p>
<p>if config['show_statusbar']:<br />
    self.show_statusbar()<br />
else:<br />
    self.hide_statusbar()</p>
<p>if config['show_toolbar']:<br />
    self.show_toolbar()<br />
else:<br />
    self.hide_toolbar()</p>
<p>hope that makes sense <img src='http://www.blog.pythonlibrary.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Dynamic Page Served (once) in 1.965 seconds -->
