private void CreateWzProp(IPropertyContainer parent, WzPropertyType propType, string propName, object value)
        {
            WzImageProperty addedProp;

            switch (propType)
            {
            case WzPropertyType.Float:
                addedProp = new WzFloatProperty(propName);
                break;

            case WzPropertyType.Canvas:
                addedProp = new WzCanvasProperty(propName);
                ((WzCanvasProperty)addedProp).PngProperty = new WzPngProperty();
                break;

            case WzPropertyType.Int:
                addedProp = new WzIntProperty(propName);
                break;

            case WzPropertyType.Double:
                addedProp = new WzDoubleProperty(propName);
                break;

            /*case WzPropertyType.Sound:
             *  addedProp = new WzSoundProperty(propName);
             *  break;*/
            case WzPropertyType.String:
                addedProp = new WzStringProperty(propName);
                break;

            case WzPropertyType.Short:
                addedProp = new WzShortProperty(propName);
                break;

            case WzPropertyType.Vector:
                addedProp = new WzVectorProperty(propName);
                ((WzVectorProperty)addedProp).X = new WzIntProperty("X");
                ((WzVectorProperty)addedProp).Y = new WzIntProperty("Y");
                break;

            case WzPropertyType.Lua:     // probably dont allow the user to create custom Lua for now..
            {
                addedProp = new WzLuaProperty(propName, new byte[] { });
                break;
            }

            default:
                throw new NotSupportedException("Not supported type");
            }
            addedProp.SetValue(value);
            parent.AddProperty(addedProp);
        }
        public static Type GetType(WzPropertyType propertyType)
        {
            switch (propertyType)
            {
            case WzPropertyType.Null:
                return(typeof(WzNullProperty));

            case WzPropertyType.Short:
                return(typeof(WzShortProperty));

            case WzPropertyType.Int:
                return(typeof(WzIntProperty));

            case WzPropertyType.Long:
                return(typeof(WzLongProperty));

            case WzPropertyType.Float:
                return(typeof(WzFloatProperty));

            case WzPropertyType.Double:
                return(typeof(WzDoubleProperty));

            case WzPropertyType.String:
                return(typeof(WzStringProperty));

            case WzPropertyType.SubProperty:
                return(typeof(WzSubProperty));

            case WzPropertyType.Canvas:
                return(typeof(WzCanvasProperty));

            case WzPropertyType.Vector:
                return(typeof(WzVectorProperty));

            case WzPropertyType.Convex:
                return(typeof(WzConvexProperty));

            case WzPropertyType.Sound:
                return(typeof(WzSoundProperty));

            case WzPropertyType.Uol:
                return(typeof(WzUolProperty));

            case WzPropertyType.Png:
                return(typeof(WzPngProperty));

            default:
                throw new ArgumentOutOfRangeException(nameof(propertyType), propertyType, null);
            }
        }
Exemple #3
0
 private void SetWzProperty(WzImage parentImage, string propName, WzPropertyType propType, object value)
 {
     WzImageProperty property = parentImage[propName];
     if (property != null)
     {
         if (property.PropertyType == propType)
             property.SetValue(value);
         else
         {
             property.Remove();
             CreateWzProp(parentImage, propType, propName, value);
         }
     }
     else
         CreateWzProp(parentImage, propType, propName, value);
 }
Exemple #4
0
        private void CreateWzProp(IPropertyContainer parent, WzPropertyType propType, string propName, object value)
        {
            IWzImageProperty addedProp;

            switch (propType)
            {
            case WzPropertyType.ByteFloat:
                addedProp = new WzByteFloatProperty(propName);
                break;

            case WzPropertyType.Canvas:
                addedProp = new WzCanvasProperty(propName);
                ((WzCanvasProperty)addedProp).PngProperty = new WzPngProperty();
                break;

            case WzPropertyType.CompressedInt:
                addedProp = new WzCompressedIntProperty(propName);
                break;

            case WzPropertyType.Double:
                addedProp = new WzDoubleProperty(propName);
                break;

            /*case WzPropertyType.Sound:
             *  addedProp = new WzSoundProperty(propName);
             *  break;*/
            case WzPropertyType.String:
                addedProp = new WzStringProperty(propName);
                break;

            case WzPropertyType.UnsignedShort:
                addedProp = new WzUnsignedShortProperty(propName);
                break;

            case WzPropertyType.Vector:
                addedProp = new WzVectorProperty(propName);
                ((WzVectorProperty)addedProp).X = new WzCompressedIntProperty("X");
                ((WzVectorProperty)addedProp).Y = new WzCompressedIntProperty("Y");
                break;

            default:
                throw new NotSupportedException("not supported type");
            }
            addedProp.SetValue(value);
            parent.AddProperty(addedProp);
        }
 private void SetWzProperty(WzImage parentImage, string propName, WzPropertyType propType, object value)
 {
     IWzImageProperty property = parentImage[propName];
     if (property != null)
     {
         if (property.PropertyType == propType)
             property.SetValue(value);
         else
         {
             property.Remove();
             CreateWzProp(parentImage, propType, propName, value);
         }
     }
     else
         CreateWzProp(parentImage, propType, propName, value);
 }
 private void CreateWzProp(IPropertyContainer parent, WzPropertyType propType, string propName, object value)
 {
     IWzImageProperty addedProp;
     switch (propType)
     {
         case WzPropertyType.ByteFloat:
             addedProp = new WzByteFloatProperty(propName);
             break;
         case WzPropertyType.Canvas:
             addedProp = new WzCanvasProperty(propName);
             ((WzCanvasProperty)addedProp).PngProperty = new WzPngProperty();
             break;
         case WzPropertyType.CompressedInt:
             addedProp = new WzCompressedIntProperty(propName);
             break;
         case WzPropertyType.Double:
             addedProp = new WzDoubleProperty(propName);
             break;
         /*case WzPropertyType.Sound:
             addedProp = new WzSoundProperty(propName);
             break;*/
         case WzPropertyType.String:
             addedProp = new WzStringProperty(propName);
             break;
         case WzPropertyType.UnsignedShort:
             addedProp = new WzUnsignedShortProperty(propName);
             break;
         case WzPropertyType.Vector:
             addedProp = new WzVectorProperty(propName);
             ((WzVectorProperty)addedProp).X = new WzCompressedIntProperty("X");
             ((WzVectorProperty)addedProp).Y = new WzCompressedIntProperty("Y");
             break;
         default:
             throw new NotSupportedException("not supported type");
     }
     addedProp.SetValue(value);
     parent.AddProperty(addedProp);
 }