OSDN Git Service

no bone
[nethackexpress/trunk.git] / include / mttypriv.h
1 /*      SCCS Id: @(#)mttypriv.h 3.4     1993/03/01      */
2 /* Copyright (c) Jon W{tte 1993.                                        */
3 /* NetHack may be freely redistributed.  See license for details.       */
4
5 /*
6  * This file contains private structures used to implement the
7  * tty windows - note that these structures may change between
8  * minor releases!
9  */
10
11 #ifndef _H_tty_private
12 # define _H_tty_private
13
14 # ifndef _H_tty_public
15 #include "mactty.h"
16 # endif
17
18 #if !TARGET_API_MAC_CARBON
19 # include <QDOffscreen.h>
20 # include <Gestalt.h>
21 # include <Errors.h>
22 #endif
23
24 #define TA_TO_RGB(ta,rgb) (((rgb).red=(((ta)>>16)&0xff)*257),((rgb).green=(((ta)>>8)&0xff)*257),\
25         ((rgb).blue=((ta)&0xff)*257)),rgb
26
27 typedef struct tty_record {
28         WindowPtr       its_window ;
29
30         short           font_number ;
31         short           font_size ;
32         short           char_width ;
33         short           row_height ;
34         short           ascent_height ;
35
36         short           x_size ;
37         short           y_size ;
38         short           x_curs ;
39         short           y_curs ;
40
41         GWorldPtr               its_window_world ;
42         BitMap                  its_bits ;
43         GrafPtr                 offscreen_port ;
44         GWorldPtr               offscreen_world ;
45 #if CLIP_RECT_ONLY
46         Rect                    invalid_rect ;
47 #else
48         RgnHandle               invalid_part ;
49 #endif
50
51         long            attribute [ TTY_NUMBER_ATTRIBUTES ] ;
52         long            last_cursor ;
53
54         Boolean         was_allocated ;
55         Boolean         curs_state ;
56         Boolean         uses_gworld ;
57 } tty_record ;
58
59
60 #endif  /* _H_tty_private */