示例#1
0
 int TableWidgetItem::data ( lua_State * L )// ( int role ) virtual QVariant const
 {
	QTableWidgetItem* lhs = ValueInstaller2<QTableWidgetItem>::check( L, 1 );
	int role = Util::toInt( L, 2 );
	QVariant* res = ValueInstaller2<QVariant>::create( L );
	*res = lhs->data( role );
	return 1;

 }
/** Retranslate header columns. */
void Playlist::retranslateUi()
{
	for (int i=0; i < columnCount(); i++) {
		QTableWidgetItem *headerItem = horizontalHeaderItem(i);
		const QString text = tr(headerItem->data(Qt::UserRole+1).toString().toStdString().data());
		headerItem->setText(text);
		columns->actions().at(i)->setText(text);
	}
}
示例#3
0
QColor KColorCells::color(int index) const
{
    QTableWidgetItem * tmpItem = item(index / columnCount(), index % columnCount());

    if (tmpItem != 0)
        return tmpItem->data(Qt::BackgroundRole).value<QColor>();

    return QColor();
}
示例#4
0
void IndexDialog::cellClicked(int row,int column){
    if(column == 0){
        if(create_flag){
            QTableWidgetItem *item = tbColumnList->item(row,column);
            bool checked = item->data(Qt::EditRole).toBool();
            item->setData(Qt::EditRole,!checked);
        }
    }
}
示例#5
0
void ClientMain::UpdateStatsView()
{
    ui.lblGameCyclesData->setText(tr("%1").arg(m_pIStrategizer->GameModel()->Clock().ElapsedGameCycles()));

    map<ObjectStateType, set<TID>> workersState;
    auto workerType = m_pIStrategizer->GameModel()->Self()->Race()->GetWorkerType();

    int workerCount = 0;
    for (auto& entityR : m_pIStrategizer->GameModel()->Self()->Entities())
    {
        if (entityR.second->TypeId() == workerType)
        {
            workersState[(ObjectStateType)entityR.second->P(OP_State)].insert(entityR.first);
            ++workerCount;
        }
    }

    ui.lblWorkersCountData->setText(QString("%1").arg(workerCount));

    QTableWidgetItem* cell = NULL;
    for(int row = 0; row < ui.tblWorkerState->rowCount(); ++row)
    {
        cell = ui.tblWorkerState->item(row, 1);
        ObjectStateType state = (ObjectStateType)cell->data(Qt::UserRole).toInt();

        QString txt =QString("[%1]{").arg(workersState[state].size());
        for (auto workerId : workersState[state])
        {
            auto pEntity = m_pIStrategizer->GameModel()->Self()->GetEntity(workerId);
            if (pEntity != nullptr)
            {
                bool isLocked = pEntity->IsLocked();
                txt += QString("%1").arg(workerId);
                txt += QString("[%2],").arg(isLocked ? "L" : "F");
            }
        }

        txt += "}";

        cell->setText(txt);
    }

    ui.tblWorkerState->resizeColumnsToContents();

    ui.lblFPSData->setText(tr("%1").arg("-"));

    int currMemoryUsage = (int)GetProcessUsedMemoryKB();
    ui.lblCurrUsedMemoryData->setText(QString("%1").arg(currMemoryUsage));

    int deltaMemoryUsage = abs((int)currMemoryUsage - (int)m_startMemoryUsage);
    ui.lblDeltaMemoryData->setText(QString("%1").arg(deltaMemoryUsage));

    ui.lblObjectsMemoryData->setText(QString("%1").arg(EngineObject::AliveObjectsMemoryUsage() / 1024));
    ui.lblObjectsCountData->setText(QString("%1").arg(EngineObject::AliveObjectsCount()));

}
示例#6
0
void ShortcutsImpl::slotAccept()
{
    for(int row=0; row<table->rowCount(); row++ )
    {
        QTableWidgetItem *item = table->item(row, 0);
        QAction *action = (QAction *)variantToAction( item->data(Qt::UserRole) );
        QString shortcut = table->item(row, 1)->text();
        action->setShortcut( shortcut );
    }
}
示例#7
0
void QTServer::SlotStartScript(const int &nRow) {
    QTableWidgetItem* pItemAcc = ui.tableWidget->item(nRow, 0);
    QTcpSocket* pTcpSocket = (QTcpSocket*)(pItemAcc->data(Qt::UserRole + 0x200)).toInt();
    if (pTcpSocket) {
        SOCKET_INFO socket_info;
        RtlZeroMemory(&socket_info, sizeof(SOCKET_INFO));
        socket_info.message = SOCKET_MESSAGE::StartScript;
        QTableWidgetItem* pItemScript = ui.tableWidget->item(nRow, 3);
        QString qstrScript = pItemScript->data(Qt::DisplayRole).toString(); // 脚本
        std::string strScript = std::string((const char*)qstrScript.toLocal8Bit());
        strcpy_s(socket_info.szAccOrScript, strScript.c_str());
        QByteArray datasend;
        datasend.append((const char*)&socket_info);
        pTcpSocket->write((const char*)&socket_info, sizeof(SOCKET_INFO));
        pTcpSocket->flush();
        QTableWidgetItem* pItemStatus = ui.tableWidget->item(nRow, 7);
        pItemStatus->setData(Qt::DisplayRole, QStringLiteral("挂机中"));
    }
}
示例#8
0
void UAreaResultsTable::converterDeleteNote(int row)
{
    QTableWidgetItem *item = tableRecycleBin->item(row, indexMainColumn);
    if(item)
    {
        QString nameFile = item->data(pointerOnDataItemNote).value<QString>();
        emit deleteNote(nameFile);
        emit refreshTables();
    }
}
示例#9
0
void MainSettingsDialog::openDeleteAutoProfileConfirmDialog()
{
    QMessageBox msgBox;
    msgBox.setText(tr("Are you sure you want to delete the profile?"));
    msgBox.setStandardButtons(QMessageBox::Discard | QMessageBox::Cancel);
    msgBox.setDefaultButton(QMessageBox::Cancel);
    int ret = msgBox.exec();
    if (ret == QMessageBox::Discard)
    {
        int selectedRow = ui->autoProfileTableWidget->currentRow();
        if (selectedRow >= 0)
        {
            QTableWidgetItem *item = ui->autoProfileTableWidget->item(selectedRow, 5);
            //QTableWidgetItem *itemDefault = ui->autoProfileTableWidget->item(selectedRow, 4);
            AutoProfileInfo *info = item->data(Qt::UserRole).value<AutoProfileInfo*>();
            if (info->isCurrentDefault())
            {
                if (info->getGUID() == "all")
                {
                    delete allDefaultProfile;
                    allDefaultProfile = 0;
                }
                else if (defaultAutoProfiles.contains(info->getGUID()))
                {
                    defaultAutoProfiles.remove(info->getGUID());
                    defaultList.removeAll(info);
                    delete info;
                    info = 0;
                }
            }
            else
            {
                if (deviceAutoProfiles.contains(info->getGUID()))
                {
                    QList<AutoProfileInfo*> temp = deviceAutoProfiles.value(info->getGUID());
                    temp.removeAll(info);
                    deviceAutoProfiles.insert(info->getGUID(), temp);
                }

                if (exeAutoProfiles.contains(info->getExe()))
                {
                    QList<AutoProfileInfo*> temp = exeAutoProfiles.value(info->getExe());
                    temp.removeAll(info);
                    exeAutoProfiles.insert(info->getExe(), temp);
                }

                profileList.removeAll(info);

                delete info;
                info = 0;
            }
        }
        ui->autoProfileTableWidget->removeRow(selectedRow);
    }
}
示例#10
0
void QTServer::SlotMessageRead() {
    for (int i = 0; i < m_tcpSocketList.length(); i++) {
        if (m_tcpSocketList[i]->bytesAvailable() > 0) {
            QByteArray qba = m_tcpSocketList[i]->readAll(); // 收取m_tcpSocket中的所有数据
            PSOCKET_INFO data = (PSOCKET_INFO)qba.data();
            int nCount = ui.tableWidget->rowCount();
            if (nCount) {
                for (int nCurrentRow = 0; nCurrentRow < nCount; nCurrentRow++) {
                    QTableWidgetItem* pItemAcc = ui.tableWidget->item(nCurrentRow, 0);
                    QString qstrAcc = pItemAcc->data(Qt::DisplayRole).toString(); //账号
                    std::string strAcc = std::string((const char*)qstrAcc.toLocal8Bit());

                    if (strAcc == std::string(data->szAccOrScript)) {
                        pItemAcc->setData(Qt::UserRole + 0x200, (int)m_tcpSocketList[i]);

                        switch (data->message) {
                        case SOCKET_MESSAGE::GetScript:
                            SOCKET_INFO socket_info;
                            RtlZeroMemory(&socket_info, sizeof(SOCKET_INFO));
                            socket_info.message = SOCKET_MESSAGE::GetScript;
                            QTableWidgetItem* pItemScript = ui.tableWidget->item(nCurrentRow, 3);
                            QString qstrScript = pItemScript->data(Qt::DisplayRole).toString(); // 脚本
                            std::string strScript = std::string((const char*)qstrScript.toLocal8Bit());
                            strcpy_s(socket_info.szAccOrScript, strScript.c_str());
                            QByteArray datasend;
                            datasend.append((const char*)&socket_info);
                            m_tcpSocketList[i]->write((const char*)&socket_info, sizeof(SOCKET_INFO));
                            //m_tcpSocketList[i]->waitForBytesWritten();
                            //martin->Debug("State:%d ", m_tcpSocketList[i]->state());
                            m_tcpSocketList[i]->flush();

                            QTableWidgetItem* pItemStatus = ui.tableWidget->item(nCurrentRow, 7);
                            pItemStatus->setData(Qt::DisplayRole, QStringLiteral("挂机中")); // 脚本
                            break;
                        }
                        break;
                    }
                }
            }
        }
    }
}
示例#11
0
void UAreaResultsTable::converterHideNote()
{
    QTableWidgetItem *currentItem = tableNotes->item(tableNotes->currentRow(),
                                                     indexMainColumn);
    if(currentItem)
    {
        Note *note = currentItem->data(pointerOnDataItemNote).value<Note*>();
        emit hideNote(note);
        emit refreshTables();
    }
}
示例#12
0
void MainWindow::updateCallTimers()
{
    for(int row=0; row<ui->tableCalls->rowCount(); row++)
    {
        QTableWidgetItem* item = ui->tableCalls->item(row, 2);
        QSharedPointer<Call> call = g_FSHost->getCallByUUID(item->data(Qt::UserRole).toString());
        QTime time = call.data()->getCurrentStateTime();
        item->setText(time.toString("hh:mm:ss"));
        item->setTextAlignment(Qt::AlignRight|Qt::AlignVCenter);
    }
}
void ViennaMiniForm::showSegmentParameters(int row, int, int, int) // the second parameter 'column' is obsolete atm
{
    if(row < 0) return;

    QTableWidgetItem* widgetItem = ui->tableWidget->item(row, 0);
    int segment_id = widgetItem->data(Qt::UserRole).toInt();

    // deactivating autoexclusive enabls to unselect all radio buttons
    ui->radioButtonContactSingle->setAutoExclusive(false);
    ui->radioButtonContactRange->setAutoExclusive(false);

    ui->lineEditSegmentName->setText(device_parameters[segment_id].name);
    ui->checkBoxContact->setChecked(device_parameters[segment_id].isContact);
    ui->radioButtonContactSingle->setChecked(device_parameters[segment_id].isContactSingle);
    ui->lineEditContactSingle->setText(QString::number(device_parameters[segment_id].contact));
    ui->radioButtonContactRange->setChecked(device_parameters[segment_id].isContactRange);
    ui->lineEditContactRangeFrom->setText(QString::number(device_parameters[segment_id].contactFrom));
    ui->lineEditContactRangeTo->setText(QString::number(device_parameters[segment_id].contactTo));
    ui->lineEditWorkfunction->setText(QString::number(device_parameters[segment_id].workfunction));
    ui->checkBoxOxide->setChecked(device_parameters[segment_id].isOxide);
    ui->checkBoxSemiconductor->setChecked(device_parameters[segment_id].isSemiconductor);
    ui->lineEditSemiconductorDonors->setText(QString::number(device_parameters[segment_id].donors));
    ui->lineEditSemiconductorAcceptors->setText(QString::number(device_parameters[segment_id].acceptors));

    // make sure that only one of the available radios can be selected
    ui->radioButtonContactSingle->setAutoExclusive(true);
    ui->radioButtonContactRange->setAutoExclusive(true);

    // based on is{contact,oxide,semiconductor} deactivate/activate the corresponding parameter ui elements
    if(device_parameters[segment_id].isContact)
    {
        this->toggleSegmentContact(true);
        ui->comboBoxContactMaterial->setCurrentIndex(ui->comboBoxContactMaterial->findText(device_parameters[segment_id].material));
    }
    else
        this->toggleSegmentContact(false);

    if(device_parameters[segment_id].isOxide)
    {
        this->toggleSegmentOxide(true);
        ui->comboBoxOxideMaterial->setCurrentIndex(ui->comboBoxOxideMaterial->findText(device_parameters[segment_id].material));
    }
    else
        this->toggleSegmentOxide(false);

    if(device_parameters[segment_id].isSemiconductor)
    {
        this->toggleSegmentSemiconductor(true);
        ui->comboBoxSemiconductorMaterial->setCurrentIndex(ui->comboBoxSemiconductorMaterial->findText(device_parameters[segment_id].material));
    }
    else
        this->toggleSegmentSemiconductor(false);
}
QPair<QPair<QgsCoordinateReferenceSystem, int>, QPair<QgsCoordinateReferenceSystem, int> > QgsDatumTransformDialog::selectedDatumTransforms()
{
  int row = mDatumTransformTableWidget->currentRow();
  QPair< QPair<QgsCoordinateReferenceSystem, int>, QPair<QgsCoordinateReferenceSystem, int > > sdt;
  sdt.first.first = mSourceCrs;
  sdt.second.first = mDestinationCrs;

  if ( row >= 0 )
  {
    QTableWidgetItem *srcItem = mDatumTransformTableWidget->item( row, 0 );
    sdt.first.second = srcItem ? srcItem->data( Qt::UserRole ).toInt() : -1;
    QTableWidgetItem *destItem = mDatumTransformTableWidget->item( row, 1 );
    sdt.second.second = destItem ? destItem->data( Qt::UserRole ).toInt() : -1;
  }
  else
  {
    sdt.first.second = -1;
    sdt.second.second = -1;
  }
  return sdt;
}
示例#15
0
/**
 * @brief ShowPoint show selected point
 */
