<div dir="auto">Good idea. Then a package that implements a tool to browse and edit preferences could implement methods in Boolean class, Integer class, Interval, etc, and delegate to the preference type the building of the corresponding GUI components.</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 27 Apr 2022 at 10:01 PM Mariano Montone via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">
  
    
  
  <div>
    <div>El 27/4/22 a las 11:50, Hilaire
      Fernandes via Cuis-dev escribió:<br>
    </div>
    <blockquote type="cite">
      
      <p><font size="4" style="color:rgb(0,0,0)">We can have the minimum Preference model
          matching the use cases in the image. Then an external package
          with Preference extension or Application extending themself
          the Preference model.</font></p>
    </blockquote>
    <p><font size="4" style="color:rgb(0,0,0)">Yes. What I think I would do, though, is add a
        preferenceType instance variable to Preference. Then perhaps
        having a package PreferenceTypes, or something, that
        applications, tools and a PreferenceBrowser can use.</font></p>
    <p><font size="4" style="color:rgb(0,0,0)"><br>
      </font></p>
    <p><font size="4" style="color:rgb(0,0,0)">Also I'm thinking about this: what if instead of
        having a PreferenceTypes hirarchy, we use as preference type
        already existing classes and objects in Cuis ?</font></p>
    <p><font size="4" style="color:rgb(0,0,0)">For example:</font></p>
    <p><font size="4" style="color:rgb(0,0,0)">myPreference preferenceType: String.</font></p>
    <p><font size="4" style="color:rgb(0,0,0)">myPreference preferenceType: Boolean.</font></p>
    <p><font size="4" style="color:rgb(0,0,0)"><br>
      </font></p>
    <p><font size="4" style="color:rgb(0,0,0)">Or, for list of options:</font></p>
    <p><font size="4" style="color:rgb(0,0,0)">myPreference preferenceType: {'foo'. 'bar'.'baz'}.</font></p>
    <p><font size="4" style="color:rgb(0,0,0)"><br>
      </font></p>
    <p><font size="4" style="color:rgb(0,0,0)">Or, for intervals:</font></p>
    <p><font size="4" style="color:rgb(0,0,0)">myPreference preferenceType: (Interval from: 0 to:
        100).</font></p></div><div>
    <p><font size="4" style="color:rgb(0,0,0)"><br>
      </font></p>
    <p><font size="4" style="color:rgb(0,0,0)">Mariano<br>
      </font></p>
  </div>

-- <br>
Cuis-dev mailing list<br>
<a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote></div></div>