Skip to content

Commit 43d0c70

Browse files
committed
HideHL/Toolbar: add WIP Buttons + setup grid button
1 parent 9baf174 commit 43d0c70

File tree

4 files changed

+63
-0
lines changed

4 files changed

+63
-0
lines changed

hide_hl/hide/view/Prefab.hx

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ class Prefab extends HuiView<{path: String}> {
1111

1212
static var _ = HuiView.register("prefab", Prefab);
1313

14+
public static var SNAP_CONFIG_KEY = "editor.snapToggle";
15+
1416
public function new(_state: Dynamic, ?parent) {
1517
super(_state, parent);
1618
initComponent();
@@ -115,6 +117,12 @@ class Prefab extends HuiView<{path: String}> {
115117

116118
var snapBtn = new HuiToggle();
117119
snapBtn.dom.addClass("group-start");
120+
snapBtn.toggled = Ide.inst.currentConfig.get(SNAP_CONFIG_KEY, true);
121+
snapBtn.onClick = (_) -> {
122+
snapBtn.toggled = !snapBtn.toggled;
123+
prefabEditor.setGridVisibility(snapBtn.toggled);
124+
Ide.inst.currentConfig.set(SNAP_CONFIG_KEY, snapBtn.toggled);
125+
}
118126
new HuiIcon("grid", snapBtn);
119127
widgets.push(snapBtn);
120128

@@ -141,6 +149,52 @@ class Prefab extends HuiView<{path: String}> {
141149
new HuiIcon("question_mark", helpBtn);
142150
widgets.push(helpBtn);
143151

152+
var rulerBtn = new HuiToggle();
153+
rulerBtn.onClick = (_) -> {
154+
// TODO
155+
};
156+
new HuiIcon("ruler", rulerBtn);
157+
widgets.push(rulerBtn);
158+
159+
var viewportOverlayBtn = new HuiToggle();
160+
viewportOverlayBtn.onClick = (_) -> {
161+
// TODO
162+
};
163+
new HuiIcon("visibility", viewportOverlayBtn);
164+
widgets.push(viewportOverlayBtn);
165+
166+
var viewModesBtn = new HuiButton();
167+
viewModesBtn.onClick = (_) -> {
168+
// TODO
169+
};
170+
new HuiText("View Modes", viewModesBtn);
171+
new HuiIcon("dropDown", viewModesBtn);
172+
widgets.push(viewModesBtn);
173+
174+
var graphicsFilterBtn = new HuiButton();
175+
graphicsFilterBtn.onClick = (_) -> {
176+
// TODO
177+
};
178+
new HuiText("Graphics Filters", graphicsFilterBtn);
179+
new HuiIcon("dropDown", graphicsFilterBtn);
180+
widgets.push(graphicsFilterBtn);
181+
182+
var sceneFilterBtn = new HuiButton();
183+
sceneFilterBtn.onClick = (_) -> {
184+
// TODO
185+
};
186+
new HuiText("Scene Filters", sceneFilterBtn);
187+
new HuiIcon("dropDown", sceneFilterBtn);
188+
widgets.push(sceneFilterBtn);
189+
190+
var renderPropsBtn = new HuiButton();
191+
renderPropsBtn.onClick = (_) -> {
192+
// TODO
193+
};
194+
new HuiText("Render Props", renderPropsBtn);
195+
new HuiIcon("dropDown", renderPropsBtn);
196+
widgets.push(renderPropsBtn);
197+
144198
return widgets;
145199
}
146200
}

hide_hl/res/ui/icons/ruler.png

163 Bytes
Loading
372 Bytes
Loading

hrt/ui/HuiPrefabEditor.hx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -861,6 +861,7 @@ class HuiPrefabEditor extends HuiElement {
861861
viewportAxis = new hrt.tools.ViewportAxis(scene.s3d.camera, cameraController, scene.s2d);
862862

863863
grid = new hrt.tools.Grid(scene.s3d);
864+
grid.visible = hide.Ide.inst.currentConfig.get(hide.view.Prefab.SNAP_CONFIG_KEY, true);
864865
gizmo = new hrt.tools.Gizmo(scene.s3d);
865866
gizmo.visible = false;
866867
registerCommand(gizmoSwitchModeCommand, View, gizmo.switchMode);
@@ -936,6 +937,14 @@ class HuiPrefabEditor extends HuiElement {
936937
};
937938
}
938939

940+
public function setGridVisibility(visible : Bool) {
941+
grid?.visible = visible;
942+
}
943+
944+
public function setGridLineSpacing(spacing : Float) {
945+
grid?.lineSpacing = spacing;
946+
}
947+
939948
function onSceneEvents(e: hxd.Event) : Void {
940949
// debugGraph.clear();
941950
// debugGraph.setColor(0xFF00FF, 1.0);

0 commit comments

Comments
 (0)