Le 29 nov. 08 à 20:22, David Chisnall a écrit :

> Author: theraven
> Date: Sat Nov 29 20:22:32 2008
> New Revision: 4031
>
> URL: http://svn.gna.org/viewcvs/etoile?rev=4031&view=rev
> Log:
> Modified addGroup: types in EtoileUI to match those in CoreObject.

Well, this API is unrelated to CoreObject, it's a category that remain  
to be extracted as a NSController subclass. It basically provides an  
API modeled on NSArray/TreeController but that takes in account the  
fact EtoileUI is based on an uniform tree representation for the UI.
So -addGroup: here is only an action method and should return void. - 
addGroup: in COGroup takes a group in parameter and not a sender. This  
raises the concern of polymorphic methods again… I don't remember  
exactly, but may be I omitted this method for this reason until I come  
up with a better name.

Apples uses -addChild: in NSTreeController. Since the argument is a  
sender, this is a bit misleading imo. I think the same of -insertGroup: 
(id)sender and -addGroup:(id)sender. If you have any method name  
suggestions, let me know… Eventually -groupAdd: and -groupInsert:  
could make clearer these are action methods, or -addNewGroup: and - 
insertNewGroup:?

> Aren't the EUI implementations meant to be implementing CO  
> interfaces anyway?

Yes. CO and EUI both share the same underlying protocols ETCollection,  
ETMutableCollection and ETPropertyValueCoding. COObject and COGroup  
protocols just extend the previous ones. For now, ETLayoutItem and  
ETLayoutItemGroup doesn't implement COObject and COGroup protocols  
because there is no urgent need to do so, althought it's probably  
worth to do for the sake of uniformity.

Quentin.
_______________________________________________
Etoile-dev mailing list
Etoile-dev@gna.org
https://mail.gna.org/listinfo/etoile-dev

Reply via email to