コード例 #1
0
ファイル: doc-gen.c プロジェクト: bbolli/tig
static void
doc_actions_print(void)
{
    struct doc_action_iterator iterator = { FALSE };

    foreach_request(doc_action_print, &iterator);
    doc_action_table_print(FALSE);
}
コード例 #2
0
ファイル: keys.c プロジェクト: acklinr/tig
bool
foreach_key(key_visitor_fn visitor, void *data, bool combine_keys)
{
	int i;

	for (i = 0; i < ARRAY_SIZE(keymaps); i++) {
		struct key_visitor_state state = { visitor, data, &keymaps[i], combine_keys };

		if (!foreach_request(foreach_key_request, &state)
		    || !foreach_key_run_request(&state, true, true)
		    || !foreach_key_run_request(&state, true, false)
		    || !foreach_key_run_request(&state, false, false))
			return false;
	}

	return true;
}
コード例 #3
0
ファイル: help.c プロジェクト: zhez/tig
static bool
help_open(struct view *view, enum open_flags flags)
{
	struct keymap *keymap;

	reset_view(view);
	add_line_text(view, "Quick reference for tig keybindings:", LINE_DEFAULT);
	add_line_text(view, "", LINE_DEFAULT);

	for (keymap = get_keymaps(); keymap; keymap = keymap->next) {
		struct help_request_iterator iterator = { view, keymap, TRUE };

		if (foreach_request(help_open_keymap, &iterator))
			help_open_keymap_run_requests(&iterator);
	}

	return TRUE;
}