Tk-DBI-Tree
view release on metacpan or search on metacpan
package Tk::DBI::Tree;
#------------------------------------------------
# automagically updated versioning variables -- CVS modifies these!
#------------------------------------------------
our $Revision = '$Revision: 1.11 $';
our $CheckinDate = '$Date: 2003/08/13 12:58:13 $';
our $CheckinUser = '$Author: xpix $';
# we need to clean these up right here
$Revision =~ s/^\$\S+:\s*(.*?)\s*\$$/$1/sx;
$CheckinDate =~ s/^\$\S+:\s*(.*?)\s*\$$/$1/sx;
$CheckinUser =~ s/^\$\S+:\s*(.*?)\s*\$$/$1/sx;
#-------------------------------------------------
#-- package Tk::DBI::Tree -----------------------
#-------------------------------------------------
use DBIx::Tree;
use Tk::Tree;
use Tk::Compound;
use Tk::ItemStyle;
use Tk::ResizeButton;
use Term::ANSIColor;
use base qw/Tk::Derived Tk::Frame/;
use strict;
Construct Tk::Widget 'DBITree';
# ------------------------------------------
sub ClassInit
# ------------------------------------------
{
my($class,$mw) = @_;
}
# ------------------------------------------
sub Populate {
# ------------------------------------------
my ($obj, $args) = @_;
my $style;
$obj->{dbh} = delete $args->{'-dbh'} || return error("No DB-Handle!");
$obj->{table} = delete $args->{'-table'} || return error("No Table!");
$obj->{debug} = delete $args->{'-debug'} || 0;
$obj->{idx} = delete $args->{'-idx'} || return error("No IndexColumn!");
$obj->{fields} = delete $args->{'-fields'} || return error("No Fields!");
$obj->{textcolumn} = delete $args->{'-textcolumn'} || return error("No Textcolumn!");
$obj->{joiner} = delete $args->{'-joiner'};
$obj->{start_id} = delete $args->{'-start_id'} || 1;
$obj->{command} = delete $args->{'-command'};
$obj->{parent_id} = delete $args->{'-parent_id'} || return error("No Parent_id!");
$obj->{columnWidths} = delete $args->{'-columnWidths'};
$obj->{maxchars} = delete $args->{'-maxchars'};
$obj->{colNames} = delete $args->{'-colNames'};
$obj->{entry_create_cb} = delete $args->{'-entry_create_cb'};
$obj->{time_column} = delete $args->{'-time_column'};
$obj->{opencmd} = delete $args->{'-opencmd'};
$obj->{closecmd} = delete $args->{'-closecmd'};
my $h_style = delete $args->{'-highlight'} || [-foreground => 'blue'];
my $n_style = delete $args->{'-normal'} || [-foreground => 'black'];
$obj->{highlight} = $obj->ItemStyle('imagetext', @{$h_style});
$obj->{normal} = $obj->ItemStyle('imagetext', @{$n_style});
$obj->SUPER::Populate($args);
my %specs;
$specs{refresh} = [qw/METHOD refresh Refresh/, undef];
$specs{close_all} = [qw/METHOD close_all Close_all/, undef];
$specs{listEntrys} = [qw/METHOD listEntrys ListEntrys/, undef];
$specs{remember} = [qw/METHOD remember Remember/, undef];
$specs{select_entrys} = [qw/METHOD select_entrys Select_entrys/, undef];
$specs{info} = [qw/METHOD info Info/, undef];
$specs{infozoom} = [qw/METHOD infozoom InfoZoom/, undef];
$specs{color_all} = [qw/METHOD color_all Color_All/, undef];
$specs{get_id} = [qw/METHOD get_id Get_Id/, undef];
$specs{parent_id} = [qw/METHOD parent_id Parent_Id/, undef];
$specs{see} = [qw/METHOD see See/, undef];
$specs{childs} = [qw/METHOD childs Childs/, undef];
$specs{neu} = [qw/METHOD neu Neu/, undef];
( run in 1.376 second using v1.01-cache-2.11-cpan-d7a12ab2c7f )