//=======================================================================
//  protoapp.h:	Header file for minimal prototype V application
//  Copyright (C) 1995,1996  Bruce E. Wampler
//
//  This program is part of the V C++ GUI Framework example programs.
//
//  This program is free software; you can redistribute it and/or modify
//  it under the terms of the GNU General Public License as published by
//  the Free Software Foundation; either version 2 of the License, or
//  (at your option) any later version.
//
//  This program is distributed in the hope that it will be useful,
//  but WITHOUT ANY WARRANTY; without even the implied warranty of
//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//  GNU General Public License for more details.
//
//  You should have received a copy of the GNU General Public License
//  (see COPYING) along with this program; if not, write to the Free
//  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//=======================================================================

//
//	mymodal.cxx	Soruce for sample modal dialog
//
//	While these files were generated by hand, they are intended to
//	serve as an example of files that could have been generated by
//	the V interface generator (Vigr)
//

#ifndef TESTAPP_H
#define TESTAPP_H

#ifdef vDEBUG
#include <v/vdebug.h>
#endif

#include <v/vapp.h>
#include <v/vawinfo.h>	// for app info

#include "vtcmdwin.h"	// we user our cmdwin class

    class testApp : public vApp
      {
	friend int AppMain(int, char**);	// allow AppMain access

      public:		//---------------------------------------- public

	testApp(char* name, int simSDI = 0);

	virtual ~testApp();

	// Routines from vApp that are normally overridden

	virtual vWindow* NewAppWin(vWindow*, VCONST char*, int, int, 
		vAppWinInfo* winInfo = 0);

	virtual void Exit(void);

	virtual void CloseLastCmdWindow(vWindow* win,int exitcode);
	virtual int CloseAppWin(vWindow*);

	virtual void AppCommand(vWindow* win, ItemVal id, ItemVal val, CmdType cType);

	virtual void KeyIn(vWindow*, vKey, unsigned int);

	// New routines for this particular app

      protected:	//--------------------------------------- protected

      private:		//--------------------------------------- private
	  vWindow* _defWin;
	  vAppWinInfo* _defAppWinInfo;

      };
#endif
