From e53bb1fb4a3df88d11e642b70db64a0c3452413d Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Sun, 26 May 2024 22:18:02 +0200 Subject: [PATCH 01/11] Format clickgui --- src-theme/src/routes/clickgui/ClickGui.svelte | 100 ++++++++++-------- 1 file changed, 57 insertions(+), 43 deletions(-) diff --git a/src-theme/src/routes/clickgui/ClickGui.svelte b/src-theme/src/routes/clickgui/ClickGui.svelte index 4b712649c43..552d46dea11 100644 --- a/src-theme/src/routes/clickgui/ClickGui.svelte +++ b/src-theme/src/routes/clickgui/ClickGui.svelte @@ -1,50 +1,64 @@ -
- - +
+ + - {#each Object.entries(categories) as [category, modules], panelIndex} - - {/each} + {#each Object.entries(categories) as [category, modules], panelIndex} + + {/each}
From 1508827b026a335c29e1a9d9bf953de001b18a0c Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Sun, 26 May 2024 22:24:01 +0200 Subject: [PATCH 03/11] Format search --- src-theme/src/routes/clickgui/Search.svelte | 289 +++++++++++--------- 1 file changed, 154 insertions(+), 135 deletions(-) diff --git a/src-theme/src/routes/clickgui/Search.svelte b/src-theme/src/routes/clickgui/Search.svelte index f6eb0d28694..fa9966acc4f 100644 --- a/src-theme/src/routes/clickgui/Search.svelte +++ b/src-theme/src/routes/clickgui/Search.svelte @@ -1,161 +1,180 @@ - + From 03b648c2fab55204eab0516e07f0b2dc0ee10e3e Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Sun, 26 May 2024 23:22:14 +0200 Subject: [PATCH 07/11] New tabs lok --- .../src/routes/clickgui/ClickGuiTabs.svelte | 27 +++++++------------ 1 file changed, 9 insertions(+), 18 deletions(-) diff --git a/src-theme/src/routes/clickgui/ClickGuiTabs.svelte b/src-theme/src/routes/clickgui/ClickGuiTabs.svelte index 358544502e1..24be4e8296b 100644 --- a/src-theme/src/routes/clickgui/ClickGuiTabs.svelte +++ b/src-theme/src/routes/clickgui/ClickGuiTabs.svelte @@ -24,15 +24,14 @@ position: fixed; display: flex; left: 50%; - top: 0; - border-radius: 0 0 20px 20px; + top: 14px; + gap: 15px; transform: translateX(-50%); - // width: 600px; + width: 600px; - background-color: rgba($clickgui-base-color, 0.8); // border-radius: 30px; - overflow: hidden; + // overflow: hidden; // box-shadow: 0 0 10px rgba($clickgui-base-color, 0.5); &:focus-within { @@ -47,22 +46,14 @@ font-size: 16px; font-family: inherit; padding: 12px 30px; + flex: 1; + border-radius: 30px; + background-color: rgba($clickgui-base-color, 0.8); &.active { - background-color: color.scale($clickgui-base-color, $lightness: 15%); color: $clickgui-text-color; - position: relative; - &::after { - content: ""; - display: block; - position: absolute; - right: 0; - left: 0; - top: -1px; - - height: 3px; - background-color: $accent-color; - } + // border: 2px solid $accent-color; + outline: 3px solid $accent-color; } } From 1ea517f317d63418486e5cdeb155e09c1c621292 Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Sun, 26 May 2024 23:58:06 +0200 Subject: [PATCH 08/11] Move files around --- src-theme/src/App.svelte | 160 +++++----- src-theme/src/routes/clickgui/+layout.svelte | 66 ++++ src-theme/src/routes/clickgui/ClickGui.svelte | 33 +- .../src/routes/clickgui/ClickGuiTabs.svelte | 4 +- .../src/routes/clickgui/Description.svelte | 58 ---- src-theme/src/routes/clickgui/Module.svelte | 183 ----------- src-theme/src/routes/clickgui/Panel.svelte | 286 ----------------- .../clickgui/modules/Description.svelte | 61 ++++ .../src/routes/clickgui/modules/Module.svelte | 198 ++++++++++++ .../routes/clickgui/modules/Modules.svelte | 23 ++ .../src/routes/clickgui/modules/Panel.svelte | 295 ++++++++++++++++++ 11 files changed, 737 insertions(+), 630 deletions(-) create mode 100644 src-theme/src/routes/clickgui/+layout.svelte delete mode 100644 src-theme/src/routes/clickgui/Description.svelte delete mode 100644 src-theme/src/routes/clickgui/Module.svelte delete mode 100644 src-theme/src/routes/clickgui/Panel.svelte create mode 100644 src-theme/src/routes/clickgui/modules/Description.svelte create mode 100644 src-theme/src/routes/clickgui/modules/Module.svelte create mode 100644 src-theme/src/routes/clickgui/modules/Modules.svelte create mode 100644 src-theme/src/routes/clickgui/modules/Panel.svelte diff --git a/src-theme/src/App.svelte b/src-theme/src/App.svelte index 458e342aeb0..c9752fcbfe9 100644 --- a/src-theme/src/App.svelte +++ b/src-theme/src/App.svelte @@ -1,96 +1,96 @@
- {#if showSplash} - - {:else} - - {/if} + {#if showSplash} + + {:else} + + {/if}
diff --git a/src-theme/src/routes/clickgui/+layout.svelte b/src-theme/src/routes/clickgui/+layout.svelte new file mode 100644 index 00000000000..423384f2345 --- /dev/null +++ b/src-theme/src/routes/clickgui/+layout.svelte @@ -0,0 +1,66 @@ + + +
+ + + +
+ + diff --git a/src-theme/src/routes/clickgui/ClickGui.svelte b/src-theme/src/routes/clickgui/ClickGui.svelte index f1f30acc171..158a9ad8b79 100644 --- a/src-theme/src/routes/clickgui/ClickGui.svelte +++ b/src-theme/src/routes/clickgui/ClickGui.svelte @@ -1,25 +1,16 @@
- - - - {#each Object.entries(categories) as [category, modules], panelIndex} - - {/each} + + {#if activeTab === "Modules"} + + {:else if activeTab === "Settings"} + settings + {/if} +
diff --git a/src-theme/src/routes/clickgui/Description.svelte b/src-theme/src/routes/clickgui/Description.svelte deleted file mode 100644 index 3919e435e14..00000000000 --- a/src-theme/src/routes/clickgui/Description.svelte +++ /dev/null @@ -1,58 +0,0 @@ - - -{#key data} - {#if data !== null} -
-
-
{data.description}
-
-
- {/if} -{/key} - - \ No newline at end of file diff --git a/src-theme/src/routes/clickgui/Module.svelte b/src-theme/src/routes/clickgui/Module.svelte deleted file mode 100644 index 1490e5d24fb..00000000000 --- a/src-theme/src/routes/clickgui/Module.svelte +++ /dev/null @@ -1,183 +0,0 @@ - - - -
2} - in:slide={{ duration: 500, easing: quintOut }} - out:slide={{ duration: 500, easing: quintOut }} -> - -
descriptionStore.set(null)} - bind:this={moduleNameElement} - class:enabled - class:highlight={name === $highlightModuleName} - > - {#if $spaceSeperatedNames} - {convertToSpacedString(name)} - {:else} - {name} - {/if} -
- - {#if expanded && configurable} -
- {#each configurable.value as setting (setting.name)} - - {/each} -
- {/if} -
- - diff --git a/src-theme/src/routes/clickgui/Panel.svelte b/src-theme/src/routes/clickgui/Panel.svelte deleted file mode 100644 index 2607f50665e..00000000000 --- a/src-theme/src/routes/clickgui/Panel.svelte +++ /dev/null @@ -1,286 +0,0 @@ - - - - -
- -
- icon - {category} - - -
- -
- {#each renderedModules as {name, enabled, description, aliases} (name)} - - {/each} -
-
- - \ No newline at end of file diff --git a/src-theme/src/routes/clickgui/modules/Description.svelte b/src-theme/src/routes/clickgui/modules/Description.svelte new file mode 100644 index 00000000000..5d764f1aab1 --- /dev/null +++ b/src-theme/src/routes/clickgui/modules/Description.svelte @@ -0,0 +1,61 @@ + + +{#key data} + {#if data !== null} +
+
+
{data.description}
+
+
+ {/if} +{/key} + + diff --git a/src-theme/src/routes/clickgui/modules/Module.svelte b/src-theme/src/routes/clickgui/modules/Module.svelte new file mode 100644 index 00000000000..439e59057fb --- /dev/null +++ b/src-theme/src/routes/clickgui/modules/Module.svelte @@ -0,0 +1,198 @@ + + + +
2} + in:slide={{ duration: 500, easing: quintOut }} + out:slide={{ duration: 500, easing: quintOut }} +> + +
descriptionStore.set(null)} + bind:this={moduleNameElement} + class:enabled + class:highlight={name === $highlightModuleName} + > + {#if $spaceSeperatedNames} + {convertToSpacedString(name)} + {:else} + {name} + {/if} +
+ + {#if expanded && configurable} +
+ {#each configurable.value as setting (setting.name)} + + {/each} +
+ {/if} +
+ + diff --git a/src-theme/src/routes/clickgui/modules/Modules.svelte b/src-theme/src/routes/clickgui/modules/Modules.svelte new file mode 100644 index 00000000000..cb5c3b0c472 --- /dev/null +++ b/src-theme/src/routes/clickgui/modules/Modules.svelte @@ -0,0 +1,23 @@ + + + + +{#each Object.entries(categories) as [category, modules], panelIndex} + +{/each} diff --git a/src-theme/src/routes/clickgui/modules/Panel.svelte b/src-theme/src/routes/clickgui/modules/Panel.svelte new file mode 100644 index 00000000000..016c183bdde --- /dev/null +++ b/src-theme/src/routes/clickgui/modules/Panel.svelte @@ -0,0 +1,295 @@ + + + + +
+ +
+ icon + {category} + + +
+ +
+ {#each renderedModules as { name, enabled, description, aliases } (name)} + + {/each} +
+
+ + From c56e218676b95f36d30df6303e1b0f25295dbe1f Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Sun, 26 May 2024 23:58:15 +0200 Subject: [PATCH 09/11] Delete +layout.svelte --- src-theme/src/routes/clickgui/+layout.svelte | 66 -------------------- 1 file changed, 66 deletions(-) delete mode 100644 src-theme/src/routes/clickgui/+layout.svelte diff --git a/src-theme/src/routes/clickgui/+layout.svelte b/src-theme/src/routes/clickgui/+layout.svelte deleted file mode 100644 index 423384f2345..00000000000 --- a/src-theme/src/routes/clickgui/+layout.svelte +++ /dev/null @@ -1,66 +0,0 @@ - - -
- - - -
- - From fe69f5a125ed8c85be102b1aff70b9ed74093ea7 Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Mon, 27 May 2024 11:15:12 +0200 Subject: [PATCH 10/11] Add example hud element --- src-theme/src/routes/clickgui/ClickGui.svelte | 3 + .../src/routes/clickgui/Hud/Element.svelte | 90 +++++++++++++++++++ .../src/routes/clickgui/Hud/HudEditor.svelte | 21 +++++ 3 files changed, 114 insertions(+) create mode 100644 src-theme/src/routes/clickgui/Hud/Element.svelte create mode 100644 src-theme/src/routes/clickgui/Hud/HudEditor.svelte diff --git a/src-theme/src/routes/clickgui/ClickGui.svelte b/src-theme/src/routes/clickgui/ClickGui.svelte index 158a9ad8b79..6d2d76c37c5 100644 --- a/src-theme/src/routes/clickgui/ClickGui.svelte +++ b/src-theme/src/routes/clickgui/ClickGui.svelte @@ -10,6 +10,7 @@ ScaleFactorChangeEvent, } from "../../integration/events"; import Modules from "./modules/Modules.svelte"; + import HudEditor from "./Hud/HudEditor.svelte"; let minecraftScaleFactor = 2; let clickGuiScaleFactor = 1; @@ -50,6 +51,8 @@ {:else if activeTab === "Settings"} settings + {:else if activeTab === "Hud"} + {/if}
diff --git a/src-theme/src/routes/clickgui/Hud/Element.svelte b/src-theme/src/routes/clickgui/Hud/Element.svelte new file mode 100644 index 00000000000..124077829b2 --- /dev/null +++ b/src-theme/src/routes/clickgui/Hud/Element.svelte @@ -0,0 +1,90 @@ + + + + + + diff --git a/src-theme/src/routes/clickgui/Hud/HudEditor.svelte b/src-theme/src/routes/clickgui/Hud/HudEditor.svelte new file mode 100644 index 00000000000..4d691fbd3b9 --- /dev/null +++ b/src-theme/src/routes/clickgui/Hud/HudEditor.svelte @@ -0,0 +1,21 @@ + + +
+ {#each elements as element} + + {/each} +
From 311a779af72a57cfe75d0e1537038a95a4ed9510 Mon Sep 17 00:00:00 2001 From: Elliott <85990359+Ell1ott@users.noreply.github.com> Date: Mon, 27 May 2024 12:54:15 +0200 Subject: [PATCH 11/11] locked ratio --- .../src/routes/clickgui/Hud/Element.svelte | 158 +++++++++++++++--- .../src/routes/clickgui/Hud/HudEditor.svelte | 5 +- 2 files changed, 135 insertions(+), 28 deletions(-) diff --git a/src-theme/src/routes/clickgui/Hud/Element.svelte b/src-theme/src/routes/clickgui/Hud/Element.svelte index 124077829b2..3904cd404f9 100644 --- a/src-theme/src/routes/clickgui/Hud/Element.svelte +++ b/src-theme/src/routes/clickgui/Hud/Element.svelte @@ -4,12 +4,19 @@ name: string; height: number; width: number; + heightRange: [number, number]; + widthRange: [number, number]; x: number; y: number; + variableRatio: boolean; }; let startX = 0; let startY = 0; + + const ratio = element.height / element.width; + console.log(element.height, element.width, ratio); + function onMouseDown(e: MouseEvent) { console.log(e); @@ -24,43 +31,104 @@ function onMouseMove(e: MouseEvent) { element.x = Math.max( - Math.min( - element.x + e.movementX * (2 / scaleFactor), - window.innerWidth - element.width, - ), + Math.min(element.x + e.movementX, window.innerWidth - element.width), 0, ); element.y = Math.max( - Math.min( - element.y + e.movementY * (2 / scaleFactor), - window.innerHeight - element.height, - ), + Math.min(element.y + e.movementY, window.innerHeight - element.height), 0, ); } - function onResizeDown(e: MouseEvent) { + const onResizeDown = (x: number, y: number) => (e: MouseEvent) => { console.log("resize down"); - document.addEventListener("mousemove", onResizeMove); + const resizeFunction = onResizeMove(x, y); + document.addEventListener("mousemove", resizeFunction); document.addEventListener("mouseup", () => { - document.removeEventListener("mousemove", onResizeMove); + document.removeEventListener("mousemove", resizeFunction); }); + }; + + function updHeight(movementY: number, direction: number) { + if (direction === 0) return; + element.height = Math.max( + Math.min(element.height + movementY * direction, element.heightRange[1]), + element.heightRange[0], + ); + } + function updWidth(movementX: number, direction: number) { + if (direction === 0) return; + element.width = Math.max( + Math.min(element.width + movementX * direction, element.widthRange[1]), + element.widthRange[0], + ); } - function onResizeMove(e: MouseEvent) { + const onResizeMove = (x: number, y: number) => (e: MouseEvent) => { console.log("resize move"); + const prevWidth = element.width; + const prevHeight = element.height; + if (element.variableRatio) { + updHeight(e.movementY, y); + updWidth(e.movementX, x); + } else { + const avg = e.movementX * ratio * x + e.movementY * y; + updWidth(avg, 1); + element.height = element.width * ratio; + console.log("rat", ratio); + console.log(element.width == element.height * ratio); + } - element.width += e.movementX; - element.height += e.movementY; - } + if (x < 0) { + element.x += prevWidth - element.width; + } + + if (y < 0) { + element.y += prevHeight - element.height; + } + }; + + + + + + + + @@ -69,22 +137,58 @@ .element { position: absolute; - background-color: rgba($clickgui-base-color, 0.3); - border: 2px solid $accent-color; - border-radius: 10px 10px 0 10px; - display: grid; - place-items: end end; + background-color: rgba($clickgui-base-color, 0.2); + border: 2px solid rgba($accent-color, 0.8); + border-radius: 7px; + cursor: grab; + // display: grid; + // place-items: end end; } .resize-handle { border: none; - background-color: $accent-color; - cursor: nwse-resize; + // background-color: $accent-color; + background-color: transparent; + position: absolute; height: 10px; width: 10px; - right: 0; - bottom: 0; - transform: translate(50%, 50%); + // transform: translate(50%, 50%); + } + + .right-0 { + right: -5px; + } + .left-0 { + left: -5px; + } + + .top-0 { + top: -5px; + } + + .bottom-0 { + bottom: -5px; + } + + .h-full { + height: calc(100% + 10px); + } + .w-full { + width: 100%; + } + + .ns { + cursor: ns-resize; + } + .ew { + cursor: ew-resize; + } + + .nwse { + cursor: nwse-resize; + } + .nesw { + cursor: nesw-resize; } diff --git a/src-theme/src/routes/clickgui/Hud/HudEditor.svelte b/src-theme/src/routes/clickgui/Hud/HudEditor.svelte index 4d691fbd3b9..f02a9f28f57 100644 --- a/src-theme/src/routes/clickgui/Hud/HudEditor.svelte +++ b/src-theme/src/routes/clickgui/Hud/HudEditor.svelte @@ -1,4 +1,4 @@ -