1 Star 0 Fork 0

小喻同学i/TouchTest

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
imenupage.h 1.26 KB
一键复制 编辑 原始数据 按行查看 历史
yuxj 提交于 2024-09-10 18:57 . 更新按键短按 + 长按的交互逻辑
#ifndef IMENUPAGE_H
#define IMENUPAGE_H
#include <QWidget>
#include "uicommondef.h"
#include "commonstr.h"
#include "config.h"
#include "ikeyenbale.h"
namespace Ui {
class IMenuPage;
}
class IMenuPage : public QWidget, public IKeyEnable
{
Q_OBJECT
enum PAGE_INDEX_E
{
INVALID_PAGE = -1,
MAIN_PAGE = 0, //主菜单页
SUB_PAGE = 1, //子菜单功能页
SETTING_PAGE = 2 //设置页
};
public:
explicit IMenuPage(QWidget *parent = nullptr);
virtual ~IMenuPage();
public:
virtual void eventTurnLeft() override;
virtual void eventTurnRight() override;
virtual void eventShortPress() override;
virtual void eventLongPress() override;
signals:
void sglExit();
public slots:
void slotMainItemClicked(MenuItemNode_S* item);
void slotSubItemClicked(MenuItemNode_S* item);
void slotSettingItemChanged(MenuItemNode_S* item, int index, bool preview);
void slotSubPageBackClick();
void slotSettingPageBackClick();
private:
void changePage(MenuItemNode_S* item, PAGE_INDEX_E page = INVALID_PAGE);
bool forbiddenShortPress(MenuItemNode_S* node);
protected:
MenuItemNode_S* m_root = nullptr;
Ui::IMenuPage *ui;
};
#endif // IMENUPAGE_H
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/oweni/touch-test.git
git@gitee.com:oweni/touch-test.git
oweni
touch-test
TouchTest
master

搜索帮助