~cyphermox/youker-assistant/dmidecode

« back to all changes in this revision

Viewing changes to info/monitorwidget.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:
48
48
//    monitor_info_map.insert("Vga_num", "2");
49
49
//    monitor_info_map.insert("Vga_product", "Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 09) (prog-if 00 [VGA controller])<1_1>NVIDIA Corporation GF117M [GeForce 610M/710M/810M/820M / GT 620M/625M/630M/720M] (rev a1) (prog-if 00 [VGA controller]");
50
50
//    monitor_info_map.insert("Vga_vendor", "Intel<1_1>Nvidia");
51
 
 
52
 
 
53
 
    QMap<QString, QVariant>::iterator iter = monitor_info_map.find("Vga_num");
 
51
    if (monitor_info_map.isEmpty() || monitor_info_map.count() <= 0) {
 
52
 
 
53
    }
 
54
    else {
 
55
        QMap<QString, QVariant>::iterator iter = monitor_info_map.find("Vga_num");
 
56
        int vgaNum = 0;
 
57
        if (iter == monitor_info_map.end()) {
 
58
            vgaNum = 0;
 
59
        }
 
60
        else {
 
61
            vgaNum = iter.value().toInt();
 
62
        }
 
63
        if(vgaNum == 0) {
 
64
        }
 
65
        else {
 
66
            if(vgaNum == 1) {
 
67
                ComputerPage *page = new ComputerPage(scroll_widget->zone, tr("Monitor Info"));
 
68
                monitor_info_map.remove("Vga_num");
 
69
                QMap<QString, QVariant> tmpMap;
 
70
                QMap<QString,QVariant>::iterator it;
 
71
                for ( it = monitor_info_map.begin(); it != monitor_info_map.end(); ++it ) {
 
72
                    if (it.value().toString().length() > 0) {
 
73
                        tmpMap.insert(it.key(), it.value());
 
74
                    }
 
75
                }
 
76
                page->setMap(tmpMap, monitor_info_map.value("Vga_vendor").toString().toUpper());
 
77
                page->initUI();
 
78
                scroll_widget->addScrollWidget(page);
 
79
            }
 
80
            else if(vgaNum > 1) {
 
81
                for(int i=0;i<vgaNum;i++) {
 
82
                    ComputerPage *page = new ComputerPage(scroll_widget->zone, tr("Monitor Info %1").arg(i+1));
 
83
                    tmp_info_map.clear();
 
84
                    QMap<QString, QVariant>::iterator itbegin = monitor_info_map.begin();
 
85
                    QMap<QString, QVariant>::iterator  itend = monitor_info_map.end();
 
86
                    for (;itbegin != itend; ++itbegin) {
 
87
                        if(itbegin.key() != "Vga_num" && itbegin.value().toString().contains("<1_1>")) {
 
88
                            QString result = itbegin.value().toString().split("<1_1>").at(i);
 
89
                            if (result.length() > 0) {
 
90
                                tmp_info_map.insert(itbegin.key(), result);
 
91
                            }
 
92
                        }
 
93
                    }
 
94
                    page->setMap(tmp_info_map, tmp_info_map.value("Vga_vendor").toString().toUpper());
 
95
                    page->initUI();
 
96
                    scroll_widget->addScrollWidget(page);
 
97
                }
 
98
            }
 
99
        }
 
100
    }
 
101
 
 
102
    /*QMap<QString, QVariant>::iterator iter = monitor_info_map.find("Vga_num");
54
103
    int vgaNum = 0;
55
104
    if (iter == monitor_info_map.end())
56
105
    {
100
149
                scroll_widget->addScrollWidget(page);
101
150
            }
102
151
        }
103
 
    }
 
152
    }*/
104
153
    dataOK = true;
105
154
}