!$FCORG = %getenv("FCHOME")/org

!include $FCORG/puml-theme-fc.puml

/'
 ' Gantt Diagram
 '/

!procedure $init_gantt($start_date, $scale=weekly, $zoom=2)
  printscale $scale zoom $zoom

  hide footbox

  saturday are closed
  sunday are closed

  Project starts $start_date
!endprocedure

!procedure $def_task($name, $len="", $start="", $end="", $alias="", $after="")
  !local $and_str = ""

  !local $starts_str = ""
  !if $start != ""
    !$starts_str = "starts " + $start
    !$and_str = " and "
  !endif

  !local $ends_str = ""
  !if $end != ""
    !$ends_str = $and_str + " ends " + $end
    !$and_str = " and "
  !endif

  !local $lasts_str = ""
  !if $len != ""
    !$lasts_str = $and_str + " lasts " + $len
  !endif

  !local $alias_str = ""
  !if $alias != ""
     !$alias_str = "as [" + $alias + "] "
  !endif

  [$name] $alias_str $starts_str $ends_str $lasts_str

  !if $after != ""
    [$after] -> [$name]
  !endif

!endprocedure

!procedure $update_task($name, $percent)
  !local $bg=white

  !if $percent == 100
    !$bg=green
  !elseif $percent < 25
    !$bg=red
  !elseif $percent < 50
    !$bg=orange
  !elseif $percent < 75
    !$bg=yellow
  !elseif $percent >= 75
    !$bg=lightgreen
  !endif

  [$name] is $percent% complete and is colored in $bg
!endprocedure

!function $after_task_end($task, $len="") !return $len + " after [" + $task + "]'s end"

!procedure $milestone($name, $date)
  [$name] happens $date
!endprocedure

!procedure $same_row($t1, $t2)
  [$t1] displays on same row as [$t2]
!endprocedure

/'
 ' Sequence Diagram
 '/

!procedure $init_seq()
  hide footbox
  autonumber "<b>0 : "
!endprocedure

!procedure $init_long_seq()
  autonumber "<b>0 : "
!endprocedure

!procedure $scene($title)
  == $title ==
!endprocedure

!procedure $trans($src, $dst, $msg, $resp)
  $src -> $dst : $msg
  $dst --> $src : $resp
!endprocedure
