danoniplus 39.4.0 → 39.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/js/danoni_main.js +37 -30
- package/js/lib/danoni_constants.js +14 -15
- package/package.json +1 -1
package/js/danoni_main.js
CHANGED
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Source by tickle
|
|
6
6
|
* Created : 2018/10/08
|
|
7
|
-
* Revised : 2025/02/
|
|
7
|
+
* Revised : 2025/02/12
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver 39.4.
|
|
12
|
-
const g_revisedDate = `2025/02/
|
|
11
|
+
const g_version = `Ver 39.4.2`;
|
|
12
|
+
const g_revisedDate = `2025/02/12`;
|
|
13
13
|
|
|
14
14
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
15
15
|
let g_localVersion = ``;
|
|
@@ -89,6 +89,7 @@ const C_FLG_ON = `ON`;
|
|
|
89
89
|
const C_FLG_OFF = `OFF`;
|
|
90
90
|
const C_FLG_ALL = `ALL`;
|
|
91
91
|
const C_DIS_NONE = `none`;
|
|
92
|
+
const C_DIS_AUTO = `auto`;
|
|
92
93
|
const C_DIS_INHERIT = `inherit`;
|
|
93
94
|
|
|
94
95
|
// 初期化フラグ(ボタンアニメーション制御)
|
|
@@ -663,7 +664,7 @@ const createScText = (_obj, _settingLabel, { displayName = `option`, dfLabel = `
|
|
|
663
664
|
multiAppend(_obj,
|
|
664
665
|
createDivCss2Label(`sc${_settingLabel}`,
|
|
665
666
|
g_scViewObj.format.split(`{0}`).join(dfLabel || (`${g_kCd[g_kCdN.findIndex(kCd => kCd === scKey[0])] ?? ''}`)), {
|
|
666
|
-
x, y, w, siz, fontWeight: `bold`, opacity: 0.75,
|
|
667
|
+
x, y, w, siz, fontWeight: `bold`, opacity: 0.75,
|
|
667
668
|
})
|
|
668
669
|
);
|
|
669
670
|
}
|
|
@@ -1106,7 +1107,6 @@ const getFontSize = (_str, _maxWidth, _font = getBasicFont(), _maxFontsize = 64,
|
|
|
1106
1107
|
const createDescDiv = (_id, _str, { altId = _id, siz = g_limitObj.mainSiz } = {}) =>
|
|
1107
1108
|
createDivCss2Label(_id, _str, Object.assign(g_lblPosObj[altId], {
|
|
1108
1109
|
siz: getFontSize(_str, g_lblPosObj[altId]?.w || g_sWidth, getBasicFont(), siz),
|
|
1109
|
-
pointerEvents: C_DIS_NONE,
|
|
1110
1110
|
}));
|
|
1111
1111
|
|
|
1112
1112
|
/*-----------------------------------------------------------*/
|
|
@@ -1173,6 +1173,10 @@ const createDivCss2Label = (_id, _text, { x = 0, y = 0, w = g_limitObj.setLblWid
|
|
|
1173
1173
|
style.fontSize = wUnit(siz);
|
|
1174
1174
|
style.fontFamily = getBasicFont();
|
|
1175
1175
|
style.textAlign = `${align}`;
|
|
1176
|
+
style.pointerEvents = C_DIS_NONE;
|
|
1177
|
+
if (rest?.overflow === C_DIS_AUTO) {
|
|
1178
|
+
style.pointerEvents = C_DIS_AUTO;
|
|
1179
|
+
}
|
|
1176
1180
|
div.innerHTML = _text;
|
|
1177
1181
|
Object.keys(rest).forEach(property => style[property] = rest[property]);
|
|
1178
1182
|
|
|
@@ -1212,6 +1216,7 @@ const createColorPicker = (_parentObj, _id, _func, { x = 0, y = 0 } = {}) => {
|
|
|
1212
1216
|
picker.style.left = wUnit(x);
|
|
1213
1217
|
picker.style.top = wUnit(y);
|
|
1214
1218
|
picker.style.position = `absolute`;
|
|
1219
|
+
picker.style.pointerEvents = C_DIS_AUTO;
|
|
1215
1220
|
picker.addEventListener(`change`, _func);
|
|
1216
1221
|
_parentObj.appendChild(picker);
|
|
1217
1222
|
return picker;
|
|
@@ -1252,6 +1257,10 @@ const createColorObject2 = (_id,
|
|
|
1252
1257
|
style.maskSize = `contain`;
|
|
1253
1258
|
style.webkitMaskImage = `url("${g_imgObj[charaStyle]}")`;
|
|
1254
1259
|
style.webkitMaskSize = `contain`;
|
|
1260
|
+
style.pointerEvents = C_DIS_NONE;
|
|
1261
|
+
if (rest?.overflow === C_DIS_AUTO) {
|
|
1262
|
+
style.pointerEvents = C_DIS_AUTO;
|
|
1263
|
+
}
|
|
1255
1264
|
Object.keys(rest).forEach(property => style[property] = rest[property]);
|
|
1256
1265
|
setAttrs(div, { color: rest.background ?? ``, type: charaStyle, cnt: 0, });
|
|
1257
1266
|
|
|
@@ -1281,6 +1290,8 @@ const createEmptySprite = (_parentObj, _newObjId, { x = 0, y = 0, w = g_sWidth,
|
|
|
1281
1290
|
div.title = title;
|
|
1282
1291
|
|
|
1283
1292
|
const style = div.style;
|
|
1293
|
+
style.pointerEvents = (title !== `` || rest?.overflow === C_DIS_AUTO)
|
|
1294
|
+
? C_DIS_AUTO : C_DIS_NONE;
|
|
1284
1295
|
Object.keys(rest).forEach(property => style[property] = rest[property]);
|
|
1285
1296
|
_parentObj.appendChild(div);
|
|
1286
1297
|
|
|
@@ -1297,8 +1308,9 @@ const createEmptySprite = (_parentObj, _newObjId, { x = 0, y = 0, w = g_sWidth,
|
|
|
1297
1308
|
const createMultipleSprite = (_baseName, _num, { x = 0 } = {}) => {
|
|
1298
1309
|
const sprite = createEmptySprite(divRoot, _baseName);
|
|
1299
1310
|
for (let j = 0; j <= _num; j++) {
|
|
1300
|
-
createEmptySprite(sprite, `${_baseName}${j}
|
|
1311
|
+
createEmptySprite(sprite, `${_baseName}${j}`);
|
|
1301
1312
|
}
|
|
1313
|
+
addX(_baseName, `root`, x);
|
|
1302
1314
|
return sprite;
|
|
1303
1315
|
};
|
|
1304
1316
|
|
|
@@ -1403,6 +1415,7 @@ const createCss2Button = (_id, _text, _func = () => true, {
|
|
|
1403
1415
|
style.textAlign = align;
|
|
1404
1416
|
style.fontSize = wUnit(siz);
|
|
1405
1417
|
style.fontFamily = getBasicFont();
|
|
1418
|
+
style.pointerEvents = C_DIS_AUTO;
|
|
1406
1419
|
if (rest.animationName !== undefined) {
|
|
1407
1420
|
style.animationDuration = `1s`;
|
|
1408
1421
|
}
|
|
@@ -1413,7 +1426,7 @@ const createCss2Button = (_id, _text, _func = () => true, {
|
|
|
1413
1426
|
if (g_initialFlg && g_btnWaitFrame[groupName].initial) {
|
|
1414
1427
|
} else {
|
|
1415
1428
|
style.pointerEvents = C_DIS_NONE;
|
|
1416
|
-
setTimeout(() => style.pointerEvents = rest.pointerEvents ??
|
|
1429
|
+
setTimeout(() => style.pointerEvents = rest.pointerEvents ?? C_DIS_AUTO,
|
|
1417
1430
|
g_btnWaitFrame[groupName].b_frame * 1000 / g_fps);
|
|
1418
1431
|
}
|
|
1419
1432
|
}
|
|
@@ -3101,7 +3114,7 @@ const headerConvert = _dosObj => {
|
|
|
3101
3114
|
g_settings.speedNum = roundZero(g_settings.speeds.findIndex(speed => speed === g_stateObj.speed));
|
|
3102
3115
|
|
|
3103
3116
|
// グラデーションのデフォルト中間色を設定
|
|
3104
|
-
divRoot.appendChild(createDivCss2Label(`dummyLabel`,
|
|
3117
|
+
divRoot.appendChild(createDivCss2Label(`dummyLabel`, ``));
|
|
3105
3118
|
obj.baseBrightFlg = setBoolVal(_dosObj.baseBright, checkLightOrDark(colorNameToCode(window.getComputedStyle(dummyLabel, ``).color)));
|
|
3106
3119
|
const intermediateColor = obj.baseBrightFlg ? `#111111` : `#eeeeee`;
|
|
3107
3120
|
|
|
@@ -3469,7 +3482,7 @@ const headerConvert = _dosObj => {
|
|
|
3469
3482
|
obj.commentExternal = setBoolVal(_dosObj.commentExternal);
|
|
3470
3483
|
|
|
3471
3484
|
// Reverse時の歌詞の自動反転制御
|
|
3472
|
-
obj.wordAutoReverse = _dosObj.wordAutoReverse ?? g_presetObj.wordAutoReverse ??
|
|
3485
|
+
obj.wordAutoReverse = _dosObj.wordAutoReverse ?? g_presetObj.wordAutoReverse ?? C_DIS_AUTO;
|
|
3473
3486
|
|
|
3474
3487
|
// プレイ中クレジットを表示しないエリアのサイズ(X方向)
|
|
3475
3488
|
obj.customViewWidth = setVal(_dosObj.customViewWidth ?? _dosObj.customCreditWidth, 0, C_TYP_FLOAT);
|
|
@@ -4567,9 +4580,7 @@ const titleInit = () => {
|
|
|
4567
4580
|
|
|
4568
4581
|
// マスクスプライトを作成
|
|
4569
4582
|
const maskTitleSprite = createMultipleSprite(`maskTitleSprite`, g_headerObj.maskTitleMaxDepth);
|
|
4570
|
-
|
|
4571
|
-
maskTitleSprite.style.pointerEvents = C_DIS_NONE;
|
|
4572
|
-
}
|
|
4583
|
+
maskTitleSprite.style.pointerEvents = g_headerObj.masktitleButton ? C_DIS_AUTO : C_DIS_NONE;
|
|
4573
4584
|
|
|
4574
4585
|
/**
|
|
4575
4586
|
* タイトルのモーション設定
|
|
@@ -4677,10 +4688,10 @@ const setWindowStyle = (_text, _bkColor, _textColor, _align = C_ALIGN_LEFT, { _x
|
|
|
4677
4688
|
const lbl = createDivCss2Label(`lblWarning`, _text, {
|
|
4678
4689
|
x: _x, y: 70 + _y, w: _w, h: warnHeight, siz: g_limitObj.mainSiz, backgroundColor: _bkColor,
|
|
4679
4690
|
opacity: 0.9, lineHeight: wUnit(15), color: _textColor, align: _align, fontFamily: getBasicFont(),
|
|
4680
|
-
whiteSpace: `normal`,
|
|
4691
|
+
whiteSpace: `normal`, pointerEvents: C_DIS_AUTO,
|
|
4681
4692
|
});
|
|
4682
4693
|
if (warnHeight === 150) {
|
|
4683
|
-
lbl.style.overflow =
|
|
4694
|
+
lbl.style.overflow = C_DIS_AUTO;
|
|
4684
4695
|
}
|
|
4685
4696
|
|
|
4686
4697
|
// 一時的な枠を削除
|
|
@@ -5386,7 +5397,7 @@ const makeHighScore = _scoreId => {
|
|
|
5386
5397
|
`${g_localStorage.highscores?.[scoreName]?.fullCombo ?? '' ? '<span class="result_FullCombo">◆</span>' : ''}` +
|
|
5387
5398
|
`${g_localStorage.highscores?.[scoreName]?.perfect ?? '' ? '<span class="result_Perfect">◆</span>' : ''}` +
|
|
5388
5399
|
`${g_localStorage.highscores?.[scoreName]?.allPerfect ?? '' ? '<span class="result_AllPerfect">◆</span>' : ''}`, { xPos: 1, dx: 20, yPos: 12, w: 100, align: C_ALIGN_CENTER }),
|
|
5389
|
-
createScoreLabel(`lblHClearLamps`, `Cleared: ` + (g_localStorage.highscores?.[scoreName]?.clearLamps?.join(', ') ?? `---`), { yPos: 13, overflow:
|
|
5400
|
+
createScoreLabel(`lblHClearLamps`, `Cleared: ` + (g_localStorage.highscores?.[scoreName]?.clearLamps?.join(', ') ?? `---`), { yPos: 13, overflow: C_DIS_AUTO, w: g_sWidth / 2 + 40, h: 37 }),
|
|
5390
5401
|
|
|
5391
5402
|
createScoreLabel(`lblHShuffle`, g_stateObj.shuffle.indexOf(`Mirror`) < 0 ? `` : `Shuffle: <span class="common_iknai">${g_stateObj.shuffle}</span>`, { yPos: 11.5, dx: -130 }),
|
|
5392
5403
|
createScoreLabel(`lblHAssist`, g_autoPlaysBase.includes(g_stateObj.autoPlay) ? `` : `Assist: <span class="common_kita">${g_stateObj.autoPlay}</span>`, { yPos: 12.5, dx: -130 }),
|
|
@@ -6027,7 +6038,7 @@ const createGeneralSetting = (_obj, _settingName, { unitName = ``,
|
|
|
6027
6038
|
*/
|
|
6028
6039
|
const createLblSetting = (_settingName, _adjY = 0, _settingLabel = _settingName) => {
|
|
6029
6040
|
const lbl = createDivCss2Label(`lbl${_settingName}`, g_lblNameObj[_settingLabel], {
|
|
6030
|
-
x: -5, y: _adjY, w: 110,
|
|
6041
|
+
x: -5, y: _adjY, w: 110, pointerEvents: C_DIS_AUTO,
|
|
6031
6042
|
}, `settings_${_settingName}`);
|
|
6032
6043
|
lbl.title = g_msgObj[`${_settingName.charAt(0).toLowerCase()}${_settingName.slice(1)}`];
|
|
6033
6044
|
return lbl;
|
|
@@ -6920,18 +6931,18 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6920
6931
|
// 矢印の塗り部分
|
|
6921
6932
|
createColorObject2(`arrowShadow${j}`, {
|
|
6922
6933
|
x: keyconX, y: keyconY, background: hasVal(g_headerObj[`setShadowColor${g_colorType}`][colorPos]) ? getShadowColor(colorPos, arrowColor) : ``,
|
|
6923
|
-
rotate: g_keyObj[`stepRtn${keyCtrlPtn}_${g_keycons.stepRtnGroupNum}`][j], styleName: `Shadow`,
|
|
6934
|
+
rotate: g_keyObj[`stepRtn${keyCtrlPtn}_${g_keycons.stepRtnGroupNum}`][j], styleName: `Shadow`,
|
|
6924
6935
|
}),
|
|
6925
6936
|
// 矢印本体
|
|
6926
6937
|
createColorObject2(`arrow${j}`, {
|
|
6927
|
-
x: keyconX, y: keyconY, background: arrowColor, rotate: g_keyObj[`stepRtn${keyCtrlPtn}_${g_keycons.stepRtnGroupNum}`][j],
|
|
6938
|
+
x: keyconX, y: keyconY, background: arrowColor, rotate: g_keyObj[`stepRtn${keyCtrlPtn}_${g_keycons.stepRtnGroupNum}`][j],
|
|
6928
6939
|
}),
|
|
6929
6940
|
);
|
|
6930
6941
|
if (g_headerObj.shuffleUse && g_keyObj[`shuffle${keyCtrlPtn}`] !== undefined) {
|
|
6931
6942
|
keyconSprite.appendChild(
|
|
6932
6943
|
createCss2Button(`sArrow${j}`, ``, () => changeTmpShuffleNum(j), {
|
|
6933
6944
|
x: keyconX, y: keyconY - 12, w: C_ARW_WIDTH, h: 15, siz: 12, fontWeight: `bold`,
|
|
6934
|
-
pointerEvents: (g_settings.shuffles.filter(val => val.endsWith(`+`)).length > 0 ?
|
|
6945
|
+
pointerEvents: (g_settings.shuffles.filter(val => val.endsWith(`+`)).length > 0 ? C_DIS_AUTO : C_DIS_NONE),
|
|
6935
6946
|
cxtFunc: () => changeTmpShuffleNum(j, -1),
|
|
6936
6947
|
}, g_cssObj.button_Default_NoColor, g_cssObj.title_base)
|
|
6937
6948
|
);
|
|
@@ -8608,7 +8619,7 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
8608
8619
|
// word_dataのみ指定されている場合、下記ルールに従って設定
|
|
8609
8620
|
if (!wordTarget.includes(`Rev`) && g_stateObj.scroll === `---`) {
|
|
8610
8621
|
// Reverse時の歌詞の自動反転制御設定
|
|
8611
|
-
if (g_headerObj.wordAutoReverse !==
|
|
8622
|
+
if (g_headerObj.wordAutoReverse !== C_DIS_AUTO) {
|
|
8612
8623
|
wordReverseFlg = g_headerObj.wordAutoReverse === C_FLG_ON;
|
|
8613
8624
|
} else if (keyNum === divideCnt + 1) {
|
|
8614
8625
|
wordReverseFlg = true;
|
|
@@ -8632,7 +8643,7 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
8632
8643
|
let wordReverseFlg = _reverseFlg;
|
|
8633
8644
|
const tmpArrayData = splitLF(_data);
|
|
8634
8645
|
|
|
8635
|
-
if (g_headerObj.wordAutoReverse ===
|
|
8646
|
+
if (g_headerObj.wordAutoReverse === C_DIS_AUTO) {
|
|
8636
8647
|
tmpArrayData.filter(data => hasVal(data) && data?.indexOf(`<br>`) !== -1).forEach(() => wordReverseFlg = false);
|
|
8637
8648
|
}
|
|
8638
8649
|
|
|
@@ -9951,8 +9962,7 @@ const mainInit = () => {
|
|
|
9951
9962
|
const mainCommonPos = { w: g_headerObj.playingWidth, h: g_posObj.arrowHeight };
|
|
9952
9963
|
|
|
9953
9964
|
// 背景スプライトを作成
|
|
9954
|
-
createMultipleSprite(`backSprite`, g_scoreObj.backMaxDepth);
|
|
9955
|
-
addX(`backSprite`, `root`, g_workObj.backX);
|
|
9965
|
+
createMultipleSprite(`backSprite`, g_scoreObj.backMaxDepth, { x: g_workObj.backX });
|
|
9956
9966
|
|
|
9957
9967
|
// ステップゾーン、矢印のメインスプライトを作成
|
|
9958
9968
|
const mainSprite = createEmptySprite(divRoot, `mainSprite`, mainCommonPos);
|
|
@@ -9971,8 +9981,7 @@ const mainInit = () => {
|
|
|
9971
9981
|
const [keyCtrlPtn, keyNum] = [tkObj.keyCtrlPtn, tkObj.keyNum];
|
|
9972
9982
|
|
|
9973
9983
|
// マスクスプライトを作成 (最上位)
|
|
9974
|
-
createMultipleSprite(`maskSprite`, g_scoreObj.maskMaxDepth);
|
|
9975
|
-
addX(`maskSprite`, `root`, g_workObj.backX);
|
|
9984
|
+
createMultipleSprite(`maskSprite`, g_scoreObj.maskMaxDepth, { x: g_workObj.backX });
|
|
9976
9985
|
|
|
9977
9986
|
// カラー・モーションを適用するオブジェクトの種類
|
|
9978
9987
|
const objList = (g_stateObj.dummyId === `` ? [``] : [`dummy`, ``]);
|
|
@@ -12488,7 +12497,7 @@ const resultInit = () => {
|
|
|
12488
12497
|
* @param {string} _msg
|
|
12489
12498
|
*/
|
|
12490
12499
|
const copyResultImageData = _msg => {
|
|
12491
|
-
const tmpDiv = createEmptySprite(divRoot, `tmpDiv`, { x: 0, y: 0, w: g_sWidth, h: g_sHeight });
|
|
12500
|
+
const tmpDiv = createEmptySprite(divRoot, `tmpDiv`, { x: 0, y: 0, w: g_sWidth, h: g_sHeight, pointerEvents: C_DIS_AUTO });
|
|
12492
12501
|
tmpDiv.style.background = `#000000cc`;
|
|
12493
12502
|
const canvas = document.createElement(`canvas`);
|
|
12494
12503
|
const artistName = g_headerObj.artistNames[g_headerObj.musicNos[g_stateObj.scoreId]] || g_headerObj.artistName;
|
|
@@ -12663,10 +12672,8 @@ const resultInit = () => {
|
|
|
12663
12672
|
);
|
|
12664
12673
|
|
|
12665
12674
|
// マスクスプライトを作成
|
|
12666
|
-
const
|
|
12667
|
-
|
|
12668
|
-
maskResultSprite.style.pointerEvents = C_DIS_NONE;
|
|
12669
|
-
}
|
|
12675
|
+
const makeResultSprite = createMultipleSprite(`maskResultSprite`, g_headerObj.maskResultMaxDepth);
|
|
12676
|
+
makeResultSprite.style.pointerEvents = g_headerObj.maskresultButton ? C_DIS_AUTO : C_DIS_NONE;
|
|
12670
12677
|
|
|
12671
12678
|
// リザルトモーションの0フレーム対応
|
|
12672
12679
|
g_animationData.filter(sprite => g_scoreObj[`${sprite}ResultFrameNum`] === 0 && g_headerObj[`${sprite}ResultData`][0] !== undefined)
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2019/11/19
|
|
8
|
-
* Revised : 2025/02/
|
|
8
|
+
* Revised : 2025/02/11 (v39.4.1)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -156,14 +156,14 @@ let [g_sWidth, g_sHeight] = [
|
|
|
156
156
|
];
|
|
157
157
|
$id(`canvas-frame`).width = `${Math.max(g_sWidth, 500)}px`;
|
|
158
158
|
$id(`canvas-frame`).height = `${Math.max(g_sHeight, 500)}px`;
|
|
159
|
-
$id(`canvas-frame`).margin =
|
|
159
|
+
$id(`canvas-frame`).margin = C_DIS_AUTO;
|
|
160
160
|
|
|
161
161
|
const g_btnWidth = (_multi = 1) => Math.min(g_sWidth, g_limitObj.btnBaseWidth) * _multi;
|
|
162
162
|
const g_btnX = (_multi = 0) => g_btnWidth(_multi) + Math.max((g_sWidth - g_limitObj.btnBaseWidth) / 2, 0);
|
|
163
163
|
|
|
164
164
|
// 固定ウィンドウサイズ
|
|
165
165
|
const g_windowObj = {
|
|
166
|
-
divRoot: { margin:
|
|
166
|
+
divRoot: { margin: C_DIS_AUTO, letterSpacing: `normal`, pointerEvents: C_DIS_AUTO },
|
|
167
167
|
divBack: { background: `linear-gradient(#000000, #222222)` },
|
|
168
168
|
|
|
169
169
|
colorPickSprite: { x: 0, y: 90, w: 50, h: 280 },
|
|
@@ -191,13 +191,13 @@ const getScMsg = {
|
|
|
191
191
|
const updateWindowSiz = () => {
|
|
192
192
|
Object.assign(g_windowObj, {
|
|
193
193
|
optionSprite: { x: (g_sWidth - 450) / 2, y: 65, w: 450, h: 325 },
|
|
194
|
-
difList: { x: 165, y: 60, w: 280, h: 270 + g_sHeight - 500, overflow:
|
|
195
|
-
difCover: { x: 20, y: 60, w: 145, h: 270 + g_sHeight - 500, opacity: 0.95 },
|
|
196
|
-
difFilter: { x: 0, y: 66, w: 140, h: 204 + g_sHeight - 500, overflow:
|
|
194
|
+
difList: { x: 165, y: 60, w: 280, h: 270 + g_sHeight - 500, overflow: C_DIS_AUTO, pointerEvents: C_DIS_AUTO },
|
|
195
|
+
difCover: { x: 20, y: 60, w: 145, h: 270 + g_sHeight - 500, opacity: 0.95, pointerEvents: C_DIS_AUTO },
|
|
196
|
+
difFilter: { x: 0, y: 66, w: 140, h: 204 + g_sHeight - 500, overflow: C_DIS_AUTO, pointerEvents: C_DIS_AUTO },
|
|
197
197
|
displaySprite: { x: 25, y: 30, w: (g_sWidth - 450) / 2, h: g_limitObj.setLblHeight * 5 },
|
|
198
|
-
scoreDetail: { x: 20, y: 85, w: (g_sWidth - 500) / 2 + 420, h: 245, visibility: `hidden
|
|
198
|
+
scoreDetail: { x: 20, y: 85, w: (g_sWidth - 500) / 2 + 420, h: 245, visibility: `hidden`, pointerEvents: C_DIS_AUTO },
|
|
199
199
|
detailObj: { w: (g_sWidth - 500) / 2 + 420, h: 230, visibility: `hidden` },
|
|
200
|
-
keyconSprite: { y: 105, h: g_sHeight - 105, overflow:
|
|
200
|
+
keyconSprite: { y: 105, h: g_sHeight - 105, overflow: C_DIS_AUTO },
|
|
201
201
|
loader: { y: g_sHeight - 10, h: 10, backgroundColor: `#333333` },
|
|
202
202
|
playDataWindow: { x: g_sWidth / 2 - 225, y: 70, w: 450, h: 110 },
|
|
203
203
|
resultWindow: { x: g_sWidth / 2 - 200, y: 185, w: 400, h: 210 },
|
|
@@ -232,7 +232,7 @@ const updateWindowSiz = () => {
|
|
|
232
232
|
},
|
|
233
233
|
lblComment: {
|
|
234
234
|
x: g_btnX(), y: 70, w: g_btnWidth(), h: g_sHeight - 180, siz: g_limitObj.difSelectorSiz, align: C_ALIGN_LEFT,
|
|
235
|
-
overflow:
|
|
235
|
+
overflow: C_DIS_AUTO, background: `#222222`, color: `#cccccc`, display: C_DIS_NONE,
|
|
236
236
|
whiteSpace: `normal`,
|
|
237
237
|
},
|
|
238
238
|
btnComment: {
|
|
@@ -304,7 +304,7 @@ const updateWindowSiz = () => {
|
|
|
304
304
|
x: 130, y: 70, w: 200, h: 90,
|
|
305
305
|
},
|
|
306
306
|
dataArrowInfo2: {
|
|
307
|
-
x: 140, y: 70, w: (g_sWidth - 500) / 2 + 275, h: 150, overflow:
|
|
307
|
+
x: 140, y: 70, w: (g_sWidth - 500) / 2 + 275, h: 150, overflow: C_DIS_AUTO,
|
|
308
308
|
},
|
|
309
309
|
lnkDifInfo: {
|
|
310
310
|
w: g_limitObj.difCoverWidth, h: 20, borderStyle: `solid`,
|
|
@@ -340,7 +340,6 @@ const updateWindowSiz = () => {
|
|
|
340
340
|
},
|
|
341
341
|
kcMsg: {
|
|
342
342
|
x: g_btnX(), y: g_sHeight - 33, w: g_btnWidth(), h: 20, siz: g_limitObj.mainSiz,
|
|
343
|
-
pointerEvents: `none`,
|
|
344
343
|
},
|
|
345
344
|
kcDesc: {
|
|
346
345
|
x: g_btnX() + 50, y: 68, w: g_btnWidth() - 100, h: 20,
|
|
@@ -434,7 +433,7 @@ const updateWindowSiz = () => {
|
|
|
434
433
|
},
|
|
435
434
|
lblWord: {
|
|
436
435
|
x: 100, w: g_headerObj.playingWidth - 200, h: 50,
|
|
437
|
-
siz: g_limitObj.mainSiz, align: C_ALIGN_LEFT, display: `block`, margin:
|
|
436
|
+
siz: g_limitObj.mainSiz, align: C_ALIGN_LEFT, display: `block`, margin: C_DIS_AUTO,
|
|
438
437
|
},
|
|
439
438
|
finishView: {
|
|
440
439
|
x: g_headerObj.playingWidth / 2 - 150, y: g_headerObj.playingHeight / 2 - 50, w: 300, h: 20, siz: 50,
|
|
@@ -492,13 +491,13 @@ const updateWindowSiz = () => {
|
|
|
492
491
|
const g_windowAlign = {
|
|
493
492
|
left: () => {
|
|
494
493
|
$id(`canvas-frame`).marginLeft = `0px`;
|
|
495
|
-
$id(`canvas-frame`).marginRight =
|
|
494
|
+
$id(`canvas-frame`).marginRight = C_DIS_AUTO;
|
|
496
495
|
},
|
|
497
496
|
center: () => {
|
|
498
|
-
$id(`canvas-frame`).margin =
|
|
497
|
+
$id(`canvas-frame`).margin = C_DIS_AUTO;
|
|
499
498
|
},
|
|
500
499
|
right: () => {
|
|
501
|
-
$id(`canvas-frame`).marginLeft =
|
|
500
|
+
$id(`canvas-frame`).marginLeft = C_DIS_AUTO;
|
|
502
501
|
$id(`canvas-frame`).marginRight = `0px`;
|
|
503
502
|
},
|
|
504
503
|
};
|