# $Source: /usr/local/SimSoft/Sfx3D/src/gts/gts03.tcl,v $
# $Revision: 1.2 $
# $Author: baum $
# $Date: 2001/11/29 15:18:10 $
#
# Login name of the user who locked the revision
# $Locker:  $
# Tag name used to checkout the file
# $Name: Release-14 $
# State assigned to revision
# $State: Exp $
#
#
# $Log: gts03.tcl,v $
# Revision 1.2  2001/11/29 15:18:10  baum
# -Realzeitsteuerung eingebaut
# -Handsteuerung eingebaut
#

# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# +++++++++++++++++++      T E S T U M G E B U G       ++++++++++++++++++++++
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


proc DlgDatei { arg1 arg2 arg3 arg4 } {
  if {$arg1 == "GTSInitE"} {
    global Zeichenflaeche
    bind $Zeichenflaeche <ButtonRelease-3> { put_win "Button down\n" }
  }
  put_win "DlgDatei: $arg1 $arg2 $arg3 $arg4\n"
  set erg DlgDatei"
  return $erg
}

proc DlgGrafik { arg1 arg2 arg3 arg4 } {
  put_win "DlgGrafik: $arg1 $arg2 $arg3 $arg4\n"
  set erg "DlgGrafik"
  return $erg
}

proc DlgLogik { arg1 arg2 arg3 arg4 arg5 } {
  put_win "DlgLogik: $arg1 $arg2 $arg3 $arg4 $arg5\n"
  global Zeichenflaeche
  if {$arg1 == "TBVERZEUGEN"} { bind $Zeichenflaeche <ButtonRelease-3> { SelectVerkettungsMenu }}            
  if {$arg1 == "TBVLOESCHEN"} { bind $Zeichenflaeche <ButtonRelease-3> { SelectVerkettungsMenu }}            
  if {$arg1 == "TBVINFO"}     { bind $Zeichenflaeche <ButtonRelease-3> { SelectVerkettungsMenu }}            
  if {$arg1 == "TFKERZEUGEN"} { bind $Zeichenflaeche <ButtonRelease-3> { SelectFahrkursMenu }}            
  if {$arg1 == "TFKLOESCHEN"} { bind $Zeichenflaeche <ButtonRelease-3> { SelectFahrkursMenu }}            
  if {$arg1 == "TFKINFO"}     { bind $Zeichenflaeche <ButtonRelease-3> { SelectFahrkursMenu }}            
  if {$arg1 == "POOLVERWALTUNG"} {
    if {$arg2 == "BSTNR"} {
       set erg 18
    } elseif {$arg2 == "PV_POOLLISTE"} {
      set erg "1 2 3 4 5 6"
    } elseif {$arg2 == "PV_POOLBAUSTEINE"} {
       set erg "11 12 13 14"
    } elseif {$arg2 == "PV_BETREUTELISTE"} {
       set erg "121 122 123 124"
    } elseif {$arg2 == "PV_BETREUTEBAUSTEINE"} {
       set erg "211 212 213 214"
    } else { set erg "Fehler in BstErzeugen"}
  } elseif {$arg1 == "BSTPARAMETER"} {
    if {$arg2 == "GETTTPWERTE"} {
       put_win "TTP: Bst.$arg5, $arg4 Werte -> $arg3\n"
       set erg "0.1 12 13 14"
    } elseif {$arg2 == "GETTSTWERTE"} {
       put_win "TST: Bst.$arg5, $arg4 Werte -> $arg3\n"
       set erg "0 1 0.1200 22 33 "
    } elseif {$arg2 == "BSTNR"} {
       put_win "BstNr: Bst.$arg5, $arg4 Werte -> $arg3\n"
       set erg $arg5
    } else { set erg 11 }  
  } else { set erg ""}
  put_win "ERG: $erg\n"
  return $erg
}

