Dhilan007
9351172baf
add test case for new API of Label.
2014-06-18 18:01:55 +08:00
Dhilan007
3511d1e87e
1.Support setting up the line height and additional kerning of label.
...
2.Add more annotation
2014-06-12 12:01:15 +08:00
Ricardo Quesada
1b8d0d88df
Adds setNormalizedPosition()
...
Changes in `visit()` were done in order to do it
in a robust and fast way.
2014-05-30 16:42:05 -07:00
Ricardo Quesada
dc711643cd
Squashed commit of the following:
...
commit a9572b8913f3a38b59adbd7b4017ab9848a6b2b5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed May 14 10:03:44 2014 -0700
math renames
`Vector2` -> `Vec2`
`Vector3` -> `Vec3`
`Vector4` -> `Vec4`
`Matrix` -> `Mat4`
commit 4e107f4bd854c26bfceb52b063d6bd9cea02d6a3
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 09:24:28 2014 -0700
raw version of rename Vector3
commit 1d115573ebe96a5fc815fa44fbe6417ea7dba841
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 09:07:14 2014 -0700
rename Vector2 after merge
commit ab2ed58c129dbc30a4c0970ed94568c5d271657b
Merge: 1978d2d 86fb75a
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 09:05:30 2014 -0700
Merge branch 'v3' into v3_renameMathClassName
Conflicts:
tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UIButtonTest/UIButtonTest_Editor.cpp
tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.cpp
tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISliderTest/UISliderTest_Editor.cpp
tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.cpp
tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest_Editor.cpp
commit 1978d2d174877172ccddc083020a1bbf43ad3b39
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 08:51:45 2014 -0700
rename vector2 in tests/cpp-empty-test folder
commit d4e0ff13dcce62724d2fece656543f26aa28e467
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:58:23 2014 -0700
rename vector2 in tests/cpp-tests cpp files
commit be50ca2ec75e0fd32a6fcdaa15fe1ebb4cafe79f
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:52:57 2014 -0700
rename vector2 in tests/cpp-tests head files
commit 6daef564400d4e28c4ce20859a68e0f583fed125
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:49:48 2014 -0700
rename vector2 in extension folder
commit 8f3f0f65ceea92c9e7a0d87ab54e62220c5572e2
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:47:22 2014 -0700
rename vector2 in cocos/2d cpp files
commit e1f3105aae06d595661a3030f519f7cc13aefbed
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:44:39 2014 -0700
rename vector2 in cocos/2d head files
commit 6708d890bfe486109120c3cd4b9fe5c078b7108f
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:40:59 2014 -0700
rename vector2 in cocos/base folder
commit d3978fa5447c31ea2f3ece5469b7e746dfba4248
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:40:43 2014 -0700
rename vector2 in cocos/deprecated folder
commit 4bff45139363d6b9706edbbcf9f322d48b4fd019
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:40:26 2014 -0700
rename vector2 in cocos/editor-support folder
commit 353d244c995f8b5d14f635c52aed8bc5e5fc1a6f
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:36:48 2014 -0700
rename vector2 in cocos/ui folder
commit 758b8f4d513084b9922d7242e9b8f2c7f316de6c
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:32:39 2014 -0700
rename vector2 in cocos/renderer folder
commit 0bd2710dd8714cecb993880bc37affd9ecb05c27
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:32:15 2014 -0700
rename vector2 in cocos/physics folder
commit b7f0581c4587348bdbc1478d5374c2325735f21d
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:25:01 2014 -0700
rename vector2 in cocos/math folder
commit a8631a8e1a4e2740807ccd9be9d70de6ecaad7dd
Author: Huabing.Xu <dabingnn@gmail.com>
Date: Wed May 14 00:16:55 2014 -0700
rename Vector2 to Vec2
deprecate typedef Vector2
2014-05-14 10:07:09 -07:00
Dhilan007
fc72dc040d
Label:fixed wrong logic of alignment.
2014-05-12 14:34:25 +08:00
Dhilan007
4692c67b78
issue #4660:remove unnecessary API.
2014-05-10 19:33:05 +08:00
James Chen
5fda13639d
issue #4660 : Uses new utf api for Label.
2014-05-10 19:24:03 +08:00
Ricardo Quesada
40fe815ab9
Squashed commit of the following:
...
commit c16dcfaaea0922039aad05bce1f4efed18e04871
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 19:05:18 2014 -0700
more linux fixes
commit 1553795976c9090a1b46deb53d12910fe0676008
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 19:04:04 2014 -0700
more linux fixes
commit 1e43a8cabff33cbf25aa5eb5412f53a878222d83
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 19:02:07 2014 -0700
fixes linux isuses
commit 723a445dd6411f91846da2b801248ad8298174f1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:58:50 2014 -0700
more linux fixes
commit 533c8025e794fc76cef02f396b3a93b3d7f4cfc8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:57:33 2014 -0700
more linux fixes
commit 4ba1e84959670bcbf044f18d1c0d4b3cb3be4090
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:53:43 2014 -0700
more linux fixes
commit 1f8e011f306a47ed4134224e5e349929201f0539
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:49:28 2014 -0700
more linux fixes
commit 3e2033100822ff6d532a1b4f012337491dc11920
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:47:43 2014 -0700
more linux fixes
commit 2e708863c75fd032f1b2396dfdf1d31f7a62b713
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:46:00 2014 -0700
more linux fixes
commit 861b5b92a6efd4de7b926c20d636ce9d749b293f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:43:15 2014 -0700
more linux fixes
commit 2a43365a0c1755e9b9cada53301be1a20adb31cf
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:36:06 2014 -0700
more fixes for linux
commit 7d332bf911892f87c7824d2a5da7bf73ce7ec411
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:35:29 2014 -0700
more fixes for linux
commit f1becc17d3316dfe3678c23c9dcedb7a447d9235
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:34:44 2014 -0700
more fixes for linux
commit d2e5959bb0dde921dd5e73be1d8acc3b3f50e51d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:33:45 2014 -0700
fixes for linux
commit ad9b633c352107cf0e8b060a0e23d6e6a3f5e80f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:16:48 2014 -0700
compiles on Windows
commit 4425ee8e5de8f42a2d6050e4470109600dce8b5d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Wed Apr 30 18:07:20 2014 -0700
fix builder
2014-04-30 19:09:13 -07:00
Ricardo Quesada
8bb8416c26
Improved directory structure
2014-04-29 17:37:36 -07:00
Ricardo Quesada
9b118e5e96
Squashed commit of the following:
...
commit 519fcd7f68e3586c376fd5e8d4a0ee220a48d225
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 10:10:06 2014 -0700
Updates templates files
commit 2b07843ebe592f56b2abc544ccf66d441bb19fc5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 10:08:19 2014 -0700
compiles on Windows
commit b175522ef7205eaab3bd3f26c27c5d6514cbe2a4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 09:55:30 2014 -0700
adds cocos2d.h
commit 4c3d14f929bac017b93ca843b4f149d352264a30
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 09:54:24 2014 -0700
re-adds missing files
commit f729181728959260d14c4152555534f5beec8e05
Merge: 148da79 2adac67
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 09:51:12 2014 -0700
Merge branch 'includes_fixes' of github.com:ricardoquesada/cocos2d-x into includes_fixes
commit 148da79010c5dffeab885933624cffaf3d588852
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 09:49:12 2014 -0700
Adds SimpleAudioEngine
commit 2adac67019180ec82b7bd03f0b67c12f62e29e77
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 09:47:45 2014 -0700
Compiles for Android
commit 4a300d1b9225fa5708f25a69a50bb531f0ac1a32
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date: Sat Apr 26 09:13:35 2014 -0700
Fixes the includes
2014-04-26 10:11:22 -07:00
Ricardo Quesada
c7a606fc78
Adds auto-culling for labels!
...
yeah!
2014-04-25 19:00:22 -07:00
Huabing.Xu
95cb7721f6
Merge branch 'develop' into develop_migrate_math_lib_merge
...
Conflicts:
cocos/2d/CCSprite.cpp
tests/cpp-tests/Classes/NewRendererTest/NewRendererTest.cpp
2014-04-15 22:21:04 +08:00
Huabing.Xu
e2a24dec84
replace Point with Vector2
2014-04-15 18:08:29 +08:00
Dhilan007
aef2767d23
change variable name.
2014-04-14 13:42:37 +08:00
Dhilan007
6fe64b83f8
LabelTTF:fixed display incorrect if create by FontDefinition.
2014-04-14 11:33:46 +08:00
Huabing.Xu
1670e07300
Merge branch 'develop' into develop_migrate_math_lib_merge
...
Conflicts:
build/cocos2d_libs.xcodeproj/project.pbxproj
build/cocos2d_tests.xcodeproj/project.pbxproj
2014-04-11 11:18:13 +08:00
Dhilan007
8ab372fdd9
Label:Add compatible API of the create functions.
2014-04-10 10:58:49 +08:00
Dhilan007
390685ae93
Label:Change setter of system font name.
2014-04-10 10:23:00 +08:00
Dhilan007
05b8123803
Label:Makes the create functions of Label just do one thing.
2014-04-09 23:31:05 +08:00
Dhilan007
67652357e1
1.Makes the create functions of Label clear.
2014-04-09 21:35:08 +08:00
Huabing.Xu
be4901d078
remove kmMat4 interface in class Label
2014-04-09 10:06:30 +08:00
Huabing.Xu
3837c23ebe
draw() using Matrix instead of kmMat4
2014-04-08 22:07:35 +08:00
Huabing.Xu
b9af100493
visit() using Matrix instead of kmMat4
2014-04-08 21:45:54 +08:00
Dhilan007
5aafec462f
Label:Fine tune the declaration order of API.
2014-04-02 14:57:00 +08:00
Dhilan007
eadbca8ee7
1.fixed logical error in Label::enableShadow.
...
2.Add test case for shadow and outline take effect at the same time.
2014-04-01 14:15:35 +08:00
James Chen
d7ca1999ab
Merge pull request #5998 from bmanGH/feature/fix_STRING_TEXTURE_label_sortAllChildren_crash
...
closed #4626 : Crash if label's type is STRING_TEXTURE and label->sortAllChildren is called.
2014-04-01 10:02:35 +08:00
Dhilan007
f485d3b6d5
Label:fixed possible blink if label contains shadow.
2014-03-31 18:16:08 +08:00
Dhilan007
89eba4424f
fixed logical error.
2014-03-31 15:45:06 +08:00
Dhilan007
cffdb129c9
change type of Label::_shadowNode
2014-03-31 11:47:28 +08:00
Dhilan007
08beaa3532
TextFieldTTF:fixed display incorrect color.
2014-03-31 11:16:12 +08:00
bmanGH
503fed5313
fix crash when sort children while label type is STRING_TEXTURE. since the only one child sprite is not add with batch mode
2014-03-30 21:08:43 +08:00
Dhilan007
8ab057550f
fixed got wrong Rect by LabelTTF::getBoundingBox / LabelBMFont::getBoundingBox.
2014-03-28 15:58:28 +08:00
Dhilan007
3da695b184
fixed got wrong Rect by Label::getBoundingBox.
2014-03-28 11:03:39 +08:00
Dhilan007
408107ff24
closed #4494::Easy to sets texture parameters of label's cache textures.
2014-03-27 15:35:51 +08:00
Dhilan007
1247760d95
Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into develop_label_fixs
...
Conflicts:
cocos/2d/CCLabel.cpp
2014-03-26 11:15:48 +08:00
Dhilan007
41ffa372e8
label: Refactor implementation of shadow.
2014-03-26 11:09:16 +08:00
LinWenhai
4b454fe7bb
Update getter of ClipMarginEnabled.
2014-03-25 16:37:34 +08:00
LinWenhai
19341ceaf4
add getter of ClipMarginEnabled.
2014-03-25 14:54:42 +08:00
Dhilan007
538c01e76e
label:support clip blank of upper and lower margin.
2014-03-24 14:16:27 +08:00
Dhilan007
9dfa099bef
Label:Refactoring related functions of color.
2014-03-20 20:56:10 +08:00
andyque
8c1bf48357
fixed label font size: from int to float
2014-03-20 15:03:48 +08:00
Dhilan007
bb17da8f88
add override for Label::updateDisplayedColor
2014-03-19 10:36:44 +08:00
Dhilan007
f76460aee8
closed issue#4434:fixed display incorrect color of label if create by font name.
2014-03-19 10:10:47 +08:00
Dhilan007
cc671835f8
closed issue#4428:fixed label display incorrect if invoking getLetter and it's multi-line.
2014-03-17 18:33:15 +08:00
Dhilan007
971b1dd557
Label:fixed text display incorrect when come to foreground on android.
2014-03-14 14:59:26 +08:00
Dhilan007
fe6f485a6b
label:rename some API for clearly.
2014-03-13 21:00:36 +08:00
Dhilan007
62d0fa8564
label:rename some API for clearly.
2014-03-13 20:52:33 +08:00
Dhilan007
bc68c6b629
Refactor setter of label's font name and font size.
2014-03-13 18:46:35 +08:00
Dhilan007
3acaf3ece5
1.Label:Fixes the font rendering on Windows.
...
2.fixed Label::setColor crash when create the label by font name.
2014-03-12 20:39:13 +08:00
Dhilan007
c11ef679da
fixed incorrect initial value of label's TextVAlignment.
2014-03-12 16:11:12 +08:00
Dhilan007
233b04269b
label:
...
1.fixed crash if create label by font name and text is empty.
2.fixed getter of font name and font size is incorrect.
2014-03-12 14:49:19 +08:00
Dhilan007
c2ef7b8796
fix incorrect implementation of Label::getContentSize
2014-03-11 15:03:16 +08:00
Dhilan007
792e182e12
typo fix and coding style improvements.
2014-03-11 14:32:07 +08:00
Dhilan007
11d3acd478
fixed inappropriate usage of inline.
2014-03-10 20:35:36 +08:00
Dhilan007
8bac35ae2a
closed #4337:label support create by font name,compatible with old labelTTF.
2014-03-10 19:42:43 +08:00
Dhilan007
ac944cd42b
fixed incorrect display when the size of label not enough to support display all text.
2014-03-07 15:58:49 +08:00
Dhilan007
c233b636cd
closed #4301:Label support vertical alignment and assign dimensions.
2014-03-07 14:58:44 +08:00
Ricardo Quesada
a0ab8fcdf3
onDraw() updated
...
`onDraw()` receives `const kmMat4 &transform` and `bool
transformUpdated`.
`CC_NODE_DRAW_SETUP()` is no longer used in our code.
`_modelViewTransform` is only used as a cache.
2014-03-05 15:49:08 -08:00
Ricardo Quesada
0cb759cab8
Better names for tests
2014-03-05 11:50:12 -08:00
Dhilan007
23501b40aa
issue #3629:new label support customize the effects such as Shadow[blur is unsupported], Outline
2014-03-05 15:54:40 +08:00
Ricardo Quesada
d78304599d
Cache working OK.
...
Performance increased in 20% for static objects.
2014-02-28 16:10:48 -08:00
Ricardo Quesada
eb66ddd931
visit and draw improved.
...
`visit()` and `draw()` are improved.
they both receive:
- `Renderer`
- `kmMat4` for transformation
- `bool` whether or not the transform changed from the previous frame
Although `draw` and `visit` are not using the 3 new parameters,
they will start using it in the coming days (or weeks, or months).
Those parameters are needed for:
- `Renderer` shouldn't be a singleton. There should be one renderer per Director. There could be more than one renderer
- we should get rid of `kmGLXXX` functions since nodoby knows what is happening. the `kmMat4` is for that.
- whenever possible, we should try to optimize the multiplications. the `dirty` flag is for that.
We need those changes, so, it is better to change the API now, and not right after v3.0-final is released.
2014-02-27 21:43:54 -08:00
Dhilan007
54f48b23e6
LabelBMFont re-implemented as a wrapper of Label.
2014-02-20 22:33:52 +08:00
Dhilan007
ddd02b463c
optimize label:
...
1.remove unnecessary API
2.reduces object-creation and function calls.
2014-02-19 20:26:14 +08:00
Dhilan007
2ad81b0edb
closed #4060:fixed Label wasn't implemented correctly when Label::_fontAtlas contains multiple texture.
2014-02-18 14:30:51 +08:00
Dhilan007
e12c1f57ac
Label::reduce unnecessary calculation amount.
2014-02-10 11:21:54 +08:00
Dhilan007
bd97394ccc
1.Label:Change the default parameters
...
2.Label:let setString method do a single function
2014-01-23 13:42:27 +08:00
Dhilan007
df21bbf7df
1.remove unused code
...
2.reduce calculation amount.
3.reduces expenses of function calls
2014-01-22 14:57:11 +08:00
Dhilan007
697b0289c7
close #3805:fix wrap error and alignment error.
2014-01-21 17:55:49 +08:00
Ricardo Quesada
a74a524eaa
Merge branch 'develop' of git://github.com/cocos2d/cocos2d-x into header_dependency_fixes
2014-01-16 21:36:22 -08:00
Ricardo Quesada
d0dbf34319
removes "include "cocos2d.h" from cocos2d files
2014-01-16 21:35:58 -08:00
Dhilan007
a765e5e7e1
closed #3628:Integrate LabelAtlas with new Label
2014-01-16 16:37:29 +08:00
Dhilan007
629f111f7d
Relieve inherit from LabelProtocol
2014-01-15 17:21:08 +08:00
Dhilan007
fd481d64a0
1.update lua binding configuration for label.
...
2.recover old method[createWithTTF]
2014-01-13 16:32:35 +08:00
Dhilan007
69c004108b
issue#3630:Adjust some method for more easily create and change type.
2014-01-11 22:33:07 +08:00
walzer
64af0de648
update copyrights for 2014, in cocos/2d/ folder
2014-01-07 11:25:07 +08:00
Dhilan007
b14999a7a7
fix label not appear on the screen
2014-01-04 10:56:14 +08:00
boyu0
ef54ed3c15
Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into HEAD
...
Conflicts:
cocos/2d/CCLabel.cpp
cocos/2d/CCLabel.h
cocos/2d/CCLabelBMFont.cpp
cocos/2d/CCLabelBMFont.h
cocos/2d/CCLayer.cpp
cocos/2d/CCLayer.h
cocos/2d/CCNode.cpp
extensions/GUI/CCControlExtension/CCControl.cpp
extensions/GUI/CCControlExtension/CCControlButton.cpp
extensions/GUI/CCControlExtension/CCScale9Sprite.cpp
tools/tojs/cocos2dx.ini
2013-12-19 17:05:59 +08:00
Dhilan007
39280d55f3
new label:add support for distanceField
...
PerformanceTest:add performance test for label.
2013-12-13 12:42:15 +08:00
boyu0
d4c8fb0be6
Merge branch 'develop' of git://github.com/cocos2d/cocos2d-x into bug3162_opacity_incorrect
2013-12-13 10:47:52 +08:00
Ricardo Quesada
a8c317bd83
getDescription() works as expected
...
renames `description` to `getDescription`. Adds `virtual` to it.
Adds `getDescription` to missing nodes.
2013-12-12 14:30:22 -08:00
boyu0
00b115843c
issue #3162 : add updateColor function to Label and delete duplicate functions.
2013-12-11 16:38:47 +08:00
boyu0
af5f496861
issue #3162 : Merge Node and NodeRGBA, fix bug: Child's opacity will not be changed when its parent's setCascadeOpacityEnabled was set to true and opacity was changed.
2013-12-06 18:07:16 +08:00
Ricardo Quesada
ffd4342548
Adds more strings
...
and more `override`
and fixes some indetentation issues
2013-11-07 12:42:16 -08:00
Ricardo Quesada
555f3609c8
Uses `const std::string&`
...
... instead of const char*
* Because it is more robust
* and it is faster... yes faster.
It is faster because internally some of our classes use std::string
(like FileUtils and Dictionary) so converting back-and-forth from const
char * to std::string is very expensive.
It is faster to have everthing in std::string as soon as possible to
prevent further conversions.
There are still some parts of the code that require conversion, but
most of the code was converted.
2013-11-05 19:02:03 -08:00
Dhilan007
150f1aeaab
issue #2893:improve new label
2013-10-31 20:17:30 +08:00
Dhilan007
b8faaeba59
issus #2893:improve new label
2013-10-31 17:52:22 +08:00
Dhilan007
12db6a32ab
issues #2893 :
...
1.Texture atlas are create on demand, based on the characters used in the label.
2.Create Quads (and not sprites) for each letter.
2013-10-31 10:49:37 +08:00
minggo
95acb1b9e3
issue #2905 : helloworld build ok on android
2013-10-14 14:01:00 +08:00
minggo
49d7bbd600
issue #2905 : remove sub folders except platform
2013-10-12 15:41:45 +08:00