Beispiel #1
0
/*******************************************************************************
          Name:        IntSave
          Description: Eexecutes CLIPS' bsave, save-facts, or save functions
          Arguments:  w - Dialog Widget
                       client_data - Not Used
                       call_data - Not Used
          Returns:     None
*******************************************************************************/
void IntSave(
  Widget w,
  XtPointer client_data, 
  XtPointer call_data)
  {
  char *filename = XawDialogGetValueString(XtParent(w));

  switch(file_item)
    {
    case SAVEBINARY:
      PrintRouter("wclips", "(bsave ");
      SetCommandString("(bsave");
      AppendCommandString("\"");
      PrintRouter("wclips", "\"");
      AppendCommandString(filename);
      PrintRouter("wclips", filename);
      AppendCommandString("\"");
      PrintRouter("wclips", "\"");
      AppendCommandString(")\n");
      PrintRouter("wclips", ")\n");
      quit_get_event = True;
    break;

    case SAVEFACTS:
      PrintRouter("wclips", "(save-facts ");
      SetCommandString("(save-facts");
      AppendCommandString("\"");
      PrintRouter("wclips", "\"");
      AppendCommandString(filename);
      PrintRouter("wclips", filename);
      AppendCommandString("\"");
      PrintRouter("wclips", "\"");
      AppendCommandString(")\n");
      PrintRouter("wclips", ")\n");
      quit_get_event = True;
    break;

    case SAVERULES:
      PrintRouter("wclips", "(save ");
      SetCommandString("(save");
      AppendCommandString("\"");
      PrintRouter("wclips", "\"");
      AppendCommandString(filename);
      PrintRouter("wclips", filename);
      AppendCommandString("\"");
      PrintRouter("wclips", "\"");
      AppendCommandString(")\n");
      PrintRouter("wclips", ")\n");
      quit_get_event = True;
    break;
    }

  XtDestroyWidget(XtParent(XtParent(w)));
  }
Beispiel #2
0
STLServerCommandSetNoiseAmplitudeSPLXXX::STLServerCommandSetNoiseAmplitudeSPLXXX(wxSocketBase & sock,StartleLUT * const lut)
#endif
:STLCommandSetNoiseAmplitudeSPLXXX(0,lut),
GSISocketXXX(sock)
{
	SetCommandString("STLCommandSetNoiseAmplitudeSPLXXX");
}
Beispiel #3
0
/***************************************************************
	STLServerCommandExecute ::STLServerCommandExecute
****************************************************************/
STLServerCommandExecuteXXX::STLServerCommandExecuteXXX(wxSocketBase & sock)
:STLCommandExecuteXXX(),
GSISocketXXX(sock)
{
	SetCommandString("STLCommandExecuteXXX");

}
Beispiel #4
0
/***************************************************
	STLServerCommandAcquireXXX ::STLServerCommandAcquireXXX
****************************************************/
STLServerCommandAcquireXXX::STLServerCommandAcquireXXX(wxSocketBase & sock)
:STLCommandAcquireXXX(),	//use default parameters as socket will read
GSISocketXXX(sock)
{

	SetCommandString("STLCommandAcquireXXX");
}
Beispiel #5
0
/*******************************************************************************
          Name:        LoadRules
          Description: Loads rules into CLIPS
          Arguments:  str - file to load
          Returns:     None
*******************************************************************************/
void LoadRules(
  char *str)
  {
  PrintRouter("wclips", "(load ");
  SetCommandString("(load");
  GetFileForCLIPS(str);
  PrintRouter("wclips", ")\n");
  AppendCommandString(")\n");
  quit_get_event = True;
  }
