OK, I almost got it now…
I extended the Walker_Page Class:
class Walker_Child_Classes extends Walker_page {
function start_el(&$output, $page, $depth, $args, $current_page) {
if ( $depth )
$indent = str_repeat("\t", $depth);
else
$indent="";
extract($args, EXTR_SKIP);
$output .= $indent . '<li class="' . apply_filters( 'the_title', $page->post_name, $page->ID ) . '"><a href="' . get_page_link($page->ID) . '" title="' . esc_attr( wp_strip_all_tags( apply_filters( 'the_title', $page->post_title, $page->ID ) ) ) . '">' . $link_before . apply_filters( 'the_title', $page->post_title, $page->ID ) . $link_after . '</a>';
}
}
And added the following to my Page Template:
$sWalker = new Walker_Child_Classes();
wp_list_pages( array( 'title_li' => null, 'walker' => $sWalker, 'sort_column' => 'menu_order', 'child_of' => $post->ID ) );
Which results in:
<ul class="timeline">
<li class="Future">
<li class="Current">
<li class="Past">
</ul>
I am not happy about the Capitals (it takes the Page name after all), but if this is what it is, then I can live with that…
If anyone has a suggestion on how to get the real slug that would be highly appreciated!
Edited the code with the suggestion of @mike23