Listing 1

// hyper_link.hpp
struct hyper_link : wnd_extend<label, hyper_link> {
  void link(const string & l);
  const string & link() const;
  ...
};
// hyper_link.cpp
struct hyper_link_handler 
    : event_handler<hyper_link_handler, label, hyper_link> {
  handle_event on_move() {
      ...
     return event<WM_MOUSEMOVE>().HANDLED_BY(&me::on_move);   
  }
  ...
};
// code
wnd<> w = create_wnd<hyper_link>(parent);
w->link("http://www.torjo.com");