|
- package Term::Caca::Constants;
-
- use strict;
- use base 'Exporter';
- use vars qw(@EXPORT_OK %EXPORT_TAGS $VERSION);
-
- $VERSION = '0.9';
-
- use constant {
-
- ## enum caca_color
-
- CACA_COLOR_BLACK => 0,
- CACA_COLOR_BLUE => 1,
- CACA_COLOR_GREEN => 2,
- CACA_COLOR_CYAN => 3,
- CACA_COLOR_RED => 4,
- CACA_COLOR_MAGENTA => 5,
- CACA_COLOR_BROWN => 6,
- CACA_COLOR_LIGHTGRAY => 7,
- CACA_COLOR_DARKGRAY => 8,
- CACA_COLOR_LIGHTBLUE => 9,
- CACA_COLOR_LIGHTGREEN => 10,
- CACA_COLOR_LIGHTCYAN => 11,
- CACA_COLOR_LIGHTRED => 12,
- CACA_COLOR_LIGHTMAGENTA => 13,
- CACA_COLOR_YELLOW => 14,
- CACA_COLOR_WHITE => 15,
-
- ## enum caca_feature
-
- CACA_BACKGROUND => 0x10,
- CACA_BACKGROUND_BLACK => 0x11,
- CACA_BACKGROUND_SOLID => 0x12,
-
- CACA_BACKGROUND_MIN => 0x11,
- CACA_BACKGROUND_MAX => 0x12,
-
- CACA_ANTIALIASING => 0x20,
- CACA_ANTIALIASING_NONE => 0x21,
- CACA_ANTIALIASING_PREFILTER => 0x22,
-
- CACA_ANTIALIASING_MIN => 0x21,
- CACA_ANTIALIASING_MAX => 0x22,
-
- CACA_DITHERING => 0x30,
- CACA_DITHERING_NONE => 0x31,
- CACA_DITHERING_ORDERED2 => 0x32,
- CACA_DITHERING_ORDERED4 => 0x33,
- CACA_DITHERING_ORDERED8 => 0x34,
- CACA_DITHERING_RANDOM => 0x35,
-
- CACA_DITHERING_MIN => 0x31,
- CACA_DITHERING_MAX => 0x35,
-
- CACA_FEATURE_UNKNOWN => 0xffff,
-
- ## enum caca_event
-
- CACA_EVENT_NONE => 0x00000000,
- CACA_EVENT_KEY_PRESS => 0x01000000,
- CACA_EVENT_KEY_RELEASE => 0x02000000,
- CACA_EVENT_MOUSE_PRESS => 0x04000000,
- CACA_EVENT_MOUSE_RELEASE => 0x08000000,
- CACA_EVENT_MOUSE_MOTION => 0x10000000,
- CACA_EVENT_RESIZE => 0x20000000,
- CACA_EVENT_ANY => 0xff000000,
-
- ## enum caca_key
- CACA_KEY_UNKNOWN => 0,
-
- # /* The following keys have ASCII equivalents */
- CACA_KEY_BACKSPACE => 8,
- CACA_KEY_TAB => 9,
- CACA_KEY_RETURN => 13,
- CACA_KEY_PAUSE => 19,
- CACA_KEY_ESCAPE => 27,
- CACA_KEY_DELETE => 127,
-
- # /* The following keys do not have ASCII equivalents but have been
- # * chosen to match the SDL equivalents */
- CACA_KEY_UP => 273,
- CACA_KEY_DOWN => 274,
- CACA_KEY_LEFT => 275,
- CACA_KEY_RIGHT => 276,
- CACA_KEY_INSERT => 277,
- CACA_KEY_HOME => 278,
- CACA_KEY_END => 279,
- CACA_KEY_PAGEUP => 280,
- CACA_KEY_PAGEDOWN => 281,
- CACA_KEY_F1 => 282,
- CACA_KEY_F2 => 283,
- CACA_KEY_F3 => 284,
- CACA_KEY_F4 => 285,
- CACA_KEY_F5 => 286,
- CACA_KEY_F6 => 287,
- CACA_KEY_F7 => 288,
- CACA_KEY_F8 => 289,
- CACA_KEY_F9 => 290,
- CACA_KEY_F10 => 291,
- CACA_KEY_F11 => 292,
- CACA_KEY_F12 => 293,
- CACA_KEY_F13 => 294,
- CACA_KEY_F14 => 295,
- CACA_KEY_F15 => 296,
-
- };
-
- @EXPORT_OK = qw(
-
- CACA_COLOR_BLACK
- CACA_COLOR_BLUE
- CACA_COLOR_GREEN
- CACA_COLOR_CYAN
- CACA_COLOR_RED
- CACA_COLOR_MAGENTA
- CACA_COLOR_BROWN
- CACA_COLOR_LIGHTGRAY
- CACA_COLOR_DARKGRAY
- CACA_COLOR_LIGHTBLUE
- CACA_COLOR_LIGHTGREEN
- CACA_COLOR_LIGHTCYAN
- CACA_COLOR_LIGHTRED
- CACA_COLOR_LIGHTMAGENTA
- CACA_COLOR_YELLOW
- CACA_COLOR_WHITE
-
-
- CACA_BACKGROUND
- CACA_BACKGROUND_BLACK
- CACA_BACKGROUND_SOLID
-
- CACA_BACKGROUND_MIN
- CACA_BACKGROUND_MAX
-
- CACA_ANTIALIASING
- CACA_ANTIALIASING_NONE
- CACA_ANTIALIASING_PREFILTER
-
- CACA_ANTIALIASING_MIN
- CACA_ANTIALIASING_MAX
-
- CACA_DITHERING
- CACA_DITHERING_NONE
- CACA_DITHERING_ORDERED2
- CACA_DITHERING_ORDERED4
- CACA_DITHERING_ORDERED8
- CACA_DITHERING_RANDOM
-
- CACA_DITHERING_MIN
- CACA_DITHERING_MAX
-
- CACA_FEATURE_UNKNOWN
-
-
- CACA_EVENT_NONE
- CACA_EVENT_KEY_PRESS
- CACA_EVENT_KEY_RELEASE
- CACA_EVENT_MOUSE_PRESS
- CACA_EVENT_MOUSE_RELEASE
- CACA_EVENT_MOUSE_MOTION
- CACA_EVENT_RESIZE
- CACA_EVENT_ANY
-
- CACA_KEY_UNKNOWN
-
- CACA_KEY_BACKSPACE
- CACA_KEY_TAB
- CACA_KEY_RETURN
- CACA_KEY_PAUSE
- CACA_KEY_ESCAPE
- CACA_KEY_DELETE
-
- CACA_KEY_UP
- CACA_KEY_DOWN
- CACA_KEY_LEFT
- CACA_KEY_RIGHT
- CACA_KEY_INSERT
- CACA_KEY_HOME
- CACA_KEY_END
- CACA_KEY_PAGEUP
- CACA_KEY_PAGEDOWN
- CACA_KEY_F1
- CACA_KEY_F2
- CACA_KEY_F3
- CACA_KEY_F4
- CACA_KEY_F5
- CACA_KEY_F6
- CACA_KEY_F7
- CACA_KEY_F8
- CACA_KEY_F9
- CACA_KEY_F10
- CACA_KEY_F11
- CACA_KEY_F12
- CACA_KEY_F13
- CACA_KEY_F14
- CACA_KEY_F15
- );
-
- %EXPORT_TAGS = (
- colors => [ qw(
- CACA_COLOR_BLACK
- CACA_COLOR_BLUE
- CACA_COLOR_GREEN
- CACA_COLOR_CYAN
- CACA_COLOR_RED
- CACA_COLOR_MAGENTA
- CACA_COLOR_BROWN
- CACA_COLOR_LIGHTGRAY
- CACA_COLOR_DARKGRAY
- CACA_COLOR_LIGHTBLUE
- CACA_COLOR_LIGHTGREEN
- CACA_COLOR_LIGHTCYAN
- CACA_COLOR_LIGHTRED
- CACA_COLOR_LIGHTMAGENTA
- CACA_COLOR_YELLOW
- CACA_COLOR_WHITE
- ) ],
-
- features => [ qw(
- CACA_BACKGROUND
- CACA_BACKGROUND_BLACK
- CACA_BACKGROUND_SOLID
-
- CACA_BACKGROUND_MIN
- CACA_BACKGROUND_MAX
-
- CACA_ANTIALIASING
- CACA_ANTIALIASING_NONE
- CACA_ANTIALIASING_PREFILTER
-
- CACA_ANTIALIASING_MIN
- CACA_ANTIALIASING_MAX
-
- CACA_DITHERING
- CACA_DITHERING_NONE
- CACA_DITHERING_ORDERED2
- CACA_DITHERING_ORDERED4
- CACA_DITHERING_ORDERED8
- CACA_DITHERING_RANDOM
-
- CACA_DITHERING_MIN
- CACA_DITHERING_MAX
-
- CACA_FEATURE_UNKNOWN
- ) ],
-
- events => [ qw(
- CACA_EVENT_NONE
- CACA_EVENT_KEY_PRESS
- CACA_EVENT_KEY_RELEASE
- CACA_EVENT_MOUSE_PRESS
- CACA_EVENT_MOUSE_RELEASE
- CACA_EVENT_MOUSE_MOTION
- CACA_EVENT_RESIZE
- CACA_EVENT_ANY
- ) ],
-
- 'keys' => [ qw(
- CACA_KEY_UNKNOWN
-
- CACA_KEY_BACKSPACE
- CACA_KEY_TAB
- CACA_KEY_RETURN
- CACA_KEY_PAUSE
- CACA_KEY_ESCAPE
- CACA_KEY_DELETE
-
- CACA_KEY_UP
- CACA_KEY_DOWN
- CACA_KEY_LEFT
- CACA_KEY_RIGHT
- CACA_KEY_INSERT
- CACA_KEY_HOME
- CACA_KEY_END
- CACA_KEY_PAGEUP
- CACA_KEY_PAGEDOWN
- CACA_KEY_F1
- CACA_KEY_F2
- CACA_KEY_F3
- CACA_KEY_F4
- CACA_KEY_F5
- CACA_KEY_F6
- CACA_KEY_F7
- CACA_KEY_F8
- CACA_KEY_F9
- CACA_KEY_F10
- CACA_KEY_F11
- CACA_KEY_F12
- CACA_KEY_F13
- CACA_KEY_F14
- CACA_KEY_F15
- ) ],
-
- all => [ ],
- );
-
- # add all the other ":class" tags to the ":all" class,
- # deleting duplicates
- {
- my %seen;
-
- push @{$EXPORT_TAGS{all}},
- grep {!$seen{$_}++} @{$EXPORT_TAGS{$_}} foreach keys %EXPORT_TAGS;
- }
-
-
- 1;
-
- __END__
-
- =head1 NAME
-
- Term::Caca::Constants - libcaca constants from caca.h
-
- =head1 SYNOPSIS
-
- Import all constants into current package/namespace:
-
- use Term::Caca::Constants ':all';
-
- Only import the constants pertaining to events and keys:
-
- use Term::Caca qw(:events :keys);
-
- =head1 DESCRIPTION
-
-
-
- =cut
-
- # $Id$
|