#!/usr/bin/perl
use strict;
use warnings;
use Curses::UI;

my $cui = Curses::UI->new;

# Menue definieren
my @menu =
    (
     { -label => 'Datei',
       -submenu => [ 
                    { -label => 'Laden', -value => \&load },
                    { -label => 'Speichern', -value => \&save },
                    { -label => 'Exit', -value => \&bye }
                   ]
     }, 
     { -label => 'Bearbeiten',
       -submenu => [ 
                    { -label => 'Ausschneiden', -value => \&oops },
                    { -label => 'Kopieren', -value => \&oops },
                    { -label => 'Einfuegen', -value => \&oops }
                   ]
     }, 
    );

# Menueleiste hinzufuegen
my $menu = $cui->add
   (
   'menu', 'Menubar',
   -menu => \@menu,
   );

my $win = $cui->add
   (
   'win', 'Window',
   -border => 1,
   -y      => 1,
   -width  => 60,
   -height => 10,
   );

my $edit = $win->add
   (
   'text', 'TextEditor',
   -text => "Bitte hier Text eingeben",
   );

$cui->set_binding(sub { $menu->focus()}, "\cX");
$edit->focus();

$cui->mainloop();

sub load
  {
  my $file = $cui->filebrowser(
        -path => "/home/plate",
        -show_hidden => 0,
        );
  }

sub save
  {
  $cui->dialog("File saved!");
  }

sub oops
  {
  $cui->error("Nicht implementiert!");
  }

sub bye
  {
  my $return = $cui->dialog
                 (
                  -message   => "Wirklich beenden?",
                  -title     => "Sind Sie sicher???", 
                  -buttons   => ['yes', 'no'],
                );
  exit(0) if $return;
  }