void DialogHistory::ShowPoint()
{
    QVector<VToolRecord> *history = doc->getHistory();
    if (history->size()>0)
    {
        QTableWidgetItem *item = ui->tableWidget->item(0, 1);
        item->setSelected(true);
        cursorToolRecordRow = 0;
        item = ui->tableWidget->item(0, 0);
        quint32 id = qvariant_cast<quint32>(item->data(Qt::UserRole));
        emit ShowHistoryTool(id, Qt::green, true);
    }
}
示例#16
0
void  LiveEventControl::cellChangedSlot(int row, int column)
{
	QTableWidgetItem *item = m_ui->panelTableWidget->item(row, column);
	if (column == 0) { // Visible
		emit setPanelVisible(row, item->checkState() == Qt::Checked);
	}
	else if (column == 2) { // Loop
		emit loopPanel(row, item->checkState() == Qt::Checked);
	}
	else if (column == 4) { // Name
		emit setPanelNameSignal(row, item->data(Qt::DisplayRole).toString());
	}
}
示例#17
0
IDataField DataTableWidget::dataField(int ARow, int AColumn) const
{
	IDataField field;
	QTableWidgetItem *item = QTableWidget::item(ARow,AColumn);
	if (item)
	{
		int col = item->data(DTR_COL_INDEX).toInt();
		int row = item->data(DTR_ROW_INDEX).toInt();
		field = FTable.columns.value(col);
		field.value = FTable.rows.value(row).value(col);
	}
	return field;
}
void ChatRoomsWindow::newTransferdSepChatWindow()
{
    QTableWidgetItem * transferWidget = transferedChatsList->item(transferedChatsList->currentRow(),transferedChatsList->getColumnByName("transfer_id"));
    if (transferWidget)
    {
        LhcWebServiceClient::instance()->LhcSendRequest("/xml/accepttransfer/"+transferWidget->data(Qt::EditRole).toString());

        ChatWindow *crw = new ChatWindow(transferedChatsList->getCurrentChat());
        crw->show();
		
		this->synschronize();
    }
}
void AnimationTableWidget::OnDisplayProperty()
{
   QTableWidgetItem* item = this->item(currentRow(), 0);

   if (item==NULL) return;

   //animation ID
   //track count
   //total keyframes
   //duration

   QMessageBox::about(this, tr("AnimationViewer"),
      tr("Animation ID: %1\n"
      "Number of tracks: %2\n"
      "Number of keyframes: %3\n"
      "Duration: %4")
      .arg(item->data(Qt::UserRole).toUInt())
      .arg(item->data(Qt::UserRole+1).toUInt())
      .arg(item->data(Qt::UserRole+2).toUInt())
      .arg(item->data(Qt::UserRole+3).toDouble())
      );   
}
示例#20
0
void game_list_frame::ShowContextMenu(const QPoint &pos)
{
	int index;

	if (m_isListLayout)
	{
		int row = gameList->indexAt(pos).row();
		QTableWidgetItem* item = gameList->item(row, 0);
		if (item == nullptr) return;  // null happens if you are double clicking in dockwidget area on nothing.
		index = item->data(Qt::UserRole).toInt();
	}
	else
	{
		int row = m_xgrid->indexAt(pos).row();
		int col = m_xgrid->indexAt(pos).column();
		QTableWidgetItem* item = m_xgrid->item(row, col);
		if (item == nullptr) return;  // null happens if you are double clicking in dockwidget area on nothing.
		index = item->data(Qt::ItemDataRole::UserRole).toInt();
		if (index == -1) return; // empty item shouldn't have context menu
	}
	ShowSpecifiedContextMenu(pos, index);
}
void UICloudProfileDetailsWidget::updateTableToolTips()
{
    /* Iterate through all the key items: */
    for (int i = 0; i < m_pTableWidget->rowCount(); ++i)
    {
        /* Acquire current key item: */
        QTableWidgetItem *pItemK = m_pTableWidget->item(i, 0);
        if (pItemK)
        {
            const QString strToolTip = pItemK->data(Qt::UserRole).toString();
            pItemK->setToolTip(tr(strToolTip.toUtf8().constData()));
        }
    }
}
void SporadicFrameEditDlg::OnButtonClickOk()
{
    if ( 0 == nValidateValues() )
    {
        IFrame* pFrame;
		LinFrameProps ouFrameProps;
		ouFrameProps.m_eLinFrameType = eLinInvalidFrame;
        if ( eEdit == m_ouMode )
        {
            pFrame = *m_pouFrame;
        }
        else
        {
            m_pLdfCluster->CreateElement(eFrameElement, (IElement**)&pFrame);
            *m_pouFrame = pFrame;
        }
        if ( nullptr != pFrame )
        {
            pFrame->GetProperties(ouFrameProps);

            //Frame Type
			ouFrameProps.m_eLinFrameType = eLinSporadicFrame;

            ouFrameProps.m_ouLINSporadicFrameProps.m_pouUnconditionalFrame.clear();
            //Conditional Frames
            int nRow = ui.tableFrames->rowCount();
            IFrame* pouTempFrame;
            for ( int i = 0 ; i < nRow; i++ )
            {
                QTableWidgetItem* pItem = ui.tableFrames->item(i, 0);
                UID_ELEMENT uid = pItem->data(Qt::UserRole).value<UID_ELEMENT>();
                if ( Qt::Checked == pItem->checkState() )
                {
                    m_pLdfCluster->GetElement(eFrameElement, uid, (IElement**)&pouTempFrame);
                    if ( nullptr != pouTempFrame )
                    {
                        ouFrameProps.m_ouLINSporadicFrameProps.m_pouUnconditionalFrame[uid] = uid;
                    }
                }
            }

            pFrame->SetProperties(ouFrameProps);

            //Frame Name
            pFrame->SetName(ui.editFrameName->text().toStdString());
        }
        LDFDatabaseManager::GetDatabaseManager()->setDocumentModified(true);
        accept();
    }
}
示例#23
0
bool CocktailDialog::setDrink(int rows, Cocktail* cDaSalvare)
{
    bool ok = true;
    for (int i  = 0; ok && i < rows; ++i)
    {
        QTableWidgetItem* curTip = ui->tableIngridientiWidget->item (i, 0);
        QTableWidgetItem* curNom = ui->tableIngridientiWidget->item (i, 1);
        QTableWidgetItem* curQuan = ui->tableIngridientiWidget->item (i, 2);
        QTableWidgetItem* curPalc = ui->tableIngridientiWidget->item (i, 3);

        ok = emptableRow (curTip, curNom, curQuan, curPalc );
        ok = 1 - ok; // ok deve essere true, emptableRow puo' ritornare false

        if (ok)
        {
            std::string tipo = curTip->data (0).toString ().toStdString ();
            std::string nome = curNom->data (0).toString ().toStdString ();
            int q = curQuan->data (0).toString ().toInt ();
            int palc = curPalc->data (0).toString ().toInt ();


            Ingridiente* ing = cocktailFactoryMethod (tipo);

            if (ing != 0)
            {
                ing -> setNome (nome);
                ing -> setQuantita (q);
                ing -> setPercentualeAlcolica (palc);
                cDaSalvare->addIngrediente (*ing);
            }
            else
                ok = false;
        } else
            throwErrorMessage ("Elementi vuoti internamente alla tabella ingredienti non ammessi");
  }
    return ok;
}
示例#24
0
void QInstructionList::mousePressEvent(QMouseEvent* evt) {
	//Get the clicked index
	QModelIndex index = indexAt(evt->pos());

	//if nothing was clicked, just clear the selection
	if(index.isValid()) {
		//get the clicked item
		QTableWidgetItem* item = this->itemAt(evt->pos());
		QTableWidgetItem* tmp = 0;

		//select the clicked index
		selectionModel()->select(index, QItemSelectionModel::ClearAndSelect | QItemSelectionModel::Rows);
		selectionModel()->setCurrentIndex(index, QItemSelectionModel::NoUpdate);

		//if the item exists, check above and below it for any lines that have the same address
		if(item) {
			for(int i = row(item) - 1; i >= 0; i--) {
				if((tmp = this->item(i, 0)) && tmp->data(32).toInt() == item->data(32).toInt())  {
					selectionModel()->select(indexFromItem(tmp), QItemSelectionModel::Select | QItemSelectionModel::Rows);
				} else {
					break;
				}
			}
			for(int i = row(item) + 1; i < this->rowCount(); i++) {
				if((tmp = this->item(i,0)) && tmp->data(32).toInt() == item->data(32).toInt()) {
					selectionModel()->select(indexFromItem(tmp), QItemSelectionModel::Select | QItemSelectionModel::Rows);
				} else {
					break;
				}
			}

		}
	} else {
		clearSelection();
		selectionModel()->setCurrentIndex(QModelIndex(), QItemSelectionModel::Clear);
	}
}
示例#25
0
IBookmark EditBookmarksDialog::getBookmarkFromRow(int ARow) const
{
	IBookmark bookmark;
	QTableWidgetItem *tableItem = ui.tbwBookmarks->item(ARow,COL_NAME);
	bookmark.type = tableItem->data(TDR_TYPE).toInt();
	bookmark.name = tableItem->data(TDR_NAME).toString();
	bookmark.room.roomJid = tableItem->data(TDR_ROOMJID).toString();
	bookmark.room.autojoin = tableItem->data(TDR_AUTO).toBool();
	bookmark.room.nick = tableItem->data(TDR_NICK).toString();
	bookmark.room.password = tableItem->data(TDR_PASSWORD).toString();
	bookmark.url.url = tableItem->data(TDR_URL).toString();
	return bookmark;
}
示例#26
0
void QTServer::SlotGuardDog(QTableWidgetItem* pItem) {
    // 收到这条信息, 说明注入成功了, 开启开门狗
    int nCount = ui.tableWidget->rowCount();
    if (nCount) {
        for (int nCurrentRow = 0; nCurrentRow < nCount; nCurrentRow++) {
            QTableWidgetItem* pItemAcc = ui.tableWidget->item(nCurrentRow, 0);
            if (pItemAcc == pItem) {
                HWND hGameWnd = (HWND)(pItemAcc->data(Qt::UserRole + 0x100)).toInt();
                QTableWidgetItem* _strStatus = ui.tableWidget->item(nCurrentRow, 7);
                _strStatus->setData(Qt::DisplayRole, QStringLiteral("成功登陆"));
                break;
            }
        }
    }
}
示例#27
0
void QTServer::SlotStopScript(const int &nRow) {
    QTableWidgetItem* pItemAcc = ui.tableWidget->item(nRow, 0);
    QTcpSocket* pTcpSocket = (QTcpSocket*)(pItemAcc->data(Qt::UserRole + 0x200)).toInt();
    if (pTcpSocket) {
        SOCKET_INFO socket_info;
        RtlZeroMemory(&socket_info, sizeof(SOCKET_INFO));
        socket_info.message = SOCKET_MESSAGE::StopScript;
        QByteArray datasend;
        datasend.append((const char*)&socket_info);
        pTcpSocket->write((const char*)&socket_info, sizeof(SOCKET_INFO));
        pTcpSocket->flush();
        QTableWidgetItem* pItemStatus = ui.tableWidget->item(nRow, 7);
        pItemStatus->setData(Qt::DisplayRole, QStringLiteral("成功登陆"));
    }
}
示例#28
0
void MainWindowServerList::clearServers()
{
    int l=ui->tableWidgetServerList->rowCount();
    QTableWidgetItem* item;
    CSLSocketHandle* handle;
    for(int i=0;i<l;i++)
    {
        item=ui->tableWidgetServerList->item(i,0);
        handle=(CSLSocketHandle*)item->data(Qt::UserRole).value<void*>();
        if(handle)
            delete handle;
    }
    ui->tableWidgetServerList->clearContents();
    ui->tableWidgetServerList->setRowCount(0);
}
示例#29
0
/**
 * @brief ChangedCursor changed cursor of input. Cursor show after what record we will insert new object
 * @param id id of object
 */