Beispiel #6
0
/*******************************************************************************
          Name:        IntDribbleOn
          Description: Turns on dribble
          Arguments:  str - file to dribble to
          Returns:     None
*******************************************************************************/
void IntDribbleOn(
  String str)
  {
  if(!EvaluatingTopLevelCommand)
    PrintRouter("wclips", "(dribble-on ");
  SetCommandString("(dribble-on");
  GetFileForCLIPS(str);
  if(!EvaluatingTopLevelCommand)
    PrintRouter("wclips", ")\n");
  AppendCommandString(")\n");
  quit_get_event = True;
  if (((access(str, 02) == 0) || (access(str, 00))) && (strcmp(str, "\0") != 0))
    {
    Dribble_status = True;
    XtSetArg(args[0], XtNleftBitmap, checker);
    XtSetValues(file_dribble, args, 1);
    }
  }
Beispiel #7
0
/*******************************************************************************
          Name:        DribbleCallback
          Description: Called when Dribble is selected form File menu
          Arguments:  w - menu item that was selected
                       client_data - entry number on menu
                       call_data - not used
          Returns:     None
*******************************************************************************/
void DribbleCallback(
  Widget w,
  XtPointer client_data, 
  XtPointer call_data)
  {
  MoveEndOfFile(dialog_text, &event);
  file_item = DRIBBLEON;
  if (Dribble_status)
    {
    XtSetArg(args[0], XtNleftBitmap, None);
    XtSetValues(file_dribble, args, 1);
    SetCommandString("(dribble-off)\n");
    if(!EvaluatingTopLevelCommand)
      PrintRouter("wclips","(dribble-off)\n");
    quit_get_event = True;
    Dribble_status = !Dribble_status;
    }
  else
    FileSelect();
  }
Beispiel #8
0
long DoLoad ( HWND hMain, WORD LoadType)

