File indexing completed on 2024-10-06 04:58:59
0001 /* 0002 SPDX-FileCopyrightText: 2019 Michail Vourlakos <mvourlakos@gmail.com> 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 0006 #ifndef PERSISTENTMENU_H 0007 #define PERSISTENTMENU_H 0008 0009 //Qt 0010 #include <QMenu> 0011 #include <QMouseEvent> 0012 0013 namespace Latte { 0014 namespace Settings { 0015 namespace Layout { 0016 namespace Delegate { 0017 0018 class PersistentMenu : public QMenu 0019 { 0020 Q_OBJECT 0021 public: 0022 PersistentMenu(QWidget *parent = nullptr); 0023 0024 int masterIndex() const; 0025 void setMasterIndex(const int &index); 0026 0027 protected: 0028 void setVisible(bool visible) override; 0029 void mouseReleaseEvent(QMouseEvent *e) override; 0030 0031 signals: 0032 void masterIndexChanged(const int &masterRow); 0033 0034 private: 0035 bool m_blockHide{false}; 0036 0037 int m_masterIndex{-1}; 0038 0039 }; 0040 0041 } 0042 } 0043 } 0044 } 0045 0046 #endif