/******************************************************************************/ /* File : FOschema.h */ /* Schema : bdeschema.sch */ /* GENCPP Version : Chgen V 12 - Sathya */ /******************************************************************************/ #ifndef __FOSCHEMA_H__ #define __FOSCHEMA_H__ #include "bdeschema.h" #ifdef USE_STL #include #endif /* USE_STL */ #ifndef USE_STL class FO : public RC /* FO - font option table for lookup of X, BDE and PS fonts */ { private : char xfont[51]; /* X Window font - includes size */ char psfontname[51]; /* Postscript font - name only */ char psfontsize[3]; /* PS font size for psfontname */ char bdefont[16]; /* BDE font - includes size */ public : FO *prev_ptr; FO *next_ptr; void set_xfont (char *value); void set_psfontname (char *value); void set_psfontsize (char *value); void set_bdefont (char *value); char* get_xfont (); char* get_psfontname (); char* get_psfontsize (); char* get_bdefont (); FO* create_row(); void link_row () ; void parse_row (char *buffer, int idx, hcg_key hcg_k) ; void add_row (char *viewname) ; void delete_row () ; void dump_table (char *viewname, char *file_name, int new_version, char *modestr) ; void dump_row (char *viewname, char *file_name, int new_version, char *modestr) ; void add_row_log(char *); void log_do_add_row (char *, char *, int); void log_do_set_int_row (const char *, const int ); void log_do_set_flt_row (const char *, const int ); void log_do_set_key_row (const char *, hcg_key ); void log_do_set_str_row (const char *, const char * ); } ; #else class FO : public RC { private : char xfont[51]; /* X Window font - includes size */ char psfontname[51]; /* Postscript font - name only */ char psfontsize[3]; /* PS font size for psfontname */ char bdefont[16]; /* BDE font - includes size */ public : void set_xfont (char *value); void set_psfontname (char *value); void set_psfontsize (char *value); void set_bdefont (char *value); char* get_xfont (); char* get_psfontname (); char* get_psfontsize (); char* get_bdefont (); void link_row () ; void parse_row (char *buffer, int idx, hcg_key hcg_k); void add_row (char *viewname); list::iterator delete_row (list::iterator rowIter); /* Deletes the row */ /* Prints a row to a file */ void dump_row (char *viewname, char *file_name, int new_version, char *modestr); /* Prints a row to terminal */ void dump_row (char *viewname, int new_version, char *modestr); FO(); /* Constructor */ ~FO(); /* Destructor */ void add_row_log(char *); void log_do_add_row (char *, char *, int); void log_do_set_int_row (const char *, const int ); void log_do_set_flt_row (const char *, const int ); void log_do_set_key_row (const char *, hcg_key ); void log_do_set_str_row (const char *, const char * ); } ; class FOtable /* FO - font option table for lookup of X, BDE and PS fonts */ { private : char abbrev[5]; /* 2-char abbreviation */ char *name; /* Table name */ list row; /* List of rows */ public : char *getAbbrev(); /* Returns table abbreviation */ char *getName(); /* Returns table name */ unsigned int getRowCount(); /* Returns number of rows in table */ list::iterator getFirstRow(); /* Returns iterator to first row */ FO *getPrevRow(FO *curr); /* Returns prev iterator */ FO *getNextRow(FO *curr); /* Returns next iterator */ FO *getLastRow(); /* Returns last iterator */ list::iterator Terminator(); /* Returns list terminator */ bool isFirstRow(FO * curr); /* True if curr is iterator to first row */ bool isLastRow(FO * curr); /* True if curr is iterator to last row */ void insertRow(FO *newRow); /* Inserts a row at end of table */ list::iterator removeRow(list::iterator i); /* Removes row from table */ /* Prints out entire table to file */ void dump_table(char *viewname, char *file_name, int new_version, char *modestr); /* Prints out entire table to terminal */ /* void dump_table(char *viewname, int new_version, char *modestr); */ FOtable(char *abbrev, char *name); /* Constructor */ ~FOtable(); /* Destructor */ }; #endif /* USE_STL */ #endif /* __FOSCHEMA_H__ */