Commit 9ec86260975e927f8f65a9b7228fb2ff9851b51a
1 parent
423b757c
Exists in
master
and in
3 other branches
Working on a standard header for properties.
Showing
9 changed files
with
501 additions
and
519 deletions
Show diff stats
src/core/properties/boolean.c
... | ... | @@ -44,138 +44,129 @@ |
44 | 44 | |
45 | 45 | static const LIB3270_INT_PROPERTY properties[] = { |
46 | 46 | { |
47 | - "ready", // Property name. | |
48 | - N_( "Is terminal ready" ), // Property description. | |
49 | - lib3270_is_ready, // Get value. | |
50 | - NULL // Set value. | |
47 | + .name = "ready", // Property name. | |
48 | + .description = N_( "Is terminal ready" ), // Property description. | |
49 | + .get = lib3270_is_ready, // Get value. | |
50 | + .set = NULL // Set value. | |
51 | 51 | }, |
52 | 52 | |
53 | 53 | { |
54 | - "connected", // Property name. | |
55 | - N_( "Is terminal connected" ), // Property description. | |
56 | - lib3270_is_connected, // Get value. | |
57 | - NULL // Set value. | |
54 | + .name = "connected", // Property name. | |
55 | + .description = N_( "Is terminal connected" ), // Property description. | |
56 | + .get = lib3270_is_connected, // Get value. | |
57 | + .set = NULL // Set value. | |
58 | 58 | }, |
59 | 59 | |
60 | 60 | { |
61 | - "secure", // Property name. | |
62 | - N_( "Is connection secure" ), // Property description. | |
63 | - lib3270_is_secure, // Get value. | |
64 | - NULL // Set value. | |
61 | + .name = "secure", // Property name. | |
62 | + .description = N_( "Is connection secure" ), // Property description. | |
63 | + .get = lib3270_is_secure, // Get value. | |
64 | + .set = NULL // Set value. | |
65 | 65 | }, |
66 | 66 | |
67 | 67 | { |
68 | - "tso", // Property name. | |
69 | - N_( "Non zero if the host is TSO." ), // Property description. | |
70 | - lib3270_is_tso, // Get value. | |
71 | - lib3270_set_tso // Set value. | |
68 | + .name = "tso", // Property name. | |
69 | + .description = N_( "Non zero if the host is TSO." ), // Property description. | |
70 | + .get = lib3270_is_tso, // Get value. | |
71 | + .set = lib3270_set_tso // Set value. | |
72 | 72 | }, |
73 | 73 | |
74 | 74 | { |
75 | - "as400", // Property name. | |
76 | - N_( "Non zero if the host is AS400." ), // Property description. | |
77 | - lib3270_is_as400, // Get value. | |
78 | - lib3270_set_as400 // Set value. | |
75 | + .name = "as400", // Property name. | |
76 | + .description = N_( "Non zero if the host is AS400." ), // Property description. | |
77 | + .get = lib3270_is_as400, // Get value. | |
78 | + .set = lib3270_set_as400 // Set value. | |
79 | 79 | }, |
80 | 80 | |
81 | 81 | { |
82 | - "pconnected", // Property name. | |
83 | - "", // Property description. | |
84 | - lib3270_pconnected, // Get value. | |
85 | - NULL // Set value. | |
82 | + .name = "pconnected", // Property name. | |
83 | + .description = "", // Property description. | |
84 | + .get = lib3270_pconnected, // Get value. | |
85 | + .set = NULL // Set value. | |
86 | 86 | }, |
87 | 87 | |
88 | 88 | { |
89 | - "half_connected", // Property name. | |
90 | - "", // Property description. | |
91 | - lib3270_half_connected, // Get value. | |
92 | - NULL // Set value. | |
89 | + .name = "half_connected", // Property name. | |
90 | + .description = "", // Property description. | |
91 | + .get = lib3270_half_connected, // Get value. | |
92 | + .set = NULL // Set value. | |
93 | 93 | }, |
94 | 94 | |
95 | 95 | { |
96 | - "neither", // Property name. | |
97 | - "", // Property description. | |
98 | - lib3270_in_neither, // Get value. | |
99 | - NULL // Set value. | |
96 | + .name = "neither", // Property name. | |
97 | + .description = "", // Property description. | |
98 | + .get = lib3270_in_neither, // Get value. | |
99 | + .set = NULL // Set value. | |
100 | 100 | }, |
101 | 101 | |
102 | 102 | { |
103 | - "ansi", // Property name. | |
104 | - "", // Property description. | |
105 | - lib3270_in_ansi, // Get value. | |
106 | - NULL // Set value. | |
103 | + .name = "ansi", // Property name. | |
104 | + .description = "", // Property description. | |
105 | + .get = lib3270_in_ansi, // Get value. | |
106 | + .set = NULL // Set value. | |
107 | 107 | }, |
108 | 108 | |
109 | 109 | { |
110 | - "tn3270", // Property name. | |
111 | - N_( "State is 3270, TN3270e or SSCP" ), // Property description. | |
112 | - lib3270_in_3270, // Get value. | |
113 | - NULL // Set value. | |
110 | + .name = "tn3270", // Property name. | |
111 | + .description = N_( "State is 3270, TN3270e or SSCP" ), // Property description. | |
112 | + .get = lib3270_in_3270, // Get value. | |
113 | + .set = NULL // Set value. | |
114 | 114 | }, |
115 | 115 | |
116 | 116 | { |
117 | - "sscp", // Property name. | |
118 | - "", // Property description. | |
119 | - lib3270_in_sscp, // Get value. | |
120 | - NULL // Set value. | |
117 | + .name = "sscp", // Property name. | |
118 | + .description = "", // Property description. | |
119 | + .get = lib3270_in_sscp, // Get value. | |
120 | + .set = NULL // Set value. | |
121 | 121 | }, |
122 | 122 | |
123 | 123 | { |
124 | - "tn3270e", // Property name. | |
125 | - "", // Property description. | |
126 | - lib3270_in_tn3270e, // Get value. | |
127 | - NULL // Set value. | |
124 | + .name = "tn3270e", // Property name. | |
125 | + .description = "", // Property description. | |
126 | + .get = lib3270_in_tn3270e, // Get value. | |
127 | + .set = NULL // Set value. | |
128 | 128 | }, |
129 | 129 | |
130 | 130 | { |
131 | - "e", // Property name. | |
132 | - N_( "Is terminal in the INITIAL_E state?" ), // Property description. | |
133 | - lib3270_in_e, // Get value. | |
134 | - NULL // Set value. | |
131 | + .name = "e", // Property name. | |
132 | + .description = N_( "Is terminal in the INITIAL_E state?" ), // Property description. | |
133 | + .get = lib3270_in_e, // Get value. | |
134 | + .set = NULL // Set value. | |
135 | 135 | }, |
136 | 136 | |
137 | 137 | { |
138 | - "has_selection", // Property name. | |
139 | - N_( "Has selected area" ), // Property description. | |
140 | - lib3270_has_selection, // Get value. | |
141 | - NULL // Set value. | |
138 | + .name = "has_selection", // Property name. | |
139 | + .description = N_( "Has selected area" ), // Property description. | |
140 | + .get = lib3270_has_selection, // Get value. | |
141 | + .set = NULL // Set value. | |
142 | 142 | }, |
143 | 143 | |
144 | 144 | { |
145 | - "starting", // Property name. | |
146 | - N_( "Is starting (no first screen)?" ), // Property description. | |
147 | - lib3270_is_starting, // Get value. | |
148 | - NULL // Set value. | |
145 | + .name = "starting", // Property name. | |
146 | + .description = N_( "Is starting (no first screen)?" ), // Property description. | |
147 | + .get = lib3270_is_starting, // Get value. | |
148 | + .set = NULL // Set value. | |
149 | 149 | }, |
150 | 150 | |
151 | 151 | { |
152 | - "formatted", // Property name. | |
153 | - N_( "Formatted screen" ), // Property description. | |
154 | - lib3270_is_formatted, // Get value. | |
155 | - NULL // Set value. | |
152 | + .name = "formatted", // Property name. | |
153 | + .description = N_( "Formatted screen" ), // Property description. | |
154 | + .get = lib3270_is_formatted, // Get value. | |
155 | + .set = NULL // Set value. | |
156 | 156 | }, |
157 | 157 | |
158 | 158 | { |
159 | - "oerrlock", // Property name. | |
160 | - N_( "Lock keyboard on operator error" ), // Property description. | |
161 | - lib3270_get_lock_on_operator_error, // Get value. | |
162 | - lib3270_set_lock_on_operator_error // Set value. | |
159 | + .name = "oerrlock", // Property name. | |
160 | + .description = N_( "Lock keyboard on operator error" ), // Property description. | |
161 | + .get = lib3270_get_lock_on_operator_error, // Get value. | |
162 | + .set = lib3270_set_lock_on_operator_error // Set value. | |
163 | 163 | }, |
164 | 164 | |
165 | - /* | |
166 | 165 | { |
167 | - "", // Property name. | |
168 | - "", // Property description. | |
169 | - NULL, // Get value. | |
170 | - NULL // Set value. | |
171 | - }, | |
172 | - */ | |
173 | - | |
174 | - { | |
175 | - NULL, | |
176 | - NULL, | |
177 | - NULL, | |
178 | - NULL | |
166 | + .name = NULL, | |
167 | + .description = NULL, | |
168 | + .get = NULL, | |
169 | + .set = NULL | |
179 | 170 | } |
180 | 171 | |
181 | 172 | }; | ... | ... |
src/core/properties/signed.c
... | ... | @@ -55,54 +55,45 @@ |
55 | 55 | static const LIB3270_INT_PROPERTY properties[] = { |
56 | 56 | |
57 | 57 | { |
58 | - "model_number", // Property name. | |
59 | - N_( "The model number" ), // Property description. | |
60 | - lib3270_get_model_number, // Get value. | |
61 | - NULL // Set value. | |
58 | + .name = "model_number", // Property name. | |
59 | + .description = N_( "The model number" ), // Property description. | |
60 | + .get = lib3270_get_model_number, // Get value. | |
61 | + .set = NULL // Set value. | |
62 | 62 | }, |
63 | 63 | |
64 | 64 | { |
65 | - "color_type", // Property name. | |
66 | - N_( "The color type" ), // Property description. | |
67 | - lib3270_get_color_type, // Get value. | |
68 | - lib3270_set_color_type // Set value. | |
65 | + .name = "color_type", // Property name. | |
66 | + .description = N_( "The color type" ), // Property description. | |
67 | + .get = lib3270_get_color_type, // Get value. | |
68 | + .set = lib3270_set_color_type // Set value. | |
69 | 69 | }, |
70 | 70 | |
71 | 71 | { |
72 | - "cstate", // Property name. | |
73 | - N_( "Connection state" ), // Property description. | |
74 | - lib3270_get_connection_state_as_int, // Get value. | |
75 | - NULL // Set value. | |
72 | + .name = "cstate", // Property name. | |
73 | + .description = N_( "Connection state" ), // Property description. | |
74 | + .get = lib3270_get_connection_state_as_int, // Get value. | |
75 | + .set = NULL // Set value. | |
76 | 76 | }, |
77 | 77 | |
78 | 78 | { |
79 | - "program_message", // Property name. | |
80 | - N_( "Latest program message" ), // Property description. | |
81 | - lib3270_get_program_message_as_int, // Get value. | |
82 | - NULL // Set value. | |
79 | + .name = "program_message", // Property name. | |
80 | + .description = N_( "Latest program message" ), // Property description. | |
81 | + .get = lib3270_get_program_message_as_int, // Get value. | |
82 | + .set = NULL // Set value. | |
83 | 83 | }, |
84 | 84 | |
85 | 85 | { |
86 | - "ssl_state", // Property name. | |
87 | - N_( "ID of the session security state" ), // Property description. | |
88 | - lib3270_get_ssl_state_as_int, // Get value. | |
89 | - NULL // Set value. | |
86 | + .name = "ssl_state", // Property name. | |
87 | + .description = N_( "ID of the session security state" ), // Property description. | |
88 | + .get = lib3270_get_ssl_state_as_int, // Get value. | |
89 | + .set = NULL // Set value. | |
90 | 90 | }, |
91 | 91 | |
92 | - /* | |
93 | 92 | { |
94 | - "", // Property name. | |
95 | - "", // Property description. | |
96 | - NULL, // Get value. | |
97 | - NULL // Set value. | |
98 | - }, | |
99 | - */ | |
100 | - | |
101 | - { | |
102 | - NULL, | |
103 | - NULL, | |
104 | - NULL, | |
105 | - NULL | |
93 | + .name = NULL, | |
94 | + .description = NULL, | |
95 | + .get = NULL, | |
96 | + .set = NULL | |
106 | 97 | } |
107 | 98 | }; |
108 | 99 | ... | ... |
src/core/properties/string.c
... | ... | @@ -59,124 +59,115 @@ |
59 | 59 | static const LIB3270_STRING_PROPERTY properties[] = { |
60 | 60 | |
61 | 61 | { |
62 | - "luname", // Property name. | |
63 | - N_( "The name of the active LU" ), // Property description. | |
64 | - lib3270_get_luname, // Get value. | |
65 | - lib3270_set_luname // Set value. | |
62 | + .name = "luname", // Property name. | |
63 | + .description = N_( "The name of the active LU" ), // Property description. | |
64 | + .get = lib3270_get_luname, // Get value. | |
65 | + .set = lib3270_set_luname // Set value. | |
66 | 66 | }, |
67 | 67 | |
68 | 68 | { |
69 | - "url", // Property name. | |
70 | - N_( "URL of the current host" ), // Property description. | |
71 | - lib3270_get_url, // Get value. | |
72 | - lib3270_set_url // Set value. | |
69 | + .name = "url", // Property name. | |
70 | + .description = N_( "URL of the current host" ), // Property description. | |
71 | + .get = lib3270_get_url, // Get value. | |
72 | + .set = lib3270_set_url // Set value. | |
73 | 73 | }, |
74 | 74 | |
75 | 75 | { |
76 | - "model", // Property name. | |
77 | - N_( "Model name" ), // Property description. | |
78 | - lib3270_get_model, // Get value. | |
79 | - lib3270_set_model // Set value. | |
76 | + .name = "model", // Property name. | |
77 | + .description = N_( "Model name" ), // Property description. | |
78 | + .get = lib3270_get_model, // Get value. | |
79 | + .set = lib3270_set_model // Set value. | |
80 | 80 | }, |
81 | 81 | |
82 | 82 | { |
83 | - "hosttype", // Property name. | |
84 | - N_( "Host type name" ), // Property description. | |
85 | - lib3270_get_host_type_name, // Get value. | |
86 | - lib3270_set_host_type_by_name // Set value. | |
83 | + .name = "hosttype", // Property name. | |
84 | + .description = N_( "Host type name" ), // Property description. | |
85 | + .get = lib3270_get_host_type_name, // Get value. | |
86 | + .set = lib3270_set_host_type_by_name // Set value. | |
87 | 87 | }, |
88 | 88 | |
89 | 89 | { |
90 | - "termtype", // Property name. | |
91 | - N_( "Terminal type" ), // Property description. | |
92 | - lib3270_get_termtype, // Get value. | |
93 | - NULL // Set value. | |
90 | + .name = "termtype", // Property name. | |
91 | + .description = N_( "Terminal type" ), // Property description. | |
92 | + .get = lib3270_get_termtype, // Get value. | |
93 | + .set = NULL // Set value. | |
94 | 94 | }, |
95 | 95 | |
96 | 96 | { |
97 | - "termname", // Property name. | |
98 | - N_( "Terminal name" ), // Property description. | |
99 | - lib3270_get_termname, // Get value. | |
100 | - NULL // Set value. | |
97 | + .name = "termname", // Property name. | |
98 | + .description = N_( "Terminal name" ), // Property description. | |
99 | + .get = lib3270_get_termname, // Get value. | |
100 | + .set = NULL // Set value. | |
101 | 101 | }, |
102 | 102 | |
103 | 103 | { |
104 | - "host_charset", // Property name. | |
105 | - N_( "Host charset" ), // Property description. | |
106 | - lib3270_get_host_charset, // Get value. | |
107 | - lib3270_set_host_charset // Set value. | |
104 | + .name = "host_charset", // Property name. | |
105 | + .description = N_( "Host charset" ), // Property description. | |
106 | + .get = lib3270_get_host_charset, // Get value. | |
107 | + .set = lib3270_set_host_charset // Set value. | |
108 | 108 | }, |
109 | 109 | |
110 | 110 | { |
111 | - "display_charset", // Property name. | |
112 | - N_( "Display charset" ), // Property description. | |
113 | - lib3270_get_display_charset, // Get value. | |
114 | - NULL // Set value. | |
111 | + .name = "display_charset", // Property name. | |
112 | + .description = N_( "Display charset" ), // Property description. | |
113 | + .get = lib3270_get_display_charset, // Get value. | |
114 | + .set = NULL // Set value. | |
115 | 115 | }, |
116 | 116 | |
117 | 117 | { |
118 | - "version", // Property name. | |
119 | - N_( "lib3270 version" ), // Property description. | |
120 | - get_version, // Get value. | |
121 | - NULL // Set value. | |
118 | + .name = "version", // Property name. | |
119 | + .description = N_( "lib3270 version" ), // Property description. | |
120 | + .get = get_version, // Get value. | |
121 | + .set = NULL // Set value. | |
122 | 122 | }, |
123 | 123 | |
124 | 124 | { |
125 | - "revision", // Property name. | |
126 | - N_( "lib3270 revision" ), // Property description. | |
127 | - get_revision, // Get value. | |
128 | - NULL // Set value. | |
125 | + .name = "revision", // Property name. | |
126 | + .description = N_( "lib3270 revision" ), // Property description. | |
127 | + .get = get_revision, // Get value. | |
128 | + .set = NULL // Set value. | |
129 | 129 | }, |
130 | 130 | |
131 | 131 | { |
132 | - "crlpath", // Property name. | |
133 | - N_( "URL for the certificate revocation list" ), // Property description. | |
134 | - lib3270_get_crl_url, // Get value. | |
135 | - lib3270_set_crl_url, // Set value. | |
132 | + .name = "crlpath", // Property name. | |
133 | + .description = N_( "URL for the certificate revocation list" ), // Property description. | |
134 | + .get = lib3270_get_crl_url, // Get value. | |
135 | + .set = lib3270_set_crl_url, // Set value. | |
136 | 136 | }, |
137 | 137 | |
138 | 138 | { |
139 | - "default_host", // Property name. | |
140 | - N_( "Default host URL" ), // Property description. | |
141 | - lib3270_get_default_host, // Get value. | |
142 | - NULL // Set value. | |
139 | + .name = "default_host", // Property name. | |
140 | + .description = N_( "Default host URL" ), // Property description. | |
141 | + .get = lib3270_get_default_host, // Get value. | |
142 | + .set = NULL // Set value. | |
143 | 143 | }, |
144 | 144 | |
145 | 145 | { |
146 | - "sslmessage", // Property name. | |
147 | - N_( "The security state" ), // Property description. | |
148 | - lib3270_get_ssl_state_message, // Get value. | |
149 | - NULL // Set value. | |
146 | + .name = "sslmessage", // Property name. | |
147 | + .description = N_( "The security state" ), // Property description. | |
148 | + .get = lib3270_get_ssl_state_message, // Get value. | |
149 | + .set = NULL // Set value. | |
150 | 150 | }, |
151 | 151 | |
152 | 152 | { |
153 | - "ssldescription", // Property name. | |
154 | - N_( "Description of the current security state" ), // Property description. | |
155 | - lib3270_get_ssl_state_description, // Get value. | |
156 | - NULL // Set value. | |
153 | + .name = "ssldescription", // Property name. | |
154 | + .description = N_( "Description of the current security state" ), // Property description. | |
155 | + .get = lib3270_get_ssl_state_description, // Get value. | |
156 | + .set = NULL // Set value. | |
157 | 157 | }, |
158 | 158 | |
159 | 159 | { |
160 | - "oversize", // Property name. | |
161 | - N_( "Screen oversize if larger than the chosen model"), // Property description. | |
162 | - lib3270_get_oversize, // Get value. | |
163 | - lib3270_set_oversize // Set value. | |
160 | + .name = "oversize", // Property name. | |
161 | + .description = N_( "Screen oversize if larger than the chosen model"), // Property description. | |
162 | + .get = lib3270_get_oversize, // Get value. | |
163 | + .set = lib3270_set_oversize // Set value. | |
164 | 164 | }, |
165 | 165 | |
166 | - /* | |
167 | 166 | { |
168 | - "", // Property name. | |
169 | - "", // Property description. | |
170 | - , // Get value. | |
171 | - NULL // Set value. | |
172 | - }, | |
173 | - */ | |
174 | - | |
175 | - { | |
176 | - NULL, | |
177 | - NULL, | |
178 | - NULL, | |
179 | - NULL | |
167 | + .name = NULL, | |
168 | + .description = NULL, | |
169 | + .get = NULL, | |
170 | + .set = NULL | |
180 | 171 | } |
181 | 172 | |
182 | 173 | }; | ... | ... |
src/core/properties/unsigned.c
... | ... | @@ -45,75 +45,66 @@ |
45 | 45 | static const LIB3270_UINT_PROPERTY properties[] = { |
46 | 46 | |
47 | 47 | { |
48 | - "cursor_address", // Property name. | |
49 | - N_( "Cursor address" ), // Property description. | |
50 | - lib3270_get_cursor_address, // Get value. | |
51 | - lib3270_set_cursor_address // Set value. | |
48 | + .name = "cursor_address", // Property name. | |
49 | + .description = N_( "Cursor address" ), // Property description. | |
50 | + .get = lib3270_get_cursor_address, // Get value. | |
51 | + .set = lib3270_set_cursor_address // Set value. | |
52 | 52 | }, |
53 | 53 | |
54 | 54 | { |
55 | - "width", // Property name. | |
56 | - N_( "Current screen width in columns" ), // Property description. | |
57 | - lib3270_get_width, // Get value. | |
58 | - NULL // Set value. | |
55 | + .name = "width", // Property name. | |
56 | + .description = N_( "Current screen width in columns" ), // Property description. | |
57 | + .get = lib3270_get_width, // Get value. | |
58 | + .set = NULL // Set value. | |
59 | 59 | }, |
60 | 60 | |
61 | 61 | { |
62 | - "height", // Property name. | |
63 | - N_( "Current screen height in rows" ), // Property description. | |
64 | - lib3270_get_height, // Get value. | |
65 | - NULL // Set value. | |
62 | + .name = "height", // Property name. | |
63 | + .description = N_( "Current screen height in rows" ), // Property description. | |
64 | + .get = lib3270_get_height, // Get value. | |
65 | + .set = NULL // Set value. | |
66 | 66 | }, |
67 | 67 | |
68 | 68 | { |
69 | - "max_width", // Property name. | |
70 | - N_( "Maximum screen width in columns" ), // Property description. | |
71 | - lib3270_get_max_width, // Get value. | |
72 | - NULL // Set value. | |
69 | + .name = "max_width", // Property name. | |
70 | + .description = N_( "Maximum screen width in columns" ), // Property description. | |
71 | + .get = lib3270_get_max_width, // Get value. | |
72 | + .set = NULL // Set value. | |
73 | 73 | }, |
74 | 74 | |
75 | 75 | { |
76 | - "max_height", // Property name. | |
77 | - N_( "Maximum screen height in rows" ), // Property description. | |
78 | - lib3270_get_max_height, // Get value. | |
79 | - NULL // Set value. | |
76 | + .name = "max_height", // Property name. | |
77 | + .description = N_( "Maximum screen height in rows" ), // Property description. | |
78 | + .get = lib3270_get_max_height, // Get value. | |
79 | + .set = NULL // Set value. | |
80 | 80 | }, |
81 | 81 | |
82 | 82 | { |
83 | - "length", // Property name. | |
84 | - N_( "Screen buffer length in bytes" ), // Property description. | |
85 | - lib3270_get_length, // Get value. | |
86 | - NULL // Set value. | |
83 | + .name = "length", // Property name. | |
84 | + .description = N_( "Screen buffer length in bytes" ), // Property description. | |
85 | + .get = lib3270_get_length, // Get value. | |
86 | + .set = NULL // Set value. | |
87 | 87 | }, |
88 | 88 | |
89 | 89 | { |
90 | - "unlock_delay", // Property name. | |
91 | - N_( "The delay between the host unlocking the keyboard and the actual unlock" ), // Property description. | |
92 | - lib3270_get_unlock_delay, // Get value. | |
93 | - lib3270_set_unlock_delay // Set value. | |
90 | + .name = "unlock_delay", // Property name. | |
91 | + .description = N_( "The delay between the host unlocking the keyboard and the actual unlock" ), // Property description. | |
92 | + .get = lib3270_get_unlock_delay, // Get value. | |
93 | + .set = lib3270_set_unlock_delay // Set value. | |
94 | 94 | }, |
95 | 95 | |
96 | 96 | { |
97 | - "kybdlock", // Property name. | |
98 | - N_( "Keyboard lock status" ), // Property description. | |
99 | - lib3270_get_kybdlock_as_int, // Get value. | |
100 | - NULL // Set value. | |
97 | + .name = "kybdlock", // Property name. | |
98 | + .description = N_( "Keyboard lock status" ), // Property description. | |
99 | + .get = lib3270_get_kybdlock_as_int, // Get value. | |
100 | + .set = NULL // Set value. | |
101 | 101 | }, |
102 | 102 | |
103 | - /* | |
104 | 103 | { |
105 | - "", // Property name. | |
106 | - "", // Property description. | |
107 | - NULL, // Get value. | |
108 | - NULL // Set value. | |
109 | - }, | |
110 | - */ | |
111 | - | |
112 | - { | |
113 | - NULL, | |
114 | - NULL, | |
115 | - NULL, | |
116 | - NULL | |
104 | + .name = NULL, | |
105 | + .description = NULL, | |
106 | + .get = NULL, | |
107 | + .set = NULL | |
117 | 108 | } |
118 | 109 | }; |
119 | 110 | ... | ... |
src/core/toggles/table.c
... | ... | @@ -43,285 +43,287 @@ |
43 | 43 | const LIB3270_TOGGLE_ENTRY toggle_descriptor[LIB3270_TOGGLE_COUNT+1] = |
44 | 44 | { |
45 | 45 | { |
46 | - LIB3270_TOGGLE_MONOCASE, | |
47 | - "monocase", | |
48 | - False, | |
49 | - NULL, // Default keycode | |
50 | - NULL, // Icon name | |
51 | - N_( "Monocase" ), | |
52 | - N_( "Uppercase only" ), | |
53 | - N_( "If set, the terminal operates in uppercase-only mode" ) | |
46 | + .id = LIB3270_TOGGLE_MONOCASE, | |
47 | + .name = "monocase", | |
48 | + .def = False, | |
49 | + .key = NULL, // Default keycode | |
50 | + .icon = NULL, // Icon name | |
51 | + .label = N_( "Monocase" ), | |
52 | + .summary = N_( "Uppercase only" ), | |
53 | + .description = N_( "If set, the terminal operates in uppercase-only mode" ) | |
54 | 54 | }, |
55 | + | |
55 | 56 | { |
56 | - LIB3270_TOGGLE_CURSOR_BLINK, | |
57 | - "cursorblink", | |
58 | - True, | |
59 | - NULL, // Default keycode | |
60 | - NULL, // Icon name | |
61 | - N_( "Blinking Cursor" ), | |
62 | - N_( "Blinking Cursor" ), | |
63 | - N_( "If set, the cursor blinks" ) | |
57 | + .id = LIB3270_TOGGLE_CURSOR_BLINK, | |
58 | + .name = "cursorblink", | |
59 | + .def = True, | |
60 | + .key = NULL, // Default keycode | |
61 | + .icon = NULL, // Icon name | |
62 | + .label = N_( "Blinking Cursor" ), | |
63 | + .summary = N_( "Blinking Cursor" ), | |
64 | + .description = N_( "If set, the cursor blinks" ) | |
64 | 65 | }, |
65 | 66 | { |
66 | - LIB3270_TOGGLE_SHOW_TIMING, | |
67 | - "showtiming", | |
68 | - True, | |
69 | - NULL, // Default keycode | |
70 | - NULL, // Icon name | |
71 | - N_( "Show timer when processing" ), | |
72 | - N_( "Show timer when processing" ), | |
73 | - N_( "If set, the time taken by the host to process an AID is displayed on the status line" ) | |
67 | + .id = LIB3270_TOGGLE_SHOW_TIMING, | |
68 | + .name = "showtiming", | |
69 | + .def = True, | |
70 | + .key = NULL, // Default keycode | |
71 | + .icon = NULL, // Icon name | |
72 | + .label = N_( "Show timer when processing" ), | |
73 | + .summary = N_( "Show timer when processing" ), | |
74 | + .description = N_( "If set, the time taken by the host to process an AID is displayed on the status line" ) | |
74 | 75 | }, |
75 | 76 | { |
76 | - LIB3270_TOGGLE_CURSOR_POS, | |
77 | - "cursorpos", | |
78 | - True, | |
79 | - NULL, // Default keycode | |
80 | - NULL, // Icon name | |
81 | - N_( "Track Cursor" ), | |
82 | - N_( "Track Cursor" ), | |
83 | - N_( "Display the cursor location in the OIA (the status line)" ) | |
77 | + .id = LIB3270_TOGGLE_CURSOR_POS, | |
78 | + .name = "cursorpos", | |
79 | + .def = True, | |
80 | + .key = NULL, // Default keycode | |
81 | + .icon = NULL, // Icon name | |
82 | + .label = N_( "Track Cursor" ), | |
83 | + .summary = N_( "Track Cursor" ), | |
84 | + .description = N_( "Display the cursor location in the OIA (the status line)" ) | |
84 | 85 | }, |
85 | 86 | { |
86 | - LIB3270_TOGGLE_DS_TRACE, | |
87 | - "dstrace", | |
88 | - False, | |
89 | - NULL, // Default keycode | |
90 | - NULL, // Icon name | |
91 | - N_( "Data Stream" ), | |
92 | - N_( "Trace Data Stream" ), | |
93 | - "" | |
87 | + .id = LIB3270_TOGGLE_DS_TRACE, | |
88 | + .name = "dstrace", | |
89 | + .def = False, | |
90 | + .key = NULL, // Default keycode | |
91 | + .icon = NULL, // Icon name | |
92 | + .label = N_( "Data Stream" ), | |
93 | + .summary = N_( "Trace Data Stream" ), | |
94 | + .description = "" | |
94 | 95 | }, |
95 | 96 | { |
96 | - LIB3270_TOGGLE_LINE_WRAP, | |
97 | - "linewrap", | |
98 | - False, | |
99 | - NULL, // Default keycode | |
100 | - NULL, // Icon name | |
101 | - N_("Wrap around"), | |
102 | - N_("Wrap around"), | |
103 | - N_("If set, the NVT terminal emulator automatically assumes a NEWLINE character when it reaches the end of a line.") | |
97 | + .id = LIB3270_TOGGLE_LINE_WRAP, | |
98 | + .name = "linewrap", | |
99 | + .def = False, | |
100 | + .key = NULL, // Default keycode | |
101 | + .icon = NULL, // Icon name | |
102 | + .label = N_("Wrap around"), | |
103 | + .summary = N_("Wrap around"), | |
104 | + .description = N_("If set, the NVT terminal emulator automatically assumes a NEWLINE character when it reaches the end of a line.") | |
104 | 105 | }, |
105 | 106 | { |
106 | - LIB3270_TOGGLE_BLANK_FILL, | |
107 | - "blankfill", | |
108 | - False, | |
109 | - NULL, // Default keycode | |
110 | - NULL, // Icon name | |
111 | - N_( "Blank Fill" ), | |
112 | - N_( "Blank Fill" ), | |
113 | - N_( "Automatically convert trailing blanks in a field to NULLs in order to insert a character, and will automatically convert leading NULLs to blanks so that input data is not squeezed to the left" ) | |
107 | + .id = LIB3270_TOGGLE_BLANK_FILL, | |
108 | + .name = "blankfill", | |
109 | + .def = False, | |
110 | + .key = NULL, // Default keycode | |
111 | + .icon = NULL, // Icon name | |
112 | + .label = N_( "Blank Fill" ), | |
113 | + .summary = N_( "Blank Fill" ), | |
114 | + .description = N_( "Automatically convert trailing blanks in a field to NULLs in order to insert a character, and will automatically convert leading NULLs to blanks so that input data is not squeezed to the left" ) | |
114 | 115 | }, |
115 | 116 | { |
116 | - LIB3270_TOGGLE_SCREEN_TRACE, | |
117 | - "screentrace", | |
118 | - False, | |
119 | - NULL, // Default keycode | |
120 | - NULL, // Icon name | |
121 | - N_( "Screens" ), | |
122 | - N_( "Trace screen contents" ), | |
123 | - "" | |
117 | + .id = LIB3270_TOGGLE_SCREEN_TRACE, | |
118 | + .name = "screentrace", | |
119 | + .def = False, | |
120 | + .key = NULL, // Default keycode | |
121 | + .icon = NULL, // Icon name | |
122 | + .label = N_( "Screens" ), | |
123 | + .summary = N_( "Trace screen contents" ), | |
124 | + .description = "" | |
124 | 125 | }, |
125 | 126 | { |
126 | - LIB3270_TOGGLE_EVENT_TRACE, | |
127 | - "eventtrace", | |
128 | - False, | |
129 | - NULL, // Default keycode | |
130 | - NULL, // Icon name | |
131 | - N_( "Events" ), | |
132 | - N_( "Trace interface and application events" ), | |
133 | - "" | |
127 | + .id = LIB3270_TOGGLE_EVENT_TRACE, | |
128 | + .name = "eventtrace", | |
129 | + .def = False, | |
130 | + .key = NULL, // Default keycode | |
131 | + .icon = NULL, // Icon name | |
132 | + .label = N_( "Events" ), | |
133 | + .summary = N_( "Trace interface and application events" ), | |
134 | + .description = "" | |
134 | 135 | }, |
135 | 136 | { |
136 | - LIB3270_TOGGLE_MARGINED_PASTE, | |
137 | - "marginedpaste", | |
138 | - False, | |
139 | - NULL, // Default keycode | |
140 | - NULL, // Icon name | |
141 | - N_( "Paste with left margin" ), | |
142 | - N_( "Paste with left margin" ), | |
143 | - N_( "If set, puts restrictions on how pasted text is placed on the screen. The position of the cursor at the time the paste operation is begun is used as a left margin. No pasted text will fill any area of the screen to the left of that position. This option is useful for pasting into certain IBM editors that use the left side of the screen for control information" ) | |
137 | + .id = LIB3270_TOGGLE_MARGINED_PASTE, | |
138 | + .name = "marginedpaste", | |
139 | + .def = False, | |
140 | + .key = NULL, // Default keycode | |
141 | + .icon = NULL, // Icon name | |
142 | + .label = N_( "Paste with left margin" ), | |
143 | + .summary = N_( "Paste with left margin" ), | |
144 | + .description = N_( "If set, puts restrictions on how pasted text is placed on the screen. The position of the cursor at the time the paste operation is begun is used as a left margin. No pasted text will fill any area of the screen to the left of that position. This option is useful for pasting into certain IBM editors that use the left side of the screen for control information" ) | |
144 | 145 | }, |
145 | 146 | { |
146 | - LIB3270_TOGGLE_RECTANGLE_SELECT, | |
147 | - "rectselect", | |
148 | - False, | |
149 | - NULL, // Default keycode | |
150 | - NULL, // Icon name | |
151 | - N_( "Select by rectangles" ), | |
152 | - N_( "Select by rectangles" ), | |
153 | - N_( "If set, the terminal will always select rectangular areas of the screen. Otherwise, it selects continuous regions of the screen" ) | |
147 | + .id = LIB3270_TOGGLE_RECTANGLE_SELECT, | |
148 | + .name = "rectselect", | |
149 | + .def = False, | |
150 | + .key = NULL, // Default keycode | |
151 | + .icon = NULL, // Icon name | |
152 | + .label = N_( "Select by rectangles" ), | |
153 | + .summary = N_( "Select by rectangles" ), | |
154 | + .description = N_( "If set, the terminal will always select rectangular areas of the screen. Otherwise, it selects continuous regions of the screen" ) | |
154 | 155 | }, |
155 | 156 | { |
156 | - LIB3270_TOGGLE_CROSSHAIR, | |
157 | - "crosshair", | |
158 | - False, | |
159 | - "<alt>x", // Default keycode | |
160 | - NULL, // Icon name | |
161 | - N_( "Cross hair cursor" ), | |
162 | - N_( "Cross hair cursor" ), | |
163 | - N_( "If set, the terminal will display a crosshair over the cursor: lines extending the full width and height of the screen, centered over the cursor position. This makes locating the cursor on the screen much easier" ) | |
157 | + .id = LIB3270_TOGGLE_CROSSHAIR, | |
158 | + .name = "crosshair", | |
159 | + .def = False, | |
160 | + .key = "<alt>x", // Default keycode | |
161 | + .icon = NULL, // Icon name | |
162 | + .label = N_( "Cross hair cursor" ), | |
163 | + .summary = N_( "Cross hair cursor" ), | |
164 | + .description = N_( "If set, the terminal will display a crosshair over the cursor: lines extending the full width and height of the screen, centered over the cursor position. This makes locating the cursor on the screen much easier" ) | |
164 | 165 | }, |
165 | 166 | { |
166 | - LIB3270_TOGGLE_FULL_SCREEN, | |
167 | - "fullscreen", | |
168 | - False, | |
169 | - "<alt>Home", // Default keycode | |
170 | - NULL, // Icon name | |
171 | - N_( "Full Screen" ), | |
172 | - N_( "Full Screen" ), | |
173 | - N_( "If set, asks to place the toplevel window in the fullscreen state" ) | |
167 | + .id = LIB3270_TOGGLE_FULL_SCREEN, | |
168 | + .name = "fullscreen", | |
169 | + .def = False, | |
170 | + .key = "<alt>Home", // Default keycode | |
171 | + .icon = NULL, // Icon name | |
172 | + .label = N_( "Full Screen" ), | |
173 | + .summary = N_( "Full Screen" ), | |
174 | + .description = N_( "If set, asks to place the toplevel window in the fullscreen state" ) | |
174 | 175 | }, |
175 | 176 | { |
176 | - LIB3270_TOGGLE_RECONNECT, | |
177 | - "reconnect", | |
178 | - False, | |
179 | - NULL, // Default keycode | |
180 | - NULL, // Icon name | |
181 | - N_( "Auto-Reconnect" ), | |
182 | - N_( "Auto-Reconnect" ), | |
183 | - N_( "Automatically reconnect to the host if it ever disconnects" ) | |
177 | + .id = LIB3270_TOGGLE_RECONNECT, | |
178 | + .name = "reconnect", | |
179 | + .def = False, | |
180 | + .key = NULL, // Default keycode | |
181 | + .icon = NULL, // Icon name | |
182 | + .label = N_( "Auto-Reconnect" ), | |
183 | + .summary = N_( "Auto-Reconnect" ), | |
184 | + .description = N_( "Automatically reconnect to the host if it ever disconnects" ) | |
184 | 185 | }, |
185 | 186 | { |
186 | - LIB3270_TOGGLE_INSERT, | |
187 | - "insert", | |
188 | - False, | |
189 | - "Insert", // Default keycode | |
190 | - "insert-text", // Icon name | |
191 | - N_( "Insert" ), | |
192 | - N_( "Set insert mode" ), | |
193 | - "" | |
187 | + .id = LIB3270_TOGGLE_INSERT, | |
188 | + .name = "insert", | |
189 | + .def = False, | |
190 | + .key = "Insert", // Default keycode | |
191 | + .icon = "insert-text", // Icon name | |
192 | + .label = N_( "Insert" ), | |
193 | + .summary = N_( "Set insert mode" ), | |
194 | + .description = "" | |
194 | 195 | }, |
195 | 196 | { |
196 | - LIB3270_TOGGLE_SMART_PASTE, | |
197 | - "smartpaste", | |
198 | - False, | |
199 | - NULL, // Default keycode | |
200 | - NULL, // Icon name | |
201 | - N_( "Smart paste" ), | |
202 | - N_( "Smart paste" ), | |
203 | - "" | |
197 | + .id = LIB3270_TOGGLE_SMART_PASTE, | |
198 | + .name = "smartpaste", | |
199 | + .def = False, | |
200 | + .key = NULL, // Default keycode | |
201 | + .icon = NULL, // Icon name | |
202 | + .label = N_( "Smart paste" ), | |
203 | + .summary = N_( "Smart paste" ), | |
204 | + .description = "" | |
204 | 205 | }, |
205 | 206 | { |
206 | - LIB3270_TOGGLE_BOLD, | |
207 | - "bold", | |
208 | - False, | |
209 | - NULL, // Default keycode | |
210 | - "format-text-bold", // Icon name | |
211 | - N_( "Bold" ), | |
212 | - N_( "Bold" ), | |
213 | - "" | |
207 | + .id = LIB3270_TOGGLE_BOLD, | |
208 | + .name = "bold", | |
209 | + .def = False, | |
210 | + .key = NULL, // Default keycode | |
211 | + .icon = "format-text-bold", // Icon name | |
212 | + .label = N_( "Bold" ), | |
213 | + .summary = N_( "Bold" ), | |
214 | + .description = "" | |
214 | 215 | }, |
215 | 216 | { |
216 | - LIB3270_TOGGLE_KEEP_SELECTED, | |
217 | - "keepselected", | |
218 | - False, | |
219 | - NULL, // Default keycode | |
220 | - NULL, // Icon name | |
221 | - N_( "Keep selected" ), | |
222 | - N_( "Keep selected" ), | |
223 | - "" | |
217 | + .id = LIB3270_TOGGLE_KEEP_SELECTED, | |
218 | + .name = "keepselected", | |
219 | + .def = False, | |
220 | + .key = NULL, // Default keycode | |
221 | + .icon = NULL, // Icon name | |
222 | + .label = N_( "Keep selected" ), | |
223 | + .summary = N_( "Keep selected" ), | |
224 | + .description = "" | |
224 | 225 | }, |
225 | 226 | { |
226 | - LIB3270_TOGGLE_UNDERLINE, | |
227 | - "underline", | |
228 | - True, | |
229 | - NULL, // Default keycode | |
230 | - "format-text-underline", // Icon name | |
231 | - N_( "Underline" ), | |
232 | - N_( "Show Underline" ), | |
233 | - "" | |
227 | + .id = LIB3270_TOGGLE_UNDERLINE, | |
228 | + .name = "underline", | |
229 | + .def = True, | |
230 | + .key = NULL, // Default keycode | |
231 | + .icon = "format-text-underline", // Icon name | |
232 | + .label = N_( "Underline" ), | |
233 | + .summary = N_( "Show Underline" ), | |
234 | + .description = "" | |
234 | 235 | }, |
235 | 236 | { |
236 | - LIB3270_TOGGLE_CONNECT_ON_STARTUP, | |
237 | - "autoconnect", | |
238 | - False, | |
239 | - NULL, // Default keycode | |
240 | - NULL, // Icon name | |
241 | - N_( "Auto connect" ), | |
242 | - N_( "Connect on startup" ), | |
243 | - "" | |
237 | + .id = LIB3270_TOGGLE_CONNECT_ON_STARTUP, | |
238 | + .name = "autoconnect", | |
239 | + .def = False, | |
240 | + .key = NULL, // Default keycode | |
241 | + .icon = NULL, // Icon name | |
242 | + .label = N_( "Auto connect" ), | |
243 | + .summary = N_( "Connect on startup" ), | |
244 | + .description = "" | |
244 | 245 | }, |
245 | 246 | { |
246 | - LIB3270_TOGGLE_KP_ALTERNATIVE, | |
247 | - "kpalternative", | |
248 | - False, | |
249 | - NULL, // Default keycode | |
250 | - NULL, // Icon name | |
251 | - N_( "Use +/- for field navigation" ), | |
252 | - N_( "Use +/- for field navigation" ), | |
253 | - N_( "Use the keys +/- from keypad to select editable fields" ) | |
247 | + .id = LIB3270_TOGGLE_KP_ALTERNATIVE, | |
248 | + .name = "kpalternative", | |
249 | + .def = False, | |
250 | + .key = NULL, // Default keycode | |
251 | + .icon = NULL, // Icon name | |
252 | + .label = N_( "Use +/- for field navigation" ), | |
253 | + .summary = N_( "Use +/- for field navigation" ), | |
254 | + .description = N_( "Use the keys +/- from keypad to select editable fields" ) | |
254 | 255 | }, |
255 | 256 | { |
256 | - LIB3270_TOGGLE_BEEP, | |
257 | - "beep", | |
258 | - True, | |
259 | - NULL, // Default keycode | |
260 | - NULL, // Icon name | |
261 | - N_( "Sound" ), | |
262 | - N_( "Alert sound" ), | |
263 | - N_( "Beep on errors" ) | |
257 | + .id = LIB3270_TOGGLE_BEEP, | |
258 | + .name = "beep", | |
259 | + .def = True, | |
260 | + .key = NULL, // Default keycode | |
261 | + .icon = NULL, // Icon name | |
262 | + .label = N_( "Sound" ), | |
263 | + .summary = N_( "Alert sound" ), | |
264 | + .description = N_( "Beep on errors" ) | |
264 | 265 | }, |
265 | 266 | { |
266 | - LIB3270_TOGGLE_VIEW_FIELD, | |
267 | - "fieldattr", | |
268 | - False, | |
269 | - NULL, // Default keycode | |
270 | - NULL, // Icon name | |
271 | - N_( "Show Field" ), | |
272 | - N_( "Show Field attributes" ), | |
273 | - "" | |
267 | + .id = LIB3270_TOGGLE_VIEW_FIELD, | |
268 | + .name = "fieldattr", | |
269 | + .def = False, | |
270 | + .key = NULL, // Default keycode | |
271 | + .icon = NULL, // Icon name | |
272 | + .label = N_( "Show Field" ), | |
273 | + .summary = N_( "Show Field attributes" ), | |
274 | + .description = "" | |
274 | 275 | }, |
275 | 276 | { |
276 | - LIB3270_TOGGLE_ALTSCREEN, | |
277 | - "altscreen", | |
278 | - True, | |
279 | - NULL, // Default keycode | |
280 | - NULL, // Icon name | |
281 | - N_( "Alternate screen" ), | |
282 | - N_( "Resize on alternate screen" ), | |
283 | - N_( "Auto resize on altscreen" ) | |
277 | + .id = LIB3270_TOGGLE_ALTSCREEN, | |
278 | + .name = "altscreen", | |
279 | + .def = True, | |
280 | + .key = NULL, // Default keycode | |
281 | + .icon = NULL, // Icon name | |
282 | + .label = N_( "Alternate screen" ), | |
283 | + .summary = N_( "Resize on alternate screen" ), | |
284 | + .description = N_( "Auto resize on altscreen" ) | |
284 | 285 | }, |
285 | 286 | { |
286 | - LIB3270_TOGGLE_KEEP_ALIVE, | |
287 | - "keepalive", | |
288 | - True, | |
289 | - NULL, // Default keycode | |
290 | - NULL, // Icon name | |
291 | - N_( "Network keep alive" ), | |
292 | - N_( "Network keep alive" ), | |
293 | - N_( "Enable network keep-alive with SO_KEEPALIVE" ) | |
287 | + .id = LIB3270_TOGGLE_KEEP_ALIVE, | |
288 | + .name = "keepalive", | |
289 | + .def = True, | |
290 | + .key = NULL, // Default keycode | |
291 | + .icon = NULL, // Icon name | |
292 | + .label = N_( "Network keep alive" ), | |
293 | + .summary = N_( "Network keep alive" ), | |
294 | + .description = N_( "Enable network keep-alive with SO_KEEPALIVE" ) | |
294 | 295 | }, |
295 | 296 | { |
296 | - LIB3270_TOGGLE_NETWORK_TRACE, | |
297 | - "nettrace", | |
298 | - False, | |
299 | - NULL, // Default keycode | |
300 | - NULL, // Icon name | |
301 | - N_( "Network data" ), | |
302 | - N_( "Trace network data flow" ), | |
303 | - N_( "Enable network in/out trace" ) | |
297 | + .id = LIB3270_TOGGLE_NETWORK_TRACE, | |
298 | + .name = "nettrace", | |
299 | + .def = False, | |
300 | + .key = NULL, // Default keycode | |
301 | + .icon = NULL, // Icon name | |
302 | + .label = N_( "Network data" ), | |
303 | + .summary = N_( "Trace network data flow" ), | |
304 | + .description = N_( "Enable network in/out trace" ) | |
304 | 305 | }, |
305 | 306 | { |
306 | - LIB3270_TOGGLE_SSL_TRACE, | |
307 | - "ssltrace", | |
308 | - False, | |
309 | - NULL, // Default keycode | |
310 | - NULL, // Icon name | |
311 | - N_( "SSL negotiation" ), | |
312 | - N_( "Trace SSL negotiation" ), | |
313 | - N_( "Enable security negotiation trace" ) | |
307 | + .id = LIB3270_TOGGLE_SSL_TRACE, | |
308 | + .name = "ssltrace", | |
309 | + .def = False, | |
310 | + .key = NULL, // Default keycode | |
311 | + .icon = NULL, // Icon name | |
312 | + .label = N_( "SSL negotiation" ), | |
313 | + .summary = N_( "Trace SSL negotiation" ), | |
314 | + .description = N_( "Enable security negotiation trace" ) | |
314 | 315 | }, |
315 | 316 | |
316 | 317 | { |
317 | - LIB3270_TOGGLE_COUNT, | |
318 | - NULL, | |
319 | - 0, | |
320 | - NULL, | |
321 | - NULL, | |
322 | - NULL, | |
323 | - NULL, | |
324 | - NULL | |
318 | + .id = LIB3270_TOGGLE_COUNT, | |
319 | + .name = NULL, | |
320 | + .def = False, | |
321 | + .key = NULL, // Default keycode | |
322 | + .icon = NULL, // Icon name | |
323 | + .label = NULL, | |
324 | + .summary = NULL, | |
325 | + .description = NULL | |
326 | + | |
325 | 327 | } |
326 | 328 | |
327 | 329 | }; | ... | ... |
src/include/lib3270.h
... | ... | @@ -135,43 +135,6 @@ |
135 | 135 | |
136 | 136 | } LIB3270_ATTR; |
137 | 137 | |
138 | - /** | |
139 | - * @brief Toogles. | |
140 | - */ | |
141 | - typedef enum _lib3270_toggle | |
142 | - { | |
143 | - LIB3270_TOGGLE_MONOCASE, | |
144 | - LIB3270_TOGGLE_CURSOR_BLINK, | |
145 | - LIB3270_TOGGLE_SHOW_TIMING, | |
146 | - LIB3270_TOGGLE_CURSOR_POS, | |
147 | - LIB3270_TOGGLE_DS_TRACE, | |
148 | - LIB3270_TOGGLE_LINE_WRAP, | |
149 | - LIB3270_TOGGLE_BLANK_FILL, | |
150 | - LIB3270_TOGGLE_SCREEN_TRACE, | |
151 | - LIB3270_TOGGLE_EVENT_TRACE, | |
152 | - LIB3270_TOGGLE_MARGINED_PASTE, | |
153 | - LIB3270_TOGGLE_RECTANGLE_SELECT, | |
154 | - LIB3270_TOGGLE_CROSSHAIR, | |
155 | - LIB3270_TOGGLE_FULL_SCREEN, | |
156 | - LIB3270_TOGGLE_RECONNECT, | |
157 | - LIB3270_TOGGLE_INSERT, | |
158 | - LIB3270_TOGGLE_SMART_PASTE, | |
159 | - LIB3270_TOGGLE_BOLD, | |
160 | - LIB3270_TOGGLE_KEEP_SELECTED, | |
161 | - LIB3270_TOGGLE_UNDERLINE, /**< @brief Show underline ? */ | |
162 | - LIB3270_TOGGLE_CONNECT_ON_STARTUP, | |
163 | - LIB3270_TOGGLE_KP_ALTERNATIVE, /**< @brief Keypad +/- move to next/previous field */ | |
164 | - LIB3270_TOGGLE_BEEP, /**< @brief Beep on errors */ | |
165 | - LIB3270_TOGGLE_VIEW_FIELD, /**< @brief View Field attribute */ | |
166 | - LIB3270_TOGGLE_ALTSCREEN, /**< @brief auto resize on altscreen */ | |
167 | - LIB3270_TOGGLE_KEEP_ALIVE, /**< @brief Enable network keep-alive with SO_KEEPALIVE */ | |
168 | - LIB3270_TOGGLE_NETWORK_TRACE, /**< @brief Enable network in/out trace */ | |
169 | - LIB3270_TOGGLE_SSL_TRACE, /**< @brief Enable security traces */ | |
170 | - | |
171 | - LIB3270_TOGGLE_COUNT | |
172 | - | |
173 | - } LIB3270_TOGGLE; | |
174 | - | |
175 | 138 | typedef enum _lib3270_direction |
176 | 139 | { |
177 | 140 | LIB3270_DIR_UP, |
... | ... | @@ -186,23 +149,6 @@ |
186 | 149 | } LIB3270_DIRECTION; |
187 | 150 | |
188 | 151 | /** |
189 | - * @brief Toggle types. | |
190 | - * | |
191 | - */ | |
192 | - typedef enum _LIB3270_TOGGLE_TYPE | |
193 | - { | |
194 | - LIB3270_TOGGLE_TYPE_INITIAL, | |
195 | - LIB3270_TOGGLE_TYPE_INTERACTIVE, | |
196 | - LIB3270_TOGGLE_TYPE_ACTION, | |
197 | - LIB3270_TOGGLE_TYPE_FINAL, | |
198 | - LIB3270_TOGGLE_TYPE_UPDATE, | |
199 | - | |
200 | - LIB3270_TOGGLE_TYPE_USER | |
201 | - | |
202 | - } LIB3270_TOGGLE_TYPE; | |
203 | - | |
204 | - | |
205 | - /** | |
206 | 152 | * @brief OIA Status indicators. |
207 | 153 | * |
208 | 154 | */ |
... | ... | @@ -396,6 +342,19 @@ |
396 | 342 | #endif |
397 | 343 | |
398 | 344 | /** |
345 | + * @brief Head for property descriptors. | |
346 | + * | |
347 | + */ | |
348 | + #define LIB3270_PROPERTY_HEAD \ | |
349 | + const char * name; \ | |
350 | + const char * summary; \ | |
351 | + const char * description; | |
352 | + | |
353 | + typedef struct _lib3270_property { | |
354 | + LIB3270_PROPERTY_HEAD | |
355 | + } LIB3270_PROPERTY; | |
356 | + | |
357 | + /** | |
399 | 358 | * @brief State change IDs. |
400 | 359 | * |
401 | 360 | */ | ... | ... |
src/include/lib3270/properties.h
... | ... | @@ -38,14 +38,16 @@ |
38 | 38 | |
39 | 39 | #define LIB3270_PROPERTIES_H_INCLUDED |
40 | 40 | |
41 | + #include <lib3270.h> | |
42 | + | |
41 | 43 | #ifdef __cplusplus |
42 | 44 | extern "C" { |
43 | 45 | #endif |
44 | 46 | |
45 | 47 | typedef struct _lib3270_int_property |
46 | 48 | { |
47 | - const char * name; ///< @brief Property name. | |
48 | - const char * description; ///< @brief Property description. | |
49 | + LIB3270_PROPERTY_HEAD | |
50 | + | |
49 | 51 | int (*get)(const H3270 *hSession); ///< @brief Get value. |
50 | 52 | int (*set)(H3270 *hSession, int value); ///< @brief Set value. |
51 | 53 | |
... | ... | @@ -53,8 +55,8 @@ |
53 | 55 | |
54 | 56 | typedef struct _lib3270_uint_property |
55 | 57 | { |
56 | - const char * name; ///< @brief Property name. | |
57 | - const char * description; ///< @brief Property description. | |
58 | + LIB3270_PROPERTY_HEAD | |
59 | + | |
58 | 60 | unsigned int (*get)(const H3270 *hSession); ///< @brief Get value. |
59 | 61 | int (*set)(H3270 *hSession, unsigned int value); ///< @brief Set value. |
60 | 62 | |
... | ... | @@ -62,8 +64,8 @@ |
62 | 64 | |
63 | 65 | typedef struct _lib3270_string_property |
64 | 66 | { |
65 | - const char * name; ///< @brief Property name. | |
66 | - const char * description; ///< @brief Property description. | |
67 | + LIB3270_PROPERTY_HEAD | |
68 | + | |
67 | 69 | const char * (*get)(const H3270 *hSession); ///< @brief Get value. |
68 | 70 | int (*set)(H3270 *hSession, const char * value); ///< @brief Set value. |
69 | 71 | ... | ... |
src/include/lib3270/session.h
src/include/lib3270/toggle.h
... | ... | @@ -37,16 +37,70 @@ |
37 | 37 | extern "C" { |
38 | 38 | #endif |
39 | 39 | |
40 | + /** | |
41 | + * @brief Toogles. | |
42 | + */ | |
43 | + typedef enum _lib3270_toggle | |
44 | + { | |
45 | + LIB3270_TOGGLE_MONOCASE, | |
46 | + LIB3270_TOGGLE_CURSOR_BLINK, | |
47 | + LIB3270_TOGGLE_SHOW_TIMING, | |
48 | + LIB3270_TOGGLE_CURSOR_POS, | |
49 | + LIB3270_TOGGLE_DS_TRACE, | |
50 | + LIB3270_TOGGLE_LINE_WRAP, | |
51 | + LIB3270_TOGGLE_BLANK_FILL, | |
52 | + LIB3270_TOGGLE_SCREEN_TRACE, | |
53 | + LIB3270_TOGGLE_EVENT_TRACE, | |
54 | + LIB3270_TOGGLE_MARGINED_PASTE, | |
55 | + LIB3270_TOGGLE_RECTANGLE_SELECT, | |
56 | + LIB3270_TOGGLE_CROSSHAIR, | |
57 | + LIB3270_TOGGLE_FULL_SCREEN, | |
58 | + LIB3270_TOGGLE_RECONNECT, | |
59 | + LIB3270_TOGGLE_INSERT, | |
60 | + LIB3270_TOGGLE_SMART_PASTE, | |
61 | + LIB3270_TOGGLE_BOLD, | |
62 | + LIB3270_TOGGLE_KEEP_SELECTED, | |
63 | + LIB3270_TOGGLE_UNDERLINE, /**< @brief Show underline ? */ | |
64 | + LIB3270_TOGGLE_CONNECT_ON_STARTUP, | |
65 | + LIB3270_TOGGLE_KP_ALTERNATIVE, /**< @brief Keypad +/- move to next/previous field */ | |
66 | + LIB3270_TOGGLE_BEEP, /**< @brief Beep on errors */ | |
67 | + LIB3270_TOGGLE_VIEW_FIELD, /**< @brief View Field attribute */ | |
68 | + LIB3270_TOGGLE_ALTSCREEN, /**< @brief auto resize on altscreen */ | |
69 | + LIB3270_TOGGLE_KEEP_ALIVE, /**< @brief Enable network keep-alive with SO_KEEPALIVE */ | |
70 | + LIB3270_TOGGLE_NETWORK_TRACE, /**< @brief Enable network in/out trace */ | |
71 | + LIB3270_TOGGLE_SSL_TRACE, /**< @brief Enable security traces */ | |
72 | + | |
73 | + LIB3270_TOGGLE_COUNT | |
74 | + | |
75 | + } LIB3270_TOGGLE; | |
76 | + | |
77 | + /** | |
78 | + * @brief Toggle types. | |
79 | + * | |
80 | + */ | |
81 | + typedef enum _LIB3270_TOGGLE_TYPE | |
82 | + { | |
83 | + LIB3270_TOGGLE_TYPE_INITIAL, | |
84 | + LIB3270_TOGGLE_TYPE_INTERACTIVE, | |
85 | + LIB3270_TOGGLE_TYPE_ACTION, | |
86 | + LIB3270_TOGGLE_TYPE_FINAL, | |
87 | + LIB3270_TOGGLE_TYPE_UPDATE, | |
88 | + | |
89 | + LIB3270_TOGGLE_TYPE_USER | |
90 | + | |
91 | + } LIB3270_TOGGLE_TYPE; | |
92 | + | |
93 | + | |
40 | 94 | typedef struct _lib3270_toggle_entry |
41 | 95 | { |
96 | + LIB3270_PROPERTY_HEAD | |
97 | + | |
42 | 98 | LIB3270_TOGGLE id; ///< @brief Toggle ID. |
43 | - const char * name; ///< @brief Toggle name. | |
44 | 99 | const char def; ///< @brief Default value. |
45 | 100 | const char * key; ///< @brief Default key (or NULL if no default). |
46 | 101 | const char * icon; ///< @brief Icon name (from https://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html) |
47 | 102 | const char * label; ///< @brief Button label (or NULL). |
48 | - const char * summary; ///< @brief Short description (or NULL). | |
49 | - const char * description; ///< @brief Toggle description. | |
103 | + | |
50 | 104 | } LIB3270_TOGGLE_ENTRY; |
51 | 105 | |
52 | 106 | /** | ... | ... |