src/minhack.h
author ali@juiblex.co.uk
Mon Jan 29 20:22:01 2007 +0000 (2007-01-29)
changeset 0 acc07f1f4b1e
permissions -rw-r--r--
Initial check-in. Mostly sort of works. Ish.
ali@0
     1
/*
ali@0
     2
 * $Id: minhack.h,v 1.56 2005/02/02 09:36:01 j_ali Exp $
ali@0
     3
 * Copyright (C) 2007 J. Ali Harlow
ali@0
     4
 * Minimal Hack may be freely redistributed.  See license for details.
ali@0
     5
 */
ali@0
     6
ali@0
     7
#ifndef MINHACK_H
ali@0
     8
#define MINHACK_H
ali@0
     9
ali@0
    10
#include <nhproxy/nhproxy.h>
ali@0
    11
ali@0
    12
#include "config.h"
ali@0
    13
#include <curses.h>
ali@0
    14
#include <menu.h>
ali@0
    15
ali@0
    16
#define MINHACK_PICK_NONE	0
ali@0
    17
#define MINHACK_PICK_ONE	1
ali@0
    18
#define MINHACK_PICK_ANY	2
ali@0
    19
ali@0
    20
struct minhack_mitem {
ali@0
    21
    struct minhack_mitem *next;
ali@0
    22
    int identifier;
ali@0
    23
    int accelerator;
ali@0
    24
    int groupacc;
ali@0
    25
    char *str;
ali@0
    26
    nhproxy_bool_t selected;
ali@0
    27
    ITEM *item;
ali@0
    28
};
ali@0
    29
ali@0
    30
struct minhack_menu {
ali@0
    31
    struct minhack_mitem *mitems;
ali@0
    32
    ITEM **items;
ali@0
    33
    MENU *menu;
ali@0
    34
};
ali@0
    35
ali@0
    36
struct minhack_window {
ali@0
    37
    nhproxy_bool_t in_use;
ali@0
    38
    int type;
ali@0
    39
    struct minhack_menu *menu;
ali@0
    40
    WINDOW *win;
ali@0
    41
};
ali@0
    42
ali@0
    43
extern struct nhproxy_clnt_ext_procs minhack_ext_procs;
ali@0
    44
extern struct minhack_window *windows;
ali@0
    45
extern int no_windows;
ali@0
    46
extern int message_win,map_win;
ali@0
    47
ali@0
    48
extern int minhack_init_nhwindows(int *, char **, char ***);
ali@0
    49
extern int minhack_player_selection(int *, int *, int *, int *);
ali@0
    50
extern char *minhack_askname(void);
ali@0
    51
extern void minhack_exit_nhwindows(const char *);
ali@0
    52
extern int minhack_create_nhwindow(int);
ali@0
    53
extern void minhack_clear_nhwindow(int, int, int, int);
ali@0
    54
extern void minhack_display_nhwindow(int, NHPROXY_BOOLEAN_P);
ali@0
    55
extern void minhack_destroy_nhwindow(int);
ali@0
    56
extern void minhack_curs(int, int, int);
ali@0
    57
extern void minhack_putstr(int, int, const char *);
ali@0
    58
extern void minhack_display_file(int fh);
ali@0
    59
extern void minhack_start_menu(int);
ali@0
    60
extern void minhack_add_menu(int, int, int, NHPROXY_CHAR_P, NHPROXY_CHAR_P,
ali@0
    61
  int, const char *, NHPROXY_BOOLEAN_P);
ali@0
    62
extern void minhack_end_menu(int, const char *);
ali@0
    63
extern int minhack_select_menu(int, int, struct nhproxy_mi **);
ali@0
    64
extern int minhack_message_menu(int let, int how, const char *mesg);
ali@0
    65
extern void minhack_print_glyph(int id, int x, int y, int glyph);
ali@0
    66
extern void minhack_raw_print(const char *);
ali@0
    67
extern void minhack_raw_print_bold(const char *);
ali@0
    68
extern int minhack_nhgetch(void);
ali@0
    69
extern int minhack_nh_poskey(int *, int *, int *);
ali@0
    70
extern char minhack_yn_function(const char *, const char *, NHPROXY_CHAR_P,
ali@0
    71
  int *);
ali@0
    72
extern char *minhack_getlin(const char *query);
ali@0
    73
extern int minhack_get_ext_cmd(void);
ali@0
    74
extern int minhack_outrip(int, char *);
ali@0
    75
extern void minhack_preference_update(const char *, const char *);
ali@0
    76
extern void minhack_send_config_file(int);
ali@0
    77
ali@0
    78
extern void minhack_free_menu(int window);
ali@0
    79
ali@0
    80
#endif	/* MINHACK_H */