📄 menu.h
字号:
#if !defined(_MENU34_H)
#define _MENU34_H
#include "item.h"
//#include "dot_lcd.h"
#define MaxMenuItem 34
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
void ShowOperInfo( char *StrBuf );
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( ) { };
//////////////////////////////////
//add by wuhuan 2006.6.23
virtual void GetInputData( char abyte,char mulkeyflg ) { };
virtual void DeleteInputData( ) { };
};
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( );
//////////////add by wuhuan 2006.6.23
//void GetInputData( char abyte );
};
/////////////////////////////////////
class Menu1: public Menu
{
Item Menu1_1;
Item Menu1_2;
public:
Menu1( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
};
class Menu1_1: public Menu
{
Item_s Item1_1;
public:
Menu1_1( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg );
void DeleteInputData( );
};
class Menu1_2: public Menu
{
Item_s Item1_2;
public:
Menu1_2( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg );
void DeleteInputData( );
};
///////////////////////////////////////
//////////////add by wuhuan 2006.6.22
class Menu2: public Menu
{
Item Menu2_1;
Item Menu2_2;
Item Menu2_3;
Item Menu2_4;
Item Menu2_5;
Item Menu2_6;
Item Menu2_7;
Item Menu2_8;
////////////////////////
public:
Menu2( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
//////////////add by wuhuan 2006.6.23
//void GetInputData( char abyte );
};
class Menu2_1: public Menu
{
Item_s Item2_1_1;
public:
Menu2_1( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu2_2: public Menu
{
Item_s Item2_2_1;
public:
Menu2_2( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu2_3: public Menu
{
Item_s Item2_3_1;
public:
Menu2_3( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu2_4: public Menu
{
Item_s Item2_4_1;
public:
Menu2_4( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu2_5: public Menu
{
Item Item2_5_1;
Item Item2_5_2;
public:
Menu2_5( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
//////////////add by wuhuan 2006.6.23
/* void GetInputData( char abyte ); */
};
class Menu2_6: public Menu
{
Item_s Item2_6_1;
public:
Menu2_6( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
///////////////////////////////////////////add by wuhuan 2006.8.13
class Menu2_7: public Menu
{
Item_s Item2_7_1;
public:
Menu2_7( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg );
void DeleteInputData( );
};
class Menu2_8: public Menu
{
Item_s Item2_8_1;
public:
Menu2_8( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu5: public Menu
{
Item Menu5_1;
Item Menu5_2;
Item Menu5_3;
Item Menu5_4;
////////////////////////add by wuhuan 2006.7.12
public:
Menu5( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
};
class Menu5_3: public Menu
{
Item_s Item5_3;
public:
Menu5_3( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu5_4: public Menu
{
Item_s Item5_4;
public:
Menu5_4( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg ); //add by wuhuan 2006.6.23
void DeleteInputData( );
};
class Menu7: public Menu
{
Item_s Item7;
////////////////////////
public:
Menu7( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg );
void DeleteInputData( );
};
class Menu7_1: public Menu
{
Item_s Item7_1;
////////////////////////
public:
Menu7_1( );
void VarItemInit( );
int ManualPro( );
void AbnormalPro( );
void GetInputData( char abyte, char mulkeyflg );
void DeleteInputData( );
};
class MenuManager
{
int X, Y; // menu bar position
int NumMenu;
Menu* pMenuTab[20];
int AutoProIdx;
int ActMenuIdx;
MainMenu* EtrMenu;
Menu1* EtrMenu1;
Menu1_1* EtrMenu1_1;
Menu1_2* EtrMenu1_2;
///////////////////
//add by wuhuan 2006.6.22
Menu2* EtrMenu2;
Menu2_1* EtrMenu2_1;
Menu2_2* EtrMenu2_2;
Menu2_3* EtrMenu2_3;
Menu2_4* EtrMenu2_4;
Menu2_5* EtrMenu2_5;
Menu2_6* EtrMenu2_6;
//////////////////////////////////////////add by wuhuan 2006.8.13
Menu2_7* EtrMenu2_7;
Menu2_8* EtrMenu2_8;
//////////////////////////////////////////
Menu5* EtrMenu5;
Menu5_3* EtrMenu5_3;
Menu5_4* EtrMenu5_4;
Menu7* EtrMenu7;
Menu7_1* EtrMenu7_1;
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( );
///////////////////////////
//add by wuhuan 2006.06.23
void GetInputData( char abyte, char mulkeyflg );
void DeleteInputData( );
};
extern MenuManager MENUManager;
extern Menu UserMenu[4];
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -