void BrushPropertyManager::slotPropertyDestroyed(QtProperty *property) { PropertyToPropertyMap::iterator subit = m_brushStyleSubPropertyToProperty.find(property); if (subit != m_brushStyleSubPropertyToProperty.end()) { m_brushPropertyToStyleSubProperty[subit.value()] = 0; m_brushStyleSubPropertyToProperty.erase(subit); } subit = m_brushColorSubPropertyToProperty.find(property); if (subit != m_brushColorSubPropertyToProperty.end()) { m_brushPropertyToColorSubProperty[subit.value()] = 0; m_brushColorSubPropertyToProperty.erase(subit); } }
void FontPropertyManager::removeAntialiasingProperty(QtProperty *property) { const PropertyToPropertyMap::iterator ait = m_antialiasingToProperty.find(property); if (ait == m_antialiasingToProperty.end()) return; m_propertyToAntialiasing[ait.value()] = 0; m_antialiasingToProperty.erase(ait); }
bool BrushPropertyManager::uninitializeProperty(QtProperty *property) { const PropertyBrushMap::iterator brit = m_brushValues.find(property); // Brushes if (brit == m_brushValues.end()) return false; m_brushValues.erase(brit); // style PropertyToPropertyMap::iterator subit = m_brushPropertyToStyleSubProperty.find(property); if (subit != m_brushPropertyToStyleSubProperty.end()) { QtProperty *styleProp = subit.value(); m_brushStyleSubPropertyToProperty.remove(styleProp); m_brushPropertyToStyleSubProperty.erase(subit); delete styleProp; } // color subit = m_brushPropertyToColorSubProperty.find(property); if (subit != m_brushPropertyToColorSubProperty.end()) { QtProperty *colorProp = subit.value(); m_brushColorSubPropertyToProperty.remove(colorProp); m_brushPropertyToColorSubProperty.erase(subit); delete colorProp; } return true; }
bool FontPropertyManager::resetFontSubProperty(QtVariantPropertyManager *vm, QtProperty *property) { const PropertyToPropertyMap::iterator it = m_fontSubPropertyToProperty.find(property); if (it == m_fontSubPropertyToProperty.end()) return false; QtVariantProperty *fontProperty = vm->variantProperty(it.value()); QVariant v = fontProperty->value(); QFont font = qvariant_cast<QFont>(v); unsigned mask = font.resolve(); const unsigned flag = fontFlag(m_fontSubPropertyToFlag.value(property)); mask &= ~flag; font.resolve(mask); qVariantSetValue(v, font); fontProperty->setValue(v); return true; }
bool FontPropertyManager::uninitializeProperty(QtProperty *property) { const PropertyToPropertyMap::iterator ait = m_propertyToAntialiasing.find(property); if (ait != m_propertyToAntialiasing.end()) { QtProperty *antialiasing = ait.value(); m_antialiasingToProperty.remove(antialiasing); m_propertyToAntialiasing.erase(ait); delete antialiasing; } PropertyToSubPropertiesMap::iterator sit = m_propertyToFontSubProperties.find(property); if (sit == m_propertyToFontSubProperties.end()) return false; m_propertyToFontSubProperties.erase(sit); m_fontSubPropertyToFlag.remove(property); m_fontSubPropertyToProperty.remove(property); return true; }