# ------------------------------------------------------------------------
  set TestProzesse {
      {  0  "1"     "1\t1010\n     \
                     Gleichverteilt\t67\t6\t-1\t14\n     \
                     Normalverteilt\t67"}
      {  1  "123"   "1\t111\n     \
                     Gleichverteilt\t67\t6\t-1\t14\n     \
                     Normalverteilt\t67"}
      {  2  "4567"  "2\33\n     \
                     Gleichverteilt\t67\t6\t-1\t14\n     \
                     Normalverteilt\t67"}
      {  3  "333"   "2\n434\n     \
                     Gleichverteilt\t67\t6\t-1\t14\n     \
                     Normalverteilt\t67"}
      {  4  "888"   "1\n333\n     \
                     Gleichverteilt\t67\t6\t-1\t143456767\n     \
                     Normalverteilt\t67"}
     }
     
proc DlgExperiment { arg1 arg2 arg3 arg4 arg5 } {
  put_win "DlgExperiment: $arg1 $arg2 $arg3 $arg4 $arg5\n"
  set erg "0"
  if {$arg1 == "ZEITMODELL"} {
    if {$arg2 == "SETLAUFZEIT"} { put_win ">Zeit: $arg3<\n" }
    if {$arg2 == "GETLAUFZEIT"}   { set erg {20 11 1 32 333}
    put_win "$erg\n"
    }
  }
  if {$arg1 == "EREIGNISSE"} {
    if {$arg2 == "INFO"} {
      set erg {{ 0  "00:00:00:00:00" 67  5 -1 05}
              {  1 "00:10:00:00:00" 67  6 -1 14}
              {  2 "00:20:00:00:00" 67  6 -1 14}
              {  3 "00:30:00:00:00" 67  6 -1 14}
              {  4 "00:40:00:00:00" 67  6 -1 14}
              }
    } 
    if {$arg2 == "UP"}   { put_win ">UP\n" }
    if {$arg2 == "DOWN"} { put_win ">DOWN\n" }
    if {$arg2 == "SELECT"} { set erg {0 0 1 2 3 4 64 12 123 } }
  } else {
  if {$arg1 == "PROZESSE"} {
      if {$arg2 == "INFO"} {
        global TestProzesse
        set erg ""
        set erg $TestProzesse       
      }
      if {$arg2 == "ERZEUGEN"} {
         put_win ">ERZEUGEN: Prozessnr.: $arg3  Benennung: $arg4<\n"
         if {$arg3 == 4711} {
            global TestProzesse
            set nr [lindex [lindex $TestProzesse end] 0]
            incr nr
            lappend TestProzesse \
               [lappend T $nr  "999"   "Ankunftverteilung\n     \
                     Normalverteilt\t167"]
            set erg $arg2 
         }
      }
      if {$arg2 == "SETPROZESSNR"} { set erg $arg4  }
      if {$arg2 == "NAMEAENDERN"}  { set erg $arg4  }
      if {$arg2 == "GETVERTEIL1"}  { set erg "300 10 20 30 40 50 200 1 2 3 4 5 6" }
      if {$arg2 == "GETVERTEIL2"}  { set erg "400 11 21 31 41 51 100 1 2 3 4 5 6" }
      if {$arg2 == "SETVERTEIL0"}  { put_win "Nr. $arg3, $arg4, $arg5\n" }
      if {$arg2 == "SETVERTEIL1"}  { put_win "Nr. $arg3, Neue Werte: $arg5\n" }
      if {$arg2 == "SETVERTEIL2"}  { put_win "Nr. $arg3, Neue Werte: $arg5\n" }
      if {$arg2 == "LOESCHEN"}     { put_win ">LOESCHE: Nr.: $arg3\n" }
      if {$arg2 == "SELECT"}   { set erg "1 2 444" }
      if {$arg2 == "xxxxxSELECT"} { set erg
                               {  "4567"  "AnkunftProzesse\n     \
                                   Gleichverteilt\t67\t6\t-1\t14\n     \
                                   Normalverteilt\t67"
                               }
                             }    
    }
  }
  put_win "ERG: $erg\n"
  return $erg
}

