/*------------------------------------------------------------------------------*
 * File Name: FFWIntegralPages.h	 											*
 * Creation: 																	*
 * Purpose: OriginC Source C file												*
 * Copyright (c) ABCD Corp.	2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010		*
 * All Rights Reserved															*
 * 																				*
 * Modification Log:															*
 *------------------------------------------------------------------------------*/

/*------------------------------------------------------------------------------*
 this file contains two classes:
 	1. FFWIntegrandPage 	
 	2. FFWFitIntegralPage 	
 *------------------------------------------------------------------------------*/ 
 
#ifndef _FFW_INTEGRAL_PAGE_H
#define _FFW_INTEGRAL_PAGE_H


/*------------------------------------------------------------------------------*
 * FFWIntegrandPage 			 												*
 *------------------------------------------------------------------------------*/

class FFWIntegrandPage : public FFWPageBase
{	
public:
	FFWIntegrandPage(int nID = 0) : FFWPageBase(nID){}
	
	// Event handlers for this page
	EVENTS_BEGIN
		PAGE_ON_INIT(OnInitPage)
		PAGE_ON_ACTIVE(OnActivatePage)
		PAGE_ON_KILLACTIVE(OnKillActiviePage)
		PAGE_ON_BACK(OnBack)
		PAGE_ON_NEXT(OnNext)
	EVENTS_END

	string GetName(){return "FFWIntegrandPage";}

protected:
	//virtual 
	bool 	UpdateTreeToPageGUI(const TreeNode& trFunction){return false;}//doing
	//virtual 
	bool 	UpdatePageGUIToTree(TreeNode& trFunction){return false;}//doing
	//virtual 
	string	GetPageHintsName(bool bNextPage = false);///Jasmine 06/25/10 ORG390-P5 MOVE_FFW_HINTS_TO_TXT
};

///Jasmine 06/25/10 ORG390-P5 MOVE_FFW_HINTS_TO_TXT
//virtual 
string FFWIntegrandPage::GetPageHintsName(bool bNextPage/* = false*/)
{	
	if ( !bNextPage )
		return "Integrand";
	else
		return "Integrand next page";
}
///End MOVE_FFW_HINTS_TO_TXT
/*------------------------------------------------------------------------------*
 * FFWIntegrandPage End		 													*
 *------------------------------------------------------------------------------*/
 

/*------------------------------------------------------------------------------*
 * FFWFitIntegralPage 			 												*
 *------------------------------------------------------------------------------*/
class FFWFitIntegralPage : public FFWEquationPageBase
{
public:
	FFWFitIntegralPage(int nID = 0) : FFWEquationPageBase(nID) {}

	// Event handlers for this page
	EVENTS_BEGIN
		PAGE_ON_INIT(OnInitPage)
		PAGE_ON_ACTIVE(OnActivatePage)
		PAGE_ON_KILLACTIVE(OnKillActiviePage)
		PAGE_ON_NEXT(OnNext)
		PAGE_ON_BACK(OnBack)
	EVENTS_END

	string GetName(){return "FFWFitIntegralPage";}

protected:
	//virtual 
	bool 	UpdateTreeToPageGUI(const TreeNode& trFunction){return false;}//doing
	//virtual 
	bool 	UpdatePageGUIToTree(TreeNode& trFunction){return false;}//doing
	//virtual 
	string	GetPageHintsName(bool bNextPage = false);///Jasmine 06/25/10 ORG390-P5 MOVE_FFW_HINTS_TO_TXT
};


///Jasmine 06/25/10 ORG390-P5 MOVE_FFW_HINTS_TO_TXT
//virtual 
string FFWFitIntegralPage::GetPageHintsName(bool bNextPage/* = false*/)
{
	if ( !bNextPage )
		return "Fitting Integral Equation";
	else
		return FFWEquationPageBase::GetPageHintsName(bNextPage);
}
///End MOVE_FFW_HINTS_TO_TXT
/*------------------------------------------------------------------------------*
 * FFWFitIntegralPage End		 												*
 *------------------------------------------------------------------------------*/

#endif//_FFW_INTEGRAL_PAGE_H