/*
	Copyright (c) 2024 PTC Inc. and/or Its Subsidiary Companies. All Rights Reserved.
*/

/*---------------------- Pro/Toolkit Includes ------------------------*/
#include <ProToolkit.h>
#include <ProMenu.h>
#include <ProMdl.h>

/*---------------------- Application Includes ------------------------*/
#include <TestError.h>
#include <PTApplsUnicodeUtils.h>


/*---------------------- Function Prototypes -------------------------*/
ProError UserDisplayREADME();
extern int UserMenuDeleteAndPop();


ProError UserDisplayREADME(char *s_filename)
{
   int           status;
   ProPath	wpath;
   char   	path[PRO_PATH_SIZE];
   ProPath	wpath_file;
   char   	path_file[PRO_PATH_SIZE];

   status = ProToolkitApplTextPathGet(wpath);
   ERROR_CHECK( "UserDisplayREADME", "ProToolkitApplTextPathGet",status);
   ProWstringToString(path,wpath); 

   ProTKSprintf(path_file, "%s/fullhelp/%s", path, s_filename);
   ProTKPrintf("%s\n",path_file); 
   ProStringToWstring( wpath_file, path_file );
   ProWstringToString(path_file, wpath_file);
   ProTKPrintf("%s\n",path_file);

   status = ProInfoWindowDisplay( wpath_file, NULL, NULL );
   ERROR_CHECK( "UserDisplayREADME", "ProInfoWindowDisplay", status );
  
   return ( status );
}
 
/*====================================================================*
Function : UserREADMESetup()
Purpose  : Set up the Menu for READMEs
\*====================================================================*/
ProError UserREADMESetup()
{
  int menu_id, action, status;

  status = ProMenuFileRegister("UGREADME", "ugreadme.mnu", &menu_id);
  ERROR_CHECK( "UserREADMESetup", "ProMenuFileRegister", status );

  status = ProMenubuttonActionSet("UGREADME","-Menu Map",
          (ProMenubuttonAction)UserDisplayREADME, "README_Menu.txt", 0);
  ERROR_CHECK( "UserREADMESetup", "ProMenubuttonActionSet", status );

  status = ProMenubuttonActionSet("UGREADME","-File Map",
          (ProMenubuttonAction)UserDisplayREADME, "README_File.txt", 0);
  ERROR_CHECK( "UserREADMESetup", "ProMenubuttonActionSet", status );

  status = ProMenubuttonActionSet("UGREADME","-Descriptions",
          (ProMenubuttonAction)UserDisplayREADME, "README_Desc.txt", 0);
  ERROR_CHECK( "UserREADMESetup", "ProMenubuttonActionSet", status );

  status = ProMenubuttonActionSet("UGREADME", "-Done/Return",
                     (ProMenubuttonAction)UserMenuDeleteAndPop, NULL,0);
  ERROR_CHECK( "UserREADMESetup", "ProMenubuttonActionSet", status );

  status = ProMenubuttonActionSet("UGREADME", "UGREADME",
                     (ProMenubuttonAction)UserMenuDeleteAndPop, NULL, 0);
  ERROR_CHECK( "UserREADMESetup", "ProMenubuttonActionSet", status );

  status = ProMenuCreate(PROMENUTYPE_MAIN, "UGREADME", &menu_id);
  ERROR_CHECK( "UserREADMESetup", "ProMenuCreate", status );

  status = ProMenuProcess("UGREADME", &action);
  ERROR_CHECK( "UserREADMESetup", "ProMenuProcess", status );

  return(PRO_TK_NO_ERROR);
}