%( $Id: deslist_aad.txt mickroue(a)yahoo.fr 20140901 templ=templm %)

%( %import;anclist_deslist_stat_age %)
%( begin $Id: anclist_deslist_stat_age.txt mickroue(a)yahoo.fr 20131203 templ=templm %)

%define;stat_age1()
  <div class="col">
    110<br%/>100<br%/>90<br%/>80<br%/>
    70<br%/>60<br%/>50<br%/>40<br%/>
    30<br%/>20<br%/>10<br%/>0
  </div>
  <div class="body">
    %reset_count;
    %foreach;sorted_list_item;
      %if;(item.1 = 0)
        %incr_count;
        %if;(next_item.2 != item.2)
          %let;l_width0;%expr(count * l_size)%in;
          %let;l_width;%if;(l_width0 > max_width)%max_width;%else;%l_width0;%end;%in;
          <span class="a%item.1;%item.2;" style="border-left:solid %l_width;px #4682B4;">%count;</span>
          %reset_count;
        %end;
      %end;
      %if;(item.1 = 1)
        %incr_count;
        %if;(next_item.2 != item.2)
          %let;l_width0;%expr(count * l_size)%in;
          %let;l_width;%if;(l_width0 > max_width)%max_width;%else;%l_width0;%end;%in;
          <span class="a%item.1;%item.2;" style="border-left:solid %l_width;px #FF69B4;">%count;</span>
          %reset_count;
        %end;
      %end;
    %end;
  </div>
%end;

%define;stat_age2()
  %let;l_height;%expr(40 + (count *2))%in;
  <div class="body bcbg1" style="height:%l_height;px;">
    %reset_count;
    %foreach;sorted_list_item;
      %incr_count;
      %let;l_top;%expr(20 + (count * 2))%in;
      %let;l_left0;%expr(20 + item.2 * 8)%in;
      %let;l_left;%if;(l_left0 > 840)840%else;%l_left0;%end;%in;
      %if;(count = 1)
        <span class="date">%item.1;</span>
        <span class="lev">%level;</span>
      %end;
      %if;(next_item.1 = "")<span class="date" style="top:%l_top;px;">%item.1;</span>%end;
      <a href="%prefix;i=%item.4;" class="link"
         style="color:#%if;(item.3 = 0)4682B4;%else;FF69B4%end;;left:%l_left;px;top:%l_top;px;">%item.2;</a>
    %end;
  </div>
%end;
%( end $Id: anclist_deslist_stat_age.txt mickroue(a)yahoo.fr 20131203 templ=templm %)

%define;desc_aad(curlev, maxlev)
  %let;l_aby;%birth_date.year;%in;
  %let;l_ady;%death_date.year;%in;
  %if;(computable_death_age and l_ady >= l_aby)
    %incr_count;
    %let;l_age;%expr((l_ady - l_aby)/10)%in;
    %apply;add_in_sorted_list(sex,l_age,index)
  %end;
  %foreach;family;
    %if;(curlev < maxlev and family.desc_level = curlev and has_children)
      %family.set_infinite_desc_level;
      %foreach;child;
        %apply;desc_aad(curlev+1, maxlev)
      %end;
    %end;
  %end;
%end;

%define;desc_aad1(curlev, maxlev)
  %let;l_aby;%birth_date.year;%in;
  %let;l_ady;%death_date.year;%in;
  %if;(computable_death_age and l_ady >= l_aby)
    %incr_count;
    %let;l_age;%expr(l_ady - l_aby)%in;
    %apply;add_in_sorted_list(l_aby,l_age,sex,index)
  %end;
  %foreach;family;
    %if;(curlev < maxlev and family.desc_level = curlev and has_children)
      %family.set_infinite_desc_level;
      %foreach;child;
        %apply;desc_aad1(curlev+1, maxlev)
      %end;
    %end;
  %end;
%end;

%( age_at_death by generation tl1 = aad %)
<p>%apply;togen(l_v)</p>
%reset_count;
%reset_desc_level;
%empty_sorted_list;
%apply;desc_aad(0,l_v)
%let;max_width;360%in;
%let;l_size;%expr(36 / ((60 + count) / 6 / 10))%in;
<div class="stat_age1 bcbg1">
  <table class="title" width="100%%"><tr>
  <td>[*age]</td>
  <td align="center">[*age at death]
    (<span style="color:#4682B4;"/>[M/F]0</span>,
     <span style="color:#FF69B4;"/>[M/F]1</span>)</td>
  <td align="right"><em>%count; [date/dates]1</em></td>
  </tr></table>
  %apply;stat_age1()
</div>
<div class="stat_age2 bcbg1">
  <table class="title" width="100%%"><tr>
    <td align="center">[*age at death]
        (<span style="color:#4682B4;"/>[M/F]0</span>,
         <span style="color:#FF69B4;"/>[M/F]1</span>)</td>
    <td align="right">[*date of birth]</td>
  </tr></table>
  %reset_desc_level;
  %reset_count;
  %empty_sorted_list;
  %apply;desc_aad1(0,l_v)
  %apply;stat_age2()
</div>

