I think I've encountered a bug in PyQt v4.8.1 when loading Boolean types via QSettings.  I'm also using SIP v4.11.2 and Python v3.1.3.<br><br>Here's the code I'm using to save the setting:<br><br><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">


if Main.uiSettings.cbPreferSUdo.checkState() == QtCore.Qt.Unchecked :<br>    User.System.bPreferSUdo = False<br>else :<br>    User.System.bPreferSUdo = True<br><br>Settings.beginGroup( "System" )<br>Settings.setValue( "Prefer SUdo", User.System.bPreferSUdo )<br>


Settings.endGroup()<br></blockquote><br>Here's the code I'm using to load the setting:<br><br><blockquote style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;" class="gmail_quote">


Settings.beginGroup( "System" )<br>oItems = Settings.value( "Prefer SUdo" )<br>if oItems :<br>    User.System.bPreferSUdo = oItems<br>Settings.endGroup()<br></blockquote><br>I think there's a bug in PyQt, because I'm getting inconsistent results.  For this example, I've ensured that the check-box is set to 'False' before saving the setting.<br>


<br>If I save the setting and load it again (while the application is still running), the correct 'False' value is returned (from cache).  If I save the setting, quit and restart the application, then load the setting, an incorrect 'false' value is returned (from the configuration file).  Using a 'bool()' cast makes no difference.<br>


<br>In the second case, the lowercase 'f' in 'false' actually means that the check-box becomes set to 'True'.  This means that I'm effectively getting black when I want white.  Can someone confirm whether this is a bug in PyQt and how long it'll take to fix?  I was planning to release the next version of my application today.<br>


<br>