/* gripe. - Standardized complainer under Intuition */

/*
**	Date written: 09/18/86
**	Author: Tim Holloway
**		Compuserve: 73026,2026
**		Bix: tholloway
**		Fido node: 112/3 (Casa Mi Amiga).
**
**	Version: 1.0
**
**	Copyright (C) 1986, by Tim Holloway.  This program may be
**	freely distributed for non-commercial use only.  Use for commercial
**	purposes without the express permission of the author is a violation
**	of copyright law.
**
**	Description:
**	  displays a requester with up to three lines of text.
**
**	Change History: 
**
**	None
**
**	Usage: Gripe (line1, line2, line3);
**
**	All are TEXT *;
**
**	Quirks: Builds stuff that MUST be done in CHIP memory.  Use
**	ATOM or something to place the DATA segment in CHIP memory!
**	Intuition Library MUST be open prior to this call.
**	If you need less than 3 lines of text, use "", although I think
**	that NULL is OK by Commodore.
*/

/* Basic Amiga system definitions */

#include <exec/types.h>
#include <libraries/dos.h>
#include <libraries/dosextens.h>
#include <graphics/gfx.h>
#include <intuition/intuition.h>

void Gripe (msg1, msg2, msg3)
TEXT *msg1, *msg2, *msg3;
{

/*----------
	struct Window *wp;

	static struct NewWindow nwindow = {
		0, 0, 300, 50, AUTOFRONTPEN, AUTOBACKPEN, 0,
		0, NULL, NULL, "PRTSPOOL", NULL, NULL,
		0, 0, 0, 0, WBENCHSCREEN
	};
-----------*/

	static struct IntuiText msg0[3] = {
		{ AUTOFRONTPEN, AUTOBACKPEN, AUTODRAWMODE,
		  AUTOLEFTEDGE, AUTOTOPEDGE, AUTOITEXTFONT,
		  NULL,
		  &msg0[1]},

		{ AUTOFRONTPEN, AUTOBACKPEN, AUTODRAWMODE,
		  AUTOLEFTEDGE, AUTOTOPEDGE+8, AUTOITEXTFONT,
		  NULL,
		  &msg0[2]},

		{ AUTOFRONTPEN, AUTOBACKPEN, AUTODRAWMODE,
		  AUTOLEFTEDGE, AUTOTOPEDGE+16, AUTOITEXTFONT,
		  NULL,
		  NULL}
	};

	static struct IntuiText drat = {
		 AUTOFRONTPEN, AUTOBACKPEN, AUTODRAWMODE,
		 AUTOLEFTEDGE, AUTOTOPEDGE, AUTOITEXTFONT,
		 (APTR) "Rats!",
		 NULL
	};

	msg0[0].IText = msg1;
	msg0[1].IText = msg2;
	msg0[2].IText = msg3;
	(void) AutoRequest (NULL, &msg0, NULL, &drat,  0, 0, 300, 66);
}


#if STAND_ALONE_TEST

struct Library *IntuitionBase, *OpenLibrary();

main()
{
	if ( (IntuitionBase = OpenLibrary("intuition.library", 20)) == NULL)
	{
		printf ("Couldn't open Intuition library!\n");
		exit(20);
	}
	Gripe ("THis is a", "Gripe", "test");
	CloseLibrary(IntuitionBase);
}
#endif
