SAOUTILS
鼠标手势还没想好要怎么实现,流程无法完全确认,这项稍后再做。
主界面有两层构成,半透明全屏黑色背景和菜单。
菜单较为复杂,除了左边是一个大面板,其他部分全部都可以使用一种方式实现。使用Qt的QAbstractItemDelegate、QListView来做列表和界面绘制。
右边则是无限展开的菜单。
每层菜单只是用一个对象,和topbar dock的popup window一样。
点击每层菜单的时候,计算下一项要显示的位置。
主界面应该是只有左右两部分,除了左边的大面板,右侧全部都是相同结构的菜单,只不过在功能上略有不同。
点击的时候,所有菜单对鼠标点击的地点进行坐标计算,如果在鼠标右侧,则隐藏。如果要显示的菜单是自己,不隐藏。点击时开始timer,松开时停止,timeout以后显示选项。
保持最后一个菜单在最中间的位置,主界面向左或向右用动画移动固定长度。
SAOUTILS
https://blog.justforlxz.com/2017/07/03/SAOUTILS/