#ifndef _merged_curses_h_
#define _merged_curses_h_

/* Include the system ncurses header to get WINDOW and other definitions.
   We use <ncurses.h> to be sure we get the proper definitions.
*/
#include <ncurses.h>
#include <stdarg.h>
#include "menus.h"  /* This is still needed if menus.h is accessible in the include path */

/* OpenSIPS-specific macros and declarations */
#define MIN_X   80
#define MIN_Y   20

extern volatile int max_x;
extern volatile int max_y;

void cleanup();
void set_xy_size(int sig);
void _quit_handler(int sig);
int draw_sibling_menu(select_menu *menu);
int draw_item_list(select_menu *menu);

#define HIGH_NOTICE_Y   (max_y/16)
#define NOTICE_Y        (max_y*3/4)
#define NOTICE_X        (10)

#define print_notice(y,x,prompt,...) \
        do { \
                mvprintw(y,x, __VA_ARGS__); \
                clrtobot(); \
                if (prompt) \
                        getch(); \
        } while (0)

#endif
