cvsuser     02/11/01 12:27:12

  Modified:    App-Widget/lib/App/Widget AppFrame.pm DataTable.pm
                        HierView.pm RepositoryEditor.pm
  Log:
  get the new framework working
  
  Revision  Changes    Path
  1.3       +29 -27    p5ee/App-Widget/lib/App/Widget/AppFrame.pm
  
  Index: AppFrame.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/App-Widget/lib/App/Widget/AppFrame.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -w -r1.2 -r1.3
  --- AppFrame.pm       25 Oct 2002 19:50:19 -0000      1.2
  +++ AppFrame.pm       1 Nov 2002 20:27:12 -0000       1.3
  @@ -1,10 +1,10 @@
   
   ######################################################################
  -## $Id: AppFrame.pm,v 1.2 2002/10/25 19:50:19 spadkins Exp $
  +## $Id: AppFrame.pm,v 1.3 2002/11/01 20:27:12 spadkins Exp $
   ######################################################################
   
   package App::Widget::AppFrame;
  -$VERSION = do { my @r=(q$Revision: 1.2 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
  +$VERSION = do { my @r=(q$Revision: 1.3 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
   
   use App;
   use App::Widget;
  @@ -74,22 +74,23 @@
       $name = $self->{name};
       $context   = $self->{context};
   
  +#print ">>> AppFrame->handle_event($wname, $event, @args) name=$name\n";
  +
       if ($wname eq "$name.selector" && $event eq "select") {
           $selector_widget = $context->widget("$name.selector");
           $screen_wname    = $selector_widget->get_selected("wname");
           $screen_widget   = $context->widget($screen_wname);
   
           $screen_settings = $selector_widget->get_selected("set");
  -        $self->{context}->dbgprint("AppFrame->handle_event($wname, $event, @args): 
$screen_settings [",
  -            join(",",%$screen_settings), "]")
  +        $self->{context}->dbgprint("AppFrame->handle_event($wname, $event, @args): 
screen_settings=$screen_settings")
               if ($App::DEBUG && $self->{context}->dbg(1));
  +
           if ($screen_settings) {
               foreach (keys %$screen_settings) {
                   $screen_widget->set($_, $screen_settings->{$_});
               }
  -            return 1;
           }
  -
  +        else {
           $screen_msg = $selector_widget->get_selected("send");
           if ($screen_msg && ref($screen_msg) eq "ARRAY" && $#$screen_msg >= 1) {
               my ($target_widget, $target_wname, $method, @args);
  @@ -97,21 +98,22 @@
               $target_widget = $context->widget($target_wname);
               $target_widget->$method(@args);
           }
  -
  -        my $frame = $selector_widget->get_selected("frame");
  -        if (defined $frame) {
  -            my ($key);
  -            foreach $key (keys %$frame) {
  -                $self->set($key,$frame->{$key});
  -            }
           }
   
  -        my $target = $selector_widget->get_selected("target");
  -        if ($target) {
  -            $main::target = $target;
  -        }
  +        #my $frame = $selector_widget->get_selected("frame");
  +        #if (defined $frame) {
  +        #    my ($key);
  +        #    foreach $key (keys %$frame) {
  +        #        $self->set($key,$frame->{$key});
  +        #    }
  +        #}
  +
  +        #my $target = $selector_widget->get_selected("target");
  +        #if ($target) {
  +        #    $main::target = $target;
  +        #}
   
  -        $self->{noframe} = $selector_widget->get_selected("noframe");
  +        #$self->{noframe} = $selector_widget->get_selected("noframe");
   
           return 1;
       }
  @@ -171,9 +173,9 @@
               $screen_bgcolor    = "#cccccc";
           }
   
  -        if ($self->{noframe}) {
  -            return $screen;    # no need to generate a frame
  -        }
  +        #if ($self->{noframe}) {
  +        #    return $screen;    # no need to generate a frame
  +        #}
   
           #$screentitle_widget = $context->widget("$name.screentitle",
           #    -label     => $screentitle_value,
  
  
  
  1.3       +15 -17    p5ee/App-Widget/lib/App/Widget/DataTable.pm
  
  Index: DataTable.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/App-Widget/lib/App/Widget/DataTable.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -w -r1.2 -r1.3
  --- DataTable.pm      25 Oct 2002 19:50:19 -0000      1.2
  +++ DataTable.pm      1 Nov 2002 20:27:12 -0000       1.3
  @@ -1,10 +1,10 @@
   
   ######################################################################
  -## $Id: DataTable.pm,v 1.2 2002/10/25 19:50:19 spadkins Exp $
  +## $Id: DataTable.pm,v 1.3 2002/11/01 20:27:12 spadkins Exp $
   ######################################################################
   
   package App::Widget::DataTable;
  -$VERSION = do { my @r=(q$Revision: 1.2 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
  +$VERSION = do { my @r=(q$Revision: 1.3 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
   
   use App;
   use App::Widget;
  @@ -52,7 +52,7 @@
   #                      [ "Smith, Ken",    "1215 Interloke Pass", "Jonesboro", "GA", 
"US", "770-603-1813" ],
   #                      [ "Smith, Mary",   "1215 Interloke Pass", "Jonesboro", "GA", 
"US", "770-603-1814" ], ];
   # {startrow}       = 1
  -# {maxrows}        = 25
  +# {maxrows}        = 20
   # {scrollable}     = 0;
   # {sortable}       = 0;
   # {filterable}     = 0;
  @@ -75,6 +75,7 @@
   sub init {
       my $self = shift;
       $self->SUPER::init(@_);
  +    $self->{table} = $self->{name} if (!$self->{table});
   
       $self->{context}->dbgprint("DataTable->init()")
           if ($App::DEBUG && $self->{context}->dbg(1));
  @@ -106,14 +107,14 @@
       }
       elsif ($wname eq "$name.next") {
           $startrow = $self->get("startrow",1,1);
  -        $maxrows  = $self->get("maxrows",25,1);
  +        $maxrows  = $self->get("maxrows",20,1);
           $startrow += $maxrows;
           $self->set("startrow",$startrow);
           return 1;
       }
       elsif ($wname eq "$name.prev") {
           $startrow = $self->get("startrow",1,1);
  -        $maxrows  = $self->get("maxrows",25,1);
  +        $maxrows  = $self->get("maxrows",20,1);
           $startrow -= $maxrows;
           $startrow = 1 if ($startrow < 1);
           $self->set("startrow",$startrow);
  @@ -194,7 +195,7 @@
           my ($repository, $rep, $table);
           $repository = $self->{repository};
           $table      = $self->{table};
  -        $rep        = $self->{context}->repository($repository) if ($repository);
  +        $rep        = $self->{context}->repository($repository);
           if ($rep && $table) {
               $columns = $rep->get_column_names($table);
           }
  @@ -268,8 +269,9 @@
           $paramvalues = $self->substitute($self->get("paramvalues"));
           $sql         = $self->substitute($sql, $paramvalues);
           $startrow    = $self->get("startrow", 1, 1);
  -        $maxrows     = $self->get("maxrows", 25, 1);
  -        $rows        = [ $rep->exec_select($sql, $startrow, $startrow+$maxrows-1) ];
  +        $maxrows     = $self->get("maxrows", 20, 1);
  +        $endrow      = ($maxrows != 0) ? ($startrow + $maxrows - 1) : 0;
  +        $rows        = [ $rep->exec_select($sql, $startrow, $endrow) ];
           $error       = $rep->error();
           if ($#$rows == -1 && $error) {
               $context->add_message("SQL error: $error<br>$sql");
  @@ -280,10 +282,6 @@
       }
       else {
           $table = $self->get("table");
  -        if (! $table) {
  -            $context->add_message("No table specified");
  -            return;
  -        }
       
           $columns = $self->get_columns();
           if (! defined $columns || $#$columns == -1) {
  @@ -361,10 +359,8 @@
           $ordercols   = $self->get("ordercols");
           $directions  = $self->get("directions");
           $startrow    = $self->get("startrow", 1, 1);
  -        $startrow    = 1 if ($startrow eq "");
  -        $maxrows     = $self->get("maxrows", 25, 1);
  -        $maxrows     = 0 if ($maxrows eq "");
  -        $endrow      = ($maxrows != 0) ? ($startrow + $maxrows - 1) : 
$startrow+100000;
  +        $maxrows     = $self->get("maxrows", 20, 1);
  +        $endrow      = ($maxrows != 0) ? ($startrow + $maxrows - 1) : 0;
   
           if ($App::DEBUG && $self->{context}->dbg(1)) {
               $self->{context}->dbgprint("DataTable->load(): 
select_rows($table,c=$columns,p=$params,pv=$paramvalues,oc=$ordercols,$startrow,$endrow,$directions);");
  @@ -530,12 +526,14 @@
       my ($rowactions, $rowactiondefs, $rowaction, $rowactiondef);
       my (@select_actions, @single_select_actions, @row_actions);
   
  +    $table            = $self->get("table");
  +    return "No table defined." if (!$table);
       $columns          = $self->get_columns();
  +    return "No columns defined for table [$table]. (maybe it doesn't exist)" if 
(!$columns || $#$columns == -1);
       $headings         = $self->get_headings();
       $data             = $self->get_data();
       $startrow         = $self->get("startrow",         1);
       $title            = $self->get("title");
  -    $table            = $self->get("table");
       $width            = $self->get("width");
       $bgcolor          = $self->get("bgcolor");
       $fontColor        = $self->get("fontColor");
  
  
  
  1.3       +11 -3     p5ee/App-Widget/lib/App/Widget/HierView.pm
  
  Index: HierView.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/App-Widget/lib/App/Widget/HierView.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -w -r1.2 -r1.3
  --- HierView.pm       25 Oct 2002 19:50:19 -0000      1.2
  +++ HierView.pm       1 Nov 2002 20:27:12 -0000       1.3
  @@ -1,10 +1,10 @@
   
   ######################################################################
  -## $Id: HierView.pm,v 1.2 2002/10/25 19:50:19 spadkins Exp $
  +## $Id: HierView.pm,v 1.3 2002/11/01 20:27:12 spadkins Exp $
   ######################################################################
   
   package App::Widget::HierView;
  -$VERSION = do { my @r=(q$Revision: 1.2 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
  +$VERSION = do { my @r=(q$Revision: 1.3 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
   
   use App;
   use App::Widget;
  @@ -70,6 +70,7 @@
   sub handle_event {
       my ($self, $wname, $event, @args) = @_;
       my ($node, $nodenumber, $x, $y);
  +#print ">>> HierView->handle_event($wname, $event, @args)\n";
   
       $node = $self->get("node");
       $self->set("node", $node);
  @@ -88,9 +89,16 @@
       }
       elsif ($event eq "select") {
           ($nodenumber, $x, $y) = @args;
  +#print ">>> HierView->handle_event() selected=[$self->{selected}]\n";
           $self->set("selected", $nodenumber);  # save node number
  +#print ">>> HierView->handle_event() selected=[$self->{selected}]\n";
           # intentionally bubble "select" event to the container
  -        return $self->SUPER::handle_event($wname, $event, @args);
  +        if ($wname =~ /^(.*)\.([^.]+)$/) {
  +            my $parent = $1;
  +            my $result = $self->{context}->widget($parent)->handle_event($wname, 
$event, @args);
  +#print ">>> HierView->handle_event() selected=[$self->{selected}]\n";
  +            return $result;
  +        }
       }
       else {
           return $self->SUPER::handle_event($wname, $event, @args);
  
  
  
  1.3       +4 -2      p5ee/App-Widget/lib/App/Widget/RepositoryEditor.pm
  
  Index: RepositoryEditor.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/App-Widget/lib/App/Widget/RepositoryEditor.pm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -w -r1.2 -r1.3
  --- RepositoryEditor.pm       25 Oct 2002 19:50:19 -0000      1.2
  +++ RepositoryEditor.pm       1 Nov 2002 20:27:12 -0000       1.3
  @@ -1,6 +1,6 @@
   
   ######################################################################
  -## $Id: RepositoryEditor.pm,v 1.2 2002/10/25 19:50:19 spadkins Exp $
  +## $Id: RepositoryEditor.pm,v 1.3 2002/11/01 20:27:12 spadkins Exp $
   ######################################################################
   ## x TODO: add "summary" feature
   ## x TODO: add cross-tabulation
  @@ -32,11 +32,13 @@
   ## x TODO: add default {summary} formula as sum(COL)            (for numbers)
   
   package App::Widget::RepositoryEditor;
  -$VERSION = do { my @r=(q$Revision: 1.2 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
  +$VERSION = do { my @r=(q$Revision: 1.3 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
   
   use App;
   use App::Widget;
   @ISA = ( "App::Widget" );
  +
  +use App::Repository;
   
   use strict;
   
  
  
  


Reply via email to