⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menudef.h

📁 完整的软件学习--显示器驱动视频软件
💻 H
字号:
#define Multi_Number	0
#define Multi_Gauge	0
#define CompressPropFont	0

#define OnlyDrawColor	BIT7
#define OnlyDrawCode	BIT6

typedef enum
{  
  CP_SoftLowGreenColor,
  CP_BlueColor,
  CP_RedColor,
  CP_GrayColor,
  CP_CyanColor,
  CP_PinkColor,
  CP_YellowColor,
  CP_KhakiColor,

  CP_GrassGreenColor,
  CP_BlackColor,
  CP_GreenColor,
  CP_MidGreenColor,
  CP_SoftGrayColor,
  CP_SoftGrassGreenColor,
  CP_SeaBlueColor,
  CP_WhiteColor,
  
  CP_MaxColor
  	  
} CP_ColorType;

#define FRAME3COLOR (CP_RedColor&0xF)<<4|(CP_GrayColor&0xF) //vick add
#define FRAME2COLOR (CP_BlackColor&0xF)<<4|(CP_GrayColor&0xF)
	
typedef enum 
{ PowerOffMenu,
  PowerOnMenu,
  StandbyMenu,
  SuspenMenu,
  CableNotConnectedMenu,
  UnsupportedModeMenu,
  RootMenu,
  
//==========main menu
  MainMenu,     //7  color menu
  PictureMenu,  //8
  FunctionMenu,//9 
  OsdSetMenu,   //10
  MiscellaneousMenu,//11
  ExitMenu,     //12
  TUserColorMenu,  //13
  OsdTimeMenu,  // 14
  OsdTimeSubMenu, //fendy 15
//===============


  LanguageMenu, //16

  FactoryConfigMenu, //17
 
  AutoMenu,
  ContMenu, 
  BriteMenu,
  VolMenu,
  AutoColorMenu,    //22
  BurninMenu,    //23
  FactoryMenu,//24
  ISPMenu,

  DDCTypeMenu,
#if Dual_Input_Icon_Enable
  SourceTypeMenu,
#endif
  // user definition end
  MaxMenu
} MenuPageIndexType;

typedef enum
{ //CTEMP_NATIVE,//vick add
  CTEMP_9300K,
  CTEMP_6500K,
  CTEMP_5800K,
  CTEMP_USER,
  CTEMP_Nums
} ColorTempType;

typedef enum
{ GammValue0,
  GammValue1,
  GammValue2,
  GammValue3,  
 
} GammaType;

typedef enum
{
    Sharpness_1,	
	Sharpness_2,
	Sharpness_3,
	Sharpness_4,
    Sharpness_5,
    Sharpness_6
} SharnessType;


typedef enum
{
    No_Translucent,	
	Translucent_1,
	Translucent_2,
	Translucent_3,
    Translucent_4,
    Translucent_5,
    Translucent_6,
    Translucent_7,
} TranslucentType;

//====


typedef enum
{ LANG_English,
   LANG_France,
  LANG_German,
  LANG_Spanish,  
  LANG_Italian,
  LANG_TChinese,
  LANG_SChinese,  
  LANG_Japanese,	
  LANG_Nums
} LanguageType;

typedef enum
{ MIA_Nothing,
  MIA_GotoNext,	// goto next
  MIA_GotoPrev, // goto prev
  MIA_PrevItem,
  MIA_NextItem,
  MIA_JumpNaviItem,
  MIA_JumpAdjustItem,
  MIA_Exit, // Exit
  MIA_IncValue, // increase value
  MIA_DecValue, // decrease value
  MIA_ExecFunc,
  MIA_Auto,
  MIA_Brite,
  MIA_Cont,
  MIA_InvIncValue,
  MIA_InvDecValue,
  MIA_RedrawMenu,
  MIA_ExecGotoNext,//vick add
  MIA_NextItemSelect,//tony add  
  MIA_Power, // power control
  MIA_Volumehotkey,
  MIA_InputSourceChangeKey,

   MIA_SUBNextItem,//FENDY ADD
   MIA_EnterAdjuSelect,
   MIA_GotoBackItem,
   MIA_GotoBackPage,
   MIA_GotoYesNOItem,
   MIA_GotoAdjustOSDtTime,
   MAI_EnterAdRGB,
   MIA_GotoBackAdjustRGB,
   MIA_EnterLangSelect,

MIA_DDCSwitch,
} MenuItemActionType;


typedef enum
{ DWI_Nothing,
  DWI_Icon,
  DWI_Text,
  DWI_FullText,
  DWI_CenterText,
  DWI_FullCenterText,
  DWI_CommentText,
  DWI_None
} DrawMenuItemType;

