<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p><font size="4">Hi</font></p>
<p><font size="4">Below redesign proposals to the PreferenceNG class
and its protocol:<br>
</font></p>
<p><font size="4">1) In the PreferenceNG class, ThePreferences class
variable is a dictionary of dictionaries where its keys are the
category name.</font><font size="4"><br>
</font></p>
<p><font size="4">2) A preference is instantiated/updated
identically with the messages
#name:description:category:type:value: and</font><font size="4"><font
size="4"> #name:category:value: </font></font></p>
<p><font size="4">3) To access a preference instantiated in the base
image, nothing change:</font></p>
<p><font size="4" face="monospace" color="#97082d"> PreferenceNG
at: #color</font></p>
<p><font size="4">Internally PreferenceNG searches for the
preference only in the base image preference categories:
#system, #programming, #gui, #font.</font></p>
<p><font size="4">To access a preference in non base image category
I propose the message #at:in: #at:in:put, #instanceAt:in:<br>
</font></p>
<p><font size="4"> <font face="monospace" color="#97082d">PreferenceNG
at: #textSize in: #zork<br>
</font></font></p>
<p><font size="4" face="monospace" color="#97082d"> PreferenceNG
at: #textSize in: #zork put: 12</font></p>
<p><font size="4"> (the instantiate method can still be used to
edit a preference value: <br>
<font color="#a61d40"> <font face="monospace"> PreferenceNG
name: #textSize category: #zork value: 12)</font></font></font></p>
<p><font size="4">Then I propose shortcuts compatible with the
existing protocol:</font></p>
<p><font size="4"><font color="#a61d40"><font face="monospace"> </font></font></font><font
size="4" face="monospace" color="#a61d40">Preference at:
#zork:textSize</font></p>
<p><font size="4" face="monospace" color="#a61d40"><font size="4">
Preference at: #zork:textSize put: 16</font></font></p>
<p><font size="4" face="monospace" color="#a61d40"><font size="4"><font
size="4"> Preference instanceAt: #zork:textSize</font></font></font></p>
<p>I will have to write a method to move the preferences in their
own category dictionaries.</p>
<p>Comments?</p>
<p>Thanks<br>
</p>
<p>Hilaire<br>
</p>
<pre class="moz-signature" cols="72">--
GNU Dr. Geo
<a class="moz-txt-link-freetext" href="http://drgeo.eu">http://drgeo.eu</a>
<a class="moz-txt-link-freetext" href="http://blog.drgeo.eu">http://blog.drgeo.eu</a></pre>
</body>
</html>