X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Fbufferviewfilter.h;h=01812b9b07ec2eac4b1d313966539eae9aed1f2f;hp=813e5548993429e512575214d6b4f74f0f759caa;hb=cb91905054a970d659ff50f40798e8e1e674a388;hpb=9996d2489e5e5ca23b0750f39f64d8d4b5990029 diff --git a/src/uisupport/bufferviewfilter.h b/src/uisupport/bufferviewfilter.h index 813e5548..01812b9b 100644 --- a/src/uisupport/bufferviewfilter.h +++ b/src/uisupport/bufferviewfilter.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-08 by the Quassel Project * + * Copyright (C) 2005-09 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -21,10 +21,9 @@ #ifndef BUFFERVIEWFILTER_H_ #define BUFFERVIEWFILTER_H_ -#include +#include #include #include -#include #include #include #include @@ -57,14 +56,18 @@ public: virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent); QVariant data(const QModelIndex &index, int role) const; - QVariant icon(const QModelIndex &index) const; - QVariant foreground(const QModelIndex &index) const; + QVariant checkedState(const QModelIndex &index) const; + + bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + bool setCheckedState(const QModelIndex &index, Qt::CheckState state); void setConfig(BufferViewConfig *config); inline BufferViewConfig *config() const { return _config; } virtual void sort(int column, Qt::SortOrder order = Qt::AscendingOrder); + QList actions(const QModelIndex &index); + public slots: void checkPreviousCurrentForRemoval(const QModelIndex ¤t, const QModelIndex &previous); void checkItemForRemoval(const QModelIndex &index) { checkItemsForRemoval(index, index); } @@ -83,31 +86,26 @@ signals: private slots: void configInitialized(); - void showUserStateIconsChanged(); + void enableEditMode(bool enable); + void showServerQueriesChanged(); private: QPointer _config; Qt::SortOrder _sortOrder; - QColor _FgColorInactiveActivity; - QColor _FgColorNoActivity; - QColor _FgColorHighlightActivity; - QColor _FgColorNewMessageActivity; - QColor _FgColorOtherActivity; - - QPixmap _userOfflineIcon; - QPixmap _userAwayIcon; - QPixmap _userOnlineIcon; - bool _showUserStateIcons; - - void loadColors(); + bool _showServerQueries; + bool _editMode; + QAction _enableEditMode; + QSet _toAdd; + QSet _toTempRemove; + QSet _toRemove; bool filterAcceptBuffer(const QModelIndex &) const; bool filterAcceptNetwork(const QModelIndex &) const; - void addBuffer(const BufferId &) const; + void addBuffer(const BufferId &bufferId) const; + void addBuffers(const QList &bufferIds) const; + static bool bufferIdLessThan(const BufferId &, const BufferId &); }; Q_DECLARE_OPERATORS_FOR_FLAGS(BufferViewFilter::Modes) -bool bufferIdLessThan(const BufferId &, const BufferId &); - #endif // BUFFERVIEWFILTER_H_