~cyphermox/youker-assistant/dmidecode

« back to all changes in this revision

Viewing changes to info/hdwidget.cpp

  • Committer: lixiang
  • Date: 2017-02-23 03:48:24 UTC
  • Revision ID: lixiang@kylinos.cn-20170223034824-vnh8hj1rftz1hyze
Multi screen display normal

Show diffs side-by-side

added added

removed removed

Lines of Context:
50
50
//    hd_info_map.insert("DiskSerial", "W6227R7B<1_1>144116411501");
51
51
//    hd_info_map.insert("DiskVendor", "Seagate<1_1>Seagate");
52
52
 
53
 
    QMap<QString, QVariant>::iterator iter = hd_info_map.find("DiskNum");
 
53
    if (hd_info_map.isEmpty() || hd_info_map.count() <= 0) {
 
54
 
 
55
    }
 
56
    else {
 
57
        QMap<QString, QVariant>::iterator iter = hd_info_map.find("DiskNum");
 
58
        int diskNum = 0;
 
59
        if (iter == hd_info_map.end()) {
 
60
            diskNum = 0;
 
61
        }
 
62
        else{
 
63
            diskNum = iter.value().toInt();
 
64
        }
 
65
        if(diskNum == 0) {
 
66
        }
 
67
        else {
 
68
            if(diskNum == 1) {
 
69
                ComputerPage *page = new ComputerPage(scroll_widget->zone, tr("HardWare Info"));
 
70
                hd_info_map.remove("DiskNum");
 
71
                QMap<QString, QVariant> tmpMap;
 
72
                QMap<QString,QVariant>::iterator it;
 
73
                for ( it = hd_info_map.begin(); it != hd_info_map.end(); ++it ) {
 
74
                    if (it.value().toString().length() > 0) {
 
75
                        if (QString::compare(it.value().toString(), "$", Qt::CaseInsensitive) != 0)//20161228
 
76
                            tmpMap.insert(it.key(), it.value());
 
77
                    }
 
78
                }
 
79
                page->setMap(tmpMap, hd_info_map.value("DiskVendor").toString().toUpper());
 
80
                page->initUI();
 
81
                scroll_widget->addScrollWidget(page);
 
82
            }
 
83
            else if(diskNum > 1) {
 
84
                for(int i=0;i<diskNum;i++) {
 
85
                    ComputerPage *page = new ComputerPage(scroll_widget->zone, tr("HardWare Info %1").arg(i+1));
 
86
                    tmp_info_map.clear();
 
87
                    QMap<QString, QVariant>::iterator itbegin = hd_info_map.begin();
 
88
                    QMap<QString, QVariant>::iterator  itend = hd_info_map.end();
 
89
                    for (;itbegin != itend; ++itbegin) {
 
90
                        if(itbegin.key() != "DiskNum" && itbegin.value().toString().contains("<1_1>")) {
 
91
                            QString result = itbegin.value().toString().split("<1_1>").at(i);
 
92
                            if (result.length() > 0) {
 
93
                                if (QString::compare(result, "$", Qt::CaseInsensitive) != 0)//20161228
 
94
                                    tmp_info_map.insert(itbegin.key(), result);
 
95
                            }
 
96
                        }
 
97
                    }
 
98
                    page->setMap(tmp_info_map, tmp_info_map.value("DiskVendor").toString().toUpper());
 
99
                    page->initUI();
 
100
                    scroll_widget->addScrollWidget(page);
 
101
                }
 
102
            }
 
103
        }
 
104
    }
 
105
    /*QMap<QString, QVariant>::iterator iter = hd_info_map.find("DiskNum");
54
106
    int diskNum = 0;
55
107
    if (iter == hd_info_map.end())
56
108
    {
102
154
                scroll_widget->addScrollWidget(page);
103
155
            }
104
156
        }
105
 
    }
 
157
    }*/
106
158
    dataOK = true;
107
159
}