Skip to content

Commit 9392114

Browse files
committed
Merge branch 'develop' of https://github.com/cocos2d/cocos2d-js into develop
2 parents 7a570a5 + b8ea3d6 commit 9392114

File tree

16 files changed

+41
-15
lines changed

16 files changed

+41
-15
lines changed

frameworks/js-bindings/bindings/manual/chipmunk/js_bindings_chipmunk_auto_classes.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2556,8 +2556,8 @@ bool JSB_cpSpace_constructor(JSContext *cx, uint32_t argc, jsval *vp)
25562556
{
25572557
JSB_PRECONDITION2(argc==0, cx, false, "Invalid number of arguments");
25582558
JS::CallArgs args = JS::CallArgsFromVp(argc, vp);
2559-
JSObject* jsobj = JS_NewObjectForConstructor(cx, JSB_cpSpace_class, args);
2560-
//JSObject *jsobj = JS_NewObject(cx, JSB_cpSpace_class, JS::RootedObject(cx, JSB_cpSpace_object), JS::NullPtr());
2559+
//JSObject* jsobj = JS_NewObjectForConstructor(cx, JSB_cpSpace_class, args);
2560+
JSObject *jsobj = JS_NewObject(cx, JSB_cpSpace_class, JS::RootedObject(cx, JSB_cpSpace_object), JS::NullPtr());
25612561
void* ret_val = cpSpaceNew( );
25622562

25632563
jsb_set_jsobject_for_proxy(jsobj, ret_val);

frameworks/js-bindings/bindings/manual/chipmunk/js_bindings_chipmunk_manual.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,8 @@ bool JSB_CCPhysicsDebugNode_constructor(JSContext *cx, uint32_t argc, jsval *vp)
272272
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
273273
typeClass = typeMapIter->second;
274274
CCASSERT(typeClass, "The value is null.");
275-
JS::RootedObject obj(cx, JS_NewObjectForConstructor(cx, typeClass->jsclass, args));
275+
//JS::RootedObject obj(cx, JS_NewObjectForConstructor(cx, typeClass->jsclass, args));
276+
JS::RootedObject obj(cx, JS_NewObject(cx, typeClass->jsclass, JS::RootedObject(cx, typeClass->proto), JS::RootedObject(cx, typeClass->parentProto)));
276277
args.rval().set(OBJECT_TO_JSVAL(obj));
277278
// link the native object with the javascript object
278279
js_proxy_t* p = jsb_new_proxy(cobj, obj);
@@ -494,7 +495,8 @@ bool JSPROXY_CCPhysicsSprite_constructor(JSContext *cx, uint32_t argc, jsval *vp
494495
CCASSERT(typeMapIter != _js_global_type_map.end(), "Can't find the class type!");
495496
typeClass = typeMapIter->second;
496497
CCASSERT(typeClass, "The value is null.");
497-
JS::RootedObject obj(cx, JS_NewObjectForConstructor(cx, typeClass->jsclass, args));
498+
//JS::RootedObject obj(cx, JS_NewObjectForConstructor(cx, typeClass->jsclass, args));
499+
JS::RootedObject obj(cx, JS_NewObject(cx, typeClass->jsclass, JS::RootedObject(cx, typeClass->proto), JS::RootedObject(cx, typeClass->parentProto)));
498500
args.rval().set(OBJECT_TO_JSVAL(obj));
499501
// link the native object with the javascript object
500502
js_proxy_t* p = jsb_new_proxy(cobj, obj);

frameworks/js-bindings/bindings/manual/cocos2d_specifics.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5171,8 +5171,11 @@ void register_cocos2dx_js_core(JSContext* cx, JS::HandleObject global)
51715171
//XXX: why named this as extensions?
51725172
void register_cocos2dx_js_extensions(JSContext* cx, JS::HandleObject global)
51735173
{
5174+
JS::RootedObject tmpObj(cx);
5175+
tmpObj = anonEvaluate(cx, global, "(function () { return cc.Label; })()").toObjectOrNull();
5176+
JS_DefineFunction(cx, tmpObj, "createWithTTF", js_cocos2dx_Label_createWithTTF, 4, JSPROP_READONLY | JSPROP_PERMANENT);
5177+
51745178
JS::RootedObject labelProto(cx, jsb_cocos2d_Label_prototype);
5175-
JS_DefineFunction(cx, labelProto, "createWithTTF", js_cocos2dx_Label_createWithTTF, 4, JSPROP_ENUMERATE | JSPROP_PERMANENT);
51765179
JS_DefineFunction(cx, labelProto, "setTTFConfig", js_cocos2dx_Label_setTTFConfig, 1, JSPROP_ENUMERATE | JSPROP_PERMANENT);
51775180

51785181
JS::RootedObject nodeGridProto(cx, jsb_cocos2d_NodeGrid_prototype);
@@ -5259,7 +5262,6 @@ void register_cocos2dx_js_extensions(JSContext* cx, JS::HandleObject global)
52595262
JS_DefineFunction(cx, fileUtilsProto, "createDictionaryWithContentsOfFile", js_cocos2dx_FileUtils_createDictionaryWithContentsOfFile, 1, JSPROP_ENUMERATE | JSPROP_PERMANENT);
52605263
JS_DefineFunction(cx, fileUtilsProto, "getDataFromFile", js_cocos2dx_CCFileUtils_getDataFromFile, 1, JSPROP_ENUMERATE | JSPROP_PERMANENT);
52615264

5262-
JS::RootedObject tmpObj(cx);
52635265
tmpObj = anonEvaluate(cx, global, "(function () { return cc.EventListenerTouchOneByOne; })()").toObjectOrNull();
52645266
JS_DefineFunction(cx, tmpObj, "create", js_EventListenerTouchOneByOne_create, 0, JSPROP_READONLY | JSPROP_PERMANENT);
52655267

frameworks/js-bindings/bindings/manual/js_manual_conversions.cpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,7 @@ JSStringWrapper::JSStringWrapper(jsval val, JSContext* cx/* = NULL*/)
5050

5151
JSStringWrapper::~JSStringWrapper()
5252
{
53-
#if(CC_TARGET_PLATFORM != CC_PLATFORM_WP8)
54-
CC_SAFE_DELETE_ARRAY(_buffer); //XXX: why break on wp8?
55-
#endif
53+
JS_free(ScriptingCore::getInstance()->getGlobalContext(), (void*)_buffer);
5654
}
5755

5856
void JSStringWrapper::set(jsval val, JSContext* cx)
@@ -83,7 +81,11 @@ void JSStringWrapper::set(JSString* str, JSContext* cx)
8381

8482
// _buffer = cc_utf16_to_utf8(pStrUTF16, -1, NULL, NULL);
8583

84+
#if(CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
8685
_buffer = JS_EncodeString(cx, str);
86+
#else
87+
_buffer = JS_EncodeStringToUTF8(cx, JS::RootedString(cx, str));
88+
#endif
8789
}
8890

8991
const char* JSStringWrapper::get()
@@ -1799,7 +1801,8 @@ jsval c_string_to_jsval(JSContext* cx, const char* v, size_t length /* = -1 */)
17991801
jsval ret = JSVAL_NULL;
18001802

18011803
//XXX: JS_NewUCStringCopyN can't be resolved on Win32
1802-
/* int utf16_size = 0;
1804+
#if(CC_TARGET_PLATFORM != CC_PLATFORM_WIN32)
1805+
int utf16_size = 0;
18031806
jschar* strUTF16 = (jschar*)cc_utf8_to_utf16(v, (int)length, &utf16_size);
18041807

18051808
if (strUTF16 && utf16_size > 0) {
@@ -1809,12 +1812,13 @@ jsval c_string_to_jsval(JSContext* cx, const char* v, size_t length /* = -1 */)
18091812
}
18101813
delete[] strUTF16;
18111814
}
1812-
*/
1815+
#else
18131816
JSString* str = JS_NewStringCopyN(cx, v, length);
18141817
if(str)
18151818
{
18161819
ret = STRING_TO_JSVAL(str);
18171820
}
1821+
#endif
18181822
return ret;
18191823
}
18201824

