1package Term::Choose::Constants;
2
3use warnings;
4use strict;
5use 5.10.0;
6
7our $VERSION = '1.745';
8
9use Exporter qw( import );
10
11our @EXPORT_OK = qw(
12    NEXT_get_key
13    CONTROL_SPACE LINE_FEED CARRIAGE_RETURN CONTROL_A CONTROL_B CONTROL_C CONTROL_D CONTROL_E CONTROL_F CONTROL_H
14    CONTROL_I CONTROL_K CONTROL_N CONTROL_P CONTROL_Q CONTROL_R CONTROL_S CONTROL_U CONTROL_X
15    KEY_BTAB KEY_TAB KEY_ESC KEY_SPACE KEY_h KEY_j KEY_k KEY_l KEY_q KEY_Tilde KEY_BSPACE
16    VK_PAGE_UP VK_PAGE_DOWN VK_END VK_HOME VK_LEFT VK_UP VK_RIGHT VK_DOWN VK_INSERT VK_DELETE VK_F1 VK_F2 VK_F3 VK_F4
17    ROW COL
18    WIDTH_CURSOR TERM_READKEY
19);
20
21our %EXPORT_TAGS = (
22    all => [ @EXPORT_OK ],
23    keys => [ @EXPORT_OK ] # old Term::Form use the tag ':keys'. Keep this for some time # 17.06.2021
24);
25
26
27use constant TERM_READKEY => eval { require Term::ReadKey; 1 };
28
29use constant WIDTH_CURSOR => 1;
30
31use constant {
32    ROW => 0,
33    COL => 1,
34};
35
36use constant {
37    NEXT_get_key  => -1,
38
39    CONTROL_SPACE   => 0x00,
40    CONTROL_A       => 0x01,
41    CONTROL_B       => 0x02,
42    CONTROL_C       => 0x03,
43    CONTROL_D       => 0x04,
44    CONTROL_E       => 0x05,
45    CONTROL_F       => 0x06,
46#   CONTROL_G       => 0x07,
47    CONTROL_H       => 0x08,
48    KEY_BTAB        => 0x08,
49    CONTROL_I       => 0x09,
50    KEY_TAB         => 0x09,
51#   CONTROL_J       => 0x0a,
52    LINE_FEED       => 0x0a,
53    CONTROL_K       => 0x0b,
54#   CONTROL_L       => 0x0c,
55#   CONTROL_M       => 0x0d,
56    CARRIAGE_RETURN => 0x0d,
57    CONTROL_N       => 0x0e,
58#   CONTROL_O       => 0x0f,
59    CONTROL_P       => 0x10,
60    CONTROL_Q       => 0x11,
61    CONTROL_R       => 0x12,
62    CONTROL_S       => 0x13,
63#   CONTROL_T       => 0x14,
64    CONTROL_U       => 0x15,
65#   CONTROL_V       => 0x16,
66#   CONTROL_W       => 0x17,
67    CONTROL_X       => 0x18,
68#   CONTROL_Y       => 0x19,
69#   CONTROL_Z       => 0x1a,
70    KEY_ESC         => 0x1b,
71    KEY_SPACE       => 0x20,
72    KEY_h           => 0x68,
73    KEY_j           => 0x6a,
74    KEY_k           => 0x6b,
75    KEY_l           => 0x6c,
76    KEY_q           => 0x71,
77    KEY_Tilde       => 0x7e,
78    KEY_BSPACE      => 0x7f,
79
80    VK_PAGE_UP    => 333, # VK_CODE_KEY + 300
81    VK_PAGE_DOWN  => 334,
82    VK_END        => 335,
83    VK_HOME       => 336,
84    VK_LEFT       => 337,
85    VK_UP         => 338,
86    VK_RIGHT      => 339,
87    VK_DOWN       => 340,
88    VK_INSERT     => 345,
89    VK_DELETE     => 346,
90    VK_F1         => 412,
91    VK_F2         => 413,
92    VK_F3         => 414,
93    VK_F4         => 415,
94};
95
96
97
981;
99
100__END__
101