/*
 * Private definitions for DiscussMeeting widget class.
 */

#include <X11/IntrinsicP.h>
#include <X11/Xaw/PanedP.h>
#include <discuss/discuss.h>

typedef struct { char xxx; } DiscussMeetingClassPart;
typedef struct {
    struct {
	int	accepting_input : 1; /* ignore button toggles for now? */
	int	nb_internal : 1; /* nb was allocated by widget */
	int	name_internal : 1; /* name was allocated by widget */
	int	not_ok : 1;	/* error happened in init */
	int	save_ok : 1;	/* last "save" worked */
    } flags;
    Boolean	flags_from_initial; /* use current or fref? */
    Boolean	lavin;		/* engage alternate set of commands */
    short	n_edits;	/* !=0 means don't die */
    /* X: subwidgets, callbacks */
    Widget	mtg_id, error, header, subject, footer;
    Widget	text;
    Widget	radio;		/* radio buttons for flag */
    XtCallbackList quit_callbacks; /* called when `quit' pressed */
    /* other flags and resources */
    char       *true_text, *false_text;	/* labels for radio buttons */
    char       *mtg_name;	/* meeting name */
    int		max_seen;	/* highest one we've seen so far */
    char       *buffer;		/* text of current transaction */
    unsigned	current;	/* number of current transaction */
    /* Discuss: misc state */
    name_blk   *nb;		/* which meeting */
    mtg_info	mtg;		/* info about current meeting */
    trn_info3	trn;		/* info about current transaction */
} DiscussMeetingPart;

typedef struct _DiscussMeetingClassRec {
    CoreClassPart		core_class;
    CompositeClassPart		composite_class;
    ConstraintClassPart		constraint_class;
    PanedClassPart		paned_class;
    DiscussMeetingClassPart	discuss_meeting_class;
} DiscussMeetingClassRec;

typedef struct _DiscussMeetingRec {
    CorePart			core;
    CompositePart		composite;
    ConstraintPart		constraint;
    PanedPart			paned;
    DiscussMeetingPart		discuss_meeting;
} DiscussMeetingRec;
