LeechCraft  0.6.70-18450-gabe19ee3b0
Modular cross-platform feature rich live environment.
tagseditdelegate.h
Go to the documentation of this file.
1 /**********************************************************************
2  * LeechCraft - modular cross-platform feature rich internet client.
3  * Copyright (C) 2006-2014 Georg Rudoy
4  *
5  * Distributed under the Boost Software License, Version 1.0.
6  * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7  **********************************************************************/
8 
9 #pragma once
10 
11 #include <QStyledItemDelegate>
12 #include "tagsconfig.h"
13 
14 class ITagsManager;
15 
16 namespace LC::Util
17 {
18  class UTIL_TAGS_API TagsEditDelegate : public QStyledItemDelegate
19  {
20  ITagsManager& ITM_;
21  public:
22  explicit TagsEditDelegate (ITagsManager&, QObject* = nullptr);
23  protected:
24  QWidget* createEditor (QWidget*, const QStyleOptionViewItem&, const QModelIndex&) const override;
25  void paint (QPainter*, const QStyleOptionViewItem&, const QModelIndex&) const override;
26  void setEditorData (QWidget*, const QModelIndex&) const override;
27  void setModelData (QWidget*, QAbstractItemModel*, const QModelIndex&) const override;
28  };
29 }
#define UTIL_TAGS_API
Definition: tagsconfig.h:16
Tags manager&#39;s interface.
Definition: itagsmanager.h:22