menu interface move
This commit is contained in:
parent
efcc61b578
commit
ae03aa9627
@ -18,7 +18,7 @@ public class RecordList {
|
|||||||
public RecordList(File folder) {
|
public RecordList(File folder) {
|
||||||
this.folder = folder;
|
this.folder = folder;
|
||||||
this.records = new ArrayList<>();
|
this.records = new ArrayList<>();
|
||||||
this.widget = new RecordListWidget(0, 0, 120, 80);
|
this.widget = new RecordListWidget(0, 0, 180, 200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<RecordState> getRecords() {
|
public List<RecordState> getRecords() {
|
||||||
|
@ -128,11 +128,6 @@ public class RecordState {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Files.write(file.toPath(), text.toString().getBytes());
|
Files.write(file.toPath(), text.toString().getBytes());
|
||||||
|
|
||||||
if (Desktop.isDesktopSupported()) {
|
|
||||||
Desktop desktop = Desktop.getDesktop();
|
|
||||||
desktop.browse(file.toURI());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static RecordState load(File file) throws Exception {
|
public static RecordState load(File file) throws Exception {
|
||||||
|
@ -11,6 +11,7 @@ import net.minecraft.client.gui.tooltip.Tooltip;
|
|||||||
import net.minecraft.client.gui.widget.ButtonWidget;
|
import net.minecraft.client.gui.widget.ButtonWidget;
|
||||||
import net.minecraft.client.gui.widget.SliderWidget;
|
import net.minecraft.client.gui.widget.SliderWidget;
|
||||||
import net.minecraft.text.Text;
|
import net.minecraft.text.Text;
|
||||||
|
import themixray.repeating.mod.widget.RecordListWidget;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@ -69,6 +70,13 @@ public class RepeatingScreen extends Screen {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void init() {
|
protected void init() {
|
||||||
|
RecordListWidget list_widget = Main.me.record_list.getWidget();
|
||||||
|
|
||||||
|
list_widget.setX(width / 2 + 2);
|
||||||
|
list_widget.setY(height / 2 - list_widget.getHeight() / 2);
|
||||||
|
list_widget.init(this);
|
||||||
|
|
||||||
|
|
||||||
record_btn = ButtonWidget.builder(
|
record_btn = ButtonWidget.builder(
|
||||||
Text.translatable("text.repeating-mod.start_record"), button -> {
|
Text.translatable("text.repeating-mod.start_record"), button -> {
|
||||||
if (!Main.me.is_replaying) {
|
if (!Main.me.is_replaying) {
|
||||||
@ -78,7 +86,7 @@ public class RepeatingScreen extends Screen {
|
|||||||
updateButtons();
|
updateButtons();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.dimensions(width / 2 - 60, height / 2 - 76, 120, 20)
|
.dimensions(width / 2 - 120, height / 2 - 32, 120, 20)
|
||||||
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.record_tooltip")))
|
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.record_tooltip")))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
@ -86,12 +94,12 @@ public class RepeatingScreen extends Screen {
|
|||||||
Main.me.loop_replay = !Main.me.loop_replay;
|
Main.me.loop_replay = !Main.me.loop_replay;
|
||||||
updateButtons();
|
updateButtons();
|
||||||
})
|
})
|
||||||
.dimensions(width / 2 - 60, height / 2 - 54, 120, 20)
|
.dimensions(width / 2 - 120, height / 2 - 10, 120, 20)
|
||||||
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.loop_tooltip")))
|
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.loop_tooltip")))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
pos_delay_slider = new SliderWidget(
|
pos_delay_slider = new SliderWidget(
|
||||||
width / 2 - 60, height / 2 - 32, 120, 20,
|
width / 2 - 120, height / 2 + 12, 120, 20,
|
||||||
(Main.me.record_pos_delay < 0) ? Text.translatable("text.repeating-mod.nan_pos_delay") :
|
(Main.me.record_pos_delay < 0) ? Text.translatable("text.repeating-mod.nan_pos_delay") :
|
||||||
Text.translatable("text.repeating-mod.pos_delay", String.valueOf(Main.me.record_pos_delay)),
|
Text.translatable("text.repeating-mod.pos_delay", String.valueOf(Main.me.record_pos_delay)),
|
||||||
(Main.me.record_pos_delay+1d)/101d) {
|
(Main.me.record_pos_delay+1d)/101d) {
|
||||||
@ -153,14 +161,10 @@ public class RepeatingScreen extends Screen {
|
|||||||
}
|
}
|
||||||
}}).start();
|
}}).start();
|
||||||
})
|
})
|
||||||
.dimensions(width / 2 - 60, height / 2 - 10, 120, 20)
|
.dimensions(width / 2 + 2, height / 2 - list_widget.getHeight() / 2 - 22, 180, 20)
|
||||||
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.import_tooltip")))
|
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.import_tooltip")))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
Main.me.record_list.getWidget().setX(width / 2 - Main.me.record_list.getWidget().getWidth() / 2);
|
|
||||||
Main.me.record_list.getWidget().setY(height / 2 + 12);
|
|
||||||
Main.me.record_list.getWidget().init(this);
|
|
||||||
|
|
||||||
was_build = true;
|
was_build = true;
|
||||||
|
|
||||||
updateButtons();
|
updateButtons();
|
||||||
|
@ -51,7 +51,7 @@ public class RecordListWidget extends ScrollableWidget {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void addWidget(RecordState record) {
|
public void addWidget(RecordState record) {
|
||||||
RecordWidget widget = new RecordWidget(0, 0, width, 50, record, this);
|
RecordWidget widget = new RecordWidget(0, 0, width, 55, record, this);
|
||||||
widget.init(null);
|
widget.init(null);
|
||||||
widgets.add(0, widget);
|
widgets.add(0, widget);
|
||||||
}
|
}
|
||||||
@ -72,7 +72,7 @@ public class RecordListWidget extends ScrollableWidget {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected int getContentsHeight() {
|
protected int getContentsHeight() {
|
||||||
return !widgets.isEmpty() ? widgets.size() * 50 + (widgets.size() - 1) * 2 : 0;
|
return !widgets.isEmpty() ? widgets.size() * 55 + (widgets.size() - 1) * 2 : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void init(RepeatingScreen screen) {
|
public void init(RepeatingScreen screen) {
|
||||||
|
@ -77,7 +77,7 @@ public class RecordWidget implements Drawable, Widget {
|
|||||||
Main.client.textRenderer,
|
Main.client.textRenderer,
|
||||||
parent.getX() + getX() + 5,
|
parent.getX() + getX() + 5,
|
||||||
parent.getY() + getY() + 5,
|
parent.getY() + getY() + 5,
|
||||||
70,
|
102,
|
||||||
10,
|
10,
|
||||||
Text.empty());
|
Text.empty());
|
||||||
|
|
||||||
@ -96,7 +96,7 @@ public class RecordWidget implements Drawable, Widget {
|
|||||||
|
|
||||||
ButtonWidget delete_button = ButtonWidget.builder(Text.translatable("text.repeating-mod.delete"), (i) -> {
|
ButtonWidget delete_button = ButtonWidget.builder(Text.translatable("text.repeating-mod.delete"), (i) -> {
|
||||||
record.remove();
|
record.remove();
|
||||||
}).dimensions(parent.getX() + getX() + 77,parent.getY() + getY() + 4, 38, 13).build();
|
}).dimensions(parent.getX() + getX() + 110,parent.getY() + getY() + 4, 65, 13).build();
|
||||||
|
|
||||||
children.add(delete_button);
|
children.add(delete_button);
|
||||||
|
|
||||||
@ -113,7 +113,7 @@ public class RecordWidget implements Drawable, Widget {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}).dimensions(parent.getX() + getX() + 77,parent.getY() + getY() + 4 + 14, 38, 13).build();
|
}).dimensions(parent.getX() + getX() + 110,parent.getY() + getY() + 4 + 14, 65, 13).build();
|
||||||
|
|
||||||
children.add(export_button);
|
children.add(export_button);
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ public class RecordWidget implements Drawable, Widget {
|
|||||||
i.setMessage(Text.translatable("text.repeating-mod.stop"));
|
i.setMessage(Text.translatable("text.repeating-mod.stop"));
|
||||||
Main.me.now_record = record;
|
Main.me.now_record = record;
|
||||||
Main.me.startReplay();
|
Main.me.startReplay();
|
||||||
}).dimensions(parent.getX() + getX() + 77,parent.getY() + getY() + 4 + 28, 38, 13)
|
}).dimensions(parent.getX() + getX() + 110,parent.getY() + getY() + 4 + 28, 65, 13)
|
||||||
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.replay_tooltip"))).build();
|
.tooltip(Tooltip.of(Text.translatable("text.repeating-mod.replay_tooltip"))).build();
|
||||||
|
|
||||||
children.add(replay_button);
|
children.add(replay_button);
|
||||||
@ -171,8 +171,8 @@ public class RecordWidget implements Drawable, Widget {
|
|||||||
.append(": ")
|
.append(": ")
|
||||||
.styled((s) -> s.withColor(0xbbbbbb)),
|
.styled((s) -> s.withColor(0xbbbbbb)),
|
||||||
Text.literal(record.getAuthor()).styled((s) -> s.withColor(0xffffff))
|
Text.literal(record.getAuthor()).styled((s) -> s.withColor(0xffffff))
|
||||||
), 0.7f,
|
), 1,
|
||||||
7,
|
9,
|
||||||
false);
|
false);
|
||||||
|
|
||||||
if (!children.isEmpty()) {
|
if (!children.isEmpty()) {
|
||||||
@ -180,13 +180,13 @@ public class RecordWidget implements Drawable, Widget {
|
|||||||
name_widget.setPosition(parent.getX() + getX() + 5, parent.getY() + getY() + 5);
|
name_widget.setPosition(parent.getX() + getX() + 5, parent.getY() + getY() + 5);
|
||||||
|
|
||||||
ClickableWidget delete_button = children.get(1);
|
ClickableWidget delete_button = children.get(1);
|
||||||
delete_button.setPosition(parent.getX() + getX() + 77,parent.getY() + getY() + 4);
|
delete_button.setPosition(parent.getX() + getX() + 110,parent.getY() + getY() + 4);
|
||||||
|
|
||||||
ClickableWidget export_button = children.get(2);
|
ClickableWidget export_button = children.get(2);
|
||||||
export_button.setPosition(parent.getX() + getX() + 77,parent.getY() + getY() + 4 + 14);
|
export_button.setPosition(parent.getX() + getX() + 110,parent.getY() + getY() + 4 + 14);
|
||||||
|
|
||||||
ClickableWidget replay_button = children.get(3);
|
ClickableWidget replay_button = children.get(3);
|
||||||
replay_button.setPosition(parent.getX() + getX() + 77,parent.getY() + getY() + 4 + 28);
|
replay_button.setPosition(parent.getX() + getX() + 110,parent.getY() + getY() + 4 + 28);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (ClickableWidget child : children) {
|
for (ClickableWidget child : children) {
|
||||||
|
Loading…
Reference in New Issue
Block a user