Commit 184468d64d63f1a7e0a28b138939367c5218ddad

Authored by Perry Werneck
1 parent df8fdf4c

Adding action types.

src/core/actions/table.c
@@ -78,6 +78,8 @@ @@ -78,6 +78,8 @@
78 // 78 //
79 { 79 {
80 .name = "reconnect", 80 .name = "reconnect",
  81 + .type = LIB3270_ACTION_TYPE_NETWORK,
  82 +
81 .key = NULL, 83 .key = NULL,
82 .icon = "gtk-connect", 84 .icon = "gtk-connect",
83 .label = N_( "_Connect" ) , 85 .label = N_( "_Connect" ) ,
@@ -90,6 +92,8 @@ @@ -90,6 +92,8 @@
90 92
91 { 93 {
92 .name = "disconnect", 94 .name = "disconnect",
  95 + .type = LIB3270_ACTION_TYPE_NETWORK,
  96 +
93 .key = NULL, 97 .key = NULL,
94 .icon = "gtk-disconnect", 98 .icon = "gtk-disconnect",
95 .label = N_( "_Disconnect" ), 99 .label = N_( "_Disconnect" ),
@@ -105,6 +109,8 @@ @@ -105,6 +109,8 @@
105 // 109 //
106 { 110 {
107 .name = "up", 111 .name = "up",
  112 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  113 +
108 .key = "Up", 114 .key = "Up",
109 .icon = NULL, 115 .icon = NULL,
110 .label = NULL, 116 .label = NULL,
@@ -117,6 +123,8 @@ @@ -117,6 +123,8 @@
117 123
118 { 124 {
119 .name = "down", 125 .name = "down",
  126 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  127 +
120 .key = "Down", 128 .key = "Down",
121 .icon = NULL, 129 .icon = NULL,
122 .label = NULL, 130 .label = NULL,
@@ -129,6 +137,8 @@ @@ -129,6 +137,8 @@
129 137
130 { 138 {
131 .name = "left", 139 .name = "left",
  140 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  141 +
132 .key = "Left", 142 .key = "Left",
133 .icon = NULL, 143 .icon = NULL,
134 .label = NULL, 144 .label = NULL,
@@ -141,6 +151,8 @@ @@ -141,6 +151,8 @@
141 151
142 { 152 {
143 .name = "right", 153 .name = "right",
  154 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  155 +
144 .key = "Right", 156 .key = "Right",
145 .icon = NULL, 157 .icon = NULL,
146 .label = NULL, 158 .label = NULL,
@@ -153,6 +165,8 @@ @@ -153,6 +165,8 @@
153 165
154 { 166 {
155 .name = "newline", 167 .name = "newline",
  168 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  169 +
156 .key = "Control_R", 170 .key = "Control_R",
157 .icon = NULL, 171 .icon = NULL,
158 .label = NULL, 172 .label = NULL,
@@ -165,6 +179,8 @@ @@ -165,6 +179,8 @@
165 179
166 { 180 {
167 .name = "previousword", 181 .name = "previousword",
  182 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  183 +
168 .key = NULL, 184 .key = NULL,
169 .icon = NULL, 185 .icon = NULL,
170 .label = NULL, 186 .label = NULL,
@@ -177,6 +193,8 @@ @@ -177,6 +193,8 @@
177 193
178 { 194 {
179 .name = "nextword", 195 .name = "nextword",
  196 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  197 +
180 .key = NULL, 198 .key = NULL,
181 .icon = NULL, 199 .icon = NULL,
182 .label = NULL, 200 .label = NULL,
@@ -192,6 +210,8 @@ @@ -192,6 +210,8 @@
192 // 210 //
193 { 211 {
194 .name = "saveall", 212 .name = "saveall",
  213 + .type = LIB3270_ACTION_TYPE_FILE,
  214 +
195 .key = NULL, 215 .key = NULL,
196 .icon = "document-save", 216 .icon = "document-save",
197 .label = NULL, 217 .label = NULL,
@@ -204,6 +224,8 @@ @@ -204,6 +224,8 @@
204 224
205 { 225 {
206 .name = "saveselected", 226 .name = "saveselected",
  227 + .type = LIB3270_ACTION_TYPE_FILE,
  228 +
207 .key = NULL, 229 .key = NULL,
208 .icon = NULL, 230 .icon = NULL,
209 .label = NULL, 231 .label = NULL,
@@ -216,6 +238,8 @@ @@ -216,6 +238,8 @@
216 238
217 { 239 {
218 .name = "savecopy", 240 .name = "savecopy",
  241 + .type = LIB3270_ACTION_TYPE_FILE,
  242 +
219 .key = NULL, 243 .key = NULL,
220 .icon = NULL, 244 .icon = NULL,
221 .label = NULL, 245 .label = NULL,
@@ -228,6 +252,8 @@ @@ -228,6 +252,8 @@
228 252
229 { 253 {
230 .name = "loadfile", 254 .name = "loadfile",
  255 + .type = LIB3270_ACTION_TYPE_FILE,
  256 +
231 .key = NULL, 257 .key = NULL,
232 .icon = "document-load", 258 .icon = "document-load",
233 .label = NULL, 259 .label = NULL,
@@ -243,6 +269,8 @@ @@ -243,6 +269,8 @@
243 // 269 //
244 { 270 {
245 .name = "select_all", 271 .name = "select_all",
  272 + .type = LIB3270_ACTION_TYPE_SELECTION,
  273 +
246 .key = "<ctrl>a", 274 .key = "<ctrl>a",
247 .icon = "edit-select-all", 275 .icon = "edit-select-all",
248 .label = N_( "Select all" ), 276 .label = N_( "Select all" ),
@@ -255,6 +283,8 @@ @@ -255,6 +283,8 @@
255 283
256 { 284 {
257 .name = "unselect", 285 .name = "unselect",
  286 + .type = LIB3270_ACTION_TYPE_SELECTION,
  287 +
258 .key = NULL, 288 .key = NULL,
259 .icon = NULL, 289 .icon = NULL,
260 .label = N_( "Remove selection" ), 290 .label = N_( "Remove selection" ),
@@ -267,6 +297,8 @@ @@ -267,6 +297,8 @@
267 297
268 { 298 {
269 .name = "reselect", 299 .name = "reselect",
  300 + .type = LIB3270_ACTION_TYPE_SELECTION,
  301 +
270 .key = "<Ctrl>r", 302 .key = "<Ctrl>r",
271 .icon = NULL, 303 .icon = NULL,
272 .label = N_( "Reselect" ), 304 .label = N_( "Reselect" ),
@@ -282,6 +314,8 @@ @@ -282,6 +314,8 @@
282 // 314 //
283 { 315 {
284 .name = "select_field", 316 .name = "select_field",
  317 + .type = LIB3270_ACTION_TYPE_SELECTION,
  318 +
285 .key = "<Ctrl>f", 319 .key = "<Ctrl>f",
286 .icon = NULL, 320 .icon = NULL,
287 .label = N_( "Select field" ), 321 .label = N_( "Select field" ),
@@ -295,6 +329,8 @@ @@ -295,6 +329,8 @@
295 329
296 { 330 {
297 .name = "fieldend", 331 .name = "fieldend",
  332 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  333 +
298 .key = NULL, 334 .key = NULL,
299 .icon = NULL, 335 .icon = NULL,
300 .label = NULL, 336 .label = NULL,
@@ -307,6 +343,8 @@ @@ -307,6 +343,8 @@
307 343
308 { 344 {
309 .name = "firstfield", 345 .name = "firstfield",
  346 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  347 +
310 .key = "Home", 348 .key = "Home",
311 .icon = "go-first", 349 .icon = "go-first",
312 .label = NULL, 350 .label = NULL,
@@ -319,6 +357,8 @@ @@ -319,6 +357,8 @@
319 357
320 { 358 {
321 .name = "nextfield", 359 .name = "nextfield",
  360 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  361 +
322 .key = "Tab", 362 .key = "Tab",
323 .icon = "go-next", 363 .icon = "go-next",
324 .label = NULL, 364 .label = NULL,
@@ -331,6 +371,8 @@ @@ -331,6 +371,8 @@
331 371
332 { 372 {
333 .name = "previousfield", 373 .name = "previousfield",
  374 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  375 +
334 .key = "ISO_Left_Tab", 376 .key = "ISO_Left_Tab",
335 .icon = "go-previous", 377 .icon = "go-previous",
336 .label = NULL, 378 .label = NULL,
@@ -347,6 +389,8 @@ @@ -347,6 +389,8 @@
347 // 389 //
348 { 390 {
349 .name = "deleteword", 391 .name = "deleteword",
  392 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  393 +
350 .key = "<Ctrl>w", 394 .key = "<Ctrl>w",
351 .icon = NULL, 395 .icon = NULL,
352 .label = NULL, 396 .label = NULL,
@@ -359,6 +403,8 @@ @@ -359,6 +403,8 @@
359 403
360 { 404 {
361 .name = "deletefield", 405 .name = "deletefield",
  406 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  407 +
362 .key = "<Ctrl>u", 408 .key = "<Ctrl>u",
363 .icon = NULL, 409 .icon = NULL,
364 .label = NULL, 410 .label = NULL,
@@ -372,6 +418,8 @@ @@ -372,6 +418,8 @@
372 418
373 { 419 {
374 .name = "eraseinput", 420 .name = "eraseinput",
  421 + .type = LIB3270_ACTION_TYPE_GENERIC,
  422 +
375 .key = NULL, 423 .key = NULL,
376 .icon = NULL, 424 .icon = NULL,
377 .label = NULL, 425 .label = NULL,
@@ -384,6 +432,8 @@ @@ -384,6 +432,8 @@
384 432
385 { 433 {
386 .name = "eraseeof", 434 .name = "eraseeof",
  435 + .type = LIB3270_ACTION_TYPE_GENERIC,
  436 +
387 .key = "End", 437 .key = "End",
388 .icon = NULL, 438 .icon = NULL,
389 .label = NULL, 439 .label = NULL,
@@ -396,6 +446,8 @@ @@ -396,6 +446,8 @@
396 446
397 { 447 {
398 .name = "eraseeol", 448 .name = "eraseeol",
  449 + .type = LIB3270_ACTION_TYPE_GENERIC,
  450 +
399 .key = NULL, 451 .key = NULL,
400 .icon = NULL, 452 .icon = NULL,
401 .label = NULL, 453 .label = NULL,
@@ -408,6 +460,8 @@ @@ -408,6 +460,8 @@
408 460
409 { 461 {
410 .name = "erase", 462 .name = "erase",
  463 + .type = LIB3270_ACTION_TYPE_GENERIC,
  464 +
411 .key = "BackSpace", 465 .key = "BackSpace",
412 .icon = NULL, 466 .icon = NULL,
413 .label = NULL, 467 .label = NULL,
@@ -423,6 +477,8 @@ @@ -423,6 +477,8 @@
423 // 477 //
424 { 478 {
425 .name = "enter", 479 .name = "enter",
  480 + .type = LIB3270_ACTION_TYPE_GENERIC,
  481 +
426 .key = NULL, 482 .key = NULL,
427 .icon = NULL, 483 .icon = NULL,
428 .label = NULL, 484 .label = NULL,
@@ -436,6 +492,8 @@ @@ -436,6 +492,8 @@
436 492
437 { 493 {
438 .name = "kybdreset", 494 .name = "kybdreset",
  495 + .type = LIB3270_ACTION_TYPE_GENERIC,
  496 +
439 .key = "Escape", 497 .key = "Escape",
440 .icon = NULL, 498 .icon = NULL,
441 .label = NULL, 499 .label = NULL,
@@ -448,6 +506,8 @@ @@ -448,6 +506,8 @@
448 506
449 { 507 {
450 .name = "clear", 508 .name = "clear",
  509 + .type = LIB3270_ACTION_TYPE_GENERIC,
  510 +
451 .key = NULL, 511 .key = NULL,
452 .icon = NULL, 512 .icon = NULL,
453 .label = NULL, 513 .label = NULL,
@@ -461,6 +521,8 @@ @@ -461,6 +521,8 @@
461 521
462 { 522 {
463 .name = "delete", 523 .name = "delete",
  524 + .type = LIB3270_ACTION_TYPE_GENERIC,
  525 +
464 .key = "Delete", 526 .key = "Delete",
465 .icon = NULL, 527 .icon = NULL,
466 .label = NULL, 528 .label = NULL,
@@ -473,6 +535,8 @@ @@ -473,6 +535,8 @@
473 535
474 { 536 {
475 .name = "dup", 537 .name = "dup",
  538 + .type = LIB3270_ACTION_TYPE_GENERIC,
  539 +
476 .key = "<Shift>KP_Multiply", 540 .key = "<Shift>KP_Multiply",
477 .icon = NULL, 541 .icon = NULL,
478 .label = NULL, 542 .label = NULL,
@@ -485,6 +549,8 @@ @@ -485,6 +549,8 @@
485 549
486 { 550 {
487 .name = "fieldmark", 551 .name = "fieldmark",
  552 + .type = LIB3270_ACTION_TYPE_GENERIC,
  553 +
488 .key = NULL, 554 .key = NULL,
489 .icon = NULL, 555 .icon = NULL,
490 .label = NULL, 556 .label = NULL,
@@ -497,6 +563,8 @@ @@ -497,6 +563,8 @@
497 563
498 { 564 {
499 .name = "backspace", 565 .name = "backspace",
  566 + .type = LIB3270_ACTION_TYPE_NAVIGATION,
  567 +
500 .key = NULL, 568 .key = NULL,
501 .icon = NULL, 569 .icon = NULL,
502 .label = NULL, 570 .label = NULL,
@@ -509,6 +577,8 @@ @@ -509,6 +577,8 @@
509 577
510 { 578 {
511 .name = "attn", 579 .name = "attn",
  580 + .type = LIB3270_ACTION_TYPE_GENERIC,
  581 +
512 .key = "<shift>Escape", 582 .key = "<shift>Escape",
513 .icon = NULL, 583 .icon = NULL,
514 .label = NULL, 584 .label = NULL,
@@ -521,6 +591,8 @@ @@ -521,6 +591,8 @@
521 591
522 { 592 {
523 .name = "break", 593 .name = "break",
  594 + .type = LIB3270_ACTION_TYPE_GENERIC,
  595 +
524 .key = NULL, 596 .key = NULL,
525 .icon = NULL, 597 .icon = NULL,
526 .label = NULL, 598 .label = NULL,
@@ -533,6 +605,8 @@ @@ -533,6 +605,8 @@
533 605
534 { 606 {
535 .name = "pastenext", 607 .name = "pastenext",
  608 + .type = LIB3270_ACTION_TYPE_SELECTION,
  609 +
536 .key = "<shift><ctrl>v", 610 .key = "<shift><ctrl>v",
537 .icon = NULL, 611 .icon = NULL,
538 .label = NULL, 612 .label = NULL,
@@ -545,6 +619,8 @@ @@ -545,6 +619,8 @@
545 619
546 { 620 {
547 .name = "sysreq", 621 .name = "sysreq",
  622 + .type = LIB3270_ACTION_TYPE_GENERIC,
  623 +
548 .key = "<shift>Print", 624 .key = "<shift>Print",
549 .icon = NULL, 625 .icon = NULL,
550 .label = NULL, 626 .label = NULL,
@@ -560,6 +636,8 @@ @@ -560,6 +636,8 @@
560 // 636 //
561 { 637 {
562 .name = "print", 638 .name = "print",
  639 + .type = LIB3270_ACTION_TYPE_PRINTER,
  640 +
563 .key = "Print", 641 .key = "Print",
564 .icon = "document-print", 642 .icon = "document-print",
565 .label = NULL, 643 .label = NULL,
@@ -573,6 +651,8 @@ @@ -573,6 +651,8 @@
573 651
574 { 652 {
575 .name = "printall", 653 .name = "printall",
  654 + .type = LIB3270_ACTION_TYPE_PRINTER,
  655 +
576 .key = NULL, 656 .key = NULL,
577 .icon = NULL, 657 .icon = NULL,
578 .label = NULL, 658 .label = NULL,
@@ -585,6 +665,8 @@ @@ -585,6 +665,8 @@
585 665
586 { 666 {
587 .name = "printselected", 667 .name = "printselected",
  668 + .type = LIB3270_ACTION_TYPE_PRINTER,
  669 +
588 .key = NULL, 670 .key = NULL,
589 .icon = NULL, 671 .icon = NULL,
590 .label = NULL, 672 .label = NULL,
@@ -597,6 +679,8 @@ @@ -597,6 +679,8 @@
597 679
598 { 680 {
599 .name = "printcopy", 681 .name = "printcopy",
  682 + .type = LIB3270_ACTION_TYPE_PRINTER,
  683 +
600 .key = NULL, 684 .key = NULL,
601 .icon = NULL, 685 .icon = NULL,
602 .label = NULL, 686 .label = NULL,
@@ -613,6 +697,8 @@ @@ -613,6 +697,8 @@
613 697
614 { 698 {
615 .name = "testpattern", 699 .name = "testpattern",
  700 + .type = LIB3270_ACTION_TYPE_GENERIC,
  701 +
616 .key = NULL, 702 .key = NULL,
617 .icon = NULL, 703 .icon = NULL,
618 .label = NULL, 704 .label = NULL,
@@ -625,6 +711,8 @@ @@ -625,6 +711,8 @@
625 711
626 { 712 {
627 .name = "charsettable", 713 .name = "charsettable",
  714 + .type = LIB3270_ACTION_TYPE_GENERIC,
  715 +
628 .key = NULL, 716 .key = NULL,
629 .icon = NULL, 717 .icon = NULL,
630 .label = NULL, 718 .label = NULL,
src/include/lib3270/actions.h
@@ -48,8 +48,10 @@ @@ -48,8 +48,10 @@
48 { 48 {
49 LIB3270_ACTION_TYPE_GENERIC, ///< @brief Generic action. 49 LIB3270_ACTION_TYPE_GENERIC, ///< @brief Generic action.
50 LIB3270_ACTION_TYPE_NAVIGATION, ///< @brief Cursor and field navigation. 50 LIB3270_ACTION_TYPE_NAVIGATION, ///< @brief Cursor and field navigation.
51 - LIB3270_ACTION_CONNECTION, ///< @brief Connection action.  
52 - LIB3270_ACTION_CLIPBOARD, ///< @brief Clipboard action. 51 + LIB3270_ACTION_TYPE_NETWORK, ///< @brief Connection action.
  52 + LIB3270_ACTION_TYPE_SELECTION, ///< @brief Clipboard action.
  53 + LIB3270_ACTION_TYPE_FILE, ///< @brief File load/save.
  54 + LIB3270_ACTION_TYPE_PRINTER, ///< @brief Printer actions.
53 55
54 LIB3270_ACTION_CUSTOM ///< @brief Custom action/Number of actions. 56 LIB3270_ACTION_CUSTOM ///< @brief Custom action/Number of actions.
55 } LIB3270_ACTION_TYPE; 57 } LIB3270_ACTION_TYPE;