/*****

      $Source: d:\gunther\source\grc/RCS/yystype.h,v $
      $Author: gunther $
      $Date: 1995/12/21 13:20:55 $
      $Revision: 1.3 $

	Changed by: Fred Kiefer (kiefer@isys.de) 1996/6/2

 *****/

#ifndef _YYSTYPE_H
#define _YYSTYPE_H

#include "resnt.h"
#include "rcutils.h"

#define MAX_RES_STRING 256

typedef struct {
	char fname[MAX_PATH];
	int fline;
} file_info;


typedef struct {
	unsigned short flags;
	unsigned short id;
	wchar_t title[MAX_RES_STRING];
	node *items;
} menuItem;

typedef struct {
	int block;
	int pos;
	ResourceTail tail;
	wchar_t *string;
} stringEntry;

typedef struct {
	wchar_t typeID[MAX_RES_STRING];
	wchar_t nameID[MAX_RES_STRING];
	wchar_t menuID[MAX_RES_STRING];
	ResourceTail tail;
	unsigned long style;
	unsigned long  dwExtendedStyle;
	DLGFONT font;
} struct_dialog;

typedef struct {
        wchar_t typeID[MAX_RES_STRING];
        wchar_t nameID[MAX_RES_STRING];
        DLGITEMTEMPLATE control;
} struct_control;

typedef struct {
	unsigned long positive;
	unsigned long negative;
} struct_flags;

typedef struct {
	unsigned long size;
	char field[1];
} rcdata_entry;

typedef struct {
	WORD wLength;
	WORD wValueLength;
	WORD wType;
	wchar_t *szKey;
	void *lpValue;
	node *entries;
} version_entry;



int yyerror(char *s);
int yylex();
extern int lines;
extern char currentFile[MAX_PATH];

#endif

