Subversion Repositories svn1-original

Rev

Rev 344 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#ifndef QMCONFIG_H
#define QMCONFIG_H

#include <QString>
#include <QFile>
#include <QSettings>

#include    "consts.h"
#include    "structs.h"
#include    "proto.h"

extern QSettings   *appSettings;

class QmConfig
{
public:
    //QmConfig(const QString &cnfFile);
    QmConfig(void);
    ~QmConfig();
    bool open_read_config( void );
    bool read_config( QFile &configFile  );
    bool write_config( void );
    int lookup_class( const char *text);
    void load(const QString &cnfFile);
    static const QString getAddendemFile(const QString &, bool create=false);

    QString fileName;

    // Exact copy of the original config
    char        event_name[MAX_EVENT_NAME + 1]; /* Name of the event */
    char        leg_name[MAX_LEGS][MAX_LEG_NAME + 1];   /* Names of each leg */
    ty_t_def    t_def[MAX_TMS_SPLIT];        /* Team defintion data */
    short       num_legs;                    /* Number of legs in use */
    short       num_teams;                   /* Number of entries in team def array */
    short       max_team;                    /* Max team number */
    short       min_team;                    /* Min team number */
    ty_t_class  team_class[MAX_CLASS];       /* Define team classes */
    short       num_class;                   /* Number of classes */
    ty_t_country country_name[MAX_COUNTRY];  /* Define country names */
    short       num_countries;               /* Number of countries */
    char        addendum[20];                /* Name of ledgend addendum file */
    char        datafilename[8];             /* Name of the data file */

    char        nonequestrian_class_abr[3];  /* The non-equestrian class abr */
    short       nonequestrian_class;         /* Index of non-equestrian class */
    short       equestrian_leg;              /* The Equestrian leg - only used if nonequestrian_class */

    short       lines_per_page;              /* .txt file printing */
    short       perf_skip;                   /* .txt file printing */

    short       class_winners[MAX_CLASS];    /* Winners for each class */
    short       class_ne_winners[MAX_CLASS]; /* Winners for each class  in NE*/
    bool        class_ne_winners_by_class;   /* NE winners by class */
    char        hall_fame[MAX_FAME][MAX_PERSON_NAME + 1];   /* Names */
    short       num_fame;                   /* Number of fame numbers */
    char        webUrl[MAX_WEBPATH];        /* Web Url for import */
    char        awardsfilename[20];         /* Name of the data file */
};

#endif // QMCONFIG_H