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

kopete/kopete

  • sources
  • kde-4.12
  • kdenetwork
  • kopete
  • kopete
  • config
  • status
statusmodel.h
Go to the documentation of this file.
1 /*
2  kopetestatusmodel.h - Kopete Status Model
3 
4  Copyright (c) 2008 by Roman Jarosz <kedgedev@centrum.cz>
5  Kopete (c) 2008 by the Kopete developers <kopete-devel@kde.org>
6 
7  *************************************************************************
8  * *
9  * This library is free software; you can redistribute it and/or *
10  * modify it under the terms of the GNU Lesser General Public *
11  * License as published by the Free Software Foundation; either *
12  * version 2 of the License, or (at your option) any later version. *
13  * *
14  *************************************************************************
15 */
16 #ifndef KOPETESTATUSMODEL_H
17 #define KOPETESTATUSMODEL_H
18 
19 #include <QAbstractItemModel>
20 
21 namespace Kopete {
22  namespace Status {
23  class StatusItem;
24  class StatusGroup;
25  class Status;
26  }
27 }
28 
33 class KopeteStatusModel : public QAbstractItemModel
34 {
35  Q_OBJECT
36 public:
37  KopeteStatusModel( Kopete::Status::StatusGroup *rootItem, QObject *parent = 0 );
38  ~KopeteStatusModel();
39 
40  enum ItemRole
41  {
42  Category = Qt::UserRole,
43  Title,
44  Message,
45  Group
46  };
47 
48  virtual QVariant data( const QModelIndex &index, int role ) const;
49  virtual bool setData( const QModelIndex &index, const QVariant &value, int role = Qt::EditRole );
50  virtual Qt::ItemFlags flags( const QModelIndex &index ) const;
51  virtual QVariant headerData( int section, Qt::Orientation orientation, int role = Qt::DisplayRole ) const;
52  virtual QModelIndex index( int row, int column, const QModelIndex &parent = QModelIndex() ) const;
53  virtual QModelIndex parent( const QModelIndex &index ) const;
54  virtual int rowCount( const QModelIndex &parent = QModelIndex() ) const;
55  virtual int columnCount( const QModelIndex &parent = QModelIndex() ) const;
56 
57  virtual Qt::DropActions supportedDropActions() const;
58 
59  QModelIndex insertItem( const QModelIndex &index, Kopete::Status::StatusItem *item );
60  virtual bool removeRows ( int row, int count, const QModelIndex &parent = QModelIndex() );
61 
62  QStringList mimeTypes() const;
63  QMimeData *mimeData( const QModelIndexList &indexes ) const;
64  bool dropMimeData( const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent );
65 
66 Q_SIGNALS:
67  void changed();
68 
69 private:
70  Kopete::Status::StatusItem *getStatusItem( const QModelIndex &parent ) const;
71  Kopete::Status::Status *getStatus( Kopete::Status::StatusItem *item ) const;
72  Kopete::Status::StatusGroup *getGroup( Kopete::Status::StatusItem *item ) const;
73 
74  Kopete::Status::StatusGroup *mRootItem;
75 };
76 
77 #endif
KopeteStatusModel::parent
virtual QModelIndex parent(const QModelIndex &index) const
Definition: statusmodel.cpp:139
KopeteStatusModel::index
virtual QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const
Definition: statusmodel.cpp:127
KopeteStatusModel::Message
Definition: statusmodel.h:44
KopeteStatusModel::flags
virtual Qt::ItemFlags flags(const QModelIndex &index) const
Definition: statusmodel.cpp:108
KopeteStatusModel::supportedDropActions
virtual Qt::DropActions supportedDropActions() const
Definition: statusmodel.cpp:164
KopeteStatusModel::removeRows
virtual bool removeRows(int row, int count, const QModelIndex &parent=QModelIndex())
Definition: statusmodel.cpp:203
KopeteStatusModel::Category
Definition: statusmodel.h:42
QObject
KopeteStatusModel::ItemRole
ItemRole
Definition: statusmodel.h:40
KopeteStatusModel::headerData
virtual QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
Definition: statusmodel.cpp:119
KopeteStatusModel::data
virtual QVariant data(const QModelIndex &index, int role) const
Definition: statusmodel.cpp:36
KopeteStatusModel::Group
Definition: statusmodel.h:45
KopeteStatusModel::mimeTypes
QStringList mimeTypes() const
Definition: statusmodel.cpp:224
QAbstractItemModel
KopeteStatusModel::mimeData
QMimeData * mimeData(const QModelIndexList &indexes) const
Definition: statusmodel.cpp:231
KopeteStatusModel::setData
virtual bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
Definition: statusmodel.cpp:76
KopeteStatusModel::~KopeteStatusModel
~KopeteStatusModel()
Definition: statusmodel.cpp:32
KopeteStatusModel::columnCount
virtual int columnCount(const QModelIndex &parent=QModelIndex()) const
Definition: statusmodel.cpp:159
KopeteStatusModel::insertItem
QModelIndex insertItem(const QModelIndex &index, Kopete::Status::StatusItem *item)
Definition: statusmodel.cpp:169
KopeteStatusModel::Title
Definition: statusmodel.h:43
KopeteStatusModel::KopeteStatusModel
KopeteStatusModel(Kopete::Status::StatusGroup *rootItem, QObject *parent=0)
Definition: statusmodel.cpp:27
KopeteStatusModel::rowCount
virtual int rowCount(const QModelIndex &parent=QModelIndex()) const
Definition: statusmodel.cpp:151
KopeteStatusModel::dropMimeData
bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
Definition: statusmodel.cpp:255
KopeteStatusModel
Definition: statusmodel.h:33
KopeteStatusModel::changed
void changed()
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:53:41 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kopete/kopete

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

kdenetwork API Reference

Skip menu "kdenetwork API Reference"
  • kget
  • kopete
  •   kopete
  •   libkopete
  • krdc
  • krfb

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