GuLiMmo
2024-03-01 d87242f609a6ebaba6f2b45b2c0b41f961e92d4b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
<template>
  <div class="setting">
    <a-popover
      placement="bottom"
      trigger="click"
      :getPopupContainer="(triggerNode: any) => triggerNode.parentNode">
      <template #content>
        <div class="setting-content">
          <div class="start-point common">
            <div class="title">起飞点</div>
          </div>
          <div class="photo-setting common">
            <div class="title">拍照设置</div>
            <ul class="select-box">
              <li class="select-item">广角照片</li>
              <li class="select-item">变焦照片</li>
            </ul>
            <div class="auto-low-light">
              <div class="title">自动低光</div>
              <a-switch />
            </div>
          </div>
          <div class="height-mode common">
            <div class="title">航线高度模式</div>
            <div class="mode-box">
              <a-radio-group button-style="solid">
                <a-radio-button value="a">绝对高度</a-radio-button>
                <a-radio-button value="b">相对起飞高度</a-radio-button>
                <a-radio-button value="c">相对地面高度</a-radio-button>
              </a-radio-group>
            </div>
          </div>
        </div>
      </template>
      <slot name="show"></slot>
    </a-popover>
  </div>
</template>
 
<script setup lang="ts">
const getResource = (name: string) => {
  return new URL(`/src/assets/icons/${name}`, import.meta.url).href
}
 
const waylineSetting = reactive({})
 
</script>
 
<style lang="scss" scoped>
.setting {
  margin-left: auto;
  .setting-content {
    width: 390px;
    height: 50vh;
    color: #fff;
    .common {
      background-color: #232323;
      border-radius: 10px;
      padding: 15px;
      margin-bottom: 16px;
      .title {
        font-weight: bold;
      }
      &:last-child {
        margin: 0;
      }
    }
    .photo-setting {
      .select-box {
        padding: 0;
        display: flex;
        margin-top: 10px;
        li {
          list-style-type: none;
          padding: 3px 15px;
          margin-left: 10px;
          background-color: #409eff;
          border-radius: 9999px;
          font-weight: bold;
          cursor: pointer;
          &:first-child {
            margin: 0;
          }
        }
      }
      .auto-low-light {
        display: flex;
        .title {
          font-weight: bold;
          margin-right: auto;
        }
      }
    }
    .height-mode {
      .mode-box {
        margin-top: 10px;
        :deep() {
          .ant-radio-group {
            display: flex;
            .ant-radio-button-wrapper {
              flex: 1;
              text-align: center;
              background-color: #3c3c3c;
              border: 1px solid #101010;
              color: #fff;
              font-weight: bold;
              border: 0;
              &::before {
                background-color: #101010;
              }
              &-checked {
                background-color: #409eff !important;
              }
            }
          }
        }
      }
    }
  }
}
 
:deep() {
  .ant-popover-content {
    .ant-popover-arrow,
    .ant-popover-inner {
      background-color: #101010;
    }
    .ant-popover-arrow {
      border-top-color: #101010 !important;
      border-left-color: #101010 !important;
    }
    .ant-popover-inner {
      border-radius: 15px;
      .ant-popover-inner-content {
        padding: 16px;
      }
    }
  }
}
</style>