Changeset 75607 in vbox
- Timestamp:
- Nov 20, 2018 10:33:09 AM (6 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src
- Files:
-
- 4 edited
-
extradata/UIExtraDataManager.cpp (modified) (1 diff)
-
extradata/UIExtraDataManager.h (modified) (1 diff)
-
manager/details/UIDetailsModel.cpp (modified) (3 diffs)
-
manager/details/UIDetailsModel.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp
r75525 r75607 2943 2943 const QString strFullKey = QString("%1/%2").arg(GUI_Details_Elements).arg(strElementType); 2944 2944 2945 /* Return soption list: */2945 /* Return option list: */ 2946 2946 return extraDataStringList(strFullKey); 2947 } 2948 2949 void UIExtraDataManager::setVBoxManagerDetailsPaneElementOptions(DetailsElementType enmElementType, const QStringList &options) 2950 { 2951 /* Compose full key from GUI_Details_Elements and enmElementType: */ 2952 QString strElementType = gpConverter->toInternalString(enmElementType); 2953 AssertReturnVoid(!strElementType.isEmpty()); 2954 strElementType[0] = strElementType.at(0).toUpper(); 2955 const QString strFullKey = QString("%1/%2").arg(GUI_Details_Elements).arg(strElementType); 2956 2957 /* Store option list: */ 2958 setExtraDataStringList(strFullKey, options); 2947 2959 } 2948 2960 -
trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h
r75525 r75607 349 349 /** Returns VirtualBox Manager / Details pane options for certain @a enmElementType. */ 350 350 QStringList vboxManagerDetailsPaneElementOptions(DetailsElementType enmElementType); 351 /** Defines VirtualBox Manager / Details pane @a options for certain @a enmElementType. */ 352 void setVBoxManagerDetailsPaneElementOptions(DetailsElementType enmElementType, const QStringList &options); 351 353 /** @} */ 352 354 -
trunk/src/VBox/Frontends/VirtualBox/src/manager/details/UIDetailsModel.cpp
r75530 r75607 26 26 # include <QGraphicsView> 27 27 # include <QMenu> 28 # include <QMetaEnum> 28 29 29 30 /* GUI includes: */ … … 97 98 { 98 99 m_pRoot->buildGroup(items); 100 } 101 102 void UIDetailsModel::setCategories(const QMap<DetailsElementType, bool> &categories) 103 { 104 m_categories = categories; 105 m_pRoot->rebuildGroup(); 106 } 107 108 void UIDetailsModel::setOptionsGeneral(UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral fOptionsGeneral) 109 { 110 m_fOptionsGeneral = fOptionsGeneral; 111 m_pRoot->rebuildGroup(); 112 } 113 114 void UIDetailsModel::setOptionsSystem(UIExtraDataMetaDefs::DetailsElementOptionTypeSystem fOptionsSystem) 115 { 116 m_fOptionsSystem = fOptionsSystem; 117 m_pRoot->rebuildGroup(); 118 } 119 120 void UIDetailsModel::setOptionsDisplay(UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay fOptionsDisplay) 121 { 122 m_fOptionsDisplay = fOptionsDisplay; 123 m_pRoot->rebuildGroup(); 124 } 125 126 void UIDetailsModel::setOptionsStorage(UIExtraDataMetaDefs::DetailsElementOptionTypeStorage fOptionsStorage) 127 { 128 m_fOptionsStorage = fOptionsStorage; 129 m_pRoot->rebuildGroup(); 130 } 131 132 void UIDetailsModel::setOptionsAudio(UIExtraDataMetaDefs::DetailsElementOptionTypeAudio fOptionsAudio) 133 { 134 m_fOptionsAudio = fOptionsAudio; 135 m_pRoot->rebuildGroup(); 136 } 137 138 void UIDetailsModel::setOptionsNetwork(UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork fOptionsNetwork) 139 { 140 m_fOptionsNetwork = fOptionsNetwork; 141 m_pRoot->rebuildGroup(); 142 } 143 144 void UIDetailsModel::setOptionsSerial(UIExtraDataMetaDefs::DetailsElementOptionTypeSerial fOptionsSerial) 145 { 146 m_fOptionsSerial = fOptionsSerial; 147 m_pRoot->rebuildGroup(); 148 } 149 150 void UIDetailsModel::setOptionsUsb(UIExtraDataMetaDefs::DetailsElementOptionTypeUsb fOptionsUsb) 151 { 152 m_fOptionsUsb = fOptionsUsb; 153 m_pRoot->rebuildGroup(); 154 } 155 156 void UIDetailsModel::setOptionsSharedFolders(UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders fOptionsSharedFolders) 157 { 158 m_fOptionsSharedFolders = fOptionsSharedFolders; 159 m_pRoot->rebuildGroup(); 160 } 161 162 void UIDetailsModel::setOptionsUserInterface(UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface fOptionsUserInterface) 163 { 164 m_fOptionsUserInterface = fOptionsUserInterface; 165 m_pRoot->rebuildGroup(); 166 } 167 168 void UIDetailsModel::setOptionsDescription(UIExtraDataMetaDefs::DetailsElementOptionTypeDescription fOptionsDescription) 169 { 170 m_fOptionsDescription = fOptionsDescription; 171 m_pRoot->rebuildGroup(); 99 172 } 100 173 … … 412 485 } 413 486 487 void UIDetailsModel::saveDetailsOptions() 488 { 489 /* We will use that one for all the options fetching: */ 490 const QMetaObject &smo = UIExtraDataMetaDefs::staticMetaObject; 491 int iEnumIndex = -1; 492 493 /* General options: */ 494 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeGeneral"); 495 if (iEnumIndex != -1) 496 { 497 bool fDefault = true; 498 QStringList options; 499 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 500 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 501 { 502 /* Prepare current option type: */ 503 const UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral enmOptionType = 504 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 505 /* Skip invalid and default types: */ 506 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral_Invalid 507 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral_Default) 508 continue; 509 /* If option type enabled: */ 510 if (m_fOptionsGeneral & enmOptionType) 511 { 512 /* Add it to the list: */ 513 options << gpConverter->toInternalString(enmOptionType); 514 /* Make sure item is included by default: */ 515 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral_Default & enmOptionType)) 516 fDefault = false; 517 } 518 /* If option type disabled: */ 519 else 520 { 521 /* Make sure item is excluded by default: */ 522 if (UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral_Default & enmOptionType) 523 fDefault = false; 524 } 525 /* Save options: */ 526 if (!fDefault) 527 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_General, options); 528 else 529 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_General, QStringList()); 530 } 531 } 532 533 /* System options: */ 534 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeSystem"); 535 if (iEnumIndex != -1) 536 { 537 bool fDefault = true; 538 QStringList options; 539 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 540 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 541 { 542 /* Prepare current option type: */ 543 const UIExtraDataMetaDefs::DetailsElementOptionTypeSystem enmOptionType = 544 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeSystem>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 545 /* Skip invalid and default types: */ 546 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeSystem_Invalid 547 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeSystem_Default) 548 continue; 549 /* If option type enabled: */ 550 if (m_fOptionsSystem & enmOptionType) 551 { 552 /* Add it to the list: */ 553 options << gpConverter->toInternalString(enmOptionType); 554 /* Make sure item is included by default: */ 555 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeSystem_Default & enmOptionType)) 556 fDefault = false; 557 } 558 /* If option type disabled: */ 559 else 560 { 561 /* Make sure item is excluded by default: */ 562 if (UIExtraDataMetaDefs::DetailsElementOptionTypeSystem_Default & enmOptionType) 563 fDefault = false; 564 } 565 /* Save options: */ 566 if (!fDefault) 567 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_System, options); 568 else 569 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_System, QStringList()); 570 } 571 } 572 573 /* Display options: */ 574 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeDisplay"); 575 if (iEnumIndex != -1) 576 { 577 bool fDefault = true; 578 QStringList options; 579 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 580 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 581 { 582 /* Prepare current option type: */ 583 const UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay enmOptionType = 584 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 585 /* Skip invalid and default types: */ 586 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay_Invalid 587 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay_Default) 588 continue; 589 /* If option type enabled: */ 590 if (m_fOptionsDisplay & enmOptionType) 591 { 592 /* Add it to the list: */ 593 options << gpConverter->toInternalString(enmOptionType); 594 /* Make sure item is included by default: */ 595 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay_Default & enmOptionType)) 596 fDefault = false; 597 } 598 /* If option type disabled: */ 599 else 600 { 601 /* Make sure item is excluded by default: */ 602 if (UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay_Default & enmOptionType) 603 fDefault = false; 604 } 605 /* Save options: */ 606 if (!fDefault) 607 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Display, options); 608 else 609 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Display, QStringList()); 610 } 611 } 612 613 /* Storage options: */ 614 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeStorage"); 615 if (iEnumIndex != -1) 616 { 617 bool fDefault = true; 618 QStringList options; 619 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 620 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 621 { 622 /* Prepare current option type: */ 623 const UIExtraDataMetaDefs::DetailsElementOptionTypeStorage enmOptionType = 624 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeStorage>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 625 /* Skip invalid and default types: */ 626 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeStorage_Invalid 627 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeStorage_Default) 628 continue; 629 /* If option type enabled: */ 630 if (m_fOptionsStorage & enmOptionType) 631 { 632 /* Add it to the list: */ 633 options << gpConverter->toInternalString(enmOptionType); 634 /* Make sure item is included by default: */ 635 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeStorage_Default & enmOptionType)) 636 fDefault = false; 637 } 638 /* If option type disabled: */ 639 else 640 { 641 /* Make sure item is excluded by default: */ 642 if (UIExtraDataMetaDefs::DetailsElementOptionTypeStorage_Default & enmOptionType) 643 fDefault = false; 644 } 645 /* Save options: */ 646 if (!fDefault) 647 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Storage, options); 648 else 649 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Storage, QStringList()); 650 } 651 } 652 653 /* Audio options: */ 654 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeAudio"); 655 if (iEnumIndex != -1) 656 { 657 bool fDefault = true; 658 QStringList options; 659 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 660 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 661 { 662 /* Prepare current option type: */ 663 const UIExtraDataMetaDefs::DetailsElementOptionTypeAudio enmOptionType = 664 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeAudio>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 665 /* Skip invalid and default types: */ 666 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeAudio_Invalid 667 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeAudio_Default) 668 continue; 669 /* If option type enabled: */ 670 if (m_fOptionsAudio & enmOptionType) 671 { 672 /* Add it to the list: */ 673 options << gpConverter->toInternalString(enmOptionType); 674 /* Make sure item is included by default: */ 675 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeAudio_Default & enmOptionType)) 676 fDefault = false; 677 } 678 /* If option type disabled: */ 679 else 680 { 681 /* Make sure item is excluded by default: */ 682 if (UIExtraDataMetaDefs::DetailsElementOptionTypeAudio_Default & enmOptionType) 683 fDefault = false; 684 } 685 /* Save options: */ 686 if (!fDefault) 687 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Audio, options); 688 else 689 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Audio, QStringList()); 690 } 691 } 692 693 /* Network options: */ 694 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeNetwork"); 695 if (iEnumIndex != -1) 696 { 697 bool fDefault = true; 698 QStringList options; 699 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 700 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 701 { 702 /* Prepare current option type: */ 703 const UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork enmOptionType = 704 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 705 /* Skip invalid and default types: */ 706 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork_Invalid 707 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork_Default) 708 continue; 709 /* If option type enabled: */ 710 if (m_fOptionsNetwork & enmOptionType) 711 { 712 /* Add it to the list: */ 713 options << gpConverter->toInternalString(enmOptionType); 714 /* Make sure item is included by default: */ 715 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork_Default & enmOptionType)) 716 fDefault = false; 717 } 718 /* If option type disabled: */ 719 else 720 { 721 /* Make sure item is excluded by default: */ 722 if (UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork_Default & enmOptionType) 723 fDefault = false; 724 } 725 /* Save options: */ 726 if (!fDefault) 727 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Network, options); 728 else 729 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Network, QStringList()); 730 } 731 } 732 733 /* Serial options: */ 734 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeSerial"); 735 if (iEnumIndex != -1) 736 { 737 bool fDefault = true; 738 QStringList options; 739 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 740 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 741 { 742 /* Prepare current option type: */ 743 const UIExtraDataMetaDefs::DetailsElementOptionTypeSerial enmOptionType = 744 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeSerial>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 745 /* Skip invalid and default types: */ 746 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeSerial_Invalid 747 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeSerial_Default) 748 continue; 749 /* If option type enabled: */ 750 if (m_fOptionsSerial & enmOptionType) 751 { 752 /* Add it to the list: */ 753 options << gpConverter->toInternalString(enmOptionType); 754 /* Make sure item is included by default: */ 755 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeSerial_Default & enmOptionType)) 756 fDefault = false; 757 } 758 /* If option type disabled: */ 759 else 760 { 761 /* Make sure item is excluded by default: */ 762 if (UIExtraDataMetaDefs::DetailsElementOptionTypeSerial_Default & enmOptionType) 763 fDefault = false; 764 } 765 /* Save options: */ 766 if (!fDefault) 767 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Serial, options); 768 else 769 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Serial, QStringList()); 770 } 771 } 772 773 /* Usb options: */ 774 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeUsb"); 775 if (iEnumIndex != -1) 776 { 777 bool fDefault = true; 778 QStringList options; 779 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 780 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 781 { 782 /* Prepare current option type: */ 783 const UIExtraDataMetaDefs::DetailsElementOptionTypeUsb enmOptionType = 784 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeUsb>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 785 /* Skip invalid and default types: */ 786 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeUsb_Invalid 787 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeUsb_Default) 788 continue; 789 /* If option type enabled: */ 790 if (m_fOptionsUsb & enmOptionType) 791 { 792 /* Add it to the list: */ 793 options << gpConverter->toInternalString(enmOptionType); 794 /* Make sure item is included by default: */ 795 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeUsb_Default & enmOptionType)) 796 fDefault = false; 797 } 798 /* If option type disabled: */ 799 else 800 { 801 /* Make sure item is excluded by default: */ 802 if (UIExtraDataMetaDefs::DetailsElementOptionTypeUsb_Default & enmOptionType) 803 fDefault = false; 804 } 805 /* Save options: */ 806 if (!fDefault) 807 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_USB, options); 808 else 809 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_USB, QStringList()); 810 } 811 } 812 813 /* SharedFolders options: */ 814 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeSharedFolders"); 815 if (iEnumIndex != -1) 816 { 817 bool fDefault = true; 818 QStringList options; 819 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 820 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 821 { 822 /* Prepare current option type: */ 823 const UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders enmOptionType = 824 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 825 /* Skip invalid and default types: */ 826 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders_Invalid 827 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders_Default) 828 continue; 829 /* If option type enabled: */ 830 if (m_fOptionsSharedFolders & enmOptionType) 831 { 832 /* Add it to the list: */ 833 options << gpConverter->toInternalString(enmOptionType); 834 /* Make sure item is included by default: */ 835 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders_Default & enmOptionType)) 836 fDefault = false; 837 } 838 /* If option type disabled: */ 839 else 840 { 841 /* Make sure item is excluded by default: */ 842 if (UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders_Default & enmOptionType) 843 fDefault = false; 844 } 845 /* Save options: */ 846 if (!fDefault) 847 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_SF, options); 848 else 849 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_SF, QStringList()); 850 } 851 } 852 853 /* UserInterface options: */ 854 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeUserInterface"); 855 if (iEnumIndex != -1) 856 { 857 bool fDefault = true; 858 QStringList options; 859 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 860 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 861 { 862 /* Prepare current option type: */ 863 const UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface enmOptionType = 864 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 865 /* Skip invalid and default types: */ 866 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface_Invalid 867 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface_Default) 868 continue; 869 /* If option type enabled: */ 870 if (m_fOptionsUserInterface & enmOptionType) 871 { 872 /* Add it to the list: */ 873 options << gpConverter->toInternalString(enmOptionType); 874 /* Make sure item is included by default: */ 875 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface_Default & enmOptionType)) 876 fDefault = false; 877 } 878 /* If option type disabled: */ 879 else 880 { 881 /* Make sure item is excluded by default: */ 882 if (UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface_Default & enmOptionType) 883 fDefault = false; 884 } 885 /* Save options: */ 886 if (!fDefault) 887 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_UI, options); 888 else 889 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_UI, QStringList()); 890 } 891 } 892 893 /* Description options: */ 894 iEnumIndex = smo.indexOfEnumerator("DetailsElementOptionTypeDescription"); 895 if (iEnumIndex != -1) 896 { 897 bool fDefault = true; 898 QStringList options; 899 const QMetaEnum metaEnum = smo.enumerator(iEnumIndex); 900 for (int iKeyIndex = 0; iKeyIndex < metaEnum.keyCount(); ++iKeyIndex) 901 { 902 /* Prepare current option type: */ 903 const UIExtraDataMetaDefs::DetailsElementOptionTypeDescription enmOptionType = 904 static_cast<UIExtraDataMetaDefs::DetailsElementOptionTypeDescription>(metaEnum.keyToValue(metaEnum.key(iKeyIndex))); 905 /* Skip invalid and default types: */ 906 if ( enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeDescription_Invalid 907 || enmOptionType == UIExtraDataMetaDefs::DetailsElementOptionTypeDescription_Default) 908 continue; 909 /* If option type enabled: */ 910 if (m_fOptionsDescription & enmOptionType) 911 { 912 /* Add it to the list: */ 913 options << gpConverter->toInternalString(enmOptionType); 914 /* Make sure item is included by default: */ 915 if (!(UIExtraDataMetaDefs::DetailsElementOptionTypeDescription_Default & enmOptionType)) 916 fDefault = false; 917 } 918 /* If option type disabled: */ 919 else 920 { 921 /* Make sure item is excluded by default: */ 922 if (UIExtraDataMetaDefs::DetailsElementOptionTypeDescription_Default & enmOptionType) 923 fDefault = false; 924 } 925 /* Save options: */ 926 if (!fDefault) 927 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Description, options); 928 else 929 gEDataManager->setVBoxManagerDetailsPaneElementOptions(DetailsElementType_Description, QStringList()); 930 } 931 } 932 } 933 934 void UIDetailsModel::saveDetailsCategories() 935 { 936 gEDataManager->setSelectorWindowDetailsElements(m_categories); 937 } 938 414 939 void UIDetailsModel::saveSettings() 415 940 { 416 gEDataManager->setSelectorWindowDetailsElements(m_categories); 941 saveDetailsOptions(); 942 saveDetailsCategories(); 417 943 } 418 944 -
trunk/src/VBox/Frontends/VirtualBox/src/manager/details/UIDetailsModel.h
r75530 r75607 92 92 /** Returns the details categories. */ 93 93 const QMap<DetailsElementType, bool> &categories() const { return m_categories; } 94 /** Defines the details @a categories. */ 95 void setCategories(const QMap<DetailsElementType, bool> &categories); 94 96 95 97 /** Returns options for General element. */ 96 UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral optionsGeneral() const { return m_fOptionsGeneral; } 98 UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral optionsGeneral() const { return m_fOptionsGeneral; } 99 /** Defines @a fOptions for General element. */ 100 void setOptionsGeneral(UIExtraDataMetaDefs::DetailsElementOptionTypeGeneral fOptions); 101 97 102 /** Returns options for System element. */ 98 UIExtraDataMetaDefs::DetailsElementOptionTypeSystem optionsSystem() const { return m_fOptionsSystem; } 103 UIExtraDataMetaDefs::DetailsElementOptionTypeSystem optionsSystem() const { return m_fOptionsSystem; } 104 /** Defines @a fOptions for System element. */ 105 void setOptionsSystem(UIExtraDataMetaDefs::DetailsElementOptionTypeSystem fOptions); 106 99 107 /** Returns options for Display element. */ 100 UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay optionsDisplay() const { return m_fOptionsDisplay; } 108 UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay optionsDisplay() const { return m_fOptionsDisplay; } 109 /** Defines @a fOptions for Display element. */ 110 void setOptionsDisplay(UIExtraDataMetaDefs::DetailsElementOptionTypeDisplay fOptions); 111 101 112 /** Returns options for Storage element. */ 102 UIExtraDataMetaDefs::DetailsElementOptionTypeStorage optionsStorage() const { return m_fOptionsStorage; } 113 UIExtraDataMetaDefs::DetailsElementOptionTypeStorage optionsStorage() const { return m_fOptionsStorage; } 114 /** Defines @a fOptions for Storage element. */ 115 void setOptionsStorage(UIExtraDataMetaDefs::DetailsElementOptionTypeStorage fOptions); 116 103 117 /** Returns options for Audio element. */ 104 UIExtraDataMetaDefs::DetailsElementOptionTypeAudio optionsAudio() const { return m_fOptionsAudio; } 118 UIExtraDataMetaDefs::DetailsElementOptionTypeAudio optionsAudio() const { return m_fOptionsAudio; } 119 /** Defines @a fOptions for Audio element. */ 120 void setOptionsAudio(UIExtraDataMetaDefs::DetailsElementOptionTypeAudio fOptions); 121 105 122 /** Returns options for Network element. */ 106 UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork optionsNetwork() const { return m_fOptionsNetwork; } 123 UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork optionsNetwork() const { return m_fOptionsNetwork; } 124 /** Defines @a fOptions for Network element. */ 125 void setOptionsNetwork(UIExtraDataMetaDefs::DetailsElementOptionTypeNetwork fOptions); 126 107 127 /** Returns options for Serial element. */ 108 UIExtraDataMetaDefs::DetailsElementOptionTypeSerial optionsSerial() const { return m_fOptionsSerial; } 128 UIExtraDataMetaDefs::DetailsElementOptionTypeSerial optionsSerial() const { return m_fOptionsSerial; } 129 /** Defines @a fOptions for Serial element. */ 130 void setOptionsSerial(UIExtraDataMetaDefs::DetailsElementOptionTypeSerial fOptions); 131 109 132 /** Returns options for Usb element. */ 110 UIExtraDataMetaDefs::DetailsElementOptionTypeUsb optionsUsb() const { return m_fOptionsUsb; } 133 UIExtraDataMetaDefs::DetailsElementOptionTypeUsb optionsUsb() const { return m_fOptionsUsb; } 134 /** Defines @a fOptions for Usb element. */ 135 void setOptionsUsb(UIExtraDataMetaDefs::DetailsElementOptionTypeUsb fOptions); 136 111 137 /** Returns options for Shared Folders element. */ 112 UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders optionsSharedFolders() const { return m_fOptionsSharedFolders; } 138 UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders optionsSharedFolders() const { return m_fOptionsSharedFolders; } 139 /** Defines @a fOptions for Shared Folders element. */ 140 void setOptionsSharedFolders(UIExtraDataMetaDefs::DetailsElementOptionTypeSharedFolders fOptions); 141 113 142 /** Returns options for User Interface element. */ 114 UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface optionsUserInterface() const { return m_fOptionsUserInterface; } 143 UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface optionsUserInterface() const { return m_fOptionsUserInterface; } 144 /** Defines @a fOptions for User Interface element. */ 145 void setOptionsUserInterface(UIExtraDataMetaDefs::DetailsElementOptionTypeUserInterface fOptions); 146 115 147 /** Returns options for Description element. */ 116 UIExtraDataMetaDefs::DetailsElementOptionTypeDescription optionsDescription() const { return m_fOptionsDescription; } 148 UIExtraDataMetaDefs::DetailsElementOptionTypeDescription optionsDescription() const { return m_fOptionsDescription; } 149 /** Defines @a fOptions for Description element. */ 150 void setOptionsDescription(UIExtraDataMetaDefs::DetailsElementOptionTypeDescription fOptions); 117 151 118 152 public slots: … … 166 200 void loadDetailsOptions(DetailsElementType enmType = DetailsElementType_Invalid); 167 201 202 /** Saves details options. */ 203 void saveDetailsOptions(); 204 /** Saves details categories. */ 205 void saveDetailsCategories(); 168 206 /** Saves settings. */ 169 207 void saveSettings();
Note:
See TracChangeset
for help on using the changeset viewer.

