# # This file is part of Curses-Toolkit # # This software is copyright (c) 2011 by Damien "dams" Krotkine. # # This is free software; you can redistribute it and/or modify it under # the same terms as the Perl 5 programming language system itself. # use warnings; use strict; package Curses::Toolkit::Object::Shape; BEGIN { $Curses::Toolkit::Object::Shape::VERSION = '0.204'; } # ABSTRACT: simple shape class use parent qw(Curses::Toolkit::Object::Coordinates); use Params::Validate qw(SCALAR ARRAYREF HASHREF CODEREF GLOB GLOBREF SCALARREF HANDLE BOOLEAN UNDEF validate validate_pos); # Making it readonly sub set { _die() } sub add { _die() } sub subtract { _die() } sub restrict_to { _die() } sub _die { die " You should not be calling '" . ( caller(1) )[3] . "' on a '" . __PACKAGE__ . "' object, as it's read only."; } # private methods sub _set { my $self = shift; $self->SUPER::set(@_); } 1; __END__ =pod =head1 NAME Curses::Toolkit::Object::Shape - simple shape class =head1 VERSION version 0.204 =head1 DESCRIPTION The Shape is the root window area. This module is the class implementing the Shape. Technically, a Shape is a ReadOnly Coordinate, plus some members, states, flags, and methods. You can have a look at L. =head1 CLASS METHODS Nothing more than L for now =head1 AUTHOR Damien "dams" Krotkine =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2011 by Damien "dams" Krotkine. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut