Ejemplo n.º 1
0
void
load_color_scheme_colors(void)
{
	ensure_dirs_tree_exists();

	load_color_pairs(DCOLOR_BASE, &cfg.cs);
	load_color_pairs(LCOLOR_BASE, &lwin.cs);
	load_color_pairs(RCOLOR_BASE, &rwin.cs);
}
Ejemplo n.º 2
0
void
load_color_scheme_colors(void)
{
	ensure_dirs_tree_exists();

	load_color_pairs(&cfg.cs);
	load_color_pairs(&lwin.cs);
	load_color_pairs(&rwin.cs);
}
Ejemplo n.º 3
0
void
load_color_scheme_colors(void)
{
	if(dirs == NULL)
		dirs = tree_create(1, 1);

	load_color_pairs(DCOLOR_BASE, &cfg.cs);
	load_color_pairs(LCOLOR_BASE, &lwin.cs);
	load_color_pairs(RCOLOR_BASE, &rwin.cs);
}
Ejemplo n.º 4
0
void
load_def_scheme(void)
{
	tree_free(dirs);
	dirs = NULL;

	init_color_scheme(&cfg.cs);
	init_color_scheme(&lwin.cs);
	lwin.color_scheme = LCOLOR_BASE;
	init_color_scheme(&rwin.cs);
	rwin.color_scheme = RCOLOR_BASE;

	load_color_pairs(DCOLOR_BASE, &cfg.cs);
	load_color_pairs(LCOLOR_BASE, &lwin.cs);
	load_color_pairs(RCOLOR_BASE, &rwin.cs);
}
Ejemplo n.º 5
0
void
load_def_scheme(void)
{
	tree_free(dirs);
	dirs = NULL_TREE;

	reset_to_default_color_scheme(&cfg.cs);
	reset_to_default_color_scheme(&lwin.cs);
	lwin.color_scheme = LCOLOR_BASE;
	reset_to_default_color_scheme(&rwin.cs);
	rwin.color_scheme = RCOLOR_BASE;

	load_color_pairs(DCOLOR_BASE, &cfg.cs);
	load_color_pairs(LCOLOR_BASE, &lwin.cs);
	load_color_pairs(RCOLOR_BASE, &rwin.cs);
}
Ejemplo n.º 6
0
void
reset_color_scheme(col_scheme_t *cs)
{
	reset_color_scheme_colors(cs);
	free_color_scheme_highlights(cs);
	load_color_pairs(cs);
}
Ejemplo n.º 7
0
void
load_def_scheme(void)
{
	tree_free(dirs);
	dirs = NULL_TREE;

	lwin.local_cs = 0;
	rwin.local_cs = 0;

	reset_to_default_color_scheme(&cfg.cs);
	reset_to_default_color_scheme(&lwin.cs);
	reset_to_default_color_scheme(&rwin.cs);

	load_color_pairs(&cfg.cs);
	load_color_pairs(&lwin.cs);
	load_color_pairs(&rwin.cs);
}
Ejemplo n.º 8
0
int
check_directory_for_color_scheme(int left, const char dir[])
{
	char *p;
	char t;
	int altered;

	union
	{
		char *name;
		tree_val_t buf;
	}
	u;

	if(dirs == NULL_TREE)
	{
		return 0;
	}

	curr_stats.cs = left ? &lwin.cs : &rwin.cs;
	assign_color_scheme(curr_stats.cs, &cfg.cs);

	/* TODO: maybe use split_and_get() here as in io/iop:iop_mkdir(). */
	p = (char *)dir;
	altered = 0;
	do
	{
		t = *p;
		*p = '\0';

		if(tree_get_data(dirs, dir, &u.buf) == 0 && color_scheme_exists(u.name))
		{
			(void)source_cs(u.name);
			altered = 1;
		}

		*p = t;
		p = until_first(p + 1, '/');
	}
	while(t != '\0');

	curr_stats.cs = &cfg.cs;

	if(!altered)
	{
		return 0;
	}

	check_color_scheme(curr_stats.cs);
	load_color_pairs(curr_stats.cs);

	return 1;
}
Ejemplo n.º 9
0
/* The return value is the color scheme base number for the colorpairs.
 *
 * The color scheme with the longest matching directory path is the one that
 * should be returned.
 */
int
check_directory_for_color_scheme(int left, const char *dir)
{
	char *p;
	char t;

	union
	{
		char *name;
		tree_val_t buf;
	}u;

	if(dirs == NULL_TREE)
	{
		return DCOLOR_BASE;
	}

	curr_stats.cs_base = left ? LCOLOR_BASE : RCOLOR_BASE;
	curr_stats.cs = left ? &lwin.cs : &rwin.cs;
	*curr_stats.cs = cfg.cs;

	p = (char *)dir;
	do
	{
		char full[PATH_MAX];
		t = *p;
		*p = '\0';

		if(tree_get_data(dirs, dir, &u.buf) != 0 || !color_scheme_exists(u.name))
		{
			*p = t;
			if((p = strchr(p + 1, '/')) == NULL)
				p = (char *)dir + strlen(dir);
			continue;
		}

		snprintf(full, sizeof(full), "%s/colors/%s", cfg.config_dir, u.name);
		(void)source_file(full);

		*p = t;
		if((p = strchr(p + 1, '/')) == NULL)
			p = (char *)dir + strlen(dir);
	}
	while(t != '\0');

	check_color_scheme(curr_stats.cs);
	load_color_pairs(curr_stats.cs_base, curr_stats.cs);
	curr_stats.cs_base = DCOLOR_BASE;
	curr_stats.cs = &cfg.cs;

	return left ? LCOLOR_BASE : RCOLOR_BASE;
}
Ejemplo n.º 10
0
void
reset_color_scheme(int color_base, col_scheme_t *cs)
{
	reset_color_scheme_colors(cs);
	load_color_pairs(color_base, cs);
}