{  OPENFILENAME ofn;
   extern HANDLE hInst;
   char File[256], FileTitle[256], Filter[256];
   UINT i, cbString;
   char Replace;

   File[0] = '\0';
   memset ( &ofn,0, sizeof (OPENFILENAME));

   /*---------------------------------------------+
   | Initialize Common Dialog based on File Type. |
   +---------------------------------------------*/
   switch ( LoadType )
   {  case IDM_FILE_LOAD:
      {  ofn.lpstrTitle = "Load CLIPS Constructs";
         if ((cbString = LoadString ( (HINSTANCE) hInst, IDS_RULES, Filter, sizeof (Filter))) == 0 )
            return 0L;
	 break;
      }

      case IDM_FILE_LBATCH:
      {  ofn.lpstrTitle = "Load CLIPS Batch File";
         if ((cbString = LoadString ( (HINSTANCE) hInst, IDS_BATCH, Filter, sizeof (Filter))) == 0 )
	    return 0L;
	 break;
      }

      case IDM_FILE_LBINARY:
      {  ofn.lpstrTitle = "Load CLIPS Binary File";
         if ((cbString = LoadString ( (HINSTANCE) hInst, IDS_BINARY, Filter, sizeof (Filter))) == 0 )
	    return 0L;
         break;
      }
   }

   Replace = Filter[cbString-1];

   for (i=0; Filter[i] != '\0'; i++)
      if ( Filter[i] == Replace)
         Filter[i] = '\0';

   ofn.lStructSize = sizeof ( OPENFILENAME );
   ofn.hwndOwner = hMain;
   ofn.lpstrFilter = Filter;
   ofn.nFilterIndex = 1;
   ofn.lpstrFile = File;
   ofn.nMaxFile = sizeof (File );
   ofn.lpstrFileTitle = FileTitle;
   ofn.nMaxFileTitle = sizeof (FileTitle);
   ofn.lpstrInitialDir = NULL;
   ofn.Flags = OFN_HIDEREADONLY | OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;


   /*--------------------+
   | Issue CLIPS Command |
   +--------------------*/
   if ( GetOpenFileName ( &ofn ) )
   {  int x, size;

      UpdateCursor(WAIT_CURSOR);
      /*-----------------+
      | Adjust Path Info |
      +-----------------*/
      size = strlen(ofn.lpstrFile );
      for ( x=0; x<size ; x++)
         if ( ofn.lpstrFile [x] == '\\' )
            ofn.lpstrFile [x] = '/';

      switch ( LoadType )
      {  case IDM_FILE_LOAD:
            SetCommandString("(load \"");  break;
         case IDM_FILE_LBATCH:
            SetCommandString("(batch \""); break;
         case IDM_FILE_LBINARY:
            SetCommandString("(bload \""); break;
      }
      AppendCommandString ( ofn.lpstrFile );
      AppendCommandString ( "\")\n");
      PrintCLIPS ( "stdout", GetCommandString());
      UpdateCursor ( ARROW_CURSOR );
      PrintPrompt();
   }
   return 0L;
}
Beispiel #9
0
void DoLoad( 
  HWND hMain, 
  WORD LoadType)
  {  
   OPENFILENAME ofn;
   char File[256], FileTitle[256], Filter[256];
   UINT i;
   int cbString;
   char Replace;
   int x;
   size_t size;
   void *theEnv = GetCurrentEnvironment();

   File[0] = '\0';
   memset(&ofn,0,sizeof(OPENFILENAME));

   /*==============================================*/
   /* Initialize Common Dialog based on File Type. */
   /*==============================================*/
   
   switch(LoadType)
     {  
      case ID_FILE_LOAD:
        ofn.lpstrTitle = "Load CLIPS Constructs";
        if ((cbString = LoadString(GetWindowInstance(hMain),IDS_RULES,Filter,sizeof(Filter))) == 0)
          { return; }
	    break;

      case ID_FILE_LOAD_BATCH:
        ofn.lpstrTitle = "Load CLIPS Batch File";
        if ((cbString = LoadString(GetWindowInstance(hMain),IDS_BATCH,Filter,sizeof(Filter))) == 0)
	      { return; }
	    break;
      
      case ID_FILE_LOAD_BINARY:
        ofn.lpstrTitle = "Load CLIPS Binary File";
        if ((cbString = LoadString(GetWindowInstance(hMain),IDS_BINARY,Filter,sizeof(Filter))) == 0)
	      { return; }
        break;
     }

   Replace = Filter[cbString-1];

   for (i = 0; Filter[i] != '\0'; i++)
     {
      if (Filter[i] == Replace)
        { Filter[i] = '\0'; }
     }

   ofn.lStructSize = sizeof ( OPENFILENAME );
   ofn.hwndOwner = hMain;
   ofn.lpstrFilter = Filter;
   ofn.nFilterIndex = 1;
   ofn.lpstrFile = File;
   ofn.nMaxFile = sizeof (File );
   ofn.lpstrFileTitle = FileTitle;
   ofn.nMaxFileTitle = sizeof (FileTitle);
   ofn.lpstrInitialDir = NULL;
   ofn.Flags = OFN_HIDEREADONLY | OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;

   /*==========================*/
   /* Perform the file dialog. */
   /*==========================*/
   
   if (! GetOpenFileName(&ofn))
     { return; }
     
   /*==========================*/
   /* Adjust Path Information. */
   /*==========================*/
   
   size = strlen(ofn.lpstrFile);
   for (x = 0; x < (int) size; x++)
     {
      if (ofn.lpstrFile[x] == '\\')
        { ofn.lpstrFile[x] = '/'; }
     }

   ClearCommandFromDisplay(DialogWindow,theEnv);
   
   /*======================*/
   /* Issue CLIPS Command. */
   /*======================*/

   switch(LoadType)
     {  
      case ID_FILE_LOAD:
        SetCommandString(theEnv,"(load \"");  
        break;
         
      case ID_FILE_LOAD_BATCH:
        SetCommandString(theEnv,"(batch \""); 
        break;
       
      case ID_FILE_LOAD_BINARY:
        SetCommandString(theEnv,"(bload \"");
        break;
     }
      
   AppendCommandString(theEnv,ofn.lpstrFile );
   AppendCommandString(theEnv,"\")\n");
   EnvPrintRouter(theEnv,WPROMPT,GetCommandString(theEnv));
  }
