[Oberon] WMProperties.StringProperty

Ulrike Glavitsch ulrike.glavitsch at inf.ethz.ch
Tue Nov 22 14:29:07 CET 2005


Hello,

the way the empty element is treated in a StringProperty so far is to 
have a NIL-pointer in the value-field of the StringProperty. There are 
several locations in the code, e.g. PROCEDURE DrawBackground in 
WMStandardComponents.Button, that depend on this convention.
So we basically have two options:
(1) we leave the code as it is with the implication that programmers 
need to know that the empty element is represented by a NIL value or
(2) we make the proposed change but have to adapt all pieces of code 
that are affected by this change.
I agree that it is more consistent to represent an empty string in an 
existing string object.

As the correction requires a bit of work (implementation and tests) it 
will not come in the very next release. But thanks for the proposal.

Ulla Glavitsch

Dan Parnete wrote:

> Hello,
>
> The properties could be set by FromXML method. The StringProperty 
> could not be reseted by FormXML because it doesn't treat the empty 
> element.
> I propose this correction:
>
>        PROCEDURE FromXML*(xml : XML.Element);
>            VAR en : XMLObjects.Enumerator;
>            p : PTR;
>        BEGIN
>            en := xml.GetContents();
>            p := en.GetNext();
>            IF p # NIL THEN
>                IF p IS XML.Chars THEN
>                    Set(p(XML.Chars).GetStr())
>                END
>            ELSE  Set(Utilities.NewString(""))
>            END
>        END FromXML;
>
> Thanks,
> Dan Parnete
> -- 
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon



-- 
Ulrike Glavitsch Eggler
Institut für Computersysteme
ETH-Zentrum                      
Clausiusstrasse 59
CH-8092 Zürich
Tel.: +41 44 632 70 49
Fax : +41 44 632 13 07




More information about the Oberon mailing list