in reply to
mixing curses::ui with stdout program
Alrighty, try this:
#!/usr/bin/env perl
use strict;
use warnings;
use Curses::UI;
my $cui = new Curses::UI(
-color_support => 1,
);
my $window = $cui->add(
"main_window",
"Window",
-width => 70,
-height => 4,
);
my $text_editor = $window->add(
"description_text",
"TextEditor",
-text => "",
-title => "Enter Description",
-border => 1,
-singleline => 1,
-width => 40,
-bfg => "red",
-titlereverse => 0,
-showlines => 1,
-x => 0,
-y => 0,
);
my $okay_button = $window->add(
"buttons",
"Buttonbox",
-border => 1,
-width => 6,
-bfg => "blue",
-x => 40,
-y => 0,
-buttons => [
{
-label => "Okay",
-value => 1,
-shortcut => "o",
-onpress => sub {
$cui->le
+ave_curses();
print "O
+utside of mainloop!\n";
sleep(2)
+;
$cui->re
+set_curses();
},
},
],
);
my $exit_button = $window->add(
"exit",
"Buttonbox",
-border => 1,
-width => 6,
-bfg => "blue",
-x => 46,
-y => 0,
-buttons => [
{
-label => "Exit",
-value => 1,
-shortcut => "x",
-onpress => sub { $cui->
+mainloopExit; },
},
],
);
$text_editor->focus;
$cui->mainloop;
Now, using the Okay button flashes you to the terminal for a couple seconds to see the output of print and then goes back to Curses.
Hope this helps