Beispiel #10
0
void SaveBinaryFile(
  HWND hMain)
  {  
   char File[256], FileTitle[256], Filter[256];
   UINT i;
   int cbString;
   char Replace;
   OPENFILENAME ofn;
   int x;
   size_t size;
   void *theEnv = GetCurrentEnvironment();

   File[0] = '\0';
   memset ( &ofn,0, sizeof (OPENFILENAME));
   ofn.lpstrTitle = "Save CLIPS File as Binary";
   if ((cbString = LoadString (GetWindowInstance(hMain), IDS_BINARY, Filter, sizeof (Filter))) == 0 )
      return;

   Replace = Filter[cbString-1];

   for (i=0; Filter[i] != '\0'; i++)
     if ( Filter[i] == Replace)
        Filter[i] = '\0';

   ofn.lStructSize = sizeof ( OPENFILENAME );
   ofn.hwndOwner = hMain;
   ofn.lpstrFilter = Filter;
   ofn.nFilterIndex = 1;
   ofn.lpstrFile = File;
   ofn.nMaxFile = sizeof (File );
   ofn.lpstrFileTitle = FileTitle;
   ofn.nMaxFileTitle = sizeof (FileTitle);
   ofn.lpstrInitialDir = NULL;
   ofn.Flags = OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY;

   /*==========================*/
   /* Perform the file dialog. */
   /*==========================*/

   if (! GetSaveFileName(&ofn))
     { return; }

   /*==========================*/
   /* Adjust Path Information. */
   /*==========================*/
   
   size = strlen(ofn.lpstrFile);
   for (x = 0; x < (int) size; x++)
     {
      if (ofn.lpstrFile[x] == '\\')
        { ofn.lpstrFile[x] = '/'; }
     }

   /*======================*/
   /* Issue CLIPS Command. */
   /*======================*/
   
   ClearCommandFromDisplay(DialogWindow,theEnv);
   SetCommandString(theEnv,"(bsave \"");  
   AppendCommandString(theEnv,ofn.lpstrFile);
   AppendCommandString(theEnv,"\")\n");
   EnvPrintRouter(theEnv,WPROMPT,GetCommandString(theEnv));
  }
Beispiel #11
0
void OpenDribbleFile( 
  HWND hMain, 
  WORD wParam)
  {  
   OPENFILENAME ofn;
   char File[256], FileTitle[256], Filter[256];
   UINT i;
   int cbString;
   char Replace;
   int x;
   size_t size;
   void *theEnv = GetCurrentEnvironment();
   HMENU hMenu = GetMenu(hMain);

   if (! EnvDribbleActive(theEnv))
     {  
      sprintf(File,"dribble.txt");
      memset ( &ofn,0, sizeof (OPENFILENAME));
      ofn.lpstrTitle = "Select CLIPS Dribble File";
      
      if ((cbString = LoadString(GetWindowInstance(hMain),IDS_TEXT_FILES,Filter,sizeof(Filter))) == 0)
        { return; }

      Replace = Filter[cbString-1];
      for (i=0; Filter[i] != '\0'; i++)
        {
         if (Filter[i] == Replace)
           { Filter[i] = '\0'; }
        }

      ofn.lStructSize = sizeof (OPENFILENAME);
      ofn.hwndOwner = hMain;
      ofn.lpstrFilter = Filter;
      ofn.nFilterIndex = 1;
      ofn.lpstrFile = File;
      ofn.nMaxFile = sizeof (File );
      ofn.lpstrFileTitle = FileTitle;
      ofn.nMaxFileTitle = sizeof (FileTitle);
      ofn.lpstrInitialDir = NULL;
      ofn.Flags = OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY;
      
      /*==========================*/
      /* Perform the file dialog. */
      /*==========================*/
   
      if (! GetOpenFileName(&ofn))
        { return; }
        
      /*==========================*/
      /* Adjust Path Information. */
      /*==========================*/
   
      size = strlen(ofn.lpstrFile);
      for (x = 0; x < (int) size; x++)
        {
         if (ofn.lpstrFile[x] == '\\')
           { ofn.lpstrFile[x] = '/'; }
        }

      /*=====================================*/
      /* Issue the CLIPS dribble-on command. */
      /*=====================================*/

      ModifyMenu(hMenu,wParam,MF_BYCOMMAND,wParam,"Turn Dribble Off");
      ClearCommandFromDisplay(DialogWindow,theEnv);
      SetCommandString(theEnv,"(dribble-on \"");  
      AppendCommandString(theEnv,ofn.lpstrFile);
      AppendCommandString(theEnv,"\")\n");
      EnvPrintRouter(theEnv,WPROMPT,GetCommandString(theEnv));
     }
   else
     {  
      /*======================================*/
      /* Issue the CLIPS dribble-off command. */
      /*======================================*/

      ModifyMenu(hMenu,wParam,MF_BYCOMMAND,wParam,"Turn Dribble On...");  
      ClearCommandFromDisplay(DialogWindow,theEnv);
      SetCommandString(theEnv,"(dribble-off)\n");  
      EnvPrintRouter(theEnv,WPROMPT,GetCommandString(theEnv));
     }
  }
