Beispiel #1
0
void main_refresh_folders(void)
{
	int row = 0;
	struct folder *f;
	char text[folders_width + 1];

	for (f = folder_first(); f; f = folder_next(f))
	{
		unsigned int level;
		unsigned int i;

		level = folder_level(f);
		if (level > 10)
		{
			level = 10;
		}

		if (f == main_active_folder)
		{
			text[0] = '*';
		} else
		{
			text[0] = ' ';
		}

		for (i = 0; i < level; i++)
		{
			text[1+i] = ' ';
		}

		mystrlcpy(&text[level + 1], folder_name(f), sizeof(text) - 2);
		mvwprintw(folders_wnd, row++, 0 , text);
	}
	wrefresh(folders_wnd);
}
Beispiel #2
0
static void main_folder_next(void)
{
	if (!main_active_folder)
	{
		main_active_folder = folder_first();
	} else
	{
		main_active_folder = folder_next(main_active_folder);
	}
	main_refresh_folders();
	callback_folder_active();
}
Beispiel #3
0
STATIC ASM LONG move_strobj(REG(a0,struct Hook *h),REG(a2,Object *list), REG(a1,Object *str))
{
	char *s;
	struct folder *f;
/* TODO: This shouldn't happen over the plain text
 * (different folders could have the same name) */
	get(str,MUIA_Text_Contents,&s);

	for (f=folder_first();f;f=folder_next(f))
	{
		if (!strcmp(f->name,s))
		{
			set(filter_folder_list, MUIA_FolderTreelist_Active, f);
			break;
		}
	}
	return 1;
}