NAME

Y - POE client to the Y windowing system.

SYNOPSIS

use Y;
use Y::Window;
use Y::Label;
use POE;

POE::Session->create(
    inline_states => {
        _start    => sub { Y->initialize('connected') },
        close     => sub { $_[KERNEL]->post(Y => "shutdown") },
        connected => sub {
            my $window = new Y::Window;
            $window->set_property(title => "Test Window");

            my $label = new Y::Label;
            $label->set_property(text => "Hello, World!");

            $window->set_child($label);

            $window->connect_signal(requestClose => 'close');

            $window->show;
            $_[HEAP]->{window} = $window;
        },
    }
);
$poe_kernel->run;

DESCRIPTION

Y windows is an X replacement that exposes high level widgets over a network interface. This is very different from the X protocol which only exposes low-level drawing methods.

This module gives an object interface to the high-level protocol using POE as it's event loop. libYperl was modeled after the C++ interface, libYc++, which is part of the Y distribution.

See the examples directory in this distribution.

SEE ALSO

This is a summary of libYperl's modules.

Y

Y is a set of class methods and POE state handlers. It handles synchronous IO for messages that need an immediate responce, creation of the POE session, connection to the Y server.

Y::Object

This is a base class for Y::Widget. It handles basic object properties, event dispatch to sessions and event registration, object hierarchy, object destruction.

Y::Widget

Here you will find all methods common to widgets (currently none). This class does not do anything yet. It is here simply to provide a means to subclass.

Y::Button
Y::Canvas
Y::CheckBox
Y::Console
Y::Constants
Y::Context
Y::GridLayout
Y::Label
Y::Menu
Y::Object
Y::Widget
Y::Window

BUGS

Currently these docs are hardly even started.

AUTHOR

Scott Beck <sbeck@gossamer-threads.com>

COPYRIGHT AND LICENSE

Except where otherwise noted, Y is Copyright 2003-2004 Scott Beck. All rights reserved. Y is free software; you may redistribute it and/or modify it under the same terms as Perl itself.