octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Graphics properties as objects


From: Michael Goffioul
Subject: Re: Graphics properties as objects
Date: Sat, 29 Dec 2007 22:24:14 +0100

On 12/29/07, John W. Eaton <address@hidden> wrote:
> OK.  Are you planning to make all the properties the same type?  I
> don't think we want to do that.  Can you outline the class hierarchy
> that you have in mind?

What I had in mind is something similar as octave_value. The interface
class is common, but the representation classes are different. Something
more or less like the following:

class base_graphics_property;

class string_property : public base_graphics_property
{
public:
    string_property& operator= (const octave_value& v)
    {
        if (v.is_string ())
            str = v.string_value ();
        else
            error ("invalid string property value");^
        return *this;
    }
private:
    std::string str;
};

class graphics_property
{
public:
    graphics_property (base_graphics_property *p)
      : rep (p) { }
    graphics_property& operator= (const octave_value& v)
    { *rep = v; }
private:
    base_graphics_property *rep;
};

Michael.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]