void QgsLegendLayer::changeSymbologySettings( const QgsMapLayer* theMapLayer, const SymbologyList& newSymbologyItems ) { if ( !theMapLayer ) { return; } QgsLegendSymbologyItem* theSymbologyItem = 0; //remove the symbology items under the legend layer for ( int i = childCount(); i >= 0; --i ) { theSymbologyItem = dynamic_cast<QgsLegendSymbologyItem *>( child( i ) ); if ( theSymbologyItem ) { delete takeChild( i ); } } //add the new symbology items int childposition = 0; //position to insert the items for ( SymbologyList::const_iterator it = newSymbologyItems.begin(); it != newSymbologyItems.end(); ++it ) { QgsLegendSymbologyItem* theItem = new QgsLegendSymbologyItem( it->second.width(), it->second.height() ); theItem->setText( 0, it->first ); theItem->setIcon( 0, QIcon( it->second ) ); insertChild( childposition, theItem ); ++childposition; } }
void set(plStateVariable* var) { fVariable = var; QTreeWidgetItem* child; while ((child = takeChild(0)) != NULL) delete child; setText(0, ~fVariable->getDescriptor()->getName()); setText(1, QSDLEditor::GetVarDisplay(var)); if (fVariable->getDescriptor()->getType() == plVarDescriptor::kStateDescriptor) { if (fVariable->getCount() > 1) { for (size_t i=0; i<fVariable->getCount(); i++) { QTreeWidgetItem* idx = new QTreeWidgetItem(this, QStringList() << QString("Item [%1]").arg(i) << "" ); plStateDataRecord* rec = ((plSDStateVariable*)var)->Record(i); for (size_t j=0; j<rec->getNumVars(); j++) new QSDLTreeItem(rec->get(j), idx); } } else if (var->getCount() == 1) { plStateDataRecord* rec = ((plSDStateVariable*)var)->Record(0); for (size_t j=0; j<rec->getNumVars(); j++) new QSDLTreeItem(rec->get(j), this); } } }
void QgsLegendItem::removeAllChildren() { while ( child( 0 ) ) { takeChild( 0 ); } }
void ChatPanel::setConnectedUsers(const QStringList &usersNames) { updateConnectedUsersTitleString(usersNames.count()); auto root = ui->treeWidget->topLevelItem(0); Q_ASSERT(root); while (root->childCount() > 0) { delete root->takeChild(0); } for (const auto &userFullName : usersNames) { auto name = ninjam::client::extractUserName(userFullName); auto ip = ninjam::client::extractUserIP(userFullName); auto item = new QTreeWidgetItem(root, QStringList(name)); item->setData(0, Qt::UserRole + 1, ip); setItemCountryDetails(item, geo::Location()); // unknown location root->addChild(item); } //ui->treeWidget->setVisible(usersNames.size() > 1); ui->treeWidget->setVisible(true); root->setExpanded(usersNames.size() > 1); // issue #1107 }
void IdxData::removeChild(IdxData* child) { takeChild(child); delete child; }