void FormGenRecordComposition::setVaidatedValueImpl(const QVariant &val)
{
    mUpdating = UpdatingState;

    const QVariantHash map = val.toHash();
    for( auto it = map.cbegin(); it != map.cend(); ++it )
        mElements.at(mTagIndexMap.value(it.key())).element->setValidatedValue(it.value());

    if( mUpdating == UpdatingWithChangeState )
        emit valueChanged();

    mUpdating = NotUpdatingState;
}