Example #1
0
        static void PreloadClassIcon()
        {
            if (ClassIconDictionary == null)
            {
                Type[] iconEmbeddedClasses =
                {
                    typeof(UIButton),
                    typeof(UICheckBox),
                    typeof(UIDocument),
                    typeof(UIEditText),
                    typeof(UIEllipse),
                    typeof(UIImage),
                    typeof(UILabel),
                    typeof(UIPanel),
                    typeof(UIRadioButton),
                    typeof(UIRect),
                    typeof(UIRoundedRect),
                    typeof(UIScrollablePanel),
                    typeof(UISprite),
                    typeof(UIVideo),
                    typeof(UIWindow),
                };

                ClassIconDictionary = new SortedList <int, ImageSource>(iconEmbeddedClasses.Length);
                ClassIconDictionary.Add(0, BitmapFrame.Create(GetEmbeddedResourceUri("Classes/Default.png")));

                foreach (var item in iconEmbeddedClasses)
                {
                    var uri = GetEmbeddedResourceUri(string.Format("Classes/{0}.png", item.Name));
                    ClassIconDictionary.Add(ClassIDAttribute.GetClassID(item), BitmapFrame.Create(uri));
                }
            }
        }
Example #2
0
        static UIElementFactory()
        {
            ICollection <Type> moduleClasses = AssemblyUtility.FindClasses(typeof(UIElement), true, false);

            entries = new Dictionary <int, ConstructorInfo>(moduleClasses.Count);

            foreach (Type item in moduleClasses)
            {
                ClassIDAttribute attribute = item.GetCustomAttribute <ClassIDAttribute>();
                if (attribute != null)
                {
                    Debug.Assert(entries.ContainsKey(attribute.ClassID) == false);
                    entries.Add(attribute.ClassID, item.GetConstructor(Type.EmptyTypes));
                }
            }
        }
Example #3
0
 public AssetStreamWriter(Stream output, GameModuleTree modules, GameAssetStorage storage)
     : base(output)
 {
     Modules = modules;
     Storage = storage ?? (GameAssetStorage)modules.Root.FindChildByClassID(ClassIDAttribute.GetClassID(typeof(GameAssetStorage)));
 }