Example #1
0
// Toggle lock state
void CoinControlDialog::buttonToggleLockClicked()
{
    QTreeWidgetItem *item;
    // Works in list-mode only
    if(ui->radioListMode->isChecked()){
        ui->treeWidget->setEnabled(false);
        for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++){
            item = ui->treeWidget->topLevelItem(i);
            COutPoint outpt(uint256(item->text(COLUMN_TXHASH).toStdString()), item->text(COLUMN_VOUT_INDEX).toUInt());
            if (model->isLockedCoin(uint256(item->text(COLUMN_TXHASH).toStdString()), item->text(COLUMN_VOUT_INDEX).toUInt())){
                model->unlockCoin(outpt);
                item->setDisabled(false);
                item->setIcon(COLUMN_CHECKBOX, QIcon());
            }
            else{
                model->lockCoin(outpt);
                item->setDisabled(true);
                item->setIcon(COLUMN_CHECKBOX, QIcon(":/icons/lock_closed"));
            }
            updateLabelLocked();
        }
        ui->treeWidget->setEnabled(true);
        CoinControlDialog::updateLabels(model, this);
    }
    else{
        QMessageBox msgBox;
        msgBox.setObjectName("lockMessageBox");
        msgBox.setStyleSheet(GUIUtil::loadStyleSheet());
        msgBox.setText(tr("Please switch to \"List mode\" to use this function."));
        msgBox.exec();
    }
}
Example #2
0
  void ImporterWizard::load(ObjImporter::SceneInfo& si)
  {
    QTreeWidget* t = m_ui->tree;
    t->clear();

    QList<QTreeWidgetItem*> items;
    m_objects = new QTreeWidgetItem(t, QStringList() << "Objects");
    m_models = new QTreeWidgetItem(t, QStringList() << "Models");
    m_animations = new QTreeWidgetItem(t, QStringList() << "Animations");
    m_cameras = new QTreeWidgetItem(t, QStringList() << "Cameras");
    m_lights = new QTreeWidgetItem(t, QStringList() << "Lights");
    m_materials = new QTreeWidgetItem(t, QStringList() << "Materials");
    m_textures = new QTreeWidgetItem(t, QStringList() << "Textures");

    items << m_objects << m_models << m_animations << m_cameras << m_lights << m_materials << m_textures;
    t->addTopLevelItems(items);

    QMap<QString, QString>::const_iterator it;

    for (it = si.objects.begin(); it != si.objects.end(); ++it) {
      newItem(m_objects, it);
      newItem(m_models, it);
    }
    for (it = si.animations.begin(); it != si.animations.end(); ++it) {
      QTreeWidgetItem* x = newItem(m_animations, it);
      x->setCheckState(0, Qt::Unchecked);
      x->setDisabled(true);
    }
    for (it = si.cameras.begin(); it != si.cameras.end(); ++it) {
      QTreeWidgetItem* x = newItem(m_animations, it);
      x->setCheckState(0, Qt::Unchecked);
      x->setDisabled(true);
    }
    for (it = si.lights.begin(); it != si.lights.end(); ++it) {
      QTreeWidgetItem* x = newItem(m_lights, it);
      x->setCheckState(0, Qt::Unchecked);
      x->setDisabled(true);
    }
    for (it = si.materials.begin(); it != si.materials.end(); ++it) {
      newItem(m_materials, it);
    }
    for (it = si.textures.begin(); it != si.textures.end(); ++it) {
      newItem(m_textures, it);
    }

    foreach (QTreeWidgetItem* i, items) {
      i->setFirstColumnSpanned(true);
      i->setExpanded(true);
      if (i->childCount() == 0) i->setDisabled(true);
    }
Example #3
0
void TemplKatalogListView::addCalcParts( FloskelTemplate *tmpl )
{
  QTreeWidgetItem *item = tmpl->getListViewItem();

  if( ! item ) return;

  CalcPartList parts = tmpl->getCalcPartsList();
  CalcPartListIterator it(parts);

  while( it.hasNext() ) {
    CalcPart *cp = it.next();
    QString title = cp->getName();
    QString type = cp->getType();
    kDebug() << "Type is " << type << endl;
    if( type  == KALKPART_TIME ) {
      TimeCalcPart *zcp = static_cast<TimeCalcPart*>(cp);
      StdSatz stdsatz = zcp->getStundensatz();
      title = QString( "%1, %2 Min. %3" ).arg( cp->getName() )
              .arg( QString::number( zcp->getMinuten() ) )
              .arg( stdsatz.getName() );
    }

    QStringList list;
    list << title;
    list << cp->kosten().toString( catalog()->locale() );
    list << cp->getType();
    QTreeWidgetItem *cpItem =  new QTreeWidgetItem( item, list );
    cpItem->setDisabled(true);
  }
}
Example #4
0
QTreeWidget * ServerListDialog::constructTreeWidget(std::vector<ServerItem *> serverlist)
{
	QTreeWidget * treeWidget = new QTreeWidget(this);
	QTreeWidgetItem * i;
	QStringList stringList;
	int index = 0;
	
	treeWidget->setRootIsDecorated(false);
	treeWidget->setColumnCount(2);
	stringList << "Name" << "IP Address";
	treeWidget->setHeaderLabels(stringList);
	stringList.clear();
	
	std::vector<ServerItem *>::iterator it;
	for(it = serverlist.begin(); it != serverlist.end(); it++)
	{
		stringList << (*it)->name << (*it)->ipaddress;
		i = new QTreeWidgetItem(treeWidget, stringList);
		if(index == current_server)
			i->setDisabled(true);
		if(it == serverlist.begin())	//ugly but its a short list
			treeWidget->setCurrentItem(i);
		stringList.clear();
		index++;
	}
	return treeWidget;
}
Example #5
0
void AttributeWidget::parseFrameElement( int index, QTreeWidgetItem *parentItem)
{
    QTreeWidgetItem *pItem = createItem(index, parentItem);
    const Frame* pFrame = m_pCollector->getFrameByIndex(index);

    // name
    pItem->setFlags(pItem->flags() | Qt::ItemIsEditable);
    pItem->setIcon(0, QIcon(pFrame->image));
    pItem->setText(0, pFrame->name);
    pItem->setDisabled(!pFrame->bValid);

    // x
    QTreeWidgetItem *pOrgXItem = createItem(index, pItem);
    pOrgXItem->setFlags(pItem->flags() | Qt::ItemIsEditable);
    pOrgXItem->setText(0, QString(tr("x")));
    pOrgXItem->setText(1, QString::number(pFrame->rect.x()));
    pOrgXItem->setDisabled(!pFrame->bValid);

    // y
    QTreeWidgetItem *pOrgYItem = createItem(index, pItem);
    pOrgYItem->setFlags(pItem->flags() | Qt::ItemIsEditable);
    pOrgYItem->setText(0, QString(tr("y")));
    pOrgYItem->setText(1, QString::number(pFrame->rect.y()));
    pOrgYItem->setDisabled(!pFrame->bValid);

    // width
    QTreeWidgetItem *pWidthItem = createItem(index, pItem);
    pWidthItem->setFlags(pItem->flags() | Qt::ItemIsEditable);
    pWidthItem->setText(0, QString(tr("width")));
    pWidthItem->setText(1, QString::number(pFrame->rect.width()));
    pWidthItem->setDisabled(!pFrame->bValid);

    // height
    QTreeWidgetItem *pHeightItem = createItem(index, pItem);
    pHeightItem->setFlags(pItem->flags() | Qt::ItemIsEditable);
    pHeightItem->setText(0, QString(tr("height")));
    pHeightItem->setText(1, QString::number(pFrame->rect.height()));
    pHeightItem->setDisabled(!pFrame->bValid);

    pItem->setData(0, Qt::UserRole, QVariant(name_item));
    pOrgXItem->setData(0, Qt::UserRole, QVariant(x_item));
    pOrgYItem->setData(0, Qt::UserRole, QVariant(y_item));
    pWidthItem->setData(0, Qt::UserRole, QVariant(width_item));
    pHeightItem->setData(0 ,Qt::UserRole, QVariant(height_item));

    m_frameElement.append(pItem);
}
void OsmTagEditorWidgetPrivate::populateCurrentTagsList()
{
    // Name tag
    if ( !m_placemark->name().isEmpty() ) {
        QStringList itemText;

        // "name" is a standard OSM tag, don't translate
        itemText<< "name" << m_placemark->name();
        QTreeWidgetItem *nameTag = new QTreeWidgetItem( itemText );
        nameTag->setDisabled( true );
        m_currentTagsList->addTopLevelItem( nameTag );
    }

    // Multipolygon type tag
    if ( m_placemark->geometry()->nodeType() == GeoDataTypes::GeoDataPolygonType ) {
        QStringList itemText;
        // "type" is a standard OSM tag, don't translate
        itemText<< "type" << "multipolygon";
        QTreeWidgetItem *typeTag = new QTreeWidgetItem( itemText );
        typeTag->setDisabled( true );
        m_currentTagsList->addTopLevelItem( typeTag );
    }

    // Other tags
    if( m_placemark->hasOsmData() ) {
        OsmPlacemarkData osmData = m_placemark->osmData();
        QHash< QString, QString>::const_iterator it = osmData.tagsBegin();
        QHash< QString, QString>::const_iterator end = osmData.tagsEnd();
        for ( ; it != end; ++it ) {
            QTreeWidgetItem *tagItem = tagWidgetItem( OsmPresetLibrary::OsmTag( it.key(), it.value() ) );
            m_currentTagsList->addTopLevelItem( tagItem );
        }
    }

    // Custom tag adder item
    QTreeWidgetItem *adderItem = new QTreeWidgetItem();
    adderItem->setText( 0, m_customTagAdderText );
    adderItem->setTextColor( 0, Qt::gray );
    adderItem->setIcon( 0, QIcon( ":marble/list-add.png" ) );
    adderItem->setFlags( adderItem->flags() | Qt::ItemIsEditable );
    m_currentTagsList->addTopLevelItem( adderItem );
    m_currentTagsList->resizeColumnToContents( 0 );
    m_currentTagsList->resizeColumnToContents( 1 );


}
Example #7
0
void AttributeWidget::updateFrameElement(int index)
{
    if (index < 0 || index >= m_frameElement.count() || index >= m_pCollector->count())
    {
        return;
    }

    disconnect(this, SIGNAL(itemChanged(QTreeWidgetItem*,int)),
               this, SLOT(onItemValuedChanged(QTreeWidgetItem*,int)));

    QTreeWidgetItem* pItem = m_frameElement[index];
    const Frame* pFrame = m_pCollector->getFrameByIndex(index);

    pItem->setIcon(0, QIcon(pFrame->image));
    pItem->setText(0, pFrame->name);
    pItem->setDisabled(!pFrame->bValid);

    int childCount = pItem->childCount();
    for (int i = 0; i < childCount; i++)
    {
        QTreeWidgetItem* pChild = pItem->child(i);
        int type = pChild->data(0, Qt::UserRole).toInt();
        switch (type)
        {
        case x_item:
            pChild->setText(1, QString::number(pFrame->rect.x()));
            break;
        case y_item:
            pChild->setText(1, QString::number(pFrame->rect.y()));
            break;
        case width_item:
            pChild->setText(1, QString::number(pFrame->rect.width()));
            break;
        case height_item:
            pChild->setText(1, QString::number(pFrame->rect.height()));
            break;
        default:
            break;
        }
        pChild->setDisabled(!pFrame->bValid);
    }

    connect(this, SIGNAL(itemChanged(QTreeWidgetItem*,int)),
            this, SLOT(onItemValuedChanged(QTreeWidgetItem*,int)));
}
void ImportedBookmarksPreviewDialog::RecursiveSetFolderImport(QTreeWidgetItem* twi, bool import)
{
    int index = twi->data(0, TWID_Index).toInt();
    int folderId = elist->ibflist[index].intId;

    //Update import status and icon of the node.
    //IMPORTANT: We set the `import` RECURSIVELY on all sub-folders, and `accept` processing
    //           RELIES ON THIS.
    elist->ibflist[index].Ex_importBookmarks = import;
    folderItems[folderId]->setIcon(0, import ? icon_folder : icon_folderdontimport);

    //Update icons of all subbookmarks.
    QTreeWidgetItem* bmtwi;
    for (int i = 0; i < elist->iblist.size(); i++)
    {
        ImportedBookmark& ib = elist->iblist[i];
        if (ib.parentId == folderId)
        {
            //IMPORTANT: Do NOT set the import on this bookmark so as to prevent clearing user choices.
            //  The final not-importing, etc will be managed by `accept`s processings.
            //ib.Ex_import = import;
            bmtwi = bookmarkItems[ib.intId];
            bmtwi->setDisabled(!import);
            if (!import)
                bmtwi->setIcon(0, icon_dontimport);
            else
                SetBookmarkItemIcon(bmtwi, ib);
        }
    }

    //Recursively update sub-folders
    QTreeWidgetItem* childdirtwi;
    for (int i = 0; i < elist->ibflist.size(); i++)
    {
        ImportedBookmarkFolder& ibf = elist->ibflist[i];
        if (ibf.parentId == folderId)
        {
            ibf.Ex_importBookmarks = import;
            childdirtwi = folderItems[ibf.intId];
            childdirtwi->setDisabled(!import); //Set disabled as well as setting icon and handling children.
            RecursiveSetFolderImport(childdirtwi, import);
        }
    }
}
/**
 * This only handles changes in selection of just one tree item!
 */
void _syncXCCDFItemChildrenDisabledState(QTreeWidgetItem* treeItem, bool enabled)
{
    for (int i = 0; i < treeItem->childCount(); ++i)
    {
        QTreeWidgetItem* childTreeItem = treeItem->child(i);
        const bool childEnabled = !childTreeItem->isDisabled();

        if (!enabled && childEnabled)
        {
            childTreeItem->setDisabled(true);
            _syncXCCDFItemChildrenDisabledState(childTreeItem, false);
        }
        else if (enabled && !childEnabled)
        {
            childTreeItem->setDisabled(false);
            _syncXCCDFItemChildrenDisabledState(childTreeItem, true);
        }
    }
}
Example #10
0
void DlgRegistries::UpdateIntermediaries() {

	guard = true;

	int regId = ui.tree->currentItem() ? (int)ui.tree->currentItem()->data(0, Qt::UserRole).toUInt() : -1;

	MgIntermediaryMap mp = wg->Db().IntermediaryMap(-1);

	for (int i = 0; i < ui.intermediaryTree->topLevelItemCount(); ++i) {

		QTreeWidgetItem *item = ui.intermediaryTree->topLevelItem(i);

		MgIntermediaryMap::iterator ip = mp.find(item->data(0, Qt::UserRole).toUInt());
		if (ip != mp.end()) {

			item->setData(0, Qt::UserRole + 1, ip->second.registry);

			if (regId == -1) {
				item->setDisabled(true);
				item->setCheckState(0, Qt::Unchecked);
			}
			else {

				if (ip->second.registry == -1) {
					item->setDisabled(false);
					item->setCheckState(0, Qt::Unchecked);
				}
				else if (ip->second.registry == regId) {
					item->setDisabled(false);
					item->setCheckState(0, Qt::Checked);
				}
				else {
					item->setDisabled(true);
					item->setCheckState(0, Qt::Unchecked);
				}
			}
		}
	}

	guard = false;
}
void _refreshXCCDFItemChildrenDisabledState(QTreeWidgetItem* treeItem, bool allAncestorsSelected)
{
    bool itemSelected = !(treeItem->flags() & Qt::ItemIsUserCheckable) || treeItem->checkState(0) == Qt::Checked;
    allAncestorsSelected = allAncestorsSelected && itemSelected;

    for (int i = 0; i < treeItem->childCount(); ++i)
    {
        QTreeWidgetItem* childTreeItem = treeItem->child(i);
        childTreeItem->setDisabled(!allAncestorsSelected);

        _refreshXCCDFItemChildrenDisabledState(childTreeItem, allAncestorsSelected);
    }
}
dmz::V8Value
dmz::JsModuleUiV8QtBasic::_tree_item_disable (const v8::Arguments &Args) {

   v8::HandleScope scope;
   V8Value result = v8::Undefined ();

   JsModuleUiV8QtBasic *self = _to_self (Args);
   if (self) {

      QTreeWidgetItem *item = self->_to_qtreewidgetitem (Args.This ());
      if (item) {

         if (Args.Length ()) { item->setDisabled (v8_to_boolean (Args[0])); }
         result = v8::Boolean::New (item->isDisabled ());
      }
   }

   return scope.Close (result);
}
Example #13
0
void QCollapsibleToolbox::addWidget(const QString & name, QWidget * widget) {
    if (sections.contains(name)) {
        qDebug() << "Menu already contains section named: " << name;
        return;
    }
    QTreeWidgetItem * widget_item = new QTreeWidgetItem;
    sections[name] = widget_item;
    addTopLevelItem(widget_item);
    QCategoryCheckButton * button = new QCategoryCheckButton(name, this, widget_item);
    setItemWidget(widget_item,0,button);
    buttons[name] = button;
    QTreeWidgetItem * container = new QTreeWidgetItem;
    container->setDisabled(true);
    widget_item->addChild(container);
    widget->setBackgroundRole(QPalette::Window);
    widget->setAutoFillBackground(true);
    setItemWidget(container, 0, widget);
    widget_item->setExpanded(false);
}
Example #14
0
void QgsDatumTransformDialog::load()
{
  QgsDebugMsg( "Entered." );

  mDatumTransformTreeWidget->clear();

  QList< QList< int > >::const_iterator it = mDt.constBegin();
  for ( ; it != mDt.constEnd(); ++it )
  {
    QTreeWidgetItem *item = new QTreeWidgetItem();
    int score = 0;

    for ( int i = 0; i < 2 && i < it->size(); ++i )
    {
      int nr = it->at( i );
      item->setData( i, Qt::UserRole, nr );
      if ( nr == -1 )
        continue;

      item->setText( i, QgsCoordinateTransform::datumTransformString( nr ) );

      //Describe datums in a tooltip
      QString srcGeoProj, destGeoProj, remarks, scope;
      int epsgNr;
      bool preferred, deprecated;
      if ( !QgsCoordinateTransform::datumTransformCrsInfo( nr, epsgNr, srcGeoProj, destGeoProj, remarks, scope, preferred, deprecated ) )
        continue;

      QString toolTipString;
      if ( gridShiftTransformation( item->text( i ) ) )
      {
        toolTipString.append( QString( "<p><b>NTv2</b></p>" ) );
        if ( !deprecated )
          score += 2;
        if ( !testGridShiftFileAvailability( item, i ) )
        {
          score -= 10;
          item->setDisabled( true );
          continue;
        }
      }

      if ( epsgNr > 0 )
        toolTipString.append( QString( "<p><b>EPSG Transformations Code:</b> %1</p>" ).arg( epsgNr ) );

      toolTipString.append( QString( "<p><b>Source CRS:</b> %1</p><p><b>Destination CRS:</b> %2</p>" ).arg( srcGeoProj ).arg( destGeoProj ) );

      if ( !remarks.isEmpty() )
        toolTipString.append( QString( "<p><b>Remarks:</b> %1</p>" ).arg( remarks ) );
      if ( !scope.isEmpty() )
        toolTipString.append( QString( "<p><b>Scope:</b> %1</p>" ).arg( scope ) );
      if ( preferred )
      {
        toolTipString.append( "<p><b>Preferred transformation</b></p>" );
        score += 1;
      }
      if ( deprecated )
      {
        toolTipString.append( "<p><b>Deprecated transformation</b></p>" );
        score -= 2;
      }

      item->setToolTip( i, toolTipString );
    }

    item->setData( 2, Qt::UserRole, score);
    item->setText( 2, QString("%1").arg( score + 50 ) );  // Sort works on text only
    mDatumTransformTreeWidget->addTopLevelItem( item );
  }

  // Sort transformations by score
  mDatumTransformTreeWidget->sortItems( 2, Qt::DescendingOrder );
  mDatumTransformTreeWidget->setSortingEnabled( true );
  mDatumTransformTreeWidget->setSortingEnabled( false );
  mDatumTransformTreeWidget->setColumnHidden( 2, true );
  mDatumTransformTreeWidget->setCurrentItem(mDatumTransformTreeWidget->topLevelItem(0));

  updateStatus();
}
void QgsDatumTransformDialog::load()
{
  QgsDebugMsg( "Entered." );

  mDatumTransformTreeWidget->clear();

  QList< QList< int > >::const_iterator it = mDt.constBegin();
  for ( ; it != mDt.constEnd(); ++it )
  {
    QTreeWidgetItem *item = new QTreeWidgetItem();
    bool itemDisabled = false;
    bool itemHidden = false;

    for ( int i = 0; i < 2 && i < it->size(); ++i )
    {
      int nr = it->at( i );
      item->setData( i, Qt::UserRole, nr );
      if ( nr == -1 )
        continue;

      item->setText( i, QgsCoordinateTransform::datumTransformString( nr ) );

      //Describe datums in a tooltip
      QString srcGeoProj, destGeoProj, remarks, scope;
      int epsgNr;
      bool preferred, deprecated;
      if ( !QgsCoordinateTransform::datumTransformCrsInfo( nr, epsgNr, srcGeoProj, destGeoProj, remarks, scope, preferred, deprecated ) )
        continue;

      if ( mHideDeprecatedCheckBox->isChecked() && deprecated )
      {
        itemHidden = true;
      }

      QString toolTipString;
      if ( gridShiftTransformation( item->text( i ) ) )
      {
        toolTipString.append( QString( "<p><b>NTv2</b></p>" ) );
      }

      if ( epsgNr > 0 )
        toolTipString.append( QString( "<p><b>EPSG Transformations Code:</b> %1</p>" ).arg( epsgNr ) );

      toolTipString.append( QString( "<p><b>Source CRS:</b> %1</p><p><b>Destination CRS:</b> %2</p>" ).arg( srcGeoProj, destGeoProj ) );

      if ( !remarks.isEmpty() )
        toolTipString.append( QString( "<p><b>Remarks:</b> %1</p>" ).arg( remarks ) );
      if ( !scope.isEmpty() )
        toolTipString.append( QString( "<p><b>Scope:</b> %1</p>" ).arg( scope ) );
      if ( preferred )
        toolTipString.append( "<p><b>Preferred transformation</b></p>" );
      if ( deprecated )
        toolTipString.append( "<p><b>Deprecated transformation</b></p>" );

      item->setToolTip( i, toolTipString );

      if ( gridShiftTransformation( item->text( i ) ) && !testGridShiftFileAvailability( item, i ) )
      {
        itemDisabled = true;
      }
    }

    if ( !itemHidden )
    {
      item->setDisabled( itemDisabled );
      mDatumTransformTreeWidget->addTopLevelItem( item );
    }
    else
    {
      delete item;
    }
  }
}
Example #16
0
void QTreeWidgetItemProto::setDisabled(bool disabled)
{
  QTreeWidgetItem *item = qscriptvalue_cast<QTreeWidgetItem*>(thisObject());
  if (item)
    item->setDisabled(disabled);
}