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 27typedef 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 */ 61