|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T t
Length: 4993 (0x1381) Types: TextFile Names: »types.h,v«
└─⟦a05ed705a⟧ Bits:30007078 DKUUG GNU 2/12/89 └─⟦34cc4e2f7⟧ »./UNRELEASED/xgdb3.2.tar.Z« └─⟦80fac5d7c⟧ └─⟦this⟧ »./RCS/types.h,v«
head 1.1; access ; symbols ; locks hubbard:1.1; strict; comment @ * @; 1.1 date 89.07.05.15.36.54; author hubbard; state Exp; branches ; next ; desc @Initial checkin, Beta version 0.1. @ 1.1 log @Initial revision @ text @\f /* $Header$ */ /* * * Copyright 1988, 1989 * PCS Computer Systeme, GmbH * Munich, West Germany * * All rights reserved. * * This is unsupported software and is subject to change without notice. * PCS makes no representations about the suitability of this software * for any purpose. It is supplied "as is" without express or implied * warranty. * * Permission to use, copy, modify, and distribute this software and its * documentation for any purpose and without fee is hereby granted, provided * that the above copyright notice appear in all copies and that both that * copyright notice and this permission notice appear in supporting * documentation, and that the name of PCS Computer Systeme not be used in * advertising or publicity pertaining to distribution of the software * without specific, written prior permission. * */ /* * Author: Jordan K. Hubbard * For: PCS Computer Systems * When: April 18th, 1989. * * $Log$ * */ #ifndef MY_TYPES_H_INCLUDE #define MY_TYPES_H_INCLUDE /* * This fully describes a field. Several conversion routines exist * for translating other field lists into this type (the LCD for fields). * Basically, a field is just a label or command widget grouped in * some way with a bunch of other fields. */ typedef struct { Boolean sensitive; Boolean resizable; int border_width; int justify; int x, y; int width; int fromVert; int fromHoriz; int vertOffset; int horizOffset; String label; } FieldAttributes; typedef struct { String name; Widget me; VoidFuncP function; unsigned long attr_mask; FieldAttributes attrs; } Field; /* * The above structure would be unwieldy for static declarations of * very simple field groups. Use SimpleField if you're just interested * in creating a bunch of similar fields with no particularly important * order or geometry. */ typedef struct { String name; VoidFuncP function; } SimpleField; /* * Use this if you're interested in more control over placement of * fields. */ typedef struct { SimpleField fld; int border_width; Boolean resizable; int vert_offset; int horiz_offset; int from_vert; int from_horiz; } FormField; /* * A simple parser entry. */ typedef struct _simple { String label; /* Regexp label */ int type; /* Type of target(s) */ GenericPtr parms[RE_NREGS]; /* Targets */ } SimpleParser; /* * Describes a view. */ typedef struct _view { String name; /* The name of this view */ String filename; /* Associated file name (if any) */ Widget parent; /* The view's parent */ Widget view; /* Form widget containing "view" */ Widget output; /* The output widget itself */ Field *fields; /* Any fields in the view */ Boolean mapped; /* Is the view mapped? */ GenericPtr buffer; /* ptr to contents (if needed) */ int maxlen; /* Size of buffer */ int cpos; /* Current position in buffer */ WidgetClass type; /* Widget type of output area */ caddr_t ext_data; /* Hook for view specific data */ } View; /* A menu pane */ typedef struct { String name; VoidFuncP function; Widget pane; } Menupane; /* * An entry in the main regexp list. */ typedef struct _ra { String str; /* Raw regexp */ Quad hash; /* "hashed" value of str */ struct re_pattern_buffer comp; /* Compiled regexp */ } RegEnt; /* * Queue types. */ typedef struct _link { struct _link *prev; struct _link *next; } *Link; typedef struct { /* A generic queue */ Link head; Link tail; } Queue; /* * Describes an inferior work process (like the debugger). */ QUEUE_ENTRY(_procinfo) BEGIN String name; /* Name of the process */ int pid; /* Its Process ID */ XtInputId in_id, out_id; /* Toolkit dispatched I/O */ VoidFuncP infunc, outfunc; /* What to do with I/O */ VoidFuncP diefunc; /* What to do on termination */ int in_channel, out_channel; /* In/Out pipes */ View *view; /* The process's output view, if any */ caddr_t ext_data; /* Hook for process specific data */ IS_TYPE Process; /* * A transaction to the debugger or an inferior work process. */ QUEUE_ENTRY(_transrec) BEGIN String send; /* What to send */ SimpleParser *simple_parsers; /* Any special handling */ StrFuncP handler; /* What else to do with the output */ IS_TYPE Transaction; /* * An entry in the global parser list. */ QUEUE_ENTRY(_parser) BEGIN StrFuncP handler; /* A handler */ IS_TYPE Parser; #endif /* MY_TYPES_H_INCLUDE */ @