/********************************************************************
* lindner
* 3.7
* 1994/10/21 04:41:08
* /home/arcwelder/GopherSrc/CVS/gopher+/gopher/gopherrc.h,v
* Exp
*
* Paul Lindner, University of Minnesota CIS.
*
* Copyright 1991, 1992 by the Regents of the University of Minnesota
* see the file "Copyright" in the distribution for conditions of use.
*********************************************************************
* MODULE: gopherrc.h
* Abstraction and macros for stuff in gopherrc.c
*********************************************************************
* Revision History:
* gopherrc.h,v
* Revision 3.7 1994/10/21 04:41:08 lindner
* Add ANSI attached printer code..
*
* Revision 3.6 1994/07/06 15:43:42 lindner
* Allow 'home' gopher server in gopherrc files
*
* Revision 3.5 1994/06/29 05:13:14 lindner
* Define, add code to check for new config file
*
* Revision 3.4 1993/12/28 17:30:34 lindner
* more typecasting for picky compilers
*
* Revision 3.3 1993/09/30 22:42:14 lindner
* Add option for bolding of searched words
*
* Revision 3.2 1993/02/19 21:10:54 lindner
* Updated declarations
*
* Revision 3.1.1.1 1993/02/11 18:03:00 lindner
* Gopher+1.2beta release
*
* Revision 2.1 1993/02/09 22:35:54 lindner
* initial rev.
*
*
*
*********************************************************************/
#ifndef GOPHERRC_H
#define GOPHERRC_H
#include "String.h"
#include "DAarray.h"
#include "GSgopherobj.h"
#include "GDgopherdir.h"
/*
* stuff to map from a gopher+ view attribute to a command
*/
struct gopherrcmap_struct {
String *view;
String *displaycmd;
String *printcmd;
};
typedef struct gopherrcmap_struct RCMapObj;
/** Macros and external functions ***/
#define RCMgetView(a) (STRget((a)->view))
#define RCMgetDisplaycmd(a) (STRget((a)->displaycmd))
#define RCMgetPrintcmd(a) (STRget((a)->printcmd))
#define RCMsetView(a,b) (STRset((a)->view,b))
#define RCMsetDisplaycmd(a,b) (STRset((a)->displaycmd,b))
#define RCMsetPrintcmd(a,b) (STRset((a)->printcmd,b))
RCMapObj *RCMnew();
void RCMdestroy();
void RCMinit();
void RCMdestroy();
/** Dynamic Array of the above... **/
/*** Definitions for an Array of extension objects ***/
typedef DynArray RCMAarray;
#define RCMAnew() (RCMAarray *)(DAnew(20,RCMnew,NULL,RCMdestroy,RCMcpy))
#define RCMAdestroy(a) (DAdestroy(a))
#define RCMAgetEntry(a,b) (RCMapObj *)(DAgetEntry((DynArray*)a,b))
#define RCMAadd(a,b) (DApush(((DynArray*)a),((DynArray*)b)))
#define RCMAgetNumEntries(a) (DAgetTop((DynArray*)a))
int RCMAviewSearch();
boolean RCMAfromLine();
void RCMAtoFile();
/*
* General gopherrc stuff.
*/
struct RC_struct {
RCMAarray *commands;
GopherDirObj *Bookmarks;
GopherObj *Home;
boolean SearchBolding;
boolean ANSIprinter;
boolean ChangedDefs;
};
typedef struct RC_struct RCobj;
#define RCgetBookmarkDir(a) ((a)->Bookmarks)
#define RCsetBookmarkDir(a,b) ((a)->Bookmarks=(b))
#define RCinitBookmarkDir(a,b) ((a)->Bookmarks=GDnew(b))
#define RCgetHome(a) ((a)->Home)
#define RCsetHome(a,b) ((a)->Home = (b))
#define RCsearchBolding(a) ((a)->SearchBolding)
#define RCsetSearchBolding(a,b) ((a)->SearchBolding=(b))
#define RCuseANSIprinter(a) ((a)->ANSIprinter)
#define RCsetANSIprinter(a,b) ((a)->ANSIprinter=(b))
RCobj *RCnew();
void RCsetdefs();
void RCfromFile();
void RCtoFile();
boolean RCisGlobalNew();
#endif
.
Response:
text/plain