liushengqiang 1 ano atrás
pai
commit
6d3e032285

+ 1 - 1
src/pc/create/component/the-create/index.module.less

@@ -5,7 +5,7 @@
 }
 .setbox {
     position: relative;
-    top: -10vh;
+    top: 0;
     display: flex;
     flex-direction: column;
     border-radius: 6px;

+ 7 - 7
src/pc/create/index.tsx

@@ -52,11 +52,12 @@ export default defineComponent({
 				autoFocus: false,
 				class: "deleteDialog",
 				title: "删除曲谱",
-				content: () => (
-					<div onClick={() => checked.value = !checked.value}>
-						<NRadio checked={checked.value}>同步删除我的资源中的该曲目</NRadio>
-					</div>
-				),
+				// content: () => (
+				// 	<div onClick={() => checked.value = !checked.value}>
+				// 		<NRadio checked={checked.value}>同步删除我的资源中的该曲目</NRadio>
+				// 	</div>
+				// ),
+				content: () => <div style={{paddingRight: 'calc(var(--n-close-size) + 6px)'}}>确认删除当前曲谱?</div>,
 				positiveText: "取消",
 				positiveButtonProps: {
 					type: "default",
@@ -113,8 +114,7 @@ export default defineComponent({
 						<div class={styles.item} onClick={() => handleOpenNotaion(item)}>
 							<div class={styles.imgBox} id={"item_" + index}>
 								<img
-									style={{ display: "none" }}
-									src={getImage("icon_29.png")}
+									src={getImage("icon_staff.png")}
 									onLoad={() => {
 										productSvg(item.creationConfig, "item_" + index);
 									}}

BIN
src/pc/home/images/icon_staff.png


+ 26 - 16
src/pc/home/index.tsx

@@ -138,7 +138,7 @@ export const initMusic = (total: number): IMeasure[] => {
 					tCode: "",
 					dot: "",
 					slus: "",
-					tieline: ""
+					tieline: "",
 				},
 			],
 		};
@@ -371,6 +371,7 @@ export default defineComponent({
 			},
 			onFinished: function () {
 				console.log("finished");
+				data.playState = false;
 				var els = document.querySelectorAll("svg .highlight");
 				for (var i = 0; i < els.length; i++) {
 					els[i].classList.remove("highlight");
@@ -588,7 +589,7 @@ export default defineComponent({
 					});
 					return;
 				}
-				activeNote.accidental = activeNote.accidental == value ? '' : value;
+				activeNote.accidental = activeNote.accidental == value ? "" : value;
 				await handleResetRender();
 				rangeHighlight(data.active.startChar);
 			}
@@ -687,7 +688,7 @@ export default defineComponent({
 				rangeHighlight(data.active.startChar);
 			}
 
-			// 连线
+			// 延音
 			if (type === "tie") {
 				if (Array.isArray(value)) {
 					// 渐强渐弱
@@ -710,7 +711,12 @@ export default defineComponent({
 				const activeNote =
 					abcData.abc.measures[data.active.measureIndex]?.notes[data.active.noteIndex] || null;
 				if (!activeNote) return;
-				activeNote.tieline = activeNote.tieline == value ? '' : value;
+				const abcElem: any = abcData.visualObj.getElementFromChar(data.active.endChar);
+				if (data.active.averagepitch != abcElem.averagepitch) {
+					message.warning('必须同音高才能添加延音线');
+					return
+				}
+				activeNote.tieline = activeNote.tieline == value ? "" : value;
 				await handleResetRender();
 				rangeHighlight(data.active.startChar);
 			}
@@ -799,9 +805,9 @@ export default defineComponent({
 		const handleDeleteNote = () => {
 			if (!data.active) return;
 			if (data.active.startChar === 0) return;
-			abcData.abc.measures[data.active.measureIndex].notes.splice(data.active.noteIndex, 1)
+			abcData.abc.measures[data.active.measureIndex].notes.splice(data.active.noteIndex, 1);
 			if (abcData.abc.measures[data.active.measureIndex].notes.length === 0) {
-				abcData.abc.measures.splice(data.active.measureIndex, 1)
+				abcData.abc.measures.splice(data.active.measureIndex, 1);
 			}
 			handleResetRender();
 			data.active = null as unknown as INoteActive;
@@ -923,21 +929,21 @@ export default defineComponent({
 					console.log(error);
 				}
 				if (abc) {
-					console.log("🚀 ~ abc:", abc)
-					if (abc.celf){
+					console.log("🚀 ~ abc:", abc);
+					if (abc.celf) {
 						abcData.abc.celf = abc.celf;
 					}
-					if (abc.key?.value){
+					if (abc.key?.value) {
 						abcData.abc.key = abc.key.value;
 					}
-					if (abc.meter?.value){
+					if (abc.meter?.value) {
 						abcData.abc.meter = abc.meter.value;
 					}
-					if (abc.speed){
+					if (abc.speed) {
 						abcData.abc.speed = abc.speed;
 					}
 					abcData.abc.measures = abc.measures || initMusic(30);
-					console.log("🚀 ~ abcData.abc:", abcData.abc)
+					console.log("🚀 ~ abcData.abc:", abcData.abc);
 				}
 			}
 		};
@@ -950,7 +956,7 @@ export default defineComponent({
 				subjectId: 3,
 			});
 			message.success("保存成功");
-			data.isSave = true
+			data.isSave = true;
 		};
 		onMounted(async () => {
 			await getDetailData();
@@ -959,9 +965,9 @@ export default defineComponent({
 			console.log(ABCJS.extractMeasures(data.music));
 			document.addEventListener("keyup", handleKeyUp);
 			window.onbeforeunload = (e) => {
-				if (!data.isSave){
+				if (!data.isSave) {
 					e.preventDefault();
-					e.returnValue = '还有没保存的'
+					e.returnValue = "还有没保存的";
 				}
 			};
 		});
@@ -1555,7 +1561,11 @@ export default defineComponent({
 											</NSpace>
 
 											<NSpace style={{ marginTop: "20px" }} align="center" wrap={false} wrapItem={false}>
-												<NButton style={{ width: "48%" }} round onClick={() => (popup.mearseDeleteShow = false)}>
+												<NButton
+													style={{ width: "48%" }}
+													round
+													onClick={() => (popup.mearseDeleteShow = false)}
+												>
 													取消
 												</NButton>
 												<NButton

+ 1 - 0
src/pc/types.ts

@@ -69,4 +69,5 @@ export interface INoteActive extends AbcElem {
 	noteIndex: number;
 	/** 是否第一次选中小节 */
 	isFirstChecked: boolean;
+	averagepitch?: number;
 }