📄 menu.h
字号:
#if !defined(_MENU34_H)
#define _MENU34_H
#include "item.h"
//#include "dot_lcd.h"
#define MaxMenuItem 24
class Menu
{
int X, Y; // menu leftup position
int XSize;
int TxtColor; // screen text color
int ActTxtColor; // screen text color for active item
int ActBkColor; // screen background color for active item
protected:
int BkColor; // screen background color
int ItemX( int ItemIdx );
int ItemY( int ItemIdx );
int NumItem; // <= MaxMenuItem
Item* pItemTab[MaxMenuItem]; // a list of current all items
int ActItemIdx; // 0 <= ActItemIdx < NumItem
int MenuFormat; // 0: 2 row 1: 1 row
int ScreenItem;
int StartItem;
int NewCnt;
int OldCnt;
void ShowAsActive( int ItemIdx );
void ShowAsNormal( int ItemIdx );
void PutOnScreen( );
int AddItem( Item* NewItemPtr=NULL ); // return number of items
public:
Menu( );
void MenuItemBarUp( );
void MenuItemBarDn( );
void MenuItemInc( );
void MenuItemDec( );
void MenuItemINC( );
void MenuItemDEC( );
void Hide( );
void Show( );
void SetMenuFormat( int i );
virtual void VarItemInit( ) { };
virtual int ManualPro( ) { return 0; }
virtual void AbnormalPro( ) { };
};
class MainMenu: public Menu
{
Item Menu1;
Item Menu2;
Item Menu3;
Item Menu4;
Item Menu5;
Item Menu6;
Item Menu7;
Item Menu8;
public:
MainMenu( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
};
class Menu1: public Menu
{
Item_e Item1;
Item_i Item2;
Item_i Item3;
Item_e Item4;
Item_f Item5;
Item_i Item6;
public:
Menu1( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
};
class MenuManager
{
//BLN MenuVisible;
int X, Y; // menu bar position
int NumMenu;
Menu* pMenuTab[10];
int AutoProIdx;
int ActMenuIdx;
//BLN MultiWave;
MainMenu* EtrMenu;
Menu1* EtrMenu1;
public:
MenuManager( );
~MenuManager( );
int SysMenuInit( );
int AddMenu( Menu* AppMenu );
void HideMenu( );
void ShowMenu( int MenuIdx=-1 );
void MenuItemBarUp( );
void MenuItemBarDn( );
void MenuItemInc( );
void MenuItemDec( );
void MenuItemINC( );
void MenuItemDEC( );
void MenuDrivedManualPro( );
void AbnormalPro( );
};
extern MenuManager MENUManager;
extern Menu UserMenu[4];
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -