X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fbufferviewsettingspage.h;h=66764cb28a1fa61f3e210e0f91a0db5da94c3f54;hb=ff0f6746a6bf1b728d57352480e6cab0b98ac3a0;hp=a3f32c1d13260612cac1297906c227db1fcbdb98;hpb=4e0445e459c690cfa6013c5ad574e94f9214827b;p=quassel.git diff --git a/src/qtui/settingspages/bufferviewsettingspage.h b/src/qtui/settingspages/bufferviewsettingspage.h index a3f32c1d..66764cb2 100644 --- a/src/qtui/settingspages/bufferviewsettingspage.h +++ b/src/qtui/settingspages/bufferviewsettingspage.h @@ -25,6 +25,8 @@ #include "ui_bufferviewsettingspage.h" #include "ui_buffervieweditdlg.h" +#include + class BufferViewConfig; class BufferViewSettingsPage : public SettingsPage { @@ -32,6 +34,7 @@ class BufferViewSettingsPage : public SettingsPage { public: BufferViewSettingsPage(QWidget *parent = 0); + ~BufferViewSettingsPage(); public slots: void save(); @@ -43,27 +46,41 @@ private slots: void addBufferView(BufferViewConfig *config); void addBufferView(int bufferViewId); + void bufferViewDeleted(); void newBufferView(const QString &bufferViewName); void updateBufferView(); void on_addBufferView_clicked(); void on_renameBufferView_clicked(); + void on_deleteBufferView_clicked(); + void bufferViewSelectionChanged(const QItemSelection ¤t, const QItemSelection &previous); + + void widgetHasChanged(); private: Ui::BufferViewSettingsPage ui; - - // mappings for bufferViewId to position in the list and vice versa - QHash _viewToListPos; - QHash _listPosToView; + bool _ignoreWidgetChanges; + bool _useBufferViewHint; + int _bufferViewHint; // list of bufferviews to create QList _newBufferViews; + // list of buferViews to delete + QList _deleteBufferViews; + // Hash of pointers to cloned bufferViewConfigs holding the changes QHash _changedBufferViews; int listPos(BufferViewConfig *config); - int bufferViewId(int listPos); + BufferViewConfig *bufferView(int listPos); + bool selectBufferViewById(int bufferViewId); + BufferViewConfig *cloneConfig(BufferViewConfig *config); + BufferViewConfig *configForDisplay(BufferViewConfig *config); + + void loadConfig(BufferViewConfig *config); + void saveConfig(BufferViewConfig *config); + bool testHasChanged(); };