Die Funktion ExecuteNextCmd( void )

BOOL TSteering::ExecuteNextCmd( void )
{
  if (TheCmd->nFailureId)
  {
    MessageBox( GetFocus(), "Macro execution failed !", "Steerng", MBSTOP );
    if (TheCmd)
    {
      delete TheCmd;
      TheCmd = NULL;
    }
    return FALSE;
  }
  if (TheCmd)
  {
    delete TheCmd;
    TheCmd = NULL;
  }
  // Function tested; Last changes 950814
  if (TheCmdList[nCmdIdx].Id == Inquire)
    //bInquireResult wird nirgendwo verändert!
    nCmdIdx += (bInquireResult) ? 2 : 1;
  else
    nCmdIdx++;
  switch (TheCmdList[nCmdIdx].Id)
  {
    case Stop:
      // Kontrolle an Steuerfenster übergeben
      NotifyMacroReady();
      return FALSE;
    case GotoLine:
      nCmdIdx = TheCmdList[nCmdIdx].P1;
      if((TheCmdList[nCmdIdx].Id == Stop) || (nCmdIdx > TheMacro->Length-1))
      {
        NotifyMacroReady();
        return FALSE;
      }
      return TRUE;
    default:
      StartCmdExecution( TheCmdList[nCmdIdx] );
      return TRUE;
  }
}


Zurück zu SteeringReadyReaction()

Startseite


Kay Schützler
Last modified: Thu Sep 9 20:32:08 CEST 1999