void DialogHistory::ChangedCursor(quint32 id)
{
    for (qint32 i = 0; i< ui->tableWidget->rowCount(); ++i)
    {
        QTableWidgetItem *item = ui->tableWidget->item(i, 0);
        quint32 rId = qvariant_cast<quint32>(item->data(Qt::UserRole));
        if (rId == id)
        {
            QTableWidgetItem *oldCursorItem = ui->tableWidget->item(cursorRow, 0);
            oldCursorItem->setIcon(QIcon());
            cursorRow = i;
            item->setIcon(QIcon("://icon/32x32/put_after.png"));
        }
    }
}
示例#30
0
void StatusOptionsWidget::onAddButtonClicked()
{
	int row = tbwStatus->rowCount();
	tbwStatus->setRowCount(row+1);

	QTableWidgetItem *name = new QTableWidgetItem;
	name->setData(Qt::DisplayRole,tr("Name"));
	name->setData(STR_COLUMN,STC_NAME);
	name->setData(STR_VALUE,name->data(Qt::DisplayRole));
	tbwStatus->setItem(row,STC_NAME,name);

	QTableWidgetItem *show = new QTableWidgetItem;
	show->setData(STR_STATUSID,STATUS_NULL_ID);
	show->setData(Qt::DisplayRole,FStatusChanger->nameByShow(IPresence::Online));
	show->setData(Qt::DecorationRole,FStatusChanger->iconByShow(IPresence::Online));
	show->setData(STR_COLUMN,STC_STATUS);
	show->setData(STR_VALUE,IPresence::Online);
	tbwStatus->setItem(row,STC_STATUS,show);

	QTableWidgetItem *message = new QTableWidgetItem;
	message->setData(Qt::DisplayRole,tr("Message"));
	message->setData(STR_COLUMN,STC_MESSAGE);
	message->setData(STR_VALUE,message->data(Qt::DisplayRole));
	tbwStatus->setItem(row,STC_MESSAGE,message);

	QTableWidgetItem *priority = new QTableWidgetItem;
	priority->setTextAlignment(Qt::AlignCenter);
	priority->setData(Qt::DisplayRole,30);
	priority->setData(STR_COLUMN,STC_PRIORITY);
	priority->setData(STR_VALUE,30);
	tbwStatus->setItem(row,STC_PRIORITY,priority);

	tbwStatus->editItem(name);

	emit modified();
}