@@ -211,6 +234,7 @@ export default {
AlignmentOptionsControlComponent,
SupportLevelIndicator,
TriggerZoneEditor,
+ ZoomControl,
},
mixins: [
UIProbeMixin,
diff --git a/src/csui/src/popup/player-menu/ZoomControl.vue b/src/csui/src/popup/player-menu/ZoomControl.vue
new file mode 100644
index 0000000..82148b1
--- /dev/null
+++ b/src/csui/src/popup/player-menu/ZoomControl.vue
@@ -0,0 +1,112 @@
+
+
+ Custom zoom
+
+
+ Zoom:
+
+
+
+
+
+
+ Vertical zoom:
+
+
+
+
+
+
+ Control vertical and horizontal zoom independently.
+
+
+
+
+
+
+
diff --git a/src/csui/src/res-common/common.scss b/src/csui/src/res-common/common.scss
index 828958d..26a0e75 100644
--- a/src/csui/src/res-common/common.scss
+++ b/src/csui/src/res-common/common.scss
@@ -62,6 +62,56 @@ button, .button {
padding: 0.5rem 2rem;
}
+.input, .range-input {
+ background-color: rgba($blackBg, $normalTransparentOpacity);
+ border: 1px solid transparent;
+ border-bottom: 1px solid rgba(255,255,255,0.5);
+ padding-top: 0.25rem;
+ padding-bottom: 0.25rem;
+ position: relative;
+
+ &:active, &:focus, &:focus-within {
+ border-bottom: 1px solid rgba($primary, 0.5);
+ }
+
+ input {
+ width: 100%;
+ outline: none;
+ border: 1px solid transparent;
+ background-color: transparent;
+ color: #fff;
+ }
+
+ .unit {
+ position: absolute;
+ right: 0px;
+ pointer-events: none;
+ opacity: 0.69;
+ font-size: 0.8rem;
+ top: 0;
+ transform: translateY(69%);
+ }
+}
+
+.range-input {
+ display: flex;
+ flex-direction: row;
+
+ * {
+ margin-left: 0.5rem;
+ margin-right: 0.5rem;
+ }
+
+
+ input {
+ max-width: 5rem;
+ }
+
+ input[type=range] {
+ max-width: none;
+ }
+}
+
.field {
display: flex;
flex-direction: row;
@@ -86,53 +136,6 @@ button, .button {
.input, .range-input {
flex: 0 0 70%;
max-width: 24rem;
- background-color: rgba($blackBg, $normalTransparentOpacity);
- border: 1px solid transparent;
- border-bottom: 1px solid rgba(255,255,255,0.5);
- padding-top: 0.25rem;
- padding-bottom: 0.25rem;
- position: relative;
-
- &:active, &:focus, &:focus-within {
- border-bottom: 1px solid rgba($primary, 0.5);
- }
-
- input {
- width: 100%;
- outline: none;
- border: 1px solid transparent;
- background-color: transparent;
- color: #fff;
- }
-
- .unit {
- position: absolute;
- right: 0px;
- pointer-events: none;
- opacity: 0.69;
- font-size: 0.8rem;
- top: 0;
- transform: translateY(69%);
- }
- }
-
- .range-input {
- display: flex;
- flex-direction: row;
-
- * {
- margin-left: 0.5rem;
- margin-right: 0.5rem;
- }
-
-
- input {
- max-width: 5rem;
- }
-
- input[type=range] {
- max-width: none;
- }
}
.hint {