^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #ifndef _PERF_UI_UTIL_H_
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #define _PERF_UI_UTIL_H_ 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #include <stdarg.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) int ui__getch(int delay_secs);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) int ui__popup_menu(int argc, char * const argv[], int *keyp);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) int ui__help_window(const char *text);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) int ui__dialog_yesno(const char *msg);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) void __ui__info_window(const char *title, const char *text, const char *exit_msg);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) void ui__info_window(const char *title, const char *text);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) int ui__question_window(const char *title, const char *text,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) const char *exit_msg, int delay_secs);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) struct perf_error_ops {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) int (*error)(const char *format, va_list args);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) int (*warning)(const char *format, va_list args);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) int perf_error__register(struct perf_error_ops *eops);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) int perf_error__unregister(struct perf_error_ops *eops);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #endif /* _PERF_UI_UTIL_H_ */