diff options
Diffstat (limited to 'src/frontend/btbookshelfgroupingmenu.h')
-rw-r--r-- | src/frontend/btbookshelfgroupingmenu.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/frontend/btbookshelfgroupingmenu.h b/src/frontend/btbookshelfgroupingmenu.h new file mode 100644 index 0000000..83605a7 --- /dev/null +++ b/src/frontend/btbookshelfgroupingmenu.h @@ -0,0 +1,53 @@ +/********* +* +* In the name of the Father, and of the Son, and of the Holy Spirit. +* +* This file is part of BibleTime's source code, http://www.bibletime.info/. +* +* Copyright 1999-2011 by the BibleTime developers. +* The BibleTime source code is licensed under the GNU General Public License +* version 2.0. +* +**********/ + +#ifndef BTBOOKSHELFGROUPINGMENU_H +#define BTBOOKSHELFGROUPINGMENU_H + +#include <QMenu> + +#include <backend/bookshelfmodel/btbookshelftreemodel.h> + + +class QAction; +class QActionGroup; + +class BtBookshelfGroupingMenu: public QMenu { + Q_OBJECT + public: + explicit inline BtBookshelfGroupingMenu(QWidget *parent = 0) + : QMenu(parent) { initMenu(true); } + + explicit inline BtBookshelfGroupingMenu(bool showNoGrouping, + QWidget *parent = 0) + : QMenu(parent) { initMenu(showNoGrouping); } + + signals: + void signalGroupingOrderChanged(const BtBookshelfTreeModel::Grouping &); + + private: + void initMenu(bool showNoGrouping); + void retranslateUi(); + + private slots: + void slotGroupingActionTriggered(QAction *action); + + private: + QActionGroup *m_groupingActionGroup; + QAction *m_groupingCatLangAction; + QAction *m_groupingCatAction; + QAction *m_groupingLangCatAction; + QAction *m_groupingLangAction; + QAction *m_groupingNoneAction; +}; + +#endif // BTBOOKSHELFGROUPINGMENU_H |