frameworks/js-bindings/bindings/manual/network/jsb_websocket.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -252,8 +252,8 @@ bool js_cocos2dx_extension_WebSocket_constructor(JSContext *cx, uint32_t argc, j
252252
JSB_PRECONDITION2( ok, cx, false, "Error processing arguments");
253253
} while (0);
254254

255-
//JS::RootedObject obj(cx, JS_NewObject(cx, js_cocos2dx_websocket_class, JS::RootedObject(cx, js_cocos2dx_websocket_prototype), JS::NullPtr()));
256-
JS::RootedObject obj(cx, JS_NewObjectForConstructor(cx, js_cocos2dx_websocket_class, args));
255+
JS::RootedObject obj(cx, JS_NewObject(cx, js_cocos2dx_websocket_class, JS::RootedObject(cx, js_cocos2dx_websocket_prototype), JS::NullPtr()));
256+
//JS::RootedObject obj(cx, JS_NewObjectForConstructor(cx, js_cocos2dx_websocket_class, args));
257257

258258
WebSocket* cobj = new WebSocket();
259259
JSB_WebSocketDelegate* delegate = new JSB_WebSocketDelegate();

samples/js-tests/project/proj.wp8-xaml/js-tests/js-tests.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,9 @@
108108
</Compile>
109109
</ItemGroup>
110110
<ItemGroup>
111+
<None Include="Assets\Resources\fonts\arialuni.ttf">
112+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
113+
</None>
111114
<None Include="Properties\AppManifest.xml" />
112115
<None Include="Properties\WMAppManifest.xml">
113116
<SubType>Designer</SubType>

