Enlightenment CVS committal

Author  : leviathan
Project : e17
Module  : libs/etk-perl

Dir     : e17/libs/etk-perl/etk_test


Modified Files:
        etk_test.pl 


Log Message:
- Complete tree model implementation (now columns can have many models)
- Add alpha to colorpicker
- Add documentation to Etk::Simple

===================================================================
RCS file: /cvs/e/e17/libs/etk-perl/etk_test/etk_test.pl,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -3 -r1.47 -r1.48
--- etk_test.pl 21 Jan 2007 01:12:44 -0000      1.47
+++ etk_test.pl 29 Jan 2007 13:55:44 -0000      1.48
@@ -440,8 +440,10 @@
     $vbox->Append($tree, BoxStart, BoxExpandFill, 0);
     
     my $col1 = $tree->ColNew("Column 1", 130, 0.0);
-#    $col1->ModelAdd(new Etk::Tree::Model::Image);
-    $col1->ModelAdd(new Etk::Tree::Model::Text);
+    my $mod1 = new Etk::Tree::Model::Image;
+    $col1->ModelAdd($mod1);
+    my $mod2 = new Etk::Tree::Model::Text;
+    $col1->ModelAdd($mod2);
 
     my $col2 = $tree->ColNew("Column 2", 60, 1.0);
     $col2->ModelAdd(new Etk::Tree::Model::Double);
@@ -452,27 +454,48 @@
     my $col4 = $tree->ColNew("Column 4", 60, 0.5);
     $col4->ModelAdd(new Etk::Tree::Model::Checkbox);
 
-  #  $tree->SignalConnect("row_clicked",  sub {
-#      my $self = shift;
-#      my $row = shift;
-#      my $event = shift;
-       # fields get.
+    my $status = Etk::StatusBar->new();
+    $vbox->Append($status, BoxStart, BoxFill, 0);
 
- #   });
+    $tree->SignalConnect("row_clicked",  sub {
+       my $self = shift;
+       my $row = shift;
+       my $event = shift;
+       my $mod = $row->ModelFieldsGet($mod2);
+       my $msg = "Row \"$mod\" clicked (";
+       $msg .= $event->{flags} & MouseTripleClick ? "Triple" :
+               $event->{flags} & MouseDoubleClick ? "Double" : "Single";
+       $msg .= ")";
+       $status->MessagePush($msg, 0);
+
+    });
 
     $col4->SignalConnect("cell_value_changed", 
        sub {
                my $self = shift;
                my $row = shift;
 
-#              if ($row->FieldsGet($self)) {
-#                      print "Checkbox activated\n";
-#              } else {
-#                      print "Checkbox deactivated\n";
-#              }
+               my $mod = $row->ModelFieldsGet($mod2);
+               my $msg = "Row \"$mod\" has been " . ($row->FieldsGet($self) ? 
"checked" : "unchecked");
+               $status->MessagePush($msg, 0);
        }
     );
 
+    $tree->SignalConnect("key_down", sub {
+       my $self = shift;
+       my $event = shift;
+       if ($event->{keyname} eq "Delete") {
+               my $row;
+               for ($row = $tree->FirstRowGet(); $row; $row = 
$row->WalkNext(1)) {
+                       if ($row->IsSelected()) {
+                               $row->Delete();
+                       }
+               }
+               Etk::Signal::Stop();
+       }
+
+    });
+
     $tree->Build();
     
     $tree->Freeze();
@@ -481,21 +504,27 @@
     {
        my $row = $tree->RowAppend();
 
-       $row->FieldsSet(0, $col1, # Etk::Theme::IconGet(), 
-#              Etk::Stock::KeyGet(PlacesUserHome, SizeSmall), 
-               "Row " . (($i*3)+1));
+       $row->ModelFieldsSet(0, $mod1,  Etk::Theme::IconGet(), 
+               Etk::Stock::KeyGet(PlacesUserHome, SizeSmall));
+       $row->ModelFieldsSet(0, $mod2, "Row " . (($i*3)+1));
        $row->FieldsSet(0, $col2, 10.0);
        $row->FieldsSet(0, $col3, "images/1star.png");
        $row->FieldsSet(0, $col4, 0);
 
+
        my $row2 = $tree->RowAppend($row);
-       $row2->FieldsSet(0, $col1, "Row " . (($i*3)+2));
+       $row2->ModelFieldsSet(0, $mod1,  Etk::Theme::IconGet(), 
+               Etk::Stock::KeyGet(PlacesUserHome, SizeSmall));
+       $row2->ModelFieldsSet(0, $mod2, "Row " . (($i*3)+2));
+       
        $row2->FieldsSet(0, $col2, 20.0);
        $row2->FieldsSet(0, $col3, "images/2stars.png");
        $row2->FieldsSet(0, $col4, 1);
 
        my $row3 = $tree->RowAppend($row2);
-       $row3->FieldsSet(0, $col1, "Row " . (($i*3)+3));
+       $row3->ModelFieldsSet(0, $mod1,  Etk::Theme::IconGet(), 
+               Etk::Stock::KeyGet(PlacesUserHome, SizeSmall));
+       $row3->ModelFieldsSet(0, $mod2, "Row " . (($i*3)+3));
        $row3->FieldsSet(0, $col2, 30.0);
        $row3->FieldsSet(0, $col3, "images/3stars.png");
        $row3->FieldsSet(0, $col4, 1);
@@ -503,9 +532,6 @@
     }
 
     $tree->Thaw();
-
-    my $status = Etk::StatusBar->new();
-    $vbox->Append($status, BoxStart, BoxFill, 0);
     
     $win->ShowAll();
 }
@@ -1200,7 +1226,9 @@
 {
     my $win = Etk::Window->new();
     $win->TitleSet("Etk-Perl Color Picker Test");
-    $win->Add(Etk::Colorpicker->new());
+    my $cp = Etk::Colorpicker->new();
+    $cp->UseAlphaSet(1);
+    $win->Add($cp);
     
     $win->ShowAll();
 }



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to