Cleanup + docs
This commit is contained in:
		
					parent
					
						
							
								e74c73db3c
							
						
					
				
			
			
				commit
				
					
						c363891de3
					
				
			
		
					 4 changed files with 54 additions and 12 deletions
				
			
		| 
						 | 
					@ -20,15 +20,20 @@
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "danboorupostdelegate.h"
 | 
					// Own
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "danboorupostdelegate.h"
 | 
				
			||||||
#include "libdanbooru/danboorupost.h"
 | 
					#include "libdanbooru/danboorupost.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Qt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <QListView>
 | 
					#include <QListView>
 | 
				
			||||||
#include <QPainter>
 | 
					#include <QPainter>
 | 
				
			||||||
#include <QDebug>
 | 
					#include <QDebug>
 | 
				
			||||||
#include <QApplication>
 | 
					#include <QApplication>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// KDE
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <KPushButton>
 | 
					#include <KPushButton>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Danbooru {
 | 
					namespace Danbooru {
 | 
				
			||||||
| 
						 | 
					@ -135,7 +140,8 @@ namespace Danbooru {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    QSize DanbooruPostDelegate::sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const
 | 
					    QSize DanbooruPostDelegate::sizeHint(const QStyleOptionViewItem& option,
 | 
				
			||||||
 | 
					                                         const QModelIndex& index) const
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        Q_UNUSED(option)
 | 
					        Q_UNUSED(option)
 | 
				
			||||||
        Q_UNUSED(index)
 | 
					        Q_UNUSED(index)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -23,6 +23,12 @@
 | 
				
			||||||
#ifndef DANBOORUPOSTDELEGATE_H
 | 
					#ifndef DANBOORUPOSTDELEGATE_H
 | 
				
			||||||
#define DANBOORUPOSTDELEGATE_H
 | 
					#define DANBOORUPOSTDELEGATE_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @brief This file includes custom delegates to represent DanbooruItems.
 | 
				
			||||||
 | 
					 * @file danboorupostdelegate.h
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 **/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <QStyledItemDelegate>
 | 
					#include <QStyledItemDelegate>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class QListView;
 | 
					class QListView;
 | 
				
			||||||
| 
						 | 
					@ -31,6 +37,10 @@ class KPushButton;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Danbooru {
 | 
					namespace Danbooru {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * @brief Specific delegate for Danbooru items.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
    class DanbooruPostDelegate : public QStyledItemDelegate
 | 
					    class DanbooruPostDelegate : public QStyledItemDelegate
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,10 +57,6 @@ namespace Danbooru {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
       QModelIndex hoveredIndex() const;
 | 
					       QModelIndex hoveredIndex() const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
       QList<QWidget*> createItemWidgets() const;
 | 
					 | 
				
			||||||
       void updateItemWidgets( const QList<QWidget*> widgets,
 | 
					 | 
				
			||||||
                               const QStyleOptionViewItem& option,
 | 
					 | 
				
			||||||
                               const QPersistentModelIndex & index) const;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private:
 | 
					    private:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -20,9 +20,13 @@
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Own
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "danboorutablemodel.h"
 | 
					#include "danboorutablemodel.h"
 | 
				
			||||||
#include "libdanbooru/danboorupost.h"
 | 
					#include "libdanbooru/danboorupost.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Qt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <QDebug>
 | 
					#include <QDebug>
 | 
				
			||||||
#include <QPixmap>
 | 
					#include <QPixmap>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -47,7 +51,7 @@ namespace Danbooru {
 | 
				
			||||||
    void DanbooruTableModel::addPost(Danbooru::DanbooruPost* post)
 | 
					    void DanbooruTableModel::addPost(Danbooru::DanbooruPost* post)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        beginInsertRows(QModelIndex(), m_posts.length(), m_posts.length()+1);
 | 
					        beginInsertRows(QModelIndex(), m_posts.length(), m_posts.length() + 1);
 | 
				
			||||||
        m_posts.append(post);
 | 
					        m_posts.append(post);
 | 
				
			||||||
        endInsertRows();
 | 
					        endInsertRows();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					@ -70,8 +74,12 @@ namespace Danbooru {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (role == Qt::DisplayRole) {
 | 
					        if (role == Qt::DisplayRole) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            DanbooruPost* post = m_posts.at(index.row());
 | 
					            Danbooru::DanbooruPost* post = m_posts.at(index.row());
 | 
				
			||||||
            return post->fileUrl().fileName();
 | 
					
 | 
				
			||||||
 | 
					            QVariant variant;
 | 
				
			||||||
 | 
					            variant.setValue(post);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            return variant;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (role == Qt::DecorationRole) {
 | 
					        if (role == Qt::DecorationRole) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -23,12 +23,29 @@
 | 
				
			||||||
#ifndef DANBOORUTABLEMODEL_H
 | 
					#ifndef DANBOORUTABLEMODEL_H
 | 
				
			||||||
#define DANBOORUTABLEMODEL_H
 | 
					#define DANBOORUTABLEMODEL_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @brief This file contains a specific model to represent Danbooru Items
 | 
				
			||||||
 | 
					 * @file danboorutablemodel.h
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 **/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <QAbstractListModel>
 | 
					#include <QAbstractListModel>
 | 
				
			||||||
#include <QList>
 | 
					#include <QList>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Danbooru {
 | 
					namespace Danbooru {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    class DanbooruPost;
 | 
					    class DanbooruPost;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * @brief A model to represent DanbooruItems
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * Since items from a Danbooru service are sent by the service itself,
 | 
				
			||||||
 | 
					     * there is no need for sorting or table-like structures: everything is
 | 
				
			||||||
 | 
					     * represented as a flat list.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * Items are added through the addPost() slot.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
    class DanbooruTableModel : public QAbstractListModel
 | 
					    class DanbooruTableModel : public QAbstractListModel
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -41,13 +58,18 @@ namespace Danbooru {
 | 
				
			||||||
        int rowCount(const QModelIndex& parent=QModelIndex()) const;
 | 
					        int rowCount(const QModelIndex& parent=QModelIndex()) const;
 | 
				
			||||||
        QVariant data(const QModelIndex& index, int role) const;
 | 
					        QVariant data(const QModelIndex& index, int role) const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    //     bool insertRows(int row, int count=rowCount(),
 | 
					 | 
				
			||||||
    //                     const QModelIndex& parent=QModelIndex());
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    private:
 | 
					    private:
 | 
				
			||||||
        QList<DanbooruPost*> m_posts;
 | 
					        QList<DanbooruPost*> m_posts;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Q_SLOTS:
 | 
					    public Q_SLOTS:
 | 
				
			||||||
 | 
					        /**
 | 
				
			||||||
 | 
					         * @brief Add a new post to the model
 | 
				
			||||||
 | 
					         *
 | 
				
			||||||
 | 
					         * Connect to this slot when you want to add items to the model.
 | 
				
			||||||
 | 
					         *
 | 
				
			||||||
 | 
					         * @param post A pointer to a DanbooruPost.
 | 
				
			||||||
 | 
					         *
 | 
				
			||||||
 | 
					         */
 | 
				
			||||||
        void addPost(Danbooru::DanbooruPost* post);
 | 
					        void addPost(Danbooru::DanbooruPost* post);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue