I have a large data set that I wanted represented on a Wx::Grid control using the Wx::PlGridTable as the interface between the table and the data objects. I've overloaded the GetAttr function for my table since I have some processing I needed done on the attributes based on the data.
The problem is that the GetAttr function is never called when the grid is painted. As a result all of the attributes for all of the cells are simply the defaults (white background, writable, black foreground, text editor). Here is a snippet of my code, have I done somthing wrong? ################################################################################ package MyGridTable; ################################################################################ use strict; use Carp qw( cluck carp croak confess ); use Data::Dumper; use Wx; use base qw( Wx::PlGridTable ); use Wx qw( :everything ); ####################################### sub new ####################################### { my($class) = @_; my $this = $class->SUPER::new; return $this; } #... ####################################### sub GetAttr ####################################### { my ($this, $row, $col, $kind) = @_; my $attr = new Wx::GridCellAttr(); # ... do things to attribute based on data object return $attr; } 1; Later in the code this is assigned to the grid in this manner... my $gridTable = new MyGridTable(); $grid->SetTable( $gridTable, 1 ); Any help would be appreciated. Brian Jones