typedef BYTE* (*fpDisplayText)(void);
typedef Bool (*fpExecFunc)(void);
typedef BYTE (*fpItemIndex)(void);
typedef Bool (*fpAdjustValue)(MenuItemActionType action);
typedef WORD (*fpGetValue)(void);
typedef WORD (*fpGetMaxValue)(void);
typedef WORD (*fpSetMaxValue)(void);
	
#define mpbStay		0x01 // for stay in menu page
#define mpbInvisible	0x02 // menu page visible or not
#define mpbDrawFrame	0x10
#define mpbMoving	0x20
#define mpbCenter 0x40

#define mibSelectable	0x01 // for menu item selectable
#define mibInvisible	0x02 // for menu item selectable
#define mibDVIDisable	0x04
#define mibFactoryItem  0x08
#define mibSubWindowHightLightSelect 0x10
#define mibAdjustItem	0x20
//#define mibClrInner3	0x40
#define mibNotFactoryItem	0x40
#define mibDrawValue	0x80

#define dwiNumber	0x01
#define dwiGauge	0x02
#define dwiRadioGroup	0x04
#define dwiEnd		0x08
#define dwiHex		0x10
#define dwiSingleRadioItem 0x20
//#define dwiValueSelectRadioItemColor 0x40
#define dwiNormalFont	0x40
#define dwiIcon	0x80

typedef struct
{ WORD *Fonts;
  WORD FontCount;
} MenuFontType;

#if CompressPropFont
   typedef WORD PropFontType;
#else
  typedef struct
  { BYTE SpaceWidth;
    WORD LineData[18];
  } PropFontType;
#endif



typedef struct
{ fpAdjustValue AdjustFunction;
  fpExecFunc ExecFunction;
} MenuItemFuncType;



#if Multi_Number //multi-number

typedef struct
{ BYTE Flags;
  BYTE XPos, YPos;
  fpGetValue GetValue;
} NumberType;

typedef struct
{ BYTE Flags;
  BYTE ForeColor, BackColor;
  BYTE SelForeColor, SelBackColor;
  NumberType *DisplayNumber;
} DrawNumberType;

#else // single number

typedef struct
{ BYTE Flags;
  BYTE ForeColor, BackColor;
 BYTE SelForeColor, SelBackColor;
  BYTE XPos, YPos;
  fpGetValue GetValue;
} DrawNumberType;
#endif

#if Multi_Gauge // multi-gauge

typedef struct
{ BYTE Flags;
  BYTE XPos, YPos;
  fpGetValue GetValue;
} GaugeType;

typedef struct
{ BYTE Flags;
//  BYTE ForeColor, BackColor;
//  BYTE SelForeColor, SelBackColor;
  BYTE Length;
  GaugeType *DisplayGauge;
} DrawGuageType;

#else // single gauge

typedef struct
{ BYTE Flags;
   BYTE ForeColor, BackColor;
 // BYTE SelForeColor, SelBackColor;
  BYTE Length;
  BYTE XPos, YPos;
  fpGetValue GetValue;
} DrawGuageType;
#endif

typedef struct
{ BYTE Flags;
 // BYTE ForeColor, BackColor;
//  BYTE SelForeColor, SelBackColor;
  BYTE XPos, YPos;
  fpDisplayText DisplayText;
} RadioTextType;


typedef struct
{ BYTE Flags;
   BYTE ForeColor, BackColor;
   BYTE SelForeColor, SelBackColor;
  fpGetValue GetValue;
  RadioTextType *RadioText;
  
} DrawRadioGroupType;

typedef struct
{ BYTE Flags;
  DrawNumberType *DrawNumber;
  DrawGuageType *DrawGuage;
  DrawRadioGroupType *DrawRadioGroup;
} DrawValueType;

typedef struct
{ BYTE XPos, YPos;
  BYTE ForeColor, BackColor;
  BYTE SelForeColor, SelBackColor;
  BYTE NextPage;
  DrawMenuItemType DrawItemMethod;
  fpDisplayText	DisplayText; 
  MenuItemActionType *KeyEvents;
  MenuItemFuncType KeyFunction;
//  DrawValueType DisplayValue;
  DrawValueType *DisplayValue;
  BYTE Flags;
} MenuItemType;


typedef struct
{ BYTE 	XSize, YSize;
  BYTE PrevPage;  
  MenuItemType* MenuItems;
  BYTE  ItemCount;
  fpExecFunc ExecFunction;
  BYTE FontAddr;
  MenuFontType *Fonts;
  BYTE Flags;
} MenuPageType;


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -