Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="url"></param>
        /// <returns></returns>
        public GObject GetObject(string url)
        {
            url = UIPackage.NormalizeURL(url);

            Queue <GObject> arr;

            if (_pool.TryGetValue(url, out arr) &&
                arr.Count > 0)
            {
                return(arr.Dequeue());
            }

            GObject obj = UIPackage.CreateObjectFromURL(url);

            if (obj != null)
            {
                if (initCallback != null)
                {
                    initCallback(obj);
                }
            }

            return(obj);
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        static public BaseFont GetFont(string name)
        {
            string url = UIPackage.NormalizeURL(name);

            if (url != null)
            {
                name = url;
            }

            BaseFont ret;

            if (!sFontFactory.TryGetValue(name, out ret))
            {
                ret = new DynamicFont(name);
                sFontFactory.Add(name, ret);
            }

            if (ret.packageItem != null && !ret.packageItem.decoded)
            {
                ret.packageItem.Load();
            }

            return(ret);
        }