6#include "GeoDataListStyle.h"
7#include "GeoDataTypes.h"
8#include "GeoDataItemIcon.h"
16class GeoDataListStylePrivate
19 GeoDataListStylePrivate();
21 GeoDataListStyle::ListItemType m_listItemType;
27GeoDataListStylePrivate::GeoDataListStylePrivate() :
28 m_listItemType( GeoDataListStyle::Check ),
33GeoDataListStyle::GeoDataListStyle() :
34 d( new GeoDataListStylePrivate )
38GeoDataListStyle::GeoDataListStyle(
const Marble::GeoDataListStyle &other ) :
39 GeoDataObject( other ), d( new GeoDataListStylePrivate( *other.d ) )
43GeoDataListStyle &GeoDataListStyle::operator=(
const GeoDataListStyle &other )
45 GeoDataObject::operator=(other);
50bool GeoDataListStyle::operator==(
const GeoDataListStyle &other )
const
52 if ( !GeoDataObject::equals( other ) ||
53 d->m_bgColor != other.d->m_bgColor ||
54 d->m_listItemType != other.d->m_listItemType ||
55 d->m_vector.size() != other.d->m_vector.size() )
65 if ( **begin != **otherBegin ) {
73bool GeoDataListStyle::operator!=(
const GeoDataListStyle &other )
const
78GeoDataListStyle::~GeoDataListStyle()
83const char *GeoDataListStyle::nodeType()
const
85 return GeoDataTypes::GeoDataListStyleType;
88GeoDataListStyle::ListItemType GeoDataListStyle::listItemType()
const
90 return d->m_listItemType;
93void GeoDataListStyle::setListItemType(ListItemType type)
95 d->m_listItemType =
type;
98QColor GeoDataListStyle::backgroundColor()
const
103void GeoDataListStyle::setBackgroundColor(
const QColor &color )
105 d->m_bgColor = color;
113GeoDataItemIcon* GeoDataListStyle::child(
int i )
115 return d->m_vector.
at(i);
118const GeoDataItemIcon* GeoDataListStyle::child(
int i )
const
120 return d->m_vector.at(i);
123int GeoDataListStyle::childPosition(
const GeoDataItemIcon*
object )
const
125 return d->m_vector.indexOf(
const_cast<GeoDataItemIcon *
>(
object ) );
128void GeoDataListStyle::append( GeoDataItemIcon *other )
130 other->setParent(
this );
131 d->m_vector.append( other );
135void GeoDataListStyle::remove(
int index )
137 d->m_vector.remove( index );
140int GeoDataListStyle::size()
const
142 return d->m_vector.size();
145GeoDataItemIcon& GeoDataListStyle::at(
int pos )
147 return *(d->m_vector[ pos ]);
150const GeoDataItemIcon& GeoDataListStyle::at(
int pos )
const
152 return *(d->m_vector.at( pos ));
155GeoDataItemIcon& GeoDataListStyle::last()
157 return *(d->m_vector.last());
160const GeoDataItemIcon& GeoDataListStyle::last()
const
162 return *(d->m_vector.last());
165GeoDataItemIcon& GeoDataListStyle::first()
167 return *(d->m_vector.first());
170const GeoDataItemIcon& GeoDataListStyle::first()
const
172 return *(d->m_vector.first());
175void GeoDataListStyle::clear()
177 qDeleteAll(d->m_vector);
183 return d->m_vector.
begin();
188 return d->m_vector.
end();
201void GeoDataListStyle::pack(
QDataStream& stream )
const
203 GeoDataObject::pack( stream );
204 stream << d->m_vector.count();
206 for ( QVector <GeoDataItemIcon*>::const_iterator iterator = d->m_vector.constBegin();
207 iterator != d->m_vector.constEnd();
210 const GeoDataItemIcon *itemIcon = *iterator;
211 itemIcon->pack( stream );
215void GeoDataListStyle::unpack(
QDataStream& stream )
217 GeoDataObject::unpack( stream );
225 GeoDataItemIcon *itemIcon =
new GeoDataItemIcon;
226 itemIcon->unpack( stream );
227 d->m_vector.append( itemIcon );
Type type(const QSqlDatabase &db)
const QList< QKeySequence > & begin()
const QList< QKeySequence > & end()
Binds a QML item to a specific geodetic location in screen coordinates.
const_reference at(qsizetype i) const const
const_iterator constBegin() const const
const_iterator constEnd() const const
bool operator==(const QGraphicsApiFilter &reference, const QGraphicsApiFilter &sample)