ftp.nice.ch/Attic/openStep/implementation/gnustep/sources/objcX-0.87.tgz#/objcX-0.87/appkit/Font.h

This is Font.h in view mode; [Download] [Up]

/* Interface for ActionCell class
 *
 * Copyright (C)  1993  The Board of Trustees of  
 * The Leland Stanford Junior University.  All Rights Reserved.
 *
 * Authors: Scott Francis, Paul Kunz, Imran Qureshi, and Libing Wang
 *
 * This file is part of an Objective-C class library for a window system
 *
 * Font.h,v 1.9 1995/03/08 20:34:25 pfkeb Exp
 */

#ifndef _Font_h_
#define _Font_h_

/* Flipped matrix */
#define NX_IDENTITYMATRIX  ((float *)  0)
#define NX_FLIPPEDMATRIX   ((float *) -1)

/* Space character */
#define NX_FIGSPACE        ((unsigned short) 0x80)

/* Font information */
typedef struct _NXFaceInfo {
    NXFontMetric *fontMetrics;      /* Informatin from afm file */
    int           flags;            /* Which font info is present. */
    struct _fontFlags   {           /* Keeps track of font usage for Confrming PS */
        unsigned int usedInDoc:1;   /* Has font beed used in document? */
        unsigned int usedInPage:1;  /* Has font beed used in page? */
        unsigned int usedInSheet:1; /* Has font been used in sheet?
                                       (There can be more than one
                                       page printed ona sheet of
                                       paper.) */
        unsigned int _PADDING:13;
    } fontFlags;
    struct _NXFaceInfo *nextFInfo;  /* Next record in list. */
} NXFaceInfo;

    
@interface Font:Object
{
    char         *name;        /* The font's name */
    float        size;         /* The font's size */
    int          style;        /* The font's style */
    float        *matrix;      /* The font's matrix */
    int          fontNum;      /* The user object referring to this font */
    NXFaceInfo   *faceInfo;    /* The font's face information */
    id           otherFont;    /* The associated screen font for this font */
    struct _fFlags    {
        unsigned int usedByWS:1;      /* True if the font is stored in
                                         the WIndow Server */
        unsigned int usedByPrinter:1; /* True if the font is stored in
                                         the printer */
        unsigned int isScreenFont:1;  /* Trye if the font is a screen font */
	unsigned int        _RESERVED:6;
	unsigned int        _matrixIsIdentity:1;
	unsigned int        _matrixIsFlipped:1;
	unsigned int        _hasStyle:1;
}
    unsigned short      _reservedFont2;
    unsigned int        _reservedFont3;
}

// + initialize;
// + allocFromZone:(NXZone *)zone;
// + newFont:(const char *)fontName size:(float)fontSize style:(int)fontStyle
//   matrix:(const float *)fontMatrix;
// + newFont:(const char *)fontName size:(float)fontSize;
// + newFont:(const char *)fontName size:(float)fontSize 
//   matrix:(const float *)fontMatrix;
// + useFont:(const char *)fontName;

// + userFontOfSize:(float)fontSize matrix:(const float *)fontMatrix;
// + userFixedPitchFontOfSize:(float)fontSize matrix:(const float *)fontMatrix;
// + systemFontOfSize:(float)fontSize matrix:(const float *)fontMatrix;
// + boldSystemFontOfSize:(float)fontSize matrix:(const float *)fontMatrix;
// + setUserFont:(Font *)aFont;
// + setUserFixedPitchFont:(Font *)aFont;

// - awake;
// - free;
// - (float)pointSize;
// - (const char *)name;
// - (const char *)familyName;
// - (const char *)displayName;
// - (int)fontNum;
// - (int)style;
// - setStyle:(int)aStyle;
// - (const float *)matrix;
// - (NXFontMetrics *)metrics;
// - (NXFontMetrics *)readMetrics:(int)flags;
// - (BOOL)hasMatrix;
// - set;
// - (float)getWidthOf:(const char *)string;
// - screenFont;
// - finishUnarchiving;
// - write:(NXTypedStream *)stream;
// - read:(NXTypedStream *)stream;

#ifdef KANJI
// - (int)mappingScheme;
// - (BOOL)isBaseFont;
// - (char *)characterSet;
#endif KANJI

@end

#endif  /* _Font_h_ */

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.