Re: Proposal for a GUI extension to Octave

Driss Ghaddab <[email protected]> Thu, 03 Mar 2005 12:26:29 +0100
Newsgroups gmane.comp.gnu.octave.graphics
Message-ID <[email protected]>
Hi Shai,

Shai Ayal a écrit :
> Driss,
> 
> It looks very nice -- I might consider using it as the communication
> layer for octplot. 

I set up a sourceforge page at http://sourceforge.net/projects/cmo/ with 
a mailing list and a forum, so we don't end up filling octave's mailing 
list with cmo related development issues.

I'm taking a look at octplot. Currently, the API used in CMO to register 
and set/get properties in not very user friendly. This is mainly why I 
still consider CMO at alpha stage.  I think I'll improve it by using 
extensivly C++ operators&Co: indeed, registering a property using:

Properties["DefaultLineColor"] = new Color('r')

is more user friendly than:

register_property_user/double/string/..("DefaultLineColor", description,
	default_value, read_attribute, read_hook, write_attr, write_hook)...

> However, does it works on cygwin? -- loadable
> libraries work there but I'm not sure about IPC. Not working on cygwin
> would be a big drawback as octave is now fully operational on windows
> and this could break compatibility.

I have no experience with cygwin, and I strive to have multiplatform 
support.  I'll install cygwin and test it.  I also just opened a 
sourceforge project page, that will (I hope) allow me to test on 
different machines, if Octave is installed there.

> About toolkits -- I recommend fltk -- ti is very easy to learn and
> very small. However, look in the mailing list archive for gtk binding
> for octave

Yes, I know of octave-gtk, but what I want to provide is only the set of 
commands used in Matlab, not a complete gtk binding, as most Octave 
users are not hardcore GUI developers, and that what I was really 
missing in Octave.

I'll first implement the abstract layer. Then, I'll let others implement 
their favourite toolkit (or the ones I'm not familiar with.). I'd like 
to have native widget support, but that's another story.

> Licensing -- I'm no lawyer, but it seems to me that mimicking the
> matlab API is OK -- but don't copy any code from them !

OK, I'm not copying any code. Just reading their public doc.

Cheers,

Driss