samples/js-tests/src/LabelTest/LabelTest.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1331,13 +1331,13 @@ var LabelTTFChinese = AtlasDemo.extend({
13311331
//----start21----ctor
13321332
this._super();
13331333
var size = director.getWinSize();
1334-
var label = new cc.LabelTTF("中国", "Microsoft Yahei", 30);
1334+
var label = new cc.LabelTTF("中国", (cc.sys.os == cc.sys.OS_WP8) ? "fonts/arialuni.ttf" : "Microsoft Yahei", 30);
13351335
label.x = size.width / 2;
13361336
label.y = size.height / 3 * 2;
13371337
this.addChild(label);
13381338

13391339
// Test UTF8 string from native to jsval.
1340-
var label2 = new cc.LabelTTF("string from native:"+label.getString(), "Microsoft Yahei", 30);
1340+
var label2 = new cc.LabelTTF("string from native:"+label.getString(), (cc.sys.os == cc.sys.OS_WP8) ? "fonts/arialuni.ttf" : "Microsoft Yahei", 30);
13411341
label2.x = size.width / 2;
13421342
label2.y = size.height / 3;
13431343
this.addChild(label2);
@@ -1941,6 +1941,8 @@ var WrapAlgorithmTest = AtlasDemo.extend({
19411941
LabelTTF.boundingWidth = 120;
19421942
LabelTTF.boundingHeight = 0;
19431943
LabelTTF.enableStroke(cc.color(0, 0, 0, 1), 3.0);
1944+
if(cc.sys.os == cc.sys.OS_WP8)
1945+
LabelTTF.setFontName("fonts/arialuni.ttf");
19441946
self.addChild(LabelTTF);
19451947
});
19461948

@@ -1963,6 +1965,8 @@ var WrapAlgorithmTest = AtlasDemo.extend({
19631965
LabelTTF.boundingWidth = 3;
19641966
LabelTTF.boundingHeight = 0;
19651967
LabelTTF.enableStroke(cc.color(0, 0, 0, 1), 3.0);
1968+
if(cc.sys.os == cc.sys.OS_WP8)
1969+
LabelTTF.setFontName("fonts/arialuni.ttf");
19661970
self.addChild(LabelTTF);
19671971
});
19681972

@@ -1981,6 +1985,8 @@ var WrapAlgorithmTest = AtlasDemo.extend({
19811985
LabelTTF.boundingWidth = 90;
19821986
LabelTTF.boundingHeight = 0;
19831987
LabelTTF.enableStroke(cc.color(0, 0, 0, 1), 3.0);
1988+
if(cc.sys.os == cc.sys.OS_WP8)
1989+
LabelTTF.setFontName("fonts/arialuni.ttf");
19841990
self.addChild(LabelTTF);
19851991
});
19861992

templates/js-template-default/frameworks/runtime-src/proj.wp8-xaml/App/HelloJavascript.csproj

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,15 @@
108108
</None>
109109
</ItemGroup>
110110
<ItemGroup>
111+
<Content Include="Assets\AlignmentGrid.png">
112+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
113+
</Content>
114+
<Content Include="Assets\ApplicationIcon.png" />
115+
<Content Include="Assets\Tiles\FlipCycleTileLarge.png" />
116+
<Content Include="Assets\Tiles\FlipCycleTileMedium.png" />
117+
<Content Include="Assets\Tiles\FlipCycleTileSmall.png" />
118+
<Content Include="Assets\Tiles\IconicTileMediumLarge.png" />
119+
<Content Include="Assets\Tiles\IconicTileSmall.png" />
111120
<Content Include="SplashScreenImage.jpg" />
112121
</ItemGroup>
113122
<ItemGroup>

0 commit comments

Comments
 (0)