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

📄 menu.c

📁 在CCS环境下的一个视频采集源代码
💻 C
字号:
#include "menu.h"
#include "PixelProc.h"

extern System_Status sys_stat;
extern UserSettings us;
extern Packet packet;

void InitMenu()
{
	us.CurrentPos = 1;

	us.MP_index = 0;
	us.MP_num[0] = 1;
	us.MP_num[1] = 1;
	us.MP_num[2] = 1;
	us.MP_num[3] = 1;
	us.uptodate = 0;

}

void TickMenu(KeyName keyin)
{
	switch (keyin){
	case KEY_Throughput:
		sys_stat = Throughput;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;
		
	case KEY_Freeze:
		sys_stat = Freeze;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;
		
	case KEY_Save:
		sys_stat = Save;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;

	case KEY_Replay:
		sys_stat = Replay;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;

	case KEY_Combine:
		sys_stat = Combine;
		if (us.MP_index < 4) us.MP_index++;
		else us.MP_index = 1;
		us.uptodate = 1;
		packet.type = sys_stat;
		packet.data = us.MP_index;
		break;
	
	case KEY_Invert:
		sys_stat = Invert;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;

	case KEY_Mirror:
		sys_stat = Mirror;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;

	case KEY_Flip:
		sys_stat = Flip;
		packet.type = sys_stat;
		packet.data = us.CurrentPos;
		break;

	case KEY_DOWN:
		us.uptodate = 1;
		if ( sys_stat == Combine ){
			if (us.MP_num[us.MP_index-1] > 1) us.MP_num[us.MP_index-1]--;
			packet.data = (us.MP_index-1) << 6 & us.MP_num[us.MP_index-1];
		}
		else{
			if ( us.CurrentPos > 1 )  us.CurrentPos--;
			packet.data = us.CurrentPos;
		}
		break;

	case KEY_UP:
		us.uptodate = 1;
		if ( sys_stat == Combine ){
			if (us.MP_num[us.MP_index-1] < NUMPICS) us.MP_num[us.MP_index-1]++;
			packet.data = (us.MP_index-1) << 6 & us.MP_num[us.MP_index-1];
		}
		else{
			if ( us.CurrentPos < NUMPICS ) us.CurrentPos++;
			packet.data = us.CurrentPos;
		}
		break;
	}
}


/*
if (mypos.CombinePos1&0x80!=0){				// input first parameter
	if (keyin == KEY_UP && mypos.CombinePos1 > 1) mypos.CombinePos1--;
	if (keyin == KEY_DOWN && mypos.CombinePos1 < MAXPIC) mypos.CombinePos1++;
	if (keyin == KEY_CONFIRM) mypos.CombinePos1 &= 0x80;
}else if (mypos.CombinePos2&0x80!=0){		// input second parameter
	if (keyin == KEY_UP && mypos.CombinePos2 > 1) mypos.CombinePos2--;
	if (keyin == KEY_DOWN && mypos.CombinePos2 < MAXPIC) mypos.CombinePos2++;
	if (keyin == KEY_CONFIRM) mypos.CombinePos2 &= 0x80;
}else{}										// input complete
tmp = mypos.CombinePos1 << 4 + mypos.CombinePos2;
*/

⌨️ 快捷键说明

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