diff options
| author | Fuwn <[email protected]> | 2026-02-12 22:33:32 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2026-02-12 22:33:32 -0800 |
| commit | c7a9d4a6bd53ed7d61731770f2f10e8b9fd435f9 (patch) | |
| tree | df9f48bf128a6c0186a8e91857d6ff30fe0e9f18 /NET/worlds/console/SnapToolPanel.java | |
| download | worldsplayer-c7a9d4a6bd53ed7d61731770f2f10e8b9fd435f9.tar.xz worldsplayer-c7a9d4a6bd53ed7d61731770f2f10e8b9fd435f9.zip | |
Initial commit
Diffstat (limited to 'NET/worlds/console/SnapToolPanel.java')
| -rw-r--r-- | NET/worlds/console/SnapToolPanel.java | 135 |
1 files changed, 135 insertions, 0 deletions
diff --git a/NET/worlds/console/SnapToolPanel.java b/NET/worlds/console/SnapToolPanel.java new file mode 100644 index 0000000..460c065 --- /dev/null +++ b/NET/worlds/console/SnapToolPanel.java @@ -0,0 +1,135 @@ +package NET.worlds.console; + +import java.awt.Button; +import java.awt.Checkbox; +import java.awt.Color; +import java.awt.Dimension; +import java.awt.Event; +import java.awt.Frame; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Label; +import java.awt.Point; +import java.awt.TextField; + +public class SnapToolPanel extends Frame implements MainCallback, MainTerminalCallback { + private static final long serialVersionUID = 1673536928568480266L; + private Label xLabel; + private Label yLabel; + private Label zLabel; + private TextField xValue; + private TextField yValue; + private TextField zValue; + private Checkbox useSnapBox; + private Button okButton = new Button("Ok"); + private Button cancelButton = new Button("Cancel"); + private int snapX; + private int snapY; + private int snapZ; + private boolean useSnap; + + public SnapToolPanel(java.awt.Window parent) { + super("Snap Tool Settings"); + this.xLabel = new Label("X Snap Value"); + this.yLabel = new Label("Y Snap Value"); + this.zLabel = new Label("Z Snap Value"); + this.snapX = SnapTool.snapTool().getSnapX(); + this.snapY = SnapTool.snapTool().getSnapY(); + this.snapZ = SnapTool.snapTool().getSnapZ(); + this.useSnap = SnapTool.snapTool().useSnap(); + this.useSnapBox = new Checkbox("Use Snap Tool", this.useSnap); + this.xValue = new TextField("" + this.snapX); + this.yValue = new TextField("" + this.snapY); + this.zValue = new TextField("" + this.snapZ); + GridBagLayout gbag = new GridBagLayout(); + GridBagConstraints c = new GridBagConstraints(); + this.setLayout(gbag); + this.setBackground(Color.gray); + c.gridx = 1; + c.gridy = 1; + c.gridheight = 1; + c.gridwidth = 1; + c.anchor = 18; + gbag.setConstraints(this.xLabel, c); + this.add(this.xLabel); + c.gridx = 2; + c.gridy = 1; + gbag.setConstraints(this.xValue, c); + this.add(this.xValue); + c.gridx = 1; + c.gridy = 2; + gbag.setConstraints(this.yLabel, c); + this.add(this.yLabel); + c.gridx = 2; + c.gridy = 2; + gbag.setConstraints(this.yValue, c); + this.add(this.yValue); + c.gridx = 1; + c.gridy = 3; + gbag.setConstraints(this.zLabel, c); + this.add(this.zLabel); + c.gridx = 2; + c.gridy = 3; + gbag.setConstraints(this.zValue, c); + this.add(this.zValue); + c.gridx = 2; + c.gridy = 5; + gbag.setConstraints(this.useSnapBox, c); + this.add(this.useSnapBox); + c.gridx = 5; + c.gridy = 1; + gbag.setConstraints(this.okButton, c); + this.add(this.okButton); + c.gridx = 5; + c.gridy = 2; + gbag.setConstraints(this.cancelButton, c); + this.add(this.cancelButton); + this.pack(); + Point loc = parent.location(); + Dimension size = parent.getSize(); + this.reshape(loc.x + (size.width - 320) / 2, loc.y + (size.height - 240) / 2, 320, 240); + this.show(); + Main.register(this); + } + + @Override + public boolean handleEvent(Event ev) { + switch (ev.id) { + case 201: + this.dispose(); + return true; + default: + return super.handleEvent(ev); + } + } + + @Override + public boolean action(Event e, Object o) { + if (e.target == this.cancelButton) { + this.dispose(); + return true; + } else if (e.target == this.okButton) { + this.snapX = Integer.parseInt(this.xValue.getText()); + this.snapY = Integer.parseInt(this.yValue.getText()); + this.snapZ = Integer.parseInt(this.zValue.getText()); + this.useSnap = this.useSnapBox.getState(); + SnapTool.snapTool().setSnap(this.useSnap); + SnapTool.snapTool().setSnapX(this.snapX); + SnapTool.snapTool().setSnapY(this.snapY); + SnapTool.snapTool().setSnapZ(this.snapZ); + this.dispose(); + return true; + } else { + return false; + } + } + + @Override + public void mainCallback() { + } + + @Override + public void terminalCallback() { + Main.unregister(this); + } +} |