#!/usr/bin/perl -wT

use strict;
use LWP::Simple;

my $base = "http://www.wxwindows.org/manuals/2.4.0";

# gets the cached page from disk.
sub getmacropage ()
{
  my $retval = "";
  open (PAGE, "<wx424.htm") or die "Couldn't open cached classref: $!";
  while (<PAGE>) { $retval .= $_; }
  close PAGE;
  return $retval;
}

# Get function/macro links
sub wxmacrolist 
{
  #my $page = get("$base/wx424.htm#topic1063")
  #  || return undef;
  my $page = getmacropage();
  my %retval;

  while ($page =~ /HREF="([^"]*)">([^<]*)/g)
  {
    my $url = $1;
    my $name = lc($2);
    if ($name =~ /[^\s]/)
    { $retval{$name} = $url; }
  }
  return %retval;
}
wxmacrolist();

# Get cached class page
sub getclasspage ()
{
  my $retval = "";
  open (PAGE, "<wx26.htm") or die "Couldn't open cached classref: $!";
  while (<PAGE>) { $retval .= $_ . "\n"; }
  close PAGE;
  return $retval;
}

# Get class links
sub wxclasslist
{
  #my $page = get ("$base/wx26.htm#classref") || return undef
  my $page = getclasspage();
  my %retval;
    
  while ($page =~ /HREF="([^"]*)"><B>([^<]*)/g)
  {
    my $url = $1;
    my $name = lc($2);
    if ($name =~ /[^\s]/)
    { $retval{$name} = $url; 
      #print "$name belongs to $url\n";
    }
  }
  return %retval;
}

wxclasslist();
1;

