Search code examples
perlcurses

Refresh widget(s)


If I have a window created like this

my $cui = new Curses::UI( -color_support => 1 );
my $win1 = $cui->add(
                     'win1', 'Window',
                     -y    => 0,
             );

How can I enforce changes made to its widgets.

I tried

$cui->refresh();

and

$win1->refresh();

Even

Curses::refresh($win1);

But they all cause fatal error

argument 0 to Curses function 'refresh' is not a Curses window at ....

Solution

  • Thanks to kba. Widgets and windows should be scheduled for drawing like this

    $win1->intellidraw();
    ...
    $statusBar->intellidraw();