IFXClass fxSourceClazz = FXPlugin.getClassmodel().findClass(javaProject, sourceType);
IFXClass fxTargetClass = FXPlugin.getClassmodel().findClass(javaProject, targetType);
IFXProperty targetProperty = fxTargetClass.getProperty(property.getName());
if( targetProperty instanceof IFXPrimitiveProperty ) {
IFXPrimitiveProperty pp = (IFXPrimitiveProperty) targetProperty;
for( IFXProperty sourceProp: fxSourceClazz.getAllProperties().values() ) {
if( sourceProp instanceof IFXEventHandlerProperty ) {
continue;
}
boolean select = false;
if( pp.getType() == Type.STRING ) {
select = true;
} else {
if( sourceProp instanceof IFXPrimitiveProperty ) {
IFXPrimitiveProperty sp = (IFXPrimitiveProperty) sourceProp;
if( pp.getType() == Type.BOOLEAN ) {
select = sp.getType() == Type.BOOLEAN;
} else if( sp.getType() != Type.STRING && sp.getType() != Type.BOOLEAN ) {
select = true;
}
}
}
if( select ) {
String typeName = "";
if( sourceProp instanceof IFXPrimitiveProperty ) {
IFXPrimitiveProperty sp = (IFXPrimitiveProperty) sourceProp;
if( sp.getType() == Type.STRING ) {
typeName = "String";
} else {
typeName = sp.getType().jvmType();
}
} else if (sourceProp instanceof IFXCollectionProperty ) {
typeName = ((IFXCollectionProperty)sourceProp).getCollectionAsString();
} else if( sourceProp instanceof IFXEnumProperty ) {
typeName = ((IFXEnumProperty)sourceProp).getEnumTypeAsString(false);