1// Copyright 2011 Simon Edwards <simon@simonzone.com>
2
3//                 Generated by twine2
4
5// This program is free software; you can redistribute it and/or modify
6// it under the terms of the GNU Library General Public License as
7// published by the Free Software Foundation; either version 2, or
8// (at your option) any later version.
9
10// This program is distributed in the hope that it will be useful,
11// but WITHOUT ANY WARRANTY; without even the implied warranty of
12// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13// GNU General Public License for more details
14
15// You should have received a copy of the GNU Library General Public
16// License along with this program; if not, write to the
17// Free Software Foundation, Inc.,
18// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
19
20namespace Marble
21{
22class GeoDataListStyle : Marble::GeoDataObject
23{
24%TypeHeaderCode
25#include <GeoDataListStyle.h>
26%End
27
28public:
29                            GeoDataListStyle ();
30                            GeoDataListStyle (const Marble::GeoDataListStyle& other);
31    ~GeoDataListStyle ();
32    virtual const char*     nodeType () const;
33    enum ListItemType
34    {
35        Check,
36        RadioFolder,
37        CheckOffOnly,
38        CheckHideChildren
39    };
40    Marble::GeoDataListStyle::ListItemType  listItemType () const;
41    void                    setListItemType (const Marble::GeoDataListStyle::ListItemType& type);
42    QColor                  backgroundColor () const;
43    void                    setBackgroundColor (const QColor& color);
44//FIXME
45//ig    QVector<Marble::GeoDataItemIcon*>  itemIconList () const;
46
47//ig    Marble::GeoDataItemIcon*  child (int);
48    const Marble::GeoDataItemIcon*  child (int) const;
49    int                     childPosition (Marble::GeoDataItemIcon* child);
50    void                    append (Marble::GeoDataItemIcon* other);
51    void                    remove (int index);
52    int                     size () const;
53//ig    Marble::GeoDataItemIcon&  at (int pos);
54    const Marble::GeoDataItemIcon&  at (int pos) const;
55//ig    Marble::GeoDataItemIcon&  last ();
56    const Marble::GeoDataItemIcon&  last () const;
57//ig    Marble::GeoDataItemIcon&  first ();
58    const Marble::GeoDataItemIcon&  first () const;
59
60// FIXME
61//    QVector<GeoDataItemIcon*>::Iterator  begin ();
62//    QVector<GeoDataItemIcon*>::Iterator  end ();
63//    QVector<GeoDataItemIcon*>::ConstIterator  constBegin () const;
64//    QVector<GeoDataItemIcon*>::ConstIterator  constEnd () const;
65
66    void                    clear ();
67    virtual void            pack (QDataStream& stream) const;
68    virtual void            unpack (QDataStream& stream);
69};
70};
71