Hot Door CORE 0.8.4
Adobe® Illustrator® Plug-in Library
Loading...
Searching...
No Matches
hdi::core::Layer::Iterator Class Reference

Allows for iteration through the siblings of a layer, a la std::vector iteration. More...

#include <hdicoreLayer.h>

Public Member Functions

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

Friends

class Layer

Detailed Description

Allows for iteration through the siblings of a layer, a la std::vector iteration.

// Here's an example, iterating through all top-level layers of a document:
std::unique_ptr<hdi::core::Layer> layer0 = HDI_CORE_ILLUSTRATOR->currentDocument()->firstLayer();
for(hdi::core::Layer::Iterator iter = layer0->begin(); !iter.atEnd(); ++iter)
{
// Do stuff with iter.layer() ...
}
// Here's another example, reverse iterating through all top-level layers of a document:
std::unique_ptr<hdi::core::Layer> layerN = HDI_CORE_ILLUSTRATOR->currentDocument()->lastLayer();
for(hdi::core::Layer::Iterator iter = layerN->begin(); !iter.atEnd(); --iter)
{
// Do more stuff with iter.layer() ...
}
Allows for iteration through the siblings of a layer, a la std::vector iteration.
Definition hdicoreLayer.h:62
bool atEnd() const
Determines whether iteration should stop; works well as the conditional in a for() loop.
#define HDI_CORE_ILLUSTRATOR
Slightly shorter way to access the Illustrator instance, but still utilizing a non-colliding name sch...
Definition hdicoreIllustrator.h:21

Constructor & Destructor Documentation

◆ Iterator()

hdi::core::Layer::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

◆ ~Iterator()

hdi::core::Layer::Iterator::~Iterator ( )

Destructs an Iterator object.

Author
GW
Date
08/2013

Member Function Documentation

◆ atEnd()

bool hdi::core::Layer::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

◆ layer()

std::unique_ptr< Layer > hdi::core::Layer::Iterator::layer ( ) const

Gets the current layer pointed to by the iterator.

Author
GW
Date
08/2013
Returns
The current layer, or an empty Layer object if at the end (see default Layer constructor for more information)

◆ operator!=()

bool hdi::core::Layer::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

◆ operator++() [1/2]

Iterator & hdi::core::Layer::Iterator::operator++ ( )

Prefix increment operator for forward iteration.

Author
GW
Date
08/2013
Returns
A reference to the iterator after its position was changed

◆ operator++() [2/2]

Iterator hdi::core::Layer::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

◆ operator--() [1/2]

Iterator & hdi::core::Layer::Iterator::operator-- ( )

Prefix decrement operator for reverse iteration.

Author
GW
Date
08/2013
Returns
A reference to the iterator after its position was changed

◆ operator--() [2/2]

Iterator hdi::core::Layer::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

◆ operator=()

Iterator & hdi::core::Layer::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

◆ operator==()

bool hdi::core::Layer::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