Пример #1
0
void RAW_eraseall(FORM* form, CONTROL* control) {
	
	unsigned char x;
	
	x=msgbox(50,BC_YesNo | BC_DefaultButton2,"Moechten Sie wirklich\nalle gespeicherten\nCodes loeschen?\n");
	if(x == BC_Yes) {
	for(x=0;x<4;x++)
		BFS_DeleteFile(BFS_ID_RAWslot0 + x);
	}
	form_draw(form);
}
Пример #2
0
void RAW_allkeyserase(FORM* form, CONTROL* control) {
	unsigned char x;
	
	x=msgbox(50,BC_YesNo | BC_DefaultButton2,"Moechten Sie wirklich\nalle Tasten loeschen?\n");
	if(x == BC_Yes) {
		for(x=0;x<38;x++) {
			clear_cmd(&(((struct RAWset_*)(form->tag))->RAWcmd[x]));
			
		}
	}
	/*
	unsigned long y;
	unsigned char* z;
	z=(struct RAWset_*)(form->tag);
	for(y=0;y<sizeof(struct RAWset_);y++)
		z[y]=y & 0xff;
	((struct RAWset_*)(form->tag))->name[0] = 0;
	*/
	form_draw(form);
}
Пример #3
0
void RAW_keyerase(FORM* form, CONTROL* control) {
	unsigned char x;
	
	x=msgbox(50,BC_nobuttons,"\nZu loeschende Taste\ndruecken.\n");
	waitKeyDown();
	x=getKeynum();
	if(x>3) {
			/*
			unsigned short y;
			unsigned char* z;
			z=&((struct RAWset_*)(form->tag))->RAWcmd[x-4];
			for(y=0;y<sizeof(struct RAWcmd_);y++) {
				z[y]=x;
			}*/
	
	
		clear_cmd(&(((struct RAWset_*)(form->tag))->RAWcmd[x-4]));
	}
	form_draw(form);
}
Пример #4
0
void RAW_editset(FORM* form, CONTROL* control) {

	struct RAWset_ RAWset;
	const BUTTON button1	= {BC_Button,0,15,120,15,SMALLFONT,0,"Anlernen/Testen",RAW_learnset};
	const BUTTON button2	= {BC_Button,0,35,120,15,SMALLFONT,0,"Taste loeschen",RAW_keyerase};
	const BUTTON button3	= {BC_Button,0,55,120,15,SMALLFONT,0,"Alle Tasten loeschen",RAW_allkeyserase};
	const LABEL label1		= {BC_Labelnotab,0,80,60,10,BOLDFONT,0,"Bezeichnung",0};
	TXTBOX txtbox1			= {BC_Txtbox,0,90,120,10,SMALLFONT,20,0,(char*)RAWset.name,0};
	
	CONTROL* controls[5] = {	(CONTROL*)&button1,
								(CONTROL*)&button2,
								(CONTROL*)&button3,
								(CONTROL*)&label1,
								(CONTROL*)&txtbox1};
	
	FORM form2  = {"RAW Set bearbeiten",0,0,0,0,controls,0,5};	
	unsigned long x;
	
	x = (unsigned long)BFS_LoadFileAddr(BFS_ID_RAWslot0 + ((LABEL*)control)->tag);
	
	draw_hexW(0,100,x,3,DRAW_PUT);
	
	if(x)
		memcpy(&RAWset,(void *)x,sizeof(struct RAWset_));
	else
		RAWset.id[0] = 0xff;
		
	x=memcmp(&RAWset,"RC01",4);
	if(x) {
		for(x=0;x<RAWnamelen;x++)
			RAWset.name[x]=0xff;
		for(x=0;x<38;x++) {
			clear_cmd(&RAWset.RAWcmd[x]);
		}
		BFS_SaveFile(BFS_ID_RAWslot0 + ((LABEL*)control)->tag, sizeof(struct RAWset_), (unsigned char*) &RAWset);
	}
	
	if(RAWset.name[0]==0xff)
		memcpy(&RAWset.name[0],(char*)string_unknown,len_string_unknown);
	
	form2.tag =(unsigned long)&RAWset;
	
	form_exec(&form2);
	
	if(!memcmp(&RAWset.name[0],string_unknown,len_string_unknown))
		for(x=0;x<len_string_unknown;x++)
			RAWset.name[x] = 0xff;
	
	if(BFS_CmpFile(BFS_ID_RAWslot0 + ((LABEL*)control)->tag, sizeof(struct RAWset_), (unsigned char*) &RAWset) == 0) {
		x=msgbox(50,BC_YesNo | BC_DefaultButton1,"Sollen die Aenderungen\ngespeichert werden?\n");
		if(x == BC_Yes) {
			memcpy(&RAWset.id[0],"RC01",4);
			BFS_SaveFile(BFS_ID_RAWslot0 + ((LABEL*)control)->tag, sizeof(struct RAWset_), (unsigned char*) &RAWset);
			if(BFS_CmpFile(BFS_ID_RAWslot0 + ((LABEL*)control)->tag, sizeof(struct RAWset_), (unsigned char*) &RAWset) == 0) {
				msgbox(50,BC_OKOnly | BC_DefaultButton1,"Fehler\n");
			}
		}
	}
	
	form_draw(form);
}
Пример #5
0
void RAW_learnset(FORM* form, CONTROL* control) {
	RAW_learn((struct RAWset_*)(form->tag));
	form_draw(form);
}
Пример #6
0
/* ------------------ */
void set_font(void)
{
register int eo, i, font_nr, font_height;
int tst_x, tst_y, xy[4], dummy;
int minADE, maxADE, distance[5], effects[3], maxw;
char font_names[4][34];

set_eline();

font_nr = akt_font;
font_height = akt_fheight;

rsrc_gaddr(ROOT, SET_FONT, &form_adr);

for (i = 0; i < 4; i++)
	form_adr[FONT_1B + i].ob_spec.tedinfo->te_ptext = font_names[i];

form_adr[FONT_S].ob_state &= ~SELECTED;
for (i = 0; i < 4; i++)
	{
	form_adr[FONT_1B + i].ob_state &= ~SELECTED;
	if (tfont_names[akt_id][i][0])
		{
		strcpy(font_names[i], tfont_names[akt_id][i]);
		form_adr[FONT_1B + i].ob_state &= ~DISABLED;
		}
	else
		{
		strcpy(font_names[i], "-- Unbelegt --");
		form_adr[FONT_1B + i].ob_state |= DISABLED;
		}
	}
form_adr[FONT_S + font_nr - 1].ob_state |= SELECTED;

form_draw();

objc_offset(form_adr, TST_FLD, &tst_x, &tst_y);

xy[0] = tst_x;
xy[1] = tst_y;
xy[2] = xy[0] + form_adr[TST_FLD].ob_width - 2;
xy[3] = xy[1] + form_adr[TST_FLD].ob_height - 2;
vs_clip(vdi_handle, TRUE, xy);
vswr_mode(vdi_handle, 1);

vst_effects(vdi_handle, NORMAL);
vst_alignment(vdi_handle, 0, 5, &dummy, &dummy);

do
	{
	show_testtext(tst_x, tst_y, font_nr, font_height);
	vqt_fontinfo(vdi_handle, &minADE, &maxADE, distance, &maxw, effects);

	if (distance[4] < font_height)
		font_height = distance[4];
 
	eo = form_do(form_adr, 0);
	switch(eo & 0x7FFF)
		{
		case FONT_S:
		case FONT_1B:
		case FONT_2B:
		case FONT_3B:
		case FONT_4B:
			if ((form_adr[eo & 0x7FFF].ob_state & DISABLED) || ((eo & 0x8000) && (eo & 0x7FFF) != FONT_S))
				{
				eo &= 0x7FFF;
	
				if (load_font(eo - FONT_S + 1))
					{
					font_nr = eo - FONT_S + 1;

					vqt_name(vdi_handle, 2, tfont_names[akt_id][eo - FONT_1B]);
					strcpy(font_names[eo - FONT_1B], tfont_names[akt_id][eo - FONT_1B]);

					form_adr[eo].ob_state &= ~DISABLED;
					for (i = 0; i < 5; i++)
						form_adr[FONT_S + i].ob_state &= ~SELECTED;

					form_adr[eo].ob_state |= SELECTED;
					strcpy(txt_fonts[akt_id][font_nr - 2], rindex(font_path, '\\') + 1);
					}

				objc_draw(form_adr, ROOT, MAX_DEPTH, fx, fy, fw, fh);
				}
			else
				font_nr = eo - FONT_S + 1;
			break;

		case GRT_UP:
			if (font_height > distance[4] - distance[2])
				font_height--;
			break;

		case GRT_DWN:
			font_height++;
			break;
		}

	eo &= 0x7FFF;
	}while(eo != FONT_OK && eo != FONT_CNC);

form_adr[eo & 0x7FFF].ob_state &= ~SELECTED;
f_dial(FMD_SHRINK);
f_dial(FMD_FINISH);

get_eline();

if (eo == FONT_OK)
	{
	set_fontd(font_nr, font_height);
	akt_font = font_nr;
	akt_fheight = font_height;
	}

vst_alignment(vdi_handle, 0, 3, &dummy, &dummy);
}