proc DlgAblaufplan { arg1 arg2 arg3 arg4 arg5 } {
  put_win "DlgAblaufplan: $arg1 $arg2 $arg3 $arg4 $arg5\n"
  set erg ""
  if {$arg1 == "AUFTRAG"} {
    if {$arg2 == "INFO"} {
      set erg {{ 0  47111   "Auftrag 47111"}
               {  1  1234567 "Auftrag 1234567"}
               {  2  1       "Startauftrag"}
               {  3  987     "Auftr. um 00:30:00:00:00"}
               {  4  17      "Das ist ein Auftrag"}
              }
    }
    if {$arg2 == "ERZEUGEN"} {
       put_win ">ERZEUGEN: Afnr.: $arg3   Benennung: $arg4\n"
       if {$arg3 == 4711} { set erg 1 }
    }
    if {$arg2 == "LOESCHEN"} { put_win ">LOESCHE: Afnr.: $arg3\n" }
    if {$arg2 == "SELECT"}   { set erg $arg3 }
    if {$arg2 == "AFNR"}     { set erg 4711 }
    if {$arg2 == "AFNRAENDERN"}     {  set erg $arg4  }
    if {$arg2 == "AFNAMEAENDERN"}   {  set erg $arg4  }
    
  } elseif {$arg1 == "VORGANG"} {
    if {$arg2 == "INFOVORGANGSLISTE"} {
      set erg {{  0  47   12.45  123  Test1  }
               {  1  123   456    7   Test2 }
               {  2  12     46    3   TTTz  }
               {  3  13     56    9   Auftr }
              }
    } 
    if {$arg2 == "INFOVORGANG"} { set erg {12   12.09  22 TestTest} }
    if {$arg2 == "LOESCHEVORGANG"} { put_win "Afnr. $arg3, Vorg. $arg4 geloescht\n" }
    if {$arg2 == "AENDEREVORGANG"} { put_win "Afnr. $arg3, Vorg. $arg4 geaendert\n" }
    if {$arg2 == "ERZEUGEVORGANG"} {
       put_win "Afnr. $arg3, Vorg. $arg4 >$arg5< erzeugt\n"
       set erg 0
       if {($arg3 > 100)} { set erg 1 }
    }
 
  } elseif {$arg1 == "EINGANG"} {
    if {$arg2 == "INFOEINGANGSLISTE"} {
      set erg {{  0  4711  123   12  12.3  }
               {  1  123   456    7   0.12 }
               {  2  12     46    3   0.12 }
               {  3  13     56    9   0.12 }
              }
    }            
    if {$arg2 == "INFOEINGANG"} { set erg { 4711  123   12  44 12.3 } }
    if {$arg2 == "LOESCHEEINGANG"} { put_win "Afnr. $arg3, Elem. $arg4 geloescht\n" }
    if {$arg2 == "AENDEREEINGANG"} { put_win "Afnr. $arg3, Elem. $arg4 geaendert\n" }
    if {$arg2 == "ERZEUGEEINGANG"} {
       put_win "Afnr. $arg3, Elem. $arg4 >$arg5< erzeugt\n"
       set erg 0
       if {($arg3 > 100)} { set erg 1 }
    }
  } elseif {$arg1 == "AUSGANG"} {
    if {$arg2 == "INFOAUSGANG"}   {  set erg "$arg5 22 33 44 5"  }
    if {$arg2 == "AENDEREAUSGANG"} { put_win "Afnr. $arg3, Elem. $arg4 geaendert\n" }
    if {$arg2 == "INFOAUSGANGSLISTE"} { set erg {11 22 33 44 \
                                         {2=Palette (5.0*4.0*0.5) gewaehlt}
                                       { {1=Palette (5.0*4.0*0.5)}
                                         {2=Palette (5.0*4.0*0.5)}
                                         {3=Palette (5.0*4.0*0.5)}
                                         {4=Palette (5.0*4.0*0.5)}
                                       }
                                      }}
  } else { set erg ""}
  return $erg
}
