void ResultWidget::fillInTable(int startIdx, QStringList data) { auto safeSetTableText = [&](int _row, int _col, QString _text) { QTableWidgetItem* tItem = ui->lowerTable->item(_row, _col); if(tItem == nullptr) { tItem =new QTableWidgetItem(); ui->lowerTable->setItem(_row, _col, tItem); } tItem->setText(_text); tItem->setTextAlignment(Qt::AlignCenter); if(_text == "OK") tItem->setTextColor(Qt::darkGreen); else if(_text == "NG") tItem->setTextColor(Qt::red); }; int itemCounter = startIdx; for(int i = 2; i <= 6; i++) { for(int j = 1; j <= 20; j++) { safeSetTableText(i, j, data[itemCounter]); itemCounter++; } } // ui->lowerTable->resizeColumnsToContents(); // ui->lowerTable->resizeRowsToContents(); }
void QKeyValueListView::listUpdate_slot(void) { int i, n; ListMap::iterator it; QColor clCL1, clCL2; QColor clB1, clB2; int fontSize = 8; int rowHeight = 20; clCL1 = QColor(0x00, 0x00, 0xFF); clCL2 = QColor(0x00, 0x00, 0x00); clB1 = QColor(0xFF, 0xFF, 0xFF); clB2 = QColor(0xE0, 0xE0, 0xE0); m_mutex->lock(); n = m_data.size(); setRowCount(n); setColumnCount(2); for(i=0, it=m_data.begin(); it!=m_data.end(); i++, it++) { // set name cell if( this->item(i, 0) != NULL ) { this->item(i, 0)->setText(it.key()); } else { QTableWidgetItem* item = new QTableWidgetItem(); item->setText(it.key()); item->setTextColor(clCL1); if( i % 2 == 0 ) item->setBackgroundColor(clB1); else item->setBackgroundColor(clB2); item->setFont(QFont("", fontSize)); this->setItem(i, 0, item); } // set value cell if( this->item(i, 1) != NULL ) { this->item(i, 1)->setText(it.value()); } else { QTableWidgetItem* item = new QTableWidgetItem(); item->setText(it.value()); item->setTextColor(clCL2); if( i % 2 == 0 ) item->setBackgroundColor(clB1); else item->setBackgroundColor(clB2); item->setFont(QFont("", fontSize)); this->setItem(i, 1, item); } setRowHeight(i, rowHeight); } m_mutex->unlock(); }
void MusicLrcSearchTableWidget::creatSearchedItems(const QString &songname, const QString &artistname, const QString &time) { int count; setRowCount(count = m_downLoadManager->getSongIdIndex()); QTableWidgetItem *item = new QTableWidgetItem; item->setData(MUSIC_CHECK_ROLE, false); setItem(count - 1, 0, item); item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(songname, Qt::ElideRight, 170)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(songname); setItem(count - 1, 1, item); item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(artistname, Qt::ElideRight, 144)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(artistname); setItem(count - 1, 2, item); item = new QTableWidgetItem(time); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); setItem(count - 1, 3, item); item = new QTableWidgetItem; item->setIcon(QIcon(QString::fromUtf8(":/radio/collect"))); setItem(count - 1, 4, item); }
void MusicLrcSearchTableWidget::creatSearchedItems(const QString &songname, const QString &artistname, const QString &time) { int count; setRowCount(count = m_downLoadManager->getSongIdIndex()); setStyleSheet(MusicUIObject::MTableWidgetStyle01 + \ MusicUIObject::MScrollBarStyle01); QTableWidgetItem *item = new QTableWidgetItem; item->setData(Qt::DisplayRole, false); setItem(count - 1, 0, item); item = new QTableWidgetItem(songname); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(songname); setItem(count - 1, 1, item); item = new QTableWidgetItem(artistname); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(artistname); setItem(count - 1, 2, item); item = new QTableWidgetItem(time); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); setItem(count - 1, 3, item); item = new QTableWidgetItem(QIcon(QString::fromUtf8(":/radio/collect")), ""); item->setTextAlignment(Qt::AlignCenter); setItem(count - 1, 4, item); }
void MusicSongsListWidget::replacePlayWidgetRow() { if(m_playRowIndex >= rowCount() || m_playRowIndex < 0) { m_playRowIndex = 0; } QString name = !m_musicSongs->isEmpty() ? m_musicSongs->at(m_playRowIndex).getMusicName() : QString(); setRowHeight(m_playRowIndex, 30); removeCellWidget(m_playRowIndex, 0); removeCellWidget(m_playRowIndex, 1); removeCellWidget(m_playRowIndex, 2); delete takeItem(m_playRowIndex, 0); delete takeItem(m_playRowIndex, 1); delete takeItem(m_playRowIndex, 2); QTableWidgetItem *item = new QTableWidgetItem; setItem(m_playRowIndex, 0, item); item = new QTableWidgetItem(QFontMetrics(font()).elidedText(name, Qt::ElideRight, 242)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); setItem(m_playRowIndex, 1, item); item = new QTableWidgetItem( (*m_musicSongs)[m_playRowIndex].getMusicTime() ); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); setItem(m_playRowIndex, 2, item); delete m_musicSongsPlayWidget; m_musicSongsPlayWidget = nullptr; }
void MainWindow::updateHexTable(int pos) { QTableWidgetItem *item = wgtHexTable->item(pos / 16, pos % 16); item->setText(eep.mid(pos, 1).toHex().toUpper()); if (item->text() == "FF") item->setTextColor(Qt::gray); else if (item->text() == "00" && (pos) >= EEPROM_LABELS) item->setTextColor(Qt::blue); else item->setTextColor(Qt::black); }
void MusicCloudSharedSongTableWidget::receiveDataFinshed(const QNDataItems &items) { clear(); int count = items.count(); if(count == 0) { emit updateLabelMessage(tr("List Is Empty!")); createUploadFileWidget(); return; } delete m_openFileWidget; m_openFileWidget = nullptr; setRowCount(count); QHeaderView *headerview = horizontalHeader(); for(int i=0; i<count; ++i) { QNDataItem dataItem = items[i]; QTableWidgetItem *item = new QTableWidgetItem; item->setData(MUSIC_DATAS_ROLE, QVariant::fromValue<QNDataItem>(dataItem)); setItem(i, 0, item); item = new QTableWidgetItem; item->setToolTip(dataItem.m_name); item->setText(MusicUtils::Widget::elidedText(font(), item->toolTip(), Qt::ElideRight, headerview->sectionSize(1) - 20)); item->setTextColor(QColor(MusicUIObject::MColorStyle12_S)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); setItem(i, 1, item); item = new QTableWidgetItem; item->setToolTip(MusicUtils::Number::size2Label(dataItem.m_size)); item->setText(MusicUtils::Widget::elidedText(font(), item->toolTip(), Qt::ElideRight, headerview->sectionSize(2) - 5)); item->setTextColor(QColor(MusicUIObject::MColorStyle12_S)); item->setTextAlignment(Qt::AlignRight | Qt::AlignVCenter); setItem(i, 2, item); ///insert server datas into caches MusicUploadData data; data.m_path = dataItem.m_name.trimmed(); data.m_name = data.m_path; data.m_state = MusicUploadData::Successed; if(!m_waitedFiles.contains(data)) { m_waitedFiles << data; } } m_currentUploadIndex = m_waitedFiles.count(); emit updateLabelMessage(tr("List Update Finished!")); }
void MusicVideoTableWidget::creatSearchedItems(const QString &songname, const QString &artistname, const QString &time) { int count; setRowCount(count = m_downLoadManager->getSongIdIndex()); QHeaderView *headerview = horizontalHeader(); QTableWidgetItem *item = new QTableWidgetItem; item->setData(MUSIC_CHECK_ROLE, false); setItem(count - 1, 0, item); item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(songname, Qt::ElideRight, headerview->sectionSize(1) - 5)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(songname); setItem(count - 1, 1, item); item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(artistname, Qt::ElideRight, headerview->sectionSize(2) - 5)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(artistname); setItem(count - 1, 2, item); item = new QTableWidgetItem; item->setIcon(QIcon(randToGetStrength())); setItem(count - 1, 3, item); item = new QTableWidgetItem(time); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); setItem(count - 1, 4, item); item = new QTableWidgetItem; item->setIcon(QIcon(QString::fromUtf8(":/share/showMV"))); setItem(count - 1, 5, item); item = new QTableWidgetItem; item->setIcon(QIcon(QString::fromUtf8(":/share/autionplay"))); setItem(count - 1, 6, item); item = new QTableWidgetItem; item->setIcon(QIcon(QString::fromUtf8(":/share/musicdownload"))); setItem(count - 1, 7, item); }
void ListingTracePane::setDebuggingState(bool b) { QTableWidget *tableWidget; if (Sim::trapped) { tableWidget = ui->listingPepOsTraceTableWidget; ui->listingPepOsTraceTableWidget->show(); ui->listingTraceTableWidget->hide(); } else { tableWidget = ui->listingTraceTableWidget; ui->listingPepOsTraceTableWidget->hide(); ui->listingTraceTableWidget->show(); } for (int i = 0; i < tableWidget->rowCount(); i++) { tableWidget->item(i, 1)->setBackgroundColor(Qt::white); tableWidget->item(i, 1)->setTextColor(Qt::black); } highlightedItemList.clear(); if (b && Pep::memAddrssToAssemblerListing->contains(Sim::programCounter)) { QTableWidgetItem *highlightedItem = tableWidget->item(Pep::memAddrssToAssemblerListing->value(Sim::programCounter), 1); highlightedItem->setBackgroundColor(QColor(56, 117, 215)); highlightedItem->setTextColor(Qt::white); highlightedItemList.append(highlightedItem); tableWidget->scrollToItem(highlightedItem); } tableWidget->horizontalScrollBar()->setValue(tableWidget->horizontalScrollBar()->minimum()); // resizeDocWidth(); }
TupLayerIndex::TupLayerIndex(int sceneIndex, QWidget *parent) : QTableWidget(0, 1, parent), k(new Private) { #ifdef K_DEBUG TINIT; #endif k->sceneIndex = sceneIndex; setSelectionMode(QAbstractItemView::SingleSelection); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); QTableWidgetItem *prototype = new QTableWidgetItem; prototype->setTextAlignment(Qt::AlignCenter); prototype->setBackgroundColor(palette().text().color()); prototype->setTextColor(palette().background().color()); setItemPrototype(prototype); setHorizontalHeaderLabels(QStringList() << tr("Layers")); verticalHeader()->hide(); setHorizontalHeader(new TupLayerIndexHeader(this)); setItemDelegate(new TupLayerIndexItemDelegate(this)); connect(this, SIGNAL(cellClicked(int, int)), this, SLOT(setLocalRequest(int, int))); }
void ExamControl::updateStudentTable(QList<Student *> students) { int numberLogin = 0; int numbersubmit = 0; tableWidget_student->setRowCount(students.count()); for(int i = 0; i < students.count(); ++i){ if(students.at(i)->getState() != QString("未登录")) numberLogin++; else if(students.at(i)->getState() == QString("已经交卷")) numbersubmit++; QTableWidgetItem *hostname = new QTableWidgetItem(students.at(i)->getHostname()); QTableWidgetItem *id = new QTableWidgetItem(students.at(i)->getID()); QTableWidgetItem *name = new QTableWidgetItem(students.at(i)->getName()); QTableWidgetItem *grade = new QTableWidgetItem(QString::number(students.at(i)->getGrade())); QTableWidgetItem *_class = new QTableWidgetItem(QString::number(students.at(i)->getClass())); QTableWidgetItem *state = new QTableWidgetItem(students.at(i)->getState()); if(state->text() == QString("未登录")) { state->setTextColor(QColor("red")); } tableWidget_student->setItem(i, 0, hostname); tableWidget_student->setItem(i, 1, id); tableWidget_student->setItem(i, 2, name); tableWidget_student->setItem(i, 3, grade); tableWidget_student->setItem(i, 4, _class); tableWidget_student->setItem(i, 5, state); } label_studentcount->setText(QString("共有%1名学生 已登录%2人 已交卷%3人").arg(students.count()).arg(numberLogin).arg(numbersubmit)); }
void ListingTracePane::updateListingTrace() { // tableWidget depends on whether we are in the OS or a program QTableWidget *tableWidget; if (Sim::trapped) { tableWidget = ui->listingPepOsTraceTableWidget; ui->listingPepOsTraceTableWidget->show(); ui->listingTraceTableWidget->hide(); } else { tableWidget = ui->listingTraceTableWidget; ui->listingPepOsTraceTableWidget->hide(); ui->listingTraceTableWidget->show(); } for (int i = highlightedItemList.size() - 1; i >= 0; i--) { highlightedItemList.at(i)->setBackgroundColor(Qt::white); highlightedItemList.at(i)->setTextColor(Qt::black); highlightedItemList.removeLast(); } if (Pep::memAddrssToAssemblerListing->contains(Sim::programCounter)) { QTableWidgetItem *highlightedItem = tableWidget->item(Pep::memAddrssToAssemblerListing->value(Sim::programCounter), 1); highlightedItem->setBackgroundColor(QColor(56, 117, 215)); highlightedItem->setTextColor(Qt::white); highlightedItemList.append(highlightedItem); tableWidget->scrollToItem(highlightedItem); } tableWidget->horizontalScrollBar()->setValue(tableWidget->horizontalScrollBar()->minimum()); }
QTableWidgetItem* SessionTimesWidget::setItem(int row, int col, QString text, Qt::ItemFlags flags, int align, QColor textColor, QBrush background) { if (ui->timesTableWidget->rowCount() <= row) { ui->timesTableWidget->insertRow(row); // for (int i = 0; i < ui->timesTableWidget->columnCount(); ++i) // { // if (i != col) // ui->timesTableWidget->setItem(row, i, new QTableWidgetItem()); // } } QTableWidgetItem *item = ui->timesTableWidget->item(row, col); if (!item) { item = new QTableWidgetItem(text); item->setFlags(flags); ui->timesTableWidget->setItem(row, col, item); } item->setTextAlignment(align); item->setBackground(background); item->setText(text); item->setTextColor(textColor); return item; }
void MusicLrcSearchTableWidget::createSearchedItem(const MusicSearchedItem &songItem) { int count = rowCount(); setRowCount(count + 1); QHeaderView *headerview = horizontalHeader(); QTableWidgetItem *item = new QTableWidgetItem; item->setData(MUSIC_CHECK_ROLE, false); setItem(count, 0, item); item = new QTableWidgetItem; item->setToolTip(songItem.m_songName); item->setText(MusicUtils::Widget::elidedText(font(), item->toolTip(), Qt::ElideRight, headerview->sectionSize(1) - 20)); item->setTextColor(QColor(100, 100, 100)); item->setTextAlignment(Qt::AlignCenter); setItem(count, 1, item); item = new QTableWidgetItem; item->setToolTip(songItem.m_singerName); item->setText(MusicUtils::Widget::elidedText(font(), item->toolTip(), Qt::ElideRight, headerview->sectionSize(2) - 20)); item->setTextColor(QColor(100, 100, 100)); item->setTextAlignment(Qt::AlignCenter); setItem(count, 2, item); item = new QTableWidgetItem(songItem.m_time); item->setTextColor(QColor(100, 100, 100)); item->setTextAlignment(Qt::AlignCenter); setItem(count, 3, item); item = new QTableWidgetItem; item->setIcon(QIcon(randToGetStrength())); setItem(count, 4, item); item = new QTableWidgetItem; item->setIcon(QIcon(":/tiny/lb_server_type")); item->setToolTip(songItem.m_type); setItem(count, 5, item); item = new QTableWidgetItem; item->setIcon(QIcon(":/contextMenu/btn_download")); setItem(count, 6, item); }
void MusicSongSearchOnlineTableWidget::creatSearchedItems(const QString &songname, const QString &artistname, const QString &time) { int count; setRowCount(count = m_downLoadManager->getSongIdIndex()); QTableWidgetItem *item = new QTableWidgetItem; item->setData(MUSIC_CHECK_ROLE, false); item->setData(MUSIC_AUDIT_ROLE, AUDITION_STOP); setItem(count - 1, 0, item); item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(songname, Qt::ElideRight, 220)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(songname); setItem(count - 1, 1, item); item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(artistname, Qt::ElideRight, 170)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); item->setToolTip(artistname); setItem(count - 1, 2, item); item = new QTableWidgetItem(time); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignCenter); setItem(count - 1, 3, item); item = new QTableWidgetItem; item->setIcon(QIcon(QString::fromUtf8(":/image/addtoplaylist"))); setItem(count - 1, 4, item); item = new QTableWidgetItem; item->setIcon(QIcon(QString::fromUtf8(":/share/musicdownload"))); setItem(count - 1, 5, item); }
void TupLayerIndex::insertSoundLayer(int position, const QString &name) { if (position >= 0 && position <= rowCount()) { QTableWidgetItem *newLayer = new QTableWidgetItem(name); newLayer->setTextAlignment(Qt::AlignCenter); newLayer->setBackgroundColor(palette().background().color()); newLayer->setTextColor(palette().foreground().color()); insertRow(position); setItem(position, 0, newLayer); fixSize(); } }
QTableWidgetItem* SessionAnalysisWidget::setItem(QTableWidget *table, int row, int col, QString text, Qt::ItemFlags flags, int align, QColor textColor, QBrush background) { QTableWidgetItem *item = table->item(row, col); if (!item) { item = new QTableWidgetItem(text); item->setFlags(flags); table->setItem(row, col, item); } item->setTextAlignment(align); item->setBackground(background); item->setText(text); item->setTextColor(textColor); return item; }
void LapTimeComparisonDialog::updateCharts() { DriverData *driverData[4] = {0, 0, 0, 0}; QString driver; for (int i = 0; i < 4; ++i) { int idx = eventData.getDriverId(getNumber(i)); if (idx > 0) { driver = eventData.getDriversData()[idx-1].getDriverName(); driverData[i] = &eventData.getDriversData()[idx-1]; // carIdx = (eventData.getDriversData()[idx-1].getNumber() > 13 ? // eventData.getDriversData()[idx-1].getNumber() - 2 : // eventData.getDriversData()[idx-1].getNumber() - 1) / 2; QTableWidgetItem *item = ui->chartsTableWidget->item(0, i); item->setText(driver); item->setTextColor(ColorsManager::getInstance().getCarColor(driverData[i]->getNumber())); // if (carIdx >= 0) { QLabel *lab = qobject_cast<QLabel*>(ui->chartsTableWidget->cellWidget(1, i)); if (!lab) { lab = new QLabel(); lab->setAlignment(Qt::AlignCenter); lab->setPixmap(ImagesFactory::getInstance().getCarThumbnailsFactory().getCarThumbnail(driverData[i]->getNumber(), thumbnailsSize));//eventData.carImages[carIdx].scaledToWidth(120, Qt::SmoothTransformation)); ui->chartsTableWidget->setCellWidget(1, i, lab); } else lab->setPixmap(ImagesFactory::getInstance().getCarThumbnailsFactory().getCarThumbnail(driverData[i]->getNumber(), thumbnailsSize));//eventData.carImages[carIdx].scaledToWidth(120, Qt::SmoothTransformation)); } } else { QTableWidgetItem *item = ui->chartsTableWidget->item(0, i); item->setText(""); QLabel *lab = qobject_cast<QLabel*>(ui->chartsTableWidget->cellWidget(1, i)); if (lab) lab->clear(); } } lapCompChart->setData(driverData); lapCompChart->repaint(); }
void MusicFunctionTableWidget::addFunctionItems(int index, const QStringList &icon, const QStringList &path) { m_listIndex = index; for(int i=0; i<rowCount(); ++i) { QTableWidgetItem *item = nullptr; setItem(i, 0, item = new QTableWidgetItem()); item = new QTableWidgetItem(QIcon(icon[i]), QString()); item->setTextAlignment(Qt::AlignCenter); setItem(i, 1, item); item = new QTableWidgetItem(path[i]); item->setTextColor(QColor(80, 80, 80)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); setItem(i, 2, item); } }
/** * Populates the items (fitted workspaces) into their table. * * @param fittedWsList :: a workspace list containing ONLY the workspaces that have parameter * tables associated with it. */ void MuonAnalysisResultTableTab::populateFittings(const QStringList& fittedWsList) { // Add number of rows for the amount of fittings. m_uiForm.fittingResultsTable->setRowCount(fittedWsList.size()); // Add check boxes for the include column on fitting table, and make text uneditable. for (int i = 0; i < m_uiForm.fittingResultsTable->rowCount(); i++) { m_uiForm.fittingResultsTable->setCellWidget(i,1, new QCheckBox); if( auto textItem = m_uiForm.fittingResultsTable->item(i, 0) ) { textItem->setFlags(textItem->flags() & (~Qt::ItemIsEditable)); } } // Get colors, 0=Black, 1=Red, 2=Green, 3=Blue, 4=Orange, 5=Purple. (If there are more than this then use black as default.) QMap<int, int> colors = getWorkspaceColors(fittedWsList); for (int row = 0; row < m_uiForm.fittingResultsTable->rowCount(); row++) { // Fill values and delete previous old ones. if (row < fittedWsList.size()) { QTableWidgetItem *item = new QTableWidgetItem(fittedWsList[row]); int color(colors.find(row).data()); switch (color) { case(1): item->setTextColor("red"); break; case(2): item->setTextColor("green"); break; case(3): item->setTextColor("blue"); break; case(4): item->setTextColor("orange"); break; case(5): item->setTextColor("purple"); break; default: item->setTextColor("black"); } m_uiForm.fittingResultsTable->setItem(row, 0, item); } else m_uiForm.fittingResultsTable->setItem(row,0, NULL); } }
void TableWidget::populateTable(const openstudio::WorkspaceObject& obj) { clear(); setCurrentCell(0,0); setRowCount(1); openstudio::IddObject iddObj = obj.iddObject(); for(unsigned i=0; i<obj.numFields(); ++i){ bool defaultText = false; OptionalString val = obj.getString(i); if(!val){ defaultText = true; val = obj.getString(i, true); // if still no value it is just blank if (!val){ val = ""; } } // setItem causes QTableWIdget to take ownership of newItem QTableWidgetItem * newItem = new QTableWidgetItem((*val).c_str()); if(defaultText){ newItem->setTextColor(Qt::gray); } setItem(rowCount()-1, 1, newItem); openstudio::OptionalIddField iddField = iddObj.getField(i); if(!iddField){ // log error } else{ *val = iddField->name(); } // setItem causes QTableWIdget to take ownership of newItem newItem = new QTableWidgetItem((*val).c_str()); setItem(rowCount()-1, 0, newItem); setRowCount(rowCount() + 1); } resizeColumnsToContents(); resizeRowsToContents(); }
void MusicSongsListWidget::updateSongsFileName(const MusicSongs &songs) { int count = rowCount(); setRowCount(songs.count()); //reset row count for(int i=count; i<songs.count(); i++) { QTableWidgetItem *item = new QTableWidgetItem; setItem(i, 0, item); //To get the song name item = new QTableWidgetItem; item->setText(QFontMetrics(font()).elidedText(songs[i].getMusicName(), Qt::ElideRight, 242)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); setItem(i, 1, item); //add a delete icon item = new QTableWidgetItem(songs[i].getMusicTime()); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); setItem(i, 2, item); } }
void MusicMyDownloadRecordWidget::createItem(int index, const QString &name, const QString &size, qint64 time) { QTableWidgetItem *item = new QTableWidgetItem; setItem(index, 0, item); item = new QTableWidgetItem; item->setText(MusicUtils::UWidget::elidedText(font(), name, Qt::ElideRight, 160)); item->setTextColor(QColor(50, 50, 50)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); item->setToolTip( name ); setItem(index, 1, item); item = new QTableWidgetItem; item->setData(MUSIC_PROCS_ROLE, 100); setItem(index, 2, item); item = new QTableWidgetItem( size ); item->setTextAlignment(Qt::AlignCenter); item->setData(MUSIC_TIMES_ROLE, time); setItem(index, 3, item); }
void MusicMyDownloadRecordWidget::createItem(int index, const QString &name, const QString &size, qint64 time) { QTableWidgetItem *item = new QTableWidgetItem; setItem(index, 0, item); item = new QTableWidgetItem(QFontMetrics(font()).elidedText(name, Qt::ElideRight, 170)); item->setTextColor(QColor(50,50,50)); item->setTextAlignment(Qt::AlignLeft | Qt::AlignVCenter); item->setToolTip( name ); setItem(index, 1, item); item = new QTableWidgetItem; item->setData(Qt::DisplayRole, 100); setItem(index, 2, item); item = new QTableWidgetItem( size ); item->setTextAlignment(Qt::AlignCenter); item->setData(Qt::UserRole + 1, time); setItem(index, 3, item); }
//------------------------------------------------------------------------------------ void MainWindow::showFiles() { while(mFileListWidget->rowCount() > 0) mFileListWidget->removeRow(0); mCurrentFiles.clear(); QIcon folderIcon = mIconProvider.icon(QFileIconProvider::Folder); if(mOfsFile.valid()) { OFS::FileList dirs = mOfsFile->listFiles(mCurrentDir.c_str(), OFS::OFS_DIR); OFS::FileList files = mOfsFile->listFiles(mCurrentDir.c_str(), OFS::OFS_FILE); std::sort(dirs.begin(), dirs.end(), OFS::FileEntry::Compare); std::sort(files.begin(), files.end(), OFS::FileEntry::Compare); int current_row = 0; if(mCurrentDir.size() > 1) { mFileListWidget->insertRow(current_row); mFileListWidget->setRowHeight(current_row, mRowHeight); QTableWidgetItem *witem = new QTableWidgetItem(folderIcon, QString("..")); mFileListWidget->setItem(0, 0, witem); witem = new QTableWidgetItem(""); mFileListWidget->setItem(current_row, 1, witem); witem = new QTableWidgetItem(tr("Directory")); mFileListWidget->setItem(current_row, 2, witem); witem = new QTableWidgetItem(""); mFileListWidget->setItem(current_row, 3, witem); witem = new QTableWidgetItem(""); mFileListWidget->setItem(current_row, 4, witem); current_row++; OFS::FileEntry updata; updata.flags = OFS::OFS_DIR; updata.name = ".."; updata.file_size = 0; mCurrentFiles.push_back(updata); } mDirUpButton->setEnabled(mCurrentDir.size() > 1); for(unsigned int i = 0;i < dirs.size();i++) { mFileListWidget->insertRow(current_row); mFileListWidget->setRowHeight(current_row, mRowHeight); bool isReadOnly = (dirs[i].flags & OFS::OFS_READONLY) > 0; bool isHidden = (dirs[i].flags & OFS::OFS_HIDDEN) > 0; if(isHidden && (actViewShowHidden->isChecked() == false)) continue; QColor textColor = Qt::black; if(isReadOnly && isHidden) textColor = QColor(255, 210, 210); else if(isReadOnly) textColor = QColor(255, 0, 0); else if(isHidden) textColor = QColor(210, 210, 210); QTableWidgetItem *witem = new QTableWidgetItem(folderIcon, QString(dirs[i].name.c_str())); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 0, witem); witem = new QTableWidgetItem(""); mFileListWidget->setItem(current_row, 1, witem); witem = new QTableWidgetItem(tr("Directory")); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 2, witem); witem = new QTableWidgetItem(QDateTime::fromTime_t(dirs[i].create_time).toString()); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 3, witem); witem = new QTableWidgetItem(QString("{ ") + QString(dirs[i].uuid.toString().c_str()) + QString(" }")); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 4, witem); current_row++; mCurrentFiles.push_back(dirs[i]); } for(unsigned int i = 0;i < files.size();i++) { mFileListWidget->insertRow(current_row); mFileListWidget->setRowHeight(current_row, mRowHeight); std::string ext_name = files[i].name; bool isReadOnly = (files[i].flags & OFS::OFS_READONLY) > 0; bool isHidden = (files[i].flags & OFS::OFS_HIDDEN) > 0; if(isHidden && (actViewShowHidden->isChecked() == false)) continue; QColor textColor = Qt::black; if(isReadOnly && isHidden) textColor = QColor(255, 210, 210); else if(isReadOnly) textColor = QColor(255, 0, 0); else if(isHidden) textColor = QColor(210, 210, 210); QIcon icon = mUnknownFileIcon; int ext_pos = ext_name.find_last_of("."); if(ext_pos > 0) { ext_name.erase(0, ext_pos); FileIconMap::iterator it = mFileIconMap.find(ext_name); if(it == mFileIconMap.end()) { std::string filename = "./qtOfs_icontest"; filename += ext_name; std::fstream stream; stream.open(filename.c_str(), std::fstream::in | std::fstream::out | std::fstream::binary | std::fstream::trunc); stream.close(); QFileInfo info(QString(filename.c_str())); icon = mIconProvider.icon(info); if(icon.isNull()) icon = mUnknownFileIcon; mFileIconMap.insert(FileIconMap::value_type(ext_name, icon)); QFile::remove(QString(filename.c_str())); } else icon = it->second; } QTableWidgetItem *witem = new QTableWidgetItem(icon, QString(files[i].name.c_str())); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 0, witem); unsigned int file_size = files[i].file_size; QString size_str = QString("%1").arg(file_size); int len = size_str.length(); int runs = (len - 1) / 3; for(int j = 0;j < runs;j++) { size_str.insert(len - (3 * j) - 3, '.'); } witem = new QTableWidgetItem(size_str + QString(" ")); witem->setTextAlignment(Qt::AlignRight | Qt::AlignVCenter); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 1, witem); witem = new QTableWidgetItem(tr("File")); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 2, witem); witem = new QTableWidgetItem(QDateTime::fromTime_t(files[i].create_time).toString()); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 3, witem); witem = new QTableWidgetItem(QString("{ ") + QString(files[i].uuid.toString().c_str()) + QString(" }")); witem->setTextColor(textColor); mFileListWidget->setItem(current_row, 4, witem); ++current_row; mCurrentFiles.push_back(files[i]); } if(mCurrentDir.size() > 1) --current_row; mTotalEntriesLabel->setText(tr("Total Entries : ") + QString("%1").arg(current_row)); mDirectoryDisplay->setText(QString(mCurrentDir.c_str())); } }
void UnnormalClientStatisticDialog::doStatistic() { boost::shared_ptr<ClientGroupCenter> groupCenter = g_DataCenter->createClientGroupCenter(); UnnormalStateCenter *unnormalStateCenter = g_DataCenter->createUnnormalStateCenter(); QHash<int,int> groupIdToTableIndex; //添加好每一客户组对应的行 for(ClientGroupCenter::Iterator it = groupCenter->begin(); it != groupCenter->end(); ++it) { int row = m_Table->rowCount(); m_Table->insertRow(row); m_Table->setItem(row, 0, new QTableWidgetItem( (*it)->getName() )); m_Table->setItem(row, 1, new QTableWidgetItem( QString::number(( *it)->getClientCount())) ); groupIdToTableIndex.insert((*it)->getId(), row); } //添加一个总和行 int allCount = m_Table->rowCount(); m_Table->insertRow(allCount); m_Table->setVerticalHeaderItem(allCount, new QTableWidgetItem(tr("总和")) ); m_Table->setItem(allCount,0, new QTableWidgetItem(tr("总和")) ); m_Table->setItem(m_Table->rowCount()-1, 1, new QTableWidgetItem(QString::number(g_DataCenter->createClientCenter()->getClientCount()))); //设置好异常信息的每一列 eachColumnCount(2, unnormalStateCenter->m_TempSet, groupIdToTableIndex); eachColumnCount(3, unnormalStateCenter->m_HumiSet, groupIdToTableIndex); eachColumnCount(4, unnormalStateCenter->m_GlassSet, groupIdToTableIndex); eachColumnCount(5, unnormalStateCenter->m_DoorSet, groupIdToTableIndex); eachColumnCount(6, unnormalStateCenter->m_PowerSet, groupIdToTableIndex); eachColumnCount(7, unnormalStateCenter->m_ScreenSet, groupIdToTableIndex); //设置好总和行 int allSum = 0; for(int rowIndex = 0; rowIndex < m_Table->rowCount() - 1; ++rowIndex) { int sum = 0; for(int colIndex = 2; colIndex < m_Table->columnCount() - 1; ++colIndex) { sum += m_Table->item(rowIndex, colIndex)->text().toInt(); } QTableWidgetItem *sumItem = new QTableWidgetItem(QString::number(sum)); if(sum != 0) { sumItem->setTextColor(QColor("red")); } m_Table->setItem(rowIndex, m_Table->columnCount()-1, sumItem); allSum += sum; } QTableWidgetItem *allSumItem = new QTableWidgetItem(QString::number(allSum)); if(allSum != 0) { allSumItem->setTextColor(QColor("red")); } m_Table->setItem(m_Table->rowCount()-1, m_Table->columnCount()-1, allSumItem); }
void QgsDelimitedTextSourceSelect::updateFieldLists() { // Update the x and y field dropdown boxes QgsDebugMsg( "Updating field lists" ); disconnect( cmbXField, SIGNAL( currentIndexChanged( int ) ), this, SLOT( enableAccept() ) ); disconnect( cmbYField, SIGNAL( currentIndexChanged( int ) ), this, SLOT( enableAccept() ) ); disconnect( cmbWktField, SIGNAL( currentIndexChanged( int ) ), this, SLOT( enableAccept() ) ); disconnect( geomTypeXY, SIGNAL( toggled( bool ) ), cmbXField, SLOT( setEnabled( bool ) ) ); disconnect( geomTypeXY, SIGNAL( toggled( bool ) ), cmbYField, SLOT( setEnabled( bool ) ) ); disconnect( geomTypeXY, SIGNAL( toggled( bool ) ), cmbWktField, SLOT( setDisabled( bool ) ) ); QString columnX = cmbXField->currentText(); QString columnY = cmbYField->currentText(); QString columnWkt = cmbWktField->currentText(); // clear the field lists cmbXField->clear(); cmbYField->clear(); cmbWktField->clear(); geomTypeXY->setEnabled( false ); geomTypeWKT->setEnabled( false ); cmbXField->setEnabled( false ); cmbYField->setEnabled( false ); cmbWktField->setEnabled( false ); // clear the sample text box tblSample->clear(); if ( ! haveValidFileAndDelimiters() ) return; QFile file( txtFilePath->text() ); if ( !file.open( QIODevice::ReadOnly ) ) return; int skipLines = rowCounter->value(); QTextStream stream( &file ); QString line; do { line = QgsDelimitedTextProvider::readLine( &stream ); // line of text excluding '\n' } while ( !line.isEmpty() && skipLines-- > 0 ); QgsDebugMsg( QString( "Attempting to split the input line: %1 using delimiter %2" ).arg( line ).arg( txtDelimiter->text() ) ); QStringList fieldList = splitLine( line ); QgsDebugMsg( QString( "Split line into %1 parts" ).arg( fieldList.size() ) ); // We don't know anything about a text based field other // than its name. All fields are assumed to be text bool haveFields = false; foreach ( QString field, fieldList ) { if (( field.left( 1 ) == "'" || field.left( 1 ) == "\"" ) && field.left( 1 ) == field.right( 1 ) ) // eat quotes field = field.mid( 1, field.length() - 2 ); if ( field.length() == 0 ) // skip empty field names continue; cmbXField->addItem( field ); cmbYField->addItem( field ); cmbWktField->addItem( field ); haveFields = true; } int indexWkt = -1; if ( ! columnWkt.isEmpty() ) { indexWkt = cmbWktField->findText( columnWkt ); } if ( indexWkt < 0 ) { indexWkt = cmbWktField->findText( "wkt", Qt::MatchContains ); } if ( indexWkt < 0 ) { indexWkt = cmbWktField->findText( "geometry", Qt::MatchContains ); } if ( indexWkt < 0 ) { indexWkt = cmbWktField->findText( "shape", Qt::MatchContains ); } cmbWktField->setCurrentIndex( indexWkt ); int indexX = -1; if ( !columnX.isEmpty() ) { indexX = cmbXField->findText( columnX ); } if ( indexX < 0 ) { indexX = cmbXField->findText( "lon", Qt::MatchContains ); } if ( indexX < 0 ) { indexX = cmbXField->findText( "x", Qt::MatchContains ); } cmbXField->setCurrentIndex( indexX ); int indexY = -1; if ( !columnY.isEmpty() ) { indexY = cmbYField->findText( columnY ); } if ( indexY < 0 ) { indexY = cmbYField->findText( "lat", Qt::MatchContains ); } if ( indexY < 0 ) { indexY = cmbYField->findText( "y", Qt::MatchContains ); } cmbYField->setCurrentIndex( indexY ); bool isXY = ( geomTypeXY->isChecked() && indexX >= 0 && indexY >= 0 ) || indexWkt < 0; geomTypeXY->setChecked( isXY ); geomTypeWKT->setChecked( ! isXY ); if ( haveFields ) { geomTypeXY->setEnabled( true ); geomTypeWKT->setEnabled( true ); cmbXField->setEnabled( isXY ); cmbYField->setEnabled( isXY ); cmbWktField->setEnabled( ! isXY ); connect( cmbXField, SIGNAL( currentIndexChanged( int ) ), this, SLOT( enableAccept() ) ); connect( cmbYField, SIGNAL( currentIndexChanged( int ) ), this, SLOT( enableAccept() ) ); connect( cmbWktField, SIGNAL( currentIndexChanged( int ) ), this, SLOT( enableAccept() ) ); connect( geomTypeXY, SIGNAL( toggled( bool ) ), cmbXField, SLOT( setEnabled( bool ) ) ); connect( geomTypeXY, SIGNAL( toggled( bool ) ), cmbYField, SLOT( setEnabled( bool ) ) ); connect( geomTypeXY, SIGNAL( toggled( bool ) ), cmbWktField, SLOT( setDisabled( bool ) ) ); } tblSample->setColumnCount( fieldList.size() ); tblSample->setHorizontalHeaderLabels( fieldList ); // put a few more lines into the sample box int counter = 0; line = QgsDelimitedTextProvider::readLine( &stream ); while ( !line.isEmpty() && counter < 20 ) { QStringList values = splitLine( line ); tblSample->setRowCount( counter + 1 ); for ( int i = 0; i < tblSample->columnCount(); i++ ) { QString value = i < values.size() ? values[i] : ""; bool ok = true; if ( i == indexX || i == indexY ) { if ( !decimalPoint->text().isEmpty() ) { value.replace( decimalPoint->text(), "." ); } value.toDouble( &ok ); } QTableWidgetItem *item = new QTableWidgetItem( value ); if ( !ok ) item->setTextColor( Qt::red ); tblSample->setItem( counter, i, item ); } counter++; line = QgsDelimitedTextProvider::readLine( &stream ); } // close the file file.close(); // put a default layer name in the text entry QFileInfo finfo( txtFilePath->text() ); txtLayerName->setText( finfo.completeBaseName() ); }
void Settings::ReadSettings() { if(!pSettings->value("windowMaximized", pMain->isMaximized()).toBool()) { pMain->restoreGeometry(pSettings->value("windowSize", pMain->saveGeometry()).toByteArray()); } pMain->restoreState(pSettings->value("windowState", pMain->saveState()).toByteArray()); pMain->GetUi()->splitter->restoreState(pSettings->value("splitterState", pMain->GetUi()->splitter->saveState()).toByteArray()); pMain->GetUi()->rulesSplitter->restoreState(pSettings->value("rulesSplitterState", pMain->GetUi()->rulesSplitter->saveState()).toByteArray()); pMain->GetUi()->browserSplitter->restoreState(pSettings->value("browserSplitterState", pMain->GetUi()->browserSplitter->saveState()).toByteArray()); pMain->GetUi()->browserTable->horizontalHeader()->restoreState(pSettings->value("browserTableState", pMain->GetUi()->browserTable->horizontalHeader()->saveState()).toByteArray()); pMain->GetUi()->playerTable->horizontalHeader()->restoreState(pSettings->value("playerTableState", pMain->GetUi()->playerTable->horizontalHeader()->saveState()).toByteArray()); pMain->GetUi()->rulesTable->horizontalHeader()->restoreState(pSettings->value("rulesTableState", pMain->GetUi()->rulesTable->horizontalHeader()->saveState()).toByteArray()); bool darkTheme = pSettings->value("darkTheme", false).toBool(); pMain->showLoggingInfo = pSettings->value("showLoggingInfo", true).toBool(); uint temp = pSettings->value("logPort", pMain->u16logPort).toUInt(); if(temp <= PORT_MAX && temp >= PORT_MIN) { pMain->u16logPort = temp; } if(darkTheme) { pMain->GetUi()->menuSettings->actions().at(0)->setChecked(true); pMain->darkThemeTriggered(); } pSettings->beginGroup("servers"); QStringList keys = pSettings->childKeys(); for(int i = 1; i <= keys.size(); i++) { QStringList list = pSettings->value(QString::number(i), QStringList()).toStringList(); if(list.size() == 0 || list.size() > 2) { continue; } if(pMain->CheckServerList(list.at(0)) == AddServerError_None) { ServerInfo *info = new ServerInfo(list.at(0)); serverList.append(info); int row = pMain->GetUi()->browserTable->rowCount(); pMain->GetUi()->browserTable->insertRow(row); QTableWidgetItem *item = new QTableWidgetItem(); QTableWidgetItem *id = new QTableWidgetItem(); id->setData(Qt::DisplayRole, serverList.size()); item->setTextColor(queryingColor); item->setText(QString("Querying server %1...").arg(info->ipPort)); item->setToolTip(info->ipPort); pMain->GetUi()->browserTable->setItem(row, 0, id); pMain->GetUi()->browserTable->setItem(row, 4, item); InfoQuery *infoQuery = new InfoQuery(pMain); infoQuery->query(&info->host, info->port, id); if(list.size() == 2) { SimpleCrypt encrypt; encrypt.setKey(list.at(0).toLongLong()); QString pass = encrypt.decryptToString(list.at(1)); if(encrypt.lastError() == SimpleCrypt::ErrorNoError) { info->rconPassword = pass; info->saveRcon = true; } } } } pSettings->endGroup(); this->SaveSettings();//Call this again to make sure we cleaned up any garbage entries }
void ParameterTable::updateTable(const CReactionInterface & ri, const CReaction * pReaction) { blockSignals(true); // So cellChanged doesn't fire when items are set. setRowCount(0); if (pReaction == NULL) return; CModel * pModel = dynamic_cast< CModel * >(pReaction->getObjectAncestor("Model")); //first get the units strings CFindDimensions units(ri.getFunction(), pModel->getQuantityUnit().isDimensionless(), pModel->getVolumeUnit().isDimensionless(), pModel->getTimeUnit().isDimensionless(), pModel->getAreaUnit().isDimensionless(), pModel->getLengthUnit().isDimensionless() ); units.setUseHeuristics(true); units.setMolecularitiesForMassAction(ri.getChemEqInterface().getMolecularity(CFunctionParameter::SUBSTRATE), ri.getChemEqInterface().getMolecularity(CFunctionParameter::PRODUCT)); units.findDimensions(ri.isMulticompartment()); CFunctionParameter::Role usage; // Load the comboDelegate lists mGlobalParameters.clear(); mGlobalParameters = getListOfAllGlobalParameterNames(*pModel); if (mGlobalParameters.indexOf("--local--") != -1) // in case someone names a parameter "--local--" mGlobalParameters.replace(mGlobalParameters.indexOf("--local--"), "\"--local--\""); mGlobalParameters.push_front("--local--"); std::vector<std::string>::const_iterator it; mSubstrates.clear(); usage = CFunctionParameter::SUBSTRATE; for (it = ri.getListOfMetabs(usage).begin(); it != ri.getListOfMetabs(usage).end(); ++it) mSubstrates += FROM_UTF8(CMetabNameInterface::unQuote(*it)); mProducts.clear(); usage = CFunctionParameter::PRODUCT; for (it = ri.getListOfMetabs(usage).begin(); it != ri.getListOfMetabs(usage).end(); ++it) mProducts += FROM_UTF8(CMetabNameInterface::unQuote(*it)); mModifiers.clear(); // Get all metabs; modifiers are never locked vectorOfStrings2QStringList(getListOfAllMetabNames(*pModel, ri), mModifiers); mVolumes.clear(); mVolumes = getListOfAllCompartmentNames(*pModel); size_t i, imax = ri.size(); size_t j, jmax; size_t rowCounter = 0; QTableWidgetItem *pItem = NULL; QColor subsColor(255, 210, 210); QColor prodColor(210, 255, 210); QColor modiColor(250, 250, 190); QColor paraColor(210, 210, 255); QColor volColor(210, 210, 255); QColor timeColor(210, 210, 210); QString qUsage; bool locked = false; QColor color; const std::vector<std::string> * metabNames; mIndex2Line.resize(imax); mLine2Index.clear(); setRowCount((int) imax); for (i = 0; i < imax; ++i) { mIndex2Line[i] = rowCounter; // set the stuff that is different for the specific usages usage = ri.getUsage(i); qUsage = FROM_UTF8(CFunctionParameter::RoleNameDisplay[usage]); locked = ri.isLocked(i); switch (usage) { case CFunctionParameter::SUBSTRATE: color = subsColor; break; case CFunctionParameter::PRODUCT: color = prodColor; break; case CFunctionParameter::MODIFIER: color = modiColor; break; case CFunctionParameter::PARAMETER: color = paraColor; break; case CFunctionParameter::VOLUME: color = volColor; break; case CFunctionParameter::TIME: color = timeColor; break; case CFunctionParameter::VARIABLE: color = QColor(255, 20, 20); break; default : qUsage = "unknown"; color = QColor(255, 20, 20); break; } // add first column pItem = new QTableWidgetItem(qUsage); pItem->setBackground(color); if (usage == CFunctionParameter::SUBSTRATE) pItem->setIcon(CQIconResource::icon(CQIconResource::reactionSubstrate)); else if (usage == CFunctionParameter::PRODUCT) pItem->setIcon(CQIconResource::icon(CQIconResource::reactionProduct)); else if (usage == CFunctionParameter::MODIFIER) pItem->setIcon(CQIconResource::icon(CQIconResource::reactionModifier)); pItem->setFlags(pItem->flags() & (~Qt::ItemIsEditable)); setItem((int) rowCounter, 0, pItem); // add second column pItem = new QTableWidgetItem(FROM_UTF8(ri.getParameterName(i))); pItem->setBackground(color); if ((usage != CFunctionParameter::PARAMETER) && (usage != CFunctionParameter::VOLUME) && (usage != CFunctionParameter::TIME)) { if (locked) pItem->setIcon(CQIconResource::icon(CQIconResource::locked)); else pItem->setIcon(CQIconResource::icon(CQIconResource::unlocked)); } pItem->setFlags(pItem->flags() & (~Qt::ItemIsEditable)); setItem((int) rowCounter, 1, pItem); // add units column const CCopasiDataModel* pDataModel = pModel->getObjectDataModel(); if (pDataModel == NULL) return; QString theseUnits = FROM_UTF8(" " + units.getDimensions()[i].getDisplayString(pModel)); pItem = new QTableWidgetItem(theseUnits); pItem->setBackgroundColor(color); pItem->setFlags(pItem->flags() & (~Qt::ItemIsEditable)); setItem((int) rowCounter, 4, pItem); // Create and color Value column pItem = new QTableWidgetItem(""); pItem->setBackground(QColor(color)); pItem->setFlags(pItem->flags() & (~Qt::ItemIsEditable)); setItem((int) rowCounter, 3, pItem); // add fourth (Mapping) column (col index = 3) pItem = new QTableWidgetItem(""); pItem->setBackground(color); setItem((int) rowCounter, 2, pItem); // if line is for a metabolite Parameter . . . if ((usage == CFunctionParameter::SUBSTRATE) || (usage == CFunctionParameter::PRODUCT) || (usage == CFunctionParameter::MODIFIER)) { metabNames = &(ri.getMappings(i)); if (locked) { pItem->setFlags(pItem->flags() & (~Qt::ItemIsEditable)); closePersistentEditor(pItem); } else { if (usage == CFunctionParameter::SUBSTRATE) mpComboDelegate->setItems(rowCounter, &mSubstrates); else if (usage == CFunctionParameter::PRODUCT) mpComboDelegate->setItems(rowCounter, &mProducts); else // must be MODIFIER { mpComboDelegate->setItems(rowCounter, &mModifiers); } openPersistentEditor(pItem); } if (!ri.isVector(i)) pItem->setText(FROM_UTF8(CMetabNameInterface::unQuote((*metabNames)[0]))); else { if (locked) pItem->setText(""); else // this should not happen pItem->setText("add species"); // add lines for vector parameters jmax = metabNames->size(); setRowCount(rowCount() + (int)(jmax - 1)); item((int) rowCounter, 2)->setText(FROM_UTF8((*metabNames)[0])); for (j = 1; j < jmax; ++j) { ++rowCounter; for (int k = 0; k < 5; k++) { pItem = new QTableWidgetItem(""); pItem->setFlags(pItem->flags() & (~Qt::ItemIsEditable)); pItem->setBackgroundColor(color); setItem((int) rowCounter, k, pItem); } item((int) rowCounter, 2)->setText(FROM_UTF8((*metabNames)[j])); item((int) rowCounter, 4)->setText(theseUnits); } } } // if line is for a kinetic parameter . . . else if (usage == CFunctionParameter::PARAMETER) { mpComboDelegate->setItems(rowCounter, &mGlobalParameters); if (ri.isLocalValue(i)) { pItem->setText("--local--"); } else //global parameter { QString paramText = FROM_UTF8(ri.getMapping(i)); if (paramText == "--local--") paramText = "\"--local--\""; pItem->setText(paramText); } openPersistentEditor(pItem); // add item to Value column pItem = item((int) rowCounter, 3); if (ri.isLocalValue(i)) { pItem->setText(QString::number(ri.getLocalValue(i))); pItem->setFlags(pItem->flags() | (Qt::ItemIsEditable)); } else { const std::vector<std::string> &mapping = pReaction->getParameterMapping(i); if (mapping.size() > 0) { std::string Key = mapping[0]; const CModelValue * pParamObject = dynamic_cast<const CModelValue *>(CCopasiRootContainer::getKeyFactory()->get(Key)); if (pParamObject != NULL && pParamObject->getStatus() == CModelEntity::FIXED) { pItem->setText(QString::number(pParamObject->getInitialValue())); pItem->setTextColor(QColor(Qt::darkGray)); } } } } // if line is for a volume . . . else if (usage == CFunctionParameter::VOLUME) { mpComboDelegate->setItems(rowCounter, &mVolumes); pItem->setText(FROM_UTF8(ri.getMapping(i))); openPersistentEditor(pItem); } // if line is for time . . . else if (usage == CFunctionParameter::TIME) { pItem->setText(""); } // if line is for an unknown role . . . else { pItem->setText(QString::number(ri.getLocalValue(i))); } resizeRowToContents((int) rowCounter); ++rowCounter; } resizeColumnsToContents(); blockSignals(false); }
void FrmInformacionFarmaco::finishedSlotBuscarMedicamento(QNetworkReply* reply) { //qDebug()<<reply->readAll(); QString data=(QString)reply->readAll(); QString cXML = data; // Extract values from XML QDomDocument document("XmlDoc"); document.setContent(cXML); QDomElement root = document.documentElement(); if (root .tagName() != "object") qDebug("Bad root element."); QDomNode drugList = root.firstChild(); QDomNode n = drugList.firstChild(); QDomNode n2 = n.firstChild(); QDomNode n3 = n2.firstChild(); while (!n.isNull()) { if (n.isElement()) { QDomNodeList attributes = n.childNodes(); for (int i = 0; i < attributes.count(); i ++) { QDomElement e = attributes.at(i).toElement(); if (e.tagName() == "name_speciality") { ui->txtNombre->setText(e.text()); } if (e.tagName() == "dosage_form") { ui->txtDosificacion->setText(e.text()); } if (e.tagName() == "national_code") { ui->txtCodigoNacional->setText(e.text()); } if (e.tagName() == "name_laboratory") { ui->txtLaboratorio->setText(e.text()); } if (e.tagName() == "name_atc") { ui->txtNombreATC->setText(e.text()); } if (e.tagName() == "drug_type") { ui->txtTipoMedicamento->setText(e.text()); } if (e.tagName() == "package") { ui->txtCaja->setText(e.text()); } if (e.tagName() == "price") { ui->txtPVP->setText(e.text()); } if (e.tagName() == "laboratory_price") { ui->txtPVC->setText(e.text()); } if (e.tagName() == "TLD") { ui->txtTLD->setText(e.text()); } if (e.tagName() == "RECETA") { ui->txtReceta->setText(e.text()); } if (e.tagName() == "FINAN") { ui->txtFinanciado->setText(e.text()); } if (e.tagName() == "fecha_alta") { QDate alta; int ano,mes,dia; ano = e.text().left(4).toInt(); mes = e.text().mid(5,2).toInt(); dia = e.text().mid(8,2).toInt(); alta.setDate(ano,mes,dia); ui->txtFechaAlta->setDate(alta); } if (e.tagName() == "fecha_baja") { if (e.text()!="0" && !e.text().isEmpty()) { QDate baja; int ano,mes,dia; ano = e.text().left(4).toInt(); mes = e.text().mid(5,2).toInt(); dia = e.text().mid(8,2).toInt(); baja.setDate(ano,mes,dia); ui->txtFechaBaja->setVisible(true); ui->lblfechabaja->setVisible(true); ui->txtFechaBaja->setDate(baja); } else { ui->txtFechaBaja->setVisible(false); ui->lblfechabaja->setVisible(false); } } if (e.tagName() == "baja") { if(e.text()=="1") ui->lblDadodeBaja->setVisible(true); else ui->lblDadodeBaja->setVisible(false); } if (e.tagName() == "id_laboratory") { QUrl uUrl; QString cUrl = "http://svadcf.es/documentos/image/fotos/laboratorio/"+e.text().trimmed()+".gif"; uUrl.setUrl(cUrl); ui->webLogoLaboratorio->load(uUrl); } if (e.tagName() == "id_speciality") { connect(ui->webimagen1,SIGNAL(loadFinished(bool)),this, SLOT(cargaFinalizada1(bool))); connect(ui->webimagen2,SIGNAL(loadFinished(bool)),this, SLOT(cargaFinalizada2(bool))); connect(ui->webimagen3,SIGNAL(loadFinished(bool)),this, SLOT(cargaFinalizada3(bool))); connect(ui->webLogoLaboratorio,SIGNAL(loadFinished(bool)),this, SLOT(cargaFinalizadaLogo(bool))); QUrl uUrl; QString cUrl = "http://svadcf.es/documentos/image/fotos/medicamento/"+e.text().trimmed()+"_1.jpg"; uUrl.setUrl(cUrl); ui->webimagen1->load(uUrl); cUrl = "http://svadcf.es/documentos/image/fotos/medicamento/"+e.text().trimmed()+"_2.jpg"; uUrl.setUrl(cUrl); ui->webimagen2->load(uUrl); cUrl = "http://svadcf.es/documentos/image/fotos/medicamento/"+e.text().trimmed()+"_3.jpg"; uUrl.setUrl(cUrl); ui->webimagen3->load(uUrl); } //---------------------------- // Llenar tabla indicaciones //---------------------------- if (e.tagName() == "Indications_set") { ui->listaIndicaciones->setColumnCount(2); ui->listaIndicaciones->setColumnWidth(0,200); ui->listaIndicaciones->setColumnWidth(1,0); int nrow = 0; int pos = 0; while (!n2.isNull()) { if (n2.isElement()) { QDomNodeList attributes = n2.childNodes(); for (int i = 0; i < attributes.count(); i ++) { QDomElement e2 = attributes.at(i).toElement(); if (e2.tagName() == "") while (!n3.isNull()) { if (n3.isElement()) { QDomNodeList attributes = n3.childNodes(); for (int i = 0; i < attributes.count(); i ++) { QDomElement e3 = attributes.at(i).toElement(); if (e3.tagName() == "ID_IND") { ui->listaIndicaciones->setRowCount(pos+1); QTableWidgetItem *newItem = new QTableWidgetItem(e3.text()); // para que los elementos no sean editables newItem->setFlags(newItem->flags() & (~Qt::ItemIsEditable)); newItem->setTextColor(Qt::blue); // color de los items ui->listaIndicaciones->setItem(pos,1,newItem); } if (e3.tagName() == "TITINDMIN") { ui->listaIndicaciones->setRowCount(pos+1); QTableWidgetItem *newItem = new QTableWidgetItem(e3.text()); // para que los elementos no sean editables newItem->setFlags(newItem->flags() & (~Qt::ItemIsEditable)); newItem->setTextColor(Qt::blue); // color de los items ui->listaIndicaciones->setItem(pos,0,newItem); } } pos++; //data.append(s); } n3 = n3.nextSibling(); } } n2 = n2.nextSibling(); } } } } n = n.nextSibling(); }