Reduce clutter by merging related files.
There's no need to have three separate files containing a single static variable each. Ideally, the `Data` types should include the variable, which can be accomplished using abstracts. `from Dynamic` is required in Haxe 3 and simplifies things in Haxe 4.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
package lime.tools;
|
||||
|
||||
typedef ApplicationData =
|
||||
{
|
||||
@:forward
|
||||
abstract ApplicationData({
|
||||
@:optional var file:String;
|
||||
@:optional var init:String;
|
||||
@:optional var main:String;
|
||||
@@ -9,4 +9,15 @@ typedef ApplicationData =
|
||||
@:optional var preloader:String;
|
||||
@:optional var swfVersion:Float;
|
||||
@:optional var url:String;
|
||||
}) from Dynamic
|
||||
{
|
||||
public static var defaults = {
|
||||
file: "",
|
||||
init: "",
|
||||
main: "",
|
||||
path: "",
|
||||
preloader: "",
|
||||
swfVersion: 0.0,
|
||||
url: ""
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package lime.tools;
|
||||
|
||||
typedef MetaData =
|
||||
{
|
||||
@:forward
|
||||
abstract MetaData({
|
||||
@:optional var buildNumber:String;
|
||||
@:optional var company:String;
|
||||
@:optional var companyId:String;
|
||||
@@ -10,4 +10,16 @@ typedef MetaData =
|
||||
@:optional var packageName:String;
|
||||
@:optional var title:String;
|
||||
@:optional var version:String;
|
||||
}) from Dynamic
|
||||
{
|
||||
public static var defaults = {
|
||||
buildNumber: "",
|
||||
company: "",
|
||||
companyId: "",
|
||||
companyUrl: "",
|
||||
description: "",
|
||||
packageName: "",
|
||||
title: "",
|
||||
version: ""
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,9 +7,6 @@ import lime.tools.Asset;
|
||||
import lime.tools.AssetType;
|
||||
import lime.tools.Dependency;
|
||||
import lime.tools.HXProject;
|
||||
import lime.tools._types.ApplicationDataType;
|
||||
import lime.tools._types.MetaDataType;
|
||||
import lime.tools._types.WindowDataType;
|
||||
#if lime
|
||||
import lime.utils.AssetManifest;
|
||||
#end
|
||||
@@ -442,11 +439,11 @@ class ProjectXMLParser extends HXProject
|
||||
name = "packageName";
|
||||
}
|
||||
|
||||
if (Reflect.hasField(ApplicationDataType.fields, name))
|
||||
if (Reflect.hasField(ApplicationData.defaults, name))
|
||||
{
|
||||
Reflect.setField(app, name, value);
|
||||
}
|
||||
else if (Reflect.hasField(MetaDataType.fields, name))
|
||||
else if (Reflect.hasField(MetaData.defaults, name))
|
||||
{
|
||||
Reflect.setField(meta, name, value);
|
||||
}
|
||||
@@ -859,7 +856,7 @@ class ProjectXMLParser extends HXProject
|
||||
name = "packageName";
|
||||
}
|
||||
|
||||
if (Reflect.hasField(MetaDataType.fields, name))
|
||||
if (Reflect.hasField(MetaData.defaults, name))
|
||||
{
|
||||
Reflect.setField(meta, name, value);
|
||||
}
|
||||
@@ -2009,11 +2006,11 @@ class ProjectXMLParser extends HXProject
|
||||
Reflect.setField(windows[id], "colorDepth", Std.parseInt(value));
|
||||
|
||||
default:
|
||||
if (Reflect.hasField(WindowDataType.fields, name))
|
||||
if (Reflect.hasField(WindowData.defaults, name))
|
||||
{
|
||||
Reflect.setField(windows[id], name, value == "true");
|
||||
}
|
||||
else if (Reflect.hasField(WindowDataType.fields, formatAttributeName(name)))
|
||||
else if (Reflect.hasField(WindowData.defaults, formatAttributeName(name)))
|
||||
{
|
||||
Reflect.setField(windows[id], formatAttributeName(name), value == "true");
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package lime.tools;
|
||||
|
||||
typedef WindowData =
|
||||
{
|
||||
@:forward
|
||||
abstract WindowData({
|
||||
@:optional var width:Int;
|
||||
@:optional var height:Int;
|
||||
@:optional var x:Float;
|
||||
@@ -31,4 +31,37 @@ typedef WindowData =
|
||||
@:optional var minimized:Bool;
|
||||
@:optional var maximized:Bool;
|
||||
@:optional var hidden:Bool;
|
||||
}) from Dynamic
|
||||
{
|
||||
public static var defaults = {
|
||||
width: 0,
|
||||
height: 0,
|
||||
x: 0.0,
|
||||
y: 0.0,
|
||||
background: 0,
|
||||
parameters: "",
|
||||
fps: 0,
|
||||
hardware: false,
|
||||
display: 0,
|
||||
resizable: false,
|
||||
borderless: false,
|
||||
vsync: false,
|
||||
fullscreen: false,
|
||||
allowHighDPI: false,
|
||||
alwaysOnTop: false,
|
||||
antialiasing: 0,
|
||||
orientation: Orientation.AUTO,
|
||||
allowShaders: false,
|
||||
requireShaders: false,
|
||||
depthBuffer: false,
|
||||
stencilBuffer: false,
|
||||
title: "",
|
||||
#if (js && html5)
|
||||
element: null,
|
||||
#end
|
||||
colorDepth: 0,
|
||||
minimized: false,
|
||||
maximized: false,
|
||||
hidden: false
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
package lime.tools._types;
|
||||
|
||||
import lime.tools.ApplicationData;
|
||||
|
||||
class ApplicationDataType
|
||||
{
|
||||
public static var fields:ApplicationData =
|
||||
{
|
||||
file: "",
|
||||
init: "",
|
||||
main: "",
|
||||
path: "",
|
||||
preloader: "",
|
||||
swfVersion: 0.0,
|
||||
url: ""
|
||||
}
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
package lime.tools._types;
|
||||
|
||||
import lime.tools.MetaData;
|
||||
|
||||
class MetaDataType
|
||||
{
|
||||
public static var fields:MetaData =
|
||||
{
|
||||
buildNumber: "",
|
||||
company: "",
|
||||
companyId: "",
|
||||
companyUrl: "",
|
||||
description: "",
|
||||
packageName: "",
|
||||
title: "",
|
||||
version: ""
|
||||
}
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
package lime.tools._types;
|
||||
|
||||
import lime.tools.WindowData;
|
||||
|
||||
class WindowDataType
|
||||
{
|
||||
public static var fields:WindowData =
|
||||
{
|
||||
width: 0,
|
||||
height: 0,
|
||||
x: 0.0,
|
||||
y: 0.0,
|
||||
background: 0,
|
||||
parameters: "",
|
||||
fps: 0,
|
||||
hardware: false,
|
||||
display: 0,
|
||||
resizable: false,
|
||||
borderless: false,
|
||||
vsync: false,
|
||||
fullscreen: false,
|
||||
allowHighDPI: false,
|
||||
alwaysOnTop: false,
|
||||
antialiasing: 0,
|
||||
orientation: Orientation.AUTO,
|
||||
allowShaders: false,
|
||||
requireShaders: false,
|
||||
depthBuffer: false,
|
||||
stencilBuffer: false,
|
||||
title: "",
|
||||
#if (js && html5)
|
||||
element: null,
|
||||
#end
|
||||
colorDepth: 0,
|
||||
minimized: false,
|
||||
maximized: false,
|
||||
hidden: false
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user