use CGI ':all'; ## Starting Frameset Definition sub makeframeset { # create document frameset. top area for ui # bottom area for XMLRPC trace my $self = self_url; print header, frameset({-border => "1", -rows => "1*,1*", cols => "*"}, frame({-name => 'main', -src => "$self?run=page"}), frame({-name => 'log', -src => "$self?run=log"}) ), end_html; } #### ## Write a message to the log area sub write_log { # write message to the log frame my $messages = \@_; print header, start_html(-target => 'log'), pre(join "\n", @$messages), end_html; } #### ## Write content to the main page area sub write_content { # write html to the main frame my $html = \@_; print header, start_html(-target => 'main'), join "\n", @$html, end_html; } #### my $run = param("run"); if ($run eq 'log') { write_log('Log Message Area'); } elsif ($run eq 'page') { write_content('Main Area'); write_content("Simulate Run"); } else { write_content("running..."); write_log("foo"); }