/***********************************************************************
  $DAT >>LoadWork.clssa<<   02 Oct 1992 - (C)1992 ProDAD Holger Burkarth
************************************************************************/

OPTIONS RESULTS
  PARSE ARG filename

  FailAt 20
  AltFail=RESULT
  DO FOREVER
    ALaden=""
    IF filename="" THEN DO
      FileSelect "TITLE 'Arbeitsdaten laden' PTEXT 'Laden'"
      filename=RESULT
    END
    IF filename="" THEN LEAVE

    IF Open(loadit, filename, 'Read') THEN DO
      line=Readln(loadit)
      IF line="clariSSA-SaveWork" THEN DO
        DO FOREVER
          line=Readln(loadit)
          IF line="" THEN LEAVE

          PARSE VAR line "ANIMATION" xx .
          IF xx~="" THEN  DO
            IF ALaden="" THEN DO
              BOOLRequest "'Letzte Animationen einladen?'"
              ALaden=RESULT
            END
            IF ALaden="YES" THEN  ret=LoadAnimLayOut(line)
          END
          ELSE DO
            PARSE VAR line "FLAGS" xx .
            IF xx~="" THEN  ret=LoadFlagsLayOut(line)
          END

        END
      END; ELSE Message "'Falsche Datei!'"

      call Close(loadit)
    END; ELSE Message "'Arbeitsdaten können nicht''geladen werden.'"

    LEAVE
  END
  FailAt AltFail
 RETURN




LoadAnimLayOut: procedure
DO
  ARG Animation

  ok=0
  PARSE VAR Animation 'ANIMATION' Anim '"' AnimFile '" POS' AnimPos 'AREA FROM' start 'TO' ende Richtung

  LoadAnim Anim "NAME '"AnimFile"'"
  IF rc=0 THEN DO
    ViewFrame AnimPos
    IF rc=0 THEN DO
      SetArea "FROM" start "TO" ende Richtung
      ok=1
    END
  END
  RETURN(ok)
END



LoadFlagsLayOut: procedure
DO
  ARG Flags

  ok=0
  PARSE VAR Flags "FLAGS". "PLAYMODE" PlayMode "EDITMODE" EditMode "PREF" PREF "HELP" HReq "SGBB" SGrabber

  SetPlayMode PlayMode
  SetEditMode EditMode
  SetPref Pref
  IF HReq~="?"     THEN HelpRequester HReq
  IF SGrabber~="?" THEN SetScreenGrabber SGrabber
  ok=1
  RETURN(ok)
END
