• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • src
  • lib
  • marble
  • geodata
  • data
GeoDataListStyle.cpp
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2012 Mohammed Nafees <nafees.technocool@gmail.com>
9 //
10 
11 #include "GeoDataListStyle.h"
12 #include "GeoDataTypes.h"
13 #include "MarbleDirs.h"
14 
15 namespace Marble
16 {
17 
18 class GeoDataListStylePrivate
19 {
20 public:
21  GeoDataListStylePrivate();
22 
23  GeoDataListStyle::ListItemType m_listItemType;
24  QColor m_bgColor;
25 
26  QVector<GeoDataItemIcon*> m_vector;
27 };
28 
29 GeoDataListStylePrivate::GeoDataListStylePrivate() :
30  m_listItemType( GeoDataListStyle::Check ),
31  m_bgColor( Qt::white )
32 {
33 }
34 
35 GeoDataListStyle::GeoDataListStyle() :
36  d( new GeoDataListStylePrivate )
37 {
38 }
39 
40 GeoDataListStyle::GeoDataListStyle( const Marble::GeoDataListStyle &other ) :
41  GeoDataObject( other ), d( new GeoDataListStylePrivate( *other.d ) )
42 {
43 }
44 
45 GeoDataListStyle &GeoDataListStyle::operator=( const GeoDataListStyle &other )
46 {
47  GeoDataObject::operator=(other);
48  *d = *other.d;
49  return *this;
50 }
51 
52 GeoDataListStyle::~GeoDataListStyle()
53 {
54  delete d;
55 }
56 
57 const char *GeoDataListStyle::nodeType() const
58 {
59  return GeoDataTypes::GeoDataListStyleType;
60 }
61 
62 GeoDataListStyle::ListItemType GeoDataListStyle::listItemType() const
63 {
64  return d->m_listItemType;
65 }
66 
67 void GeoDataListStyle::setListItemType( const ListItemType &type )
68 {
69  d->m_listItemType = type;
70 }
71 
72 QColor GeoDataListStyle::backgroundColor() const
73 {
74  return d->m_bgColor;
75 }
76 
77 void GeoDataListStyle::setBackgroundColor( const QColor &color )
78 {
79  d->m_bgColor = color;
80 }
81 
82 QVector<GeoDataItemIcon*> GeoDataListStyle::itemIconList() const
83 {
84  return d->m_vector;
85 }
86 
87 GeoDataItemIcon* GeoDataListStyle::child( int i )
88 {
89  return d->m_vector.at(i);
90 }
91 
92 const GeoDataItemIcon* GeoDataListStyle::child( int i ) const
93 {
94  return d->m_vector.at(i);
95 }
96 
97 int GeoDataListStyle::childPosition( GeoDataItemIcon* object )
98 {
99  return d->m_vector.indexOf( object );
100 }
101 
102 void GeoDataListStyle::append( GeoDataItemIcon *other )
103 {
104  other->setParent( this );
105  d->m_vector.append( other );
106 }
107 
108 
109 void GeoDataListStyle::remove( int index )
110 {
111  d->m_vector.remove( index );
112 }
113 
114 int GeoDataListStyle::size() const
115 {
116  return d->m_vector.size();
117 }
118 
119 GeoDataItemIcon& GeoDataListStyle::at( int pos )
120 {
121  return *(d->m_vector[ pos ]);
122 }
123 
124 const GeoDataItemIcon& GeoDataListStyle::at( int pos ) const
125 {
126  return *(d->m_vector.at( pos ));
127 }
128 
129 GeoDataItemIcon& GeoDataListStyle::last()
130 {
131  return *(d->m_vector.last());
132 }
133 
134 const GeoDataItemIcon& GeoDataListStyle::last() const
135 {
136  return *(d->m_vector.last());
137 }
138 
139 GeoDataItemIcon& GeoDataListStyle::first()
140 {
141  return *(d->m_vector.first());
142 }
143 
144 const GeoDataItemIcon& GeoDataListStyle::first() const
145 {
146  return *(d->m_vector.first());
147 }
148 
149 void GeoDataListStyle::clear()
150 {
151  qDeleteAll(d->m_vector);
152  d->m_vector.clear();
153 }
154 
155 QVector<GeoDataItemIcon*>::Iterator GeoDataListStyle::begin()
156 {
157  return d->m_vector.begin();
158 }
159 
160 QVector<GeoDataItemIcon*>::Iterator GeoDataListStyle::end()
161 {
162  return d->m_vector.end();
163 }
164 
165 QVector<GeoDataItemIcon*>::ConstIterator GeoDataListStyle::constBegin() const
166 {
167  return d->m_vector.constBegin();
168 }
169 
170 QVector<GeoDataItemIcon*>::ConstIterator GeoDataListStyle::constEnd() const
171 {
172  return d->m_vector.constEnd();
173 }
174 
175 void GeoDataListStyle::pack( QDataStream& stream ) const
176 {
177  GeoDataObject::pack( stream );
178  stream << d->m_vector.count();
179 
180  for ( QVector <GeoDataItemIcon*>::const_iterator iterator = d->m_vector.constBegin();
181  iterator != d->m_vector.constEnd();
182  ++iterator )
183  {
184  const GeoDataItemIcon *itemIcon = *iterator;
185  itemIcon->pack( stream );
186  }
187 }
188 
189 void GeoDataListStyle::unpack( QDataStream& stream )
190 {
191  GeoDataObject::unpack( stream );
192 
193  int count;
194  stream >> count;
195 
196  int featureId;
197  stream >> featureId;
198 
199  GeoDataItemIcon *itemIcon = new GeoDataItemIcon;
200  itemIcon->unpack( stream );
201  d->m_vector.append( itemIcon );
202 }
203 
204 }
GeoDataListStyle.h
Marble::GeoDataListStyle::begin
QVector< GeoDataItemIcon * >::Iterator begin()
Definition: GeoDataListStyle.cpp:155
Marble::GeoDataListStyle::first
GeoDataItemIcon & first()
Definition: GeoDataListStyle.cpp:139
Marble::GeoDataListStyle::GeoDataItemIcon
friend class GeoDataItemIcon
Definition: GeoDataListStyle.h:89
Marble::GeoDataListStyle::~GeoDataListStyle
~GeoDataListStyle()
Definition: GeoDataListStyle.cpp:52
Marble::GeoDataItemIcon
Definition: GeoDataItemIcon.h:24
Marble::GeoDataListStyle::clear
void clear()
Definition: GeoDataListStyle.cpp:149
Marble::GeoDataObject
A base class for all geodata objects.
Definition: GeoDataObject.h:48
Marble::GeoDataListStyle::setBackgroundColor
void setBackgroundColor(const QColor &color)
Definition: GeoDataListStyle.cpp:77
Marble::GeoDataObject::pack
virtual void pack(QDataStream &stream) const
Reimplemented from Serializable.
Definition: GeoDataObject.cpp:114
Marble::GeoDataListStyle::child
GeoDataItemIcon * child(int)
Definition: GeoDataListStyle.cpp:87
Marble::GeoDataObject::setParent
virtual void setParent(GeoDataObject *parent)
Sets the parent of the object.
Definition: GeoDataObject.cpp:70
Marble::GeoDataListStyle::last
GeoDataItemIcon & last()
Definition: GeoDataListStyle.cpp:129
Marble::GeoDataListStyle::at
GeoDataItemIcon & at(int pos)
Definition: GeoDataListStyle.cpp:119
Marble::GeoDataListStyle::setListItemType
void setListItemType(const ListItemType &type)
Definition: GeoDataListStyle.cpp:67
Marble::GeoDataListStyle::itemIconList
QVector< GeoDataItemIcon * > itemIconList() const
Definition: GeoDataListStyle.cpp:82
MarbleDirs.h
Marble::GeoDataListStyle::backgroundColor
QColor backgroundColor() const
Definition: GeoDataListStyle.cpp:72
Marble::GeoDataListStyle::ListItemType
ListItemType
Definition: GeoDataListStyle.h:42
Marble::GeoDataListStyle::size
int size() const
Definition: GeoDataListStyle.cpp:114
Marble::GeoDataListStyle::end
QVector< GeoDataItemIcon * >::Iterator end()
Definition: GeoDataListStyle.cpp:160
Marble::GeoDataListStyle::unpack
virtual void unpack(QDataStream &stream)
Reimplemented from Serializable.
Definition: GeoDataListStyle.cpp:189
Marble::GeoDataListStyle::constBegin
QVector< GeoDataItemIcon * >::ConstIterator constBegin() const
Definition: GeoDataListStyle.cpp:165
Marble::GeoDataObject::operator=
GeoDataObject & operator=(const GeoDataObject &)
Definition: GeoDataObject.cpp:54
Marble::GeoDataListStyle::listItemType
ListItemType listItemType() const
Definition: GeoDataListStyle.cpp:62
Marble::GeoDataListStyle::operator=
GeoDataListStyle & operator=(const GeoDataListStyle &other)
Definition: GeoDataListStyle.cpp:45
Marble::GeoDataListStyle::nodeType
virtual const char * nodeType() const
Provides type information for downcasting a GeoNode.
Definition: GeoDataListStyle.cpp:57
Marble::GeoDataTypes::GeoDataListStyleType
const char * GeoDataListStyleType
Definition: GeoDataTypes.cpp:81
Marble::GeoDataObject::unpack
virtual void unpack(QDataStream &steam)
Reimplemented from Serializable.
Definition: GeoDataObject.cpp:120
Marble::GeoDataListStyle::remove
void remove(int index)
Definition: GeoDataListStyle.cpp:109
GeoDataTypes.h
Marble::GeoDataListStyle::childPosition
int childPosition(GeoDataItemIcon *child)
Definition: GeoDataListStyle.cpp:97
Marble::GeoDataListStyle::pack
virtual void pack(QDataStream &stream) const
Reimplemented from Serializable.
Definition: GeoDataListStyle.cpp:175
Marble::GeoDataListStyle::constEnd
QVector< GeoDataItemIcon * >::ConstIterator constEnd() const
Definition: GeoDataListStyle.cpp:170
Marble::GeoDataListStyle::append
void append(GeoDataItemIcon *other)
Definition: GeoDataListStyle.cpp:102
Marble::GeoDataListStyle::GeoDataListStyle
GeoDataListStyle()
Definition: GeoDataListStyle.cpp:35
Marble::GeoDataListStyle
Definition: GeoDataListStyle.h:28
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:50 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal