|
@@ -0,0 +1,78 @@
|
|
|
+<template>
|
|
|
+ <qm-dialog
|
|
|
+ v-if="store.setting.uiSetting['specialTag.modal']"
|
|
|
+ ref="dialog"
|
|
|
+ top="10%"
|
|
|
+ width="300px"
|
|
|
+ height="180px"
|
|
|
+ title="特殊标记"
|
|
|
+ @close="close"
|
|
|
+ >
|
|
|
+ <div
|
|
|
+ class="special-tag-container tw-flex tw-place-content-between tw-m-4 tw-text-xl tw-cursor-pointer"
|
|
|
+ >
|
|
|
+ <div>√</div>
|
|
|
+ <div>X</div>
|
|
|
+ <div>乄</div>
|
|
|
+ <div><u>下划线</u></div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="tw-flex tw-place-content-between tw-mt-8">
|
|
|
+ <qm-button
|
|
|
+ type="primary"
|
|
|
+ shape="round"
|
|
|
+ size="large"
|
|
|
+ :clickTimeout="300"
|
|
|
+ @click="clearLatestTagOfCurrentTask"
|
|
|
+ >
|
|
|
+ 回退
|
|
|
+ </qm-button>
|
|
|
+
|
|
|
+ <qm-button
|
|
|
+ type="primary"
|
|
|
+ shape="round"
|
|
|
+ size="large"
|
|
|
+ :clickTimeout="300"
|
|
|
+ @click="clearAllTagsOfCurrentTask"
|
|
|
+ >
|
|
|
+ 清除本题
|
|
|
+ </qm-button>
|
|
|
+ </div>
|
|
|
+ </qm-dialog>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script lang="ts">
|
|
|
+import { defineComponent } from "vue";
|
|
|
+import { store } from "./store";
|
|
|
+
|
|
|
+export default defineComponent({
|
|
|
+ name: "SpecialTagModal",
|
|
|
+ setup() {
|
|
|
+ function clearLatestTagOfCurrentTask() {
|
|
|
+ if (!store.currentMarkResult) return;
|
|
|
+ store.currentMarkResult.specialTagList.splice(-1);
|
|
|
+ }
|
|
|
+
|
|
|
+ function clearAllTagsOfCurrentTask() {
|
|
|
+ if (!store.currentMarkResult) return;
|
|
|
+ store.currentMarkResult.specialTagList = [];
|
|
|
+ }
|
|
|
+
|
|
|
+ const close = () => {
|
|
|
+ store.setting.uiSetting["specialTag.modal"] = false;
|
|
|
+ };
|
|
|
+ return {
|
|
|
+ store,
|
|
|
+ close,
|
|
|
+ clearLatestTagOfCurrentTask,
|
|
|
+ clearAllTagsOfCurrentTask,
|
|
|
+ };
|
|
|
+ },
|
|
|
+});
|
|
|
+</script>
|
|
|
+
|
|
|
+<style>
|
|
|
+.special-tag-container {
|
|
|
+ /* border: 1px dotted grey; */
|
|
|
+}
|
|
|
+</style>
|