コード例 #1
0
ファイル: CKB_FILE.C プロジェクト: daemqn/Atari_ST_Sources
/*
 * read_ckb: read a CKB file, parse it and install it.
 *
 */
BOOL read_ckb(void)
{
	BOOL	retval=FALSE;
	scanner_init();							/* prepare scanner */
	if (raw_read_file(save_vars.loadfile))
	{
		interprete_file();
		if (error_counter==0) 
		{
			/* file is correct, use data */
			Ckeytbl(ckb.available.unshift, ckb.available.shift,
					ckb.available.caps, ckb.available.compose,
					ckb.tabname );
			Cbioskeys(ckb.switches.tablevalid);
			Compose(ckb.switches.compose);
			Deadkey(ckb.switches.deadkey, NULL);
			Deadkey(SET, ckb.deadkeys);
			Extkey(ckb.switches.extkey);
			Alt_nnn(ckb.switches.alt_nnn);
			save_vars.filetype=2;
			retval=TRUE;
		}
	}
	raw_close_file();
	scanner_exit();				/* leave scanner */
	return retval;
}
コード例 #2
0
ファイル: rs-metadata.c プロジェクト: dmuktro/rawstudio
gboolean
rs_metadata_load_from_file(RSMetadata *metadata, const gchar *filename)
{
	gboolean ret = FALSE;
	RAWFILE *rawfile;

	g_return_val_if_fail(RS_IS_METADATA(metadata), FALSE);
	g_return_val_if_fail(filename != NULL, FALSE);
	g_return_val_if_fail(g_path_is_absolute(filename), FALSE);

	rawfile = raw_open_file(filename);
	if (rawfile)
	{
		ret = rs_filetype_meta_load(filename, metadata, rawfile, 0);
		raw_close_file(rawfile);
	}
	return ret;
}