20#ifndef LOMIRIMENUMODELSTACK_H
21#define LOMIRIMENUMODELSTACK_H
23#include "lomiriindicatorsglobal.h"
28class LomiriMenuModelEntry;
29class AyatanaMenuModel;
36class LOMIRIINDICATORS_EXPORT LomiriMenuModelStack :
public QObject
39 Q_PROPERTY(AyatanaMenuModel* head READ head WRITE setHead NOTIFY headChanged)
40 Q_PROPERTY(AyatanaMenuModel* tail READ tail NOTIFY tailChanged)
41 Q_PROPERTY(
int count READ count NOTIFY countChanged)
43 LomiriMenuModelStack(QObject*parent=
nullptr);
44 ~LomiriMenuModelStack();
46 AyatanaMenuModel* head()
const;
47 void setHead(AyatanaMenuModel* model);
49 AyatanaMenuModel* tail()
const;
53 Q_INVOKABLE
void push(AyatanaMenuModel* model,
int menuIndex);
54 Q_INVOKABLE AyatanaMenuModel* pop();
57 void headChanged(AyatanaMenuModel* head);
58 void tailChanged(AyatanaMenuModel* tail);
59 void countChanged(
int count);
65 QList<LomiriMenuModelEntry*> m_menuModels;