Beispiel #12
0
/*!
    errorType STLServerCommandResetyXXX::STLServerCommandResetXXX
		ctor
*/
STLServerCommandResetXXX::STLServerCommandResetXXX(wxSocketBase &sock)
:GSISocketXXX(sock)
{
	SetCommandString("STLServerCommandResetXXX");
}
Beispiel #13
0
/*!
    errorType STLServerCommandSetFrequencyXXX::STLServerCommandSetFrequencyXXX(const wxString & device)
		ctor
Read the frequecy in Hz from the socket client

*/
STLServerCommandSetFrequencyXXX::STLServerCommandSetFrequencyXXX(wxSocketBase &sock)
:GSISocketXXX(sock)
{
	SetCommandString("STLServerCommandSetFrequencyXXX");
}
Beispiel #14
0
/*!
    errorType STLServerCommandCloseDeviceXXX::STLServerCommandOpenDeviceXXX(const wxString & device)
		ctor
Read the device name from the socket client
# wxInt16 lengthOfSstring
# char buff[lengthOfString]

*/
STLServerCommandCloseDeviceXXX::STLServerCommandCloseDeviceXXX(wxSocketBase &sock)
//:STLServerCommandXXX(sock)
:GSISocketXXX(sock)
{
	SetCommandString("STLServerCommandCloseDeviceXXX");
}
Beispiel #15
0
/*!
*****************************************************************************
	STLServerCommandWaitForCompletionXXX ::STLServerCommandWaitForCompletionXXX
****************************************************************************/
STLServerCommandWaitForCompletionXXX::STLServerCommandWaitForCompletionXXX(wxSocketBase & sock)
:STLCommandWaitForCompletionXXX(),
GSISocketXXX(sock)
{
	SetCommandString("STLWaitForCompletionXXX");
}
Beispiel #16
0
void GetUserCmd ( 
  WORD wParam,      /* Key Code */
  BOOL ScreenOnly,  /* Send to Screen and or Command Buffer */
  int  InputSize)   /* Number of characters send to screen only */

  {
	extern int HorizScroll; /* Automatic Scrolling Enabled/Disabled */

	switch (wParam)
	  {
		extern SCREEN WinDialog;
		extern int UserInput;

		/*------------------+
		| Handle Back Space |
		+------------------*/

		case VK_BACK:
		  {
			/*-----------------------------------------------+
			| Init Values when sending to the command buffer |
			+-----------------------------------------------*/
			if (! ScreenOnly)
			  {
				HorizScroll = 1;
				if (GetCommandString() != NULL)
				  { InputSize = strlen(GetCommandString()); }
				else
				  { InputSize = 0; }
			  }

	 if (InputSize > 0 )
	 {
		 int size;

		 if (Terminal[WinDialog.LastLine] != NULL)
			{ size = strlen(Terminal[WinDialog.LastLine]); }
		 else
			{ size = 0; }

		 if (!ScreenOnly)
			 ExpandCommandString ('\b');

		 if (size > 0)
			 Terminal[WinDialog.LastLine][size - 1] = '\0';
		 else
		 {  int min, max;
			 extern int OldLine;

			 if ( Terminal[WinDialog.LastLine] != NULL )
			 {
		free(Terminal[WinDialog.LastLine]);
		Terminal[WinDialog.LastLine] = NULL;
	       }

			 WinDialog.LastLine --;
	       OldLine --;

	       if ( WinDialog.LastLine < 0 )
		  WinDialog.LastLine = DIALOG_SIZE;

	       GetScrollRange (WinDialog.hWnd, SB_VERT, &min, &max);
	       if ( WinDialog.NoLines < max && max < DIALOG_SIZE )
	       {  SetScrollRange ( WinDialog.hWnd, SB_VERT, WinDialog.NoLines, max-1, FALSE );
		  SetScrollPos   ( WinDialog.hWnd, SB_VERT, max-1, FALSE );
	       }
	       InvalidateRect ( WinDialog.hWnd, NULL, TRUE );
		 }
		 SendToScreen();
	 }
	 break;
      }

      /*--------------------------+
      | Remove Special Keys (ALT) |
      +--------------------------*/
      case '\f':
      case VK_MENU:
	 break;


      /*----------------+
      | Handle Tab Keys |
      +----------------*/
      case '\t':
		{  if ( !ScreenOnly)
	 {  if ( GetCommandString() == NULL)
	       SetCommandString("   ");
	    else
	       AppendCommandString("   ");
	 }
	 PrintCLIPS ("stdout", "   " );
	 break;
      }


      /*---------------------+
      | Return / Newline Key |
      +---------------------*/
      case '\r':
      case '\n':
      {  wParam = (int)'\n';
	 if (GetScrollPos (WinDialog.hWnd, SB_HORZ) != 0)
	 {  SetScrollPos ( WinDialog.hWnd, SB_HORZ, 0, TRUE );
	    InvalidateRect(WinDialog.hWnd, NULL, FALSE);
	    SendMessage ( WinDialog.hWnd, WM_PAINT, 0, 0 );
	 }
      }

      /*---------------------+
      | All other characters |
      +---------------------*/
      default:
      {  char text[2];

	 text[0] = (char) wParam;
	 text[1] = '\0';

	 if(isprint ( text[0]) || isspace (text[0]))
	 {  /*----------------------------+
	    | Add to CLIPS Command Buffer |
		 +----------------------------*/

	    if (!ScreenOnly)
	    {  if ( GetCommandString() == NULL)
		  SetCommandString(text);
	       else
		  AppendCommandString(text);
		 }

		 PrintCLIPS ("stdout", text );
	 }
	 break;
		}
	}
	HorizScroll = 0;
}
Beispiel #17
0
/*!
    errorType STLServerCommandSetNoiseAmplitudeLUTValueXXX::STLServerCommandSetNoiseAmplitudeLUTValueXXX(const wxString & device)
		ctor

*/
STLServerCommandSetNoiseAmplitudeLUTValueXXX::STLServerCommandSetNoiseAmplitudeLUTValueXXX(wxSocketBase &sock)
:STLCommandSetNoiseAmplitudeLUTValueXXX(),
GSISocketXXX(sock)
{
	SetCommandString("STLServerCommandSetNoiseAmplitudeLUTValueXXX");
}