Hey eka,
In the vegas framework there is a mention of #ASTr'O.
It says it does templates however I dont understand what you mean here.
Can you elaborate with a code example?
Best, Austin
eka wrote:
Hello :)
You can use if you want my opensource framework and all this ADT (abstract
data type) :
In VEGAS you can find the package vegas.data.* with an ADT library based on
the JAVA Collections and the Jakarta Collections Framework.
Page of the project : http://code.google.com/p/vegas/
Install tutorial :
http://code.google.com/p/vegas/wiki/InstallVEGASwithSVN
Example to use my ADT in AS2 in the SVN directory :
http://svn1.cvsdude.com/osflash/vegas/AS2/trunk/bin/test/vegas/data/
The documentation : http://vegas.ekameleon.net/ (see vegas.data package)
See the vegas.data.iterator and vegas.data.map packages ;)
EKA+ :)
2007/8/27, Andy Herrman <[EMAIL PROTECTED]>:
Why not use a hashtable instead of an array? Give your elements all
unique IDs (you could even just do an incrementing integer). A
hashtable would give you faster lookup (don't have to iterate over the
array searching for it) and you can remove hashtable entries without
messing up any kind of ordering.
-Andy
On 8/27/07, dr.ache <[EMAIL PROTECTED]> wrote:
hi.
dont delete the elements from your array.
when you call page.destroy() method generate another array in which you
push a "true",
whenever onElementKilled is called.Check also, if the array contains as
much elements
as your children array contains.
If true, delete the whole array with childs.
possible?
dr.ache
Jiri Heitlager | dadata.org schrieb:
Hello list,
i have a page object that contains has a Array that holds
pageElements. This is a storage for elements with an iPageElement
interface.
The page object has an destroy() method. When page.destroy() is
called, it will loop trough the page.pageElements Array using an
iterator. Every iPageElement broadcasts an onElementKilled message
when is has been destroyed. When a pageElement broadcast this message,
the page need to continue in deleting the next element in the
page.pageElement Array.
The callback method onElementKilled in the page instance, searches for
the element that has been deleted and then removes it from the
page.pageElements Array. This is where i think a problem rises,
because if the page.pageElements array is updated during the process,
the index does not match the element to remove anymore. How can I
solve this potential risk?
Another question, the array that is passes into the iterator is a
reference to the pageElements Array. Does this mean, that if I delete
an element from this array from within the iterator, the
page.pageElements array is modified?
I hope my question is clear..
thank you in advance.
Jiri
Below a snippet:
private function getPageElementIterator() : Void
{
return new PageElementIterator(this.pageElements)
}
//initiated the deleting proces, by starting with the first
element.
public function destroyPageElements() : Void
{
destroyElement(this.pageElements[0]);
}
private function destroyElement(element:iPageElement) : Void
{
curElement.addEventListener('onElementKilled' , this)
curElement.destroy();
}
private function onElementKilled(eventObj:Object) : Void
{
var killElement:iPageElement = eventObj.target;
var iter:PageElementIterator = this.getPageElementIterator();
while(iter.hasNext()){
var curElement:iPage = iPage (iter.next());
if(killElement == curElement) {
//deleted the element now clear the listener and
continue
killElement.removeEventListener('onElementKilled' ,
this)
/*
* POTENTIAL RISK, if a new element is added, then the
index, does not match the right element anymore
*
* get the current index from the deleted element by
checking what
* the currentIndex of the iterator is, and remove it
from this.pageElements Array
*/
this.pageElements =
this.pageElements.splice((iter.getCurrentIndex() , 0)
//get the next element in the iterator array
if(iter.hasNext()) this.destroyElement(
iPage(iter.next()) );
delete killedElement;
break;
}
}
}
if(this.pageElements.length == 0){
trace('all page elements have been removed')
}
}
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com
_______________________________________________
Flashcoders@chattyfig.figleaf.com
To change your subscription options or search the archive:
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
Brought to you by Fig Leaf Software
Premier Authorized Adobe Consulting and Training
http://www.figleaf.com
http://training.figleaf.com