X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fbufferviewconfig.h;h=75ca9cf64d03f726a1764878636a941189c3c23a;hp=d728df5601192c50798b85637374866cf071aa36;hb=09515f0300f18490ee1788392a7518a6e1ab5acc;hpb=4e0445e459c690cfa6013c5ad574e94f9214827b diff --git a/src/common/bufferviewconfig.h b/src/common/bufferviewconfig.h index d728df56..75ca9cf6 100644 --- a/src/common/bufferviewconfig.h +++ b/src/common/bufferviewconfig.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 * @@ -26,14 +26,23 @@ #include "types.h" class BufferViewConfig : public SyncableObject { + SYNCABLE_OBJECT Q_OBJECT + Q_PROPERTY(QString bufferViewName READ bufferViewName WRITE setBufferViewName) Q_PROPERTY(NetworkId networkId READ networkId WRITE setNetworkId) Q_PROPERTY(bool addNewBuffersAutomatically READ addNewBuffersAutomatically WRITE setAddNewBuffersAutomatically) Q_PROPERTY(bool sortAlphabetically READ sortAlphabetically WRITE setSortAlphabetically) + Q_PROPERTY(bool hideInactiveBuffers READ hideInactiveBuffers WRITE setHideInactiveBuffers) + Q_PROPERTY(bool disableDecoration READ disableDecoration WRITE setDisableDecoration) + Q_PROPERTY(int allowedBufferTypes READ allowedBufferTypes WRITE setAllowedBufferTypes) + Q_PROPERTY(int minimumActivity READ minimumActivity WRITE setMinimumActivity) public: BufferViewConfig(int bufferViewId, QObject *parent = 0); + BufferViewConfig(int bufferViewId, const QVariantMap &properties, QObject *parent = 0); + + inline virtual const QMetaObject *syncMetaObject() const { return &staticMetaObject; } public slots: inline int bufferViewId() const { return _bufferViewId; } @@ -50,15 +59,66 @@ public slots: inline bool sortAlphabetically() const { return _sortAlphabetically; } void setSortAlphabetically(bool sortAlphabetically); - virtual inline void requestSetBufferViewName(const QString &bufferViewName) { emit setBufferViewNameRequested(bufferViewName); } + inline bool disableDecoration() const { return _disableDecoration; } + void setDisableDecoration(bool disableDecoration); + + inline int allowedBufferTypes() const { return _allowedBufferTypes; } + void setAllowedBufferTypes(int bufferTypes); + + inline int minimumActivity() const { return _minimumActivity; } + void setMinimumActivity(int activity); + + inline bool hideInactiveBuffers() const { return _hideInactiveBuffers; } + void setHideInactiveBuffers(bool hideInactiveBuffers); + + virtual inline void requestSetBufferViewName(const QString &bufferViewName) { REQUEST(ARG(bufferViewName)) } + + const QList &bufferList() const { return _buffers; } + const QSet &removedBuffers() const { return _removedBuffers; } + const QSet &temporarilyRemovedBuffers() const { return _temporarilyRemovedBuffers; } + + QVariantList initBufferList() const; + void initSetBufferList(const QVariantList &buffers); + void initSetBufferList(const QList &buffers); + + QVariantList initRemovedBuffers() const; + void initSetRemovedBuffers(const QVariantList &buffers); + + QVariantList initTemporarilyRemovedBuffers() const; + void initSetTemporarilyRemovedBuffers(const QVariantList &buffers); + + void addBuffer(const BufferId &bufferId, int pos); + virtual inline void requestAddBuffer(const BufferId &bufferId, int pos) { REQUEST(ARG(bufferId), ARG(pos)) } + void moveBuffer(const BufferId &bufferId, int pos); + virtual inline void requestMoveBuffer(const BufferId &bufferId, int pos) { REQUEST(ARG(bufferId), ARG(pos)) } + void removeBuffer(const BufferId &bufferId); + virtual inline void requestRemoveBuffer(const BufferId &bufferId) { REQUEST(ARG(bufferId)) } + void removeBufferPermanently(const BufferId &bufferId); + virtual inline void requestRemoveBufferPermanently(const BufferId &bufferId) { REQUEST(ARG(bufferId)) } + signals: - void bufferViewNameSet(const QString &bufferViewName); + void bufferViewNameSet(const QString &bufferViewName); // invalidate + void configChanged(); void networkIdSet(const NetworkId &networkId); - void addNewBuffersAutomaticallySet(bool addNewBuffersAutomatically); - void sortAlphabeticallySet(bool sortAlphabetically); +// void addNewBuffersAutomaticallySet(bool addNewBuffersAutomatically); // invalidate +// void sortAlphabeticallySet(bool sortAlphabetically); // invalidate +// // void disableDecorationSet(bool disableDecoration); // invalidate +// void allowedBufferTypesSet(int allowedBufferTypes); // invalidate +// void minimumActivitySet(int activity); // invalidate +// void hideInactiveBuffersSet(bool hideInactiveBuffers); // invalidate + void bufferListSet(); // invalidate + + void bufferAdded(const BufferId &bufferId, int pos); +// void addBufferRequested(const BufferId &bufferId, int pos); + void bufferMoved(const BufferId &bufferId, int pos); +// void moveBufferRequested(const BufferId &bufferId, int pos); + void bufferRemoved(const BufferId &bufferId); + void bufferPermanentlyRemoved(const BufferId &bufferId); +// void removeBufferRequested(const BufferId &bufferId); +// void removeBufferPermanentlyRequested(const BufferId &bufferId); - void setBufferViewNameRequested(const QString &bufferViewName); +// void setBufferViewNameRequested(const QString &bufferViewName); private: int _bufferViewId; @@ -66,6 +126,13 @@ private: NetworkId _networkId; bool _addNewBuffersAutomatically; bool _sortAlphabetically; + bool _hideInactiveBuffers; + bool _disableDecoration; + int _allowedBufferTypes; + int _minimumActivity; + QList _buffers; + QSet _removedBuffers; + QSet _temporarilyRemovedBuffers; }; #endif // BUFFERVIEWCONFIG_H