Loading...
Searching...
No Matches
EditedDelegate.h
Go to the documentation of this file.
1/* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2
3This file is part of the TerraLib - a Framework for building GIS enabled applications.
4
5TerraLib is free software: you can redistribute it and/or modify
6it under the terms of the GNU Lesser General Public License as published by
7the Free Software Foundation, either version 3 of the License,
8or (at your option) any later version.
9
10TerraLib is distributed in the hope that it will be useful,
11but WITHOUT ANY WARRANTY; without even the implied warranty of
12MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13GNU Lesser General Public License for more details.
14
15You should have received a copy of the GNU Lesser General Public License
16along with TerraLib. See COPYING. If not, write to
17TerraLib Team at <terralib-team@terralib.org>.
18*/
19
20/*!
21 * \file
22 *
23 * \brief
24 */
25#ifndef __TERRALIB_PLUGINEDIT_INTERNAL_EDITDELEGATE_H
26#define __TERRALIB_PLUGINEDIT_INTERNAL_EDITDELEGATE_H
27
28// TerraLib
29#include "../../../common/Decorator.h"
30
31// Qt
32#include <QIcon>
33#include <QStyledItemDelegate>
34
35// STL
36#include <set>
37
38class EditDelegate: public te::common::Decorator<QStyledItemDelegate>
39{
40 Q_OBJECT
41
42public:
43
44 EditDelegate(QStyledItemDelegate* decorated, QObject* parent = 0);
45
47
48 void paint(QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index) const;
49
50 void addStashed(const std::string& lName);
51
52 void removeStashed(const std::string& lName);
53
54 void addEdited(const std::string& lName);
55
56 void removeEdited(const std::string& lName);
57
58 bool isStached(const std::string& lName);
59
60protected:
61
62 std::set<std::string> m_stashed;
63 std::set<std::string> m_edited;
64
65 QIcon m_stash;
66 QIcon m_memory;
67};
68
69#endif //__TERRALIB_PLUGINEDIT_INTERNAL_EDITDELEGATE_H
void addStashed(const std::string &lName)
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
void removeEdited(const std::string &lName)
void removeStashed(const std::string &lName)
void addEdited(const std::string &lName)
std::set< std::string > m_edited
EditDelegate(QStyledItemDelegate *decorated, QObject *parent=0)
bool isStached(const std::string &lName)
std::set< std::string > m_stashed