
registerType('appdoo.iOS', (function () { function UIFont() {} var __super = setSupertypeFromDomain(UIFont, 'BasicObject', 'Core');

	Object.defineProperty(UIFont.prototype, "fontFamily", {
	outlet: true, 
	enumerable: true, 
		set: function (v) {if (!Object.hasOwnProperty(this, "_fontFamily")) Object.defineProperty(this, "_fontFamily", { writable: true, configurable: true });
			if (this._fontFamily) {
				var firstChoice = firstChoiceForFontFamily(v, this._fontName);
				this._fontFamily = v;
				this._fontName = firstChoice;
				this.context.broadcastValueChangeForKeyPathInObject('fontName', this, this);
			}
			else
				this._fontFamily = v;
			this.context.broadcastValueChangeForKeyPathInObject('fontFamily', this, this);
		}, get:function () { return this._fontFamily; }});
	

	Object.defineProperty(UIFont.prototype, "fontName", {
	outlet: true, 
	enumerable: true, 
		set: function (value) {if (!Object.hasOwnProperty(this, "_fontName")) Object.defineProperty(this, "_fontName", { writable: true, configurable: true });
			this._fontName = value;
			this.context.broadcastValueChangeForKeyPathInObject('fontName', this, this);
		}, get:function () { return this._fontName; }});
	

	Object.defineProperty(UIFont.prototype, "pointSize", {
	outlet: true, 
	enumerable: true, 
		set: function (value) {if (!Object.hasOwnProperty(this, "_pointSize")) Object.defineProperty(this, "_pointSize", { writable: true, configurable: true });
			this._pointSize = value;
			this.context.broadcastValueChangeForKeyPathInObject('pointSize', this, this);
		}, get:function () { return this._pointSize; }});
	
	
UIFont.prototype.initPropertiesFromData = function UIFont_initPropertiesFromData(data) {
try { __super.prototype.initPropertiesFromData.call(this, data); } catch (err) {}
if (data.hasOwnProperty("fontFamily")) this.fontFamily = data.fontFamily;
if (data.hasOwnProperty("fontName")) this.fontName = data.fontName;
if (data.hasOwnProperty("pointSize")) this.pointSize = data.pointSize;
};

UIFont.prototype.decodeData = function UIFont_decodeData(data) { var decoded;
try { decoded = __super.prototype.decodeData.call(this, data); } catch (err) { console.warn(err); decoded = clone(data); }
return decoded; };

UIFont.prototype.encode = function UIFont_encode() { var encoded;
try { encoded = __super.prototype.encode.call(this); } catch (err) { console.warn(err); encoded = this.context.encodeObject(this); }
return encoded; };

UIFont.prototype.encodeCloned = function UIFont_encodeCloned() { var encoded;
try { encoded = __super.prototype.encodeCloned.call(this); } catch (err) { console.warn(err); encoded = {}; }
return encoded; };

UIFont.prototype.expectedTypeForProperty = function UIFont_expectedTypeForProperty(key) {
	if (key === "fontFamily") return "String";
	if (key === "fontName") return "String";
	if (key === "pointSize") return "Number";
	if (__super) return __super.prototype.expectedTypeForProperty(key);
};

return UIFont; }()));