Beispiel #1
0
bool BackendHelper::GetFieldRef(const SocRegRef& reg, const QString& sfield, SocFieldRef& ref)
{
    for(size_t i = 0; i < reg.GetReg().field.size(); i++)
        if(reg.GetReg().field[i].name.c_str() == sfield)
        {
            ref = SocFieldRef(reg, i);
            return true;
        }
    return false;
}
Beispiel #2
0
void RegEdit::AddField(QTreeWidgetItem *_item)
{
    NewFieldTreeItem *item = dynamic_cast< NewFieldTreeItem * >(_item);
    item->GetRef().GetReg().field.push_back(soc_reg_field_t());
    FieldTreeItem *field_item = new FieldTreeItem("",
        SocFieldRef(item->GetRef(), item->GetRef().GetReg().field.size() - 1));
    FixupEmptyItem(field_item);
    item->parent()->insertChild(item->parent()->indexOfChild(item), field_item);
    m_soc_tree->setCurrentItem(field_item);
    emit OnModified(true);
}
Beispiel #3
0
void RegEdit::FillRegTreeItem(QTreeWidgetItem *_item)
{
    RegTreeItem *item = dynamic_cast< RegTreeItem* >(_item);
    const soc_reg_t& reg = item->GetRef().GetReg();
    for(size_t i = 0; i < reg.field.size(); i++)
    {
        const soc_reg_field_t& field = reg.field[i];
        FieldTreeItem *field_item = new FieldTreeItem(QString::fromStdString(field.name),
            SocFieldRef(item->GetRef(), i));
        FixupEmptyItem(field_item);
        item->addChild(field_item);
    }
    CreateNewFieldItem(item);
}