#ifndef ANET_UI_H
#define ANET_UI_H

#include "common.h"
#include "config.h"
#include "dropfile.h"
#include "irc.h"

typedef struct {
    int bbs_mode;
    int use_alt;
    int theme;
    int startup_field;
    int startup_bookmark;
    int startup_mode;
    int chat_scroll;
    int show_users;
    int running;
    int dirty_frame;
    int dirty_input;
    int dirty_footer;
    int input_pos;
    char input[UI_MAX_INPUT];
    bookmark_t current;
    dropfile_info_t drop;
#ifndef _WIN32
    struct termios orig_termios;
#endif
} ui_state_t;

void ui_init(ui_state_t *ui, const bookmark_t *initial, int bbs_mode);
void ui_shutdown(ui_state_t *ui);
int ui_read_key(void);
void ui_run(ui_state_t *ui, config_t *cfg, irc_client_t *irc);

#endif
