Re: Implementing an ordered tree
Joshua Marker <[email protected]>
| Newsgroups | gmane.comp.web.webobjects.devel |
|---|---|
| Message-ID | <[email protected]> |
Except you can't call any set... methods in validateForSave without
incurring the wrath of the gods. (Please don't call set methods in
validation code. . . I can't believe I got to say this before Chuck
Hill responded.)
Wrapper methods that perform the behavior you want are what you're
after here, I think. Skiena's Algorithm Design Handbook may cover this.
On Jan 23, 2006, at 9:18, YL wrote:
> validateForSave() is where i would put the logic for re-ordering.
>
> the idea:
> implement methods
> (1) checkChildrenOrder() that returns false if children array has
> order
> problem
> (2) resetChildrenOrder() that loop over its children array and set
> each
> one's order attribute to its index in the array.
>
> in validateForSave(), you say
>
> validateForSave() {
> super().validateForSave();
> if(!checkChildrenOrder()) {
> resetChildrenOrder();
> }
> }
>
> ----- Original Message -----
> From: "Karoly Szantai" <[email protected]>
> To: <[email protected]>; <[email protected]>
> Sent: Monday, January 23, 2006 4:32 AM
> Subject: Implementing an ordered tree
>
>
> > Hello,
> >
> > I have a Category entity. Each Category has zero or more
> subcategories,
> > which are ordered. There is a root Category (called main category)
> > which has no parent.
> > I have created this EO model:
> >
> > oid
> > oidParentCategory
> > name
> > ordinalNumber
> >
> > parentCategory (oidParentCategory --> oid)
> > subcategories (oid -->> oidParentCategory)
> >
> >
> > I need some hints on how to implement the following operations
> > (methods) with "ordered way":
> >
> > -add a category
> > -delete a category
> > -cut & paste a category (and its subcategories) from one level to
> > another level
> > -reorder categories (move a category in its level)
> > etc.
> >
> > My big headache is manipulating the ordinalNumber attribute in
> "EO way".
> >
> >
> > Regards,
> > Karoly
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> > WebObjects-dev mailing list
> > [email protected]
> > http://www.omnigroup.com/mailman/listinfo/webobjects-dev
> >
> >
> >
> > --
> > No virus found in this incoming message.
> > Checked by AVG Free Edition.
> > Version: 7.1.375 / Virus Database: 267.14.21/236 - Release Date:
> 1/20/2006
> >
> >
>
> _______________________________________________
> WebObjects-dev mailing list
> [email protected]
> http://www.omnigroup.com/mailman/listinfo/webobjects-dev
>
_______________________________________________
WebObjects-dev mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/webobjects-dev
PGP.sig
(application/pgp-signature, 476 B) - not displayed