/*
 *  FILE: font.c
 *  Support routines for accessign ROM or disk-based fonts.
 *
 *  Public Domain, but keep my name in it as the original author.
 *  31-Aug-88	Jan Sven Trabandt   first release version
 *  30-Sep-88	Jan Sven Trabandt   gimmeFont now alters given TextAttr
 *  31-Oct-88	Jan Sven Trabandt   added gimmeFontLazy
 */


#include "gimmelib/gimmefuncs.h"


struct TextFont *gimmeFont( textattr )
    struct TextAttr *textattr;
{
    struct TextFont *tf;

#ifdef GIMME_WIMPY
    if( !textattr ) {
	return( NULL );
    }
#endif
    tf = OpenDiskFont( textattr );
    if( tf ) {
	textattr->ta_YSize = tf->tf_YSize;
	textattr->ta_Style = tf->tf_Style;
    }
    return( tf );
} /* gimmeFont */


struct TextFont *gimmeFontLazy( name, size )
    UBYTE   *name;
    UWORD   size;
{
    struct TextAttr ta;

#ifdef GIMME_WIMPY
    if( !name ) {
	return( NULL );
    }
#endif
    ta.ta_Name = (STRPTR) name;
    ta.ta_YSize = size;
    ta.ta_Style = FS_NORMAL;
    ta.ta_Flags = FPF_DISKFONT;
    return( OpenDiskFont(&ta) );
} /* gimmeFontLazy */


short getRidOfFont( textfont )
    struct TextFont *textfont;
{
#ifdef GIMME_WIMPY
    if( !textfont ) {
	return( -1 );
    }
#endif
    CloseFont( textfont );
    return( 0 );
} /* getRidOfFont */
