diff options
Diffstat (limited to 'Swift/QtUI/QtAffiliationEditor.h')
-rw-r--r-- | Swift/QtUI/QtAffiliationEditor.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Swift/QtUI/QtAffiliationEditor.h b/Swift/QtUI/QtAffiliationEditor.h new file mode 100644 index 0000000..913b2cc --- /dev/null +++ b/Swift/QtUI/QtAffiliationEditor.h @@ -0,0 +1,37 @@ +/* + * Copyright (c) 2011 Kevin Smith + * Licensed under the GNU General Public License v3. + * See Documentation/Licenses/GPLv3.txt for more information. + */ + +#pragma once + +#include <vector> +#include <map> + +#include <QDialog> +#include <Swift/QtUI/ui_QtAffiliationEditor.h> + +#include <Swiften/JID/JID.h> +#include <Swiften/Elements/MUCOccupant.h> + +namespace Swift { + class QtAffiliationEditor : public QDialog { + Q_OBJECT + public: + QtAffiliationEditor(QWidget* parent = NULL); + ~QtAffiliationEditor(); + void setAffiliations(MUCOccupant::Affiliation, const std::vector<JID>& jids); + const std::vector<std::pair<MUCOccupant::Affiliation, JID> >& getChanges() const; + private slots: + void handleCurrentIndexChanged(int); + void handleAddClicked(); + void handleRemoveClicked(); + private: + typedef std::pair<MUCOccupant::Affiliation, JID> ChangePair; + MUCOccupant::Affiliation affiliationFromIndex(int affiliation); + Ui::QtAffiliationEditor ui_; + std::map<MUCOccupant::Affiliation, std::vector<JID> > affiliations_; + std::vector<ChangePair> changes_; + }; +}
\ No newline at end of file |