solved! forgot use Glib qw(TRUE FALSE);

thanks!



On Sat, Jul 25, 2009 at 6:40 PM, muppet <sc...@asofyet.org> wrote:

>
> On Jul 24, 2009, at 11:34 PM, anguila wrote:
>
>  Trying the first option it seems not recognize sensible option:
>> GLib-GObject-WARNING **: unable to set property `visible' of type
>> `gboolean' from value of type `gchararray'
>>
>> With the second option it works, but still visible:
>>
>>    $tc_pbar->set_cell_data_func ($pbar,
>>       sub {
>>           my ($column, $cell, $model, $iter) = @_;
>>
>>           my $string = $model->get_string_from_iter ($iter);
>>           if ($string!~/\d:\d:0/) {
>>               # we should show the progress bar
>>               $cell->set (visible => FALSE, value => $value);
>>
>
> Is that a typo?  (Should be TRUE here, not FALSE.)
>
>            } else {
>>               # we should NOT show the progress bar, so don't
>>               $cell->set (visible => FALSE,value=>22);
>>                print "pbar to off!\n";
>>           }
>>       });
>>
>> All the 3rd child want to make pbar visible=>false. I tried and i can
>> change the value of all 3rd childs to 22 and it works, but visible=>false
>> doesn't change the state of visibility and i dont understand why because is
>> a attribute og Gtk2::CellRenderer and it should works, but it doesn't.
>>
>> Any idea?
>>
>
> Perplexing.  A quick scan of the gtk+ sources on git.gnome.org shows that
> the cell's visible property is honored by TreeViewColumn when processing
> each row, so this should work just fine.  I may be misreading that
> (gtktreeviewcolumn.c is 3755 lines and a web browser is not as good for
> reading code as vim).
>
> Sanity check:  do you have the constants TRUE and FALSE defined?  (e.g.
> from 'use Glib qw(:constants)').  Is strict turned on?  If perl is not being
> properly strict, it may be interpreting the bareword FALSE as a string, and
> 'FALSE' is not an empty string and therefore is logically true.
>
>
> What if you set the other properties before setting visible, e.g.
>
>    } else {
>        # we should NOT show the progress bar
>        $cell->set (text => '', value => 0, width => 0, visible => FALSE);
>
>
>
> --
> Doing a good job around here is like wetting your pants in a dark suit; you
> get a warm feeling, but no one notices.
>  -- unknown
>
>
>
_______________________________________________
gtk-perl-list mailing list
gtk-perl-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-perl-list

Reply via email to