Hot Door CORE  0.7.0
Adobe® Illustrator® Plug-in Library
Public Member Functions | Friends | List of all members
hdi::core::Art::Iterator Class Reference

Allows for iteration through the siblings of a piece of source art, a la std::vector iteration. More...

#include <hdicoreArt.h>

Public Member Functions

 Iterator (const Iterator &iter_)
 Constructs an Iterator object from an existing Iterator object (copy constructor) More...
 
 ~Iterator ()
 Destructs an Iterator object. More...
 
Iteratoroperator= (const Iterator &rhs_)
 Assigns one Iterator object to another. More...
 
bool operator== (const Iterator &rhs_) const
 Tests whether a given Iterator object is the same as another. More...
 
bool operator!= (const Iterator &rhs_) const
 Tests whether a given Iterator object is not the same as another. More...
 
Iteratoroperator++ ()
 Prefix increment operator for forward iteration. More...
 
Iterator operator++ (int)
 Postfix increment operator for forward iteration. More...
 
Iteratoroperator-- ()
 Prefix decrement operator for reverse iteration. More...
 
Iterator operator-- (int)
 Postfix decrement operator for reverse iteration. More...
 
bool atEnd () const
 Determines whether iteration should stop; works well as the conditional in a for() loop. More...
 
std::auto_ptr< Artart () const
 Gets the current art pointed to by the iterator. More...
 

Friends

class Art
 

Detailed Description

Allows for iteration through the siblings of a piece of source art, a la std::vector iteration.

// Here's an example, iterating through the children of someGroup:
someGroup->firstChild(child0);
for(hdi::core::Art::Iterator iter = child0.begin(); !iter.atEnd(); ++iter)
{
// do stuff to iter.art()
}
// Reverse iteration is similar:
someGroup->lastChild(childN);
for(hdi::core::Art::Iterator iter = childN.begin(); !iter.atEnd(); --iter)
{
// do stuff to iter.art()
}

Constructor & Destructor Documentation

hdi::core::Art::Iterator::Iterator ( const Iterator iter_)

Constructs an Iterator object from an existing Iterator object (copy constructor)

Author
GW
Date
10/2013
Parameters
iter_Existing Iterator object
hdi::core::Art::Iterator::~Iterator ( )

Destructs an Iterator object.

Author
GW
Date
08/2013

Member Function Documentation

std::auto_ptr<Art> hdi::core::Art::Iterator::art ( ) const

Gets the current art pointed to by the iterator.

Author
GW
Date
08/2013
Returns
The current piece of art, or an empty Art object if at the end (see default Art constructor for more information)
bool hdi::core::Art::Iterator::atEnd ( ) const

Determines whether iteration should stop; works well as the conditional in a for() loop.

Author
GW
Date
08/2013
Returns
true if at the end of the list of siblings, false otherwise
bool hdi::core::Art::Iterator::operator!= ( const Iterator rhs_) const

Tests whether a given Iterator object is not the same as another.

Author
GW
Date
10/2013
Parameters
rhs_Iterator to compare against (righthand side of inequality operator)
Returns
true for the target and rhs_ having differing states, false otherwise
Iterator& hdi::core::Art::Iterator::operator++ ( )

Prefix increment operator for forward iteration.

Author
GW
Date
08/2013
Returns
A reference to the iterator after its position was changed
Iterator hdi::core::Art::Iterator::operator++ ( int  )

Postfix increment operator for forward iteration.

Author
GW
Date
08/2013
Returns
A copy of the original iterator before its position was changed
Iterator& hdi::core::Art::Iterator::operator-- ( )

Prefix decrement operator for reverse iteration.

Author
GW
Date
08/2013
Returns
A reference to the iterator after its position was changed
Iterator hdi::core::Art::Iterator::operator-- ( int  )

Postfix decrement operator for reverse iteration.

Author
GW
Date
08/2013
Returns
A copy of the original iterator before its position was changed
Iterator& hdi::core::Art::Iterator::operator= ( const Iterator rhs_)

Assigns one Iterator object to another.

Author
GW
Date
10/2013
Parameters
rhs_Existing Iterator object to copy values from
Returns
The target Iterator object, but with its values updated to match that of the rhs_ argument
bool hdi::core::Art::Iterator::operator== ( const Iterator rhs_) const

Tests whether a given Iterator object is the same as another.

Author
GW
Date
10/2013
Parameters
rhs_Iterator to compare against (righthand side of equality operator)
Returns
true for the target and rhs_ having the same state, false otherwise