Changeset c0757e1f in mainline for uspace/app/uidemo/uidemo.c
- Timestamp:
- 2023-04-19T11:13:06Z (20 months ago)
- Branches:
- master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 37087c8
- Parents:
- ec8ef12
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/uidemo/uidemo.c
rec8ef12 rc0757e1f 52 52 #include <ui/promptdialog.h> 53 53 #include <ui/resource.h> 54 #include <ui/selectdialog.h> 54 55 #include <ui/tab.h> 55 56 #include <ui/tabset.h> … … 108 109 static void uidemo_file_exit(ui_menu_entry_t *, void *); 109 110 static void uidemo_edit_modify(ui_menu_entry_t *, void *); 111 static void uidemo_edit_insert_character(ui_menu_entry_t *, void *); 110 112 111 113 static void file_dialog_bok(ui_file_dialog_t *, void *, const char *); … … 127 129 .bcancel = prompt_dialog_bcancel, 128 130 .close = prompt_dialog_close 131 }; 132 133 static void select_dialog_bok(ui_select_dialog_t *, void *, void *); 134 static void select_dialog_bcancel(ui_select_dialog_t *, void *); 135 static void select_dialog_close(ui_select_dialog_t *, void *); 136 137 static ui_select_dialog_cb_t select_dialog_cb = { 138 .bok = select_dialog_bok, 139 .bcancel = select_dialog_bcancel, 140 .close = select_dialog_close 129 141 }; 130 142 … … 432 444 rc = ui_prompt_dialog_create(demo->ui, &pdparams, &dialog); 433 445 if (rc != EOK) { 434 printf("Error creating messagedialog.\n");446 printf("Error creating prompt dialog.\n"); 435 447 return; 436 448 } 437 449 438 450 ui_prompt_dialog_set_cb(dialog, &prompt_dialog_cb, demo); 451 } 452 453 /** Edit / Insert Character menu entry selected. 454 * 455 * @param mentry Menu entry 456 * @param arg Argument (demo) 457 */ 458 static void uidemo_edit_insert_character(ui_menu_entry_t *mentry, void *arg) 459 { 460 ui_demo_t *demo = (ui_demo_t *) arg; 461 ui_select_dialog_params_t sdparams; 462 ui_select_dialog_t *dialog; 463 ui_list_entry_attr_t attr; 464 errno_t rc; 465 466 ui_select_dialog_params_init(&sdparams); 467 sdparams.caption = "Insert Character"; 468 sdparams.prompt = "Select character to insert"; 469 470 rc = ui_select_dialog_create(demo->ui, &sdparams, &dialog); 471 if (rc != EOK) { 472 printf("Error creating select dialog.\n"); 473 return; 474 } 475 476 ui_list_entry_attr_init(&attr); 477 attr.caption = "Dollar sign ($)"; 478 attr.arg = (void *)'$'; 479 rc = ui_select_dialog_append(dialog, &attr); 480 if (rc != EOK) { 481 printf("Error appending entry to list.\n"); 482 return; 483 } 484 485 ui_list_entry_attr_init(&attr); 486 attr.caption = "Hash sign (#)"; 487 attr.arg = (void *)'#'; 488 rc = ui_select_dialog_append(dialog, &attr); 489 if (rc != EOK) { 490 printf("Error appending entry to list.\n"); 491 return; 492 } 493 494 ui_list_entry_attr_init(&attr); 495 attr.caption = "Question mark (?)"; 496 attr.arg = (void *)'?'; 497 rc = ui_select_dialog_append(dialog, &attr); 498 if (rc != EOK) { 499 printf("Error appending entry to list.\n"); 500 return; 501 } 502 503 ui_select_dialog_set_cb(dialog, &select_dialog_cb, demo); 504 505 (void) ui_select_dialog_paint(dialog); 439 506 } 440 507 … … 525 592 /** Prompt dialog cancel button press. 526 593 * 527 * @param dialog Filedialog594 * @param dialog Prompt dialog 528 595 * @param arg Argument (ui_demo_t *) 529 596 */ … … 538 605 /** Prompt dialog close request. 539 606 * 540 * @param dialog Filedialog607 * @param dialog Prompt dialog 541 608 * @param arg Argument (ui_demo_t *) 542 609 */ … … 547 614 (void) demo; 548 615 ui_prompt_dialog_destroy(dialog); 616 } 617 618 /** Select dialog OK button press. 619 * 620 * @param dialog Select dialog 621 * @param arg Argument (ui_demo_t *) 622 * @param text Submitted text 623 */ 624 static void select_dialog_bok(ui_select_dialog_t *dialog, void *arg, 625 void *earg) 626 { 627 ui_demo_t *demo = (ui_demo_t *) arg; 628 char str[2]; 629 630 ui_select_dialog_destroy(dialog); 631 str[0] = (char)(intptr_t)earg; 632 str[1] = '\0'; 633 (void) ui_entry_insert_str(demo->entry, str); 634 } 635 636 /** Select dialog cancel button press. 637 * 638 * @param dialog Select dialog 639 * @param arg Argument (ui_demo_t *) 640 */ 641 static void select_dialog_bcancel(ui_select_dialog_t *dialog, void *arg) 642 { 643 ui_demo_t *demo = (ui_demo_t *) arg; 644 645 (void) demo; 646 ui_select_dialog_destroy(dialog); 647 } 648 649 /** Select dialog close request. 650 * 651 * @param dialog Select dialog 652 * @param arg Argument (ui_demo_t *) 653 */ 654 static void select_dialog_close(ui_select_dialog_t *dialog, void *arg) 655 { 656 ui_demo_t *demo = (ui_demo_t *) arg; 657 658 (void) demo; 659 ui_select_dialog_destroy(dialog); 549 660 } 550 661 … … 598 709 ui_menu_entry_t *mexit; 599 710 ui_menu_entry_t *mmodify; 711 ui_menu_entry_t *minsert_char; 600 712 ui_menu_entry_t *mabout; 601 713 ui_list_entry_attr_t eattr; … … 719 831 720 832 ui_menu_entry_set_cb(mmodify, uidemo_edit_modify, (void *) &demo); 833 834 rc = ui_menu_entry_create(demo.medit, "~I~nsert Character", 835 "", &minsert_char); 836 if (rc != EOK) { 837 printf("Error creating menu.\n"); 838 return rc; 839 } 840 841 ui_menu_entry_set_cb(minsert_char, uidemo_edit_insert_character, 842 (void *) &demo); 721 843 722 844 rc = ui_menu_create(demo.mbar, "~P~references", &demo.mpreferences);
Note:
See TracChangeset
for help on using the changeset viewer.