diff --git a/src/main/java/themixray/repeating/mod/RecordList.java b/src/main/java/themixray/repeating/mod/RecordList.java index b1a3c1d..e17a0e8 100644 --- a/src/main/java/themixray/repeating/mod/RecordList.java +++ b/src/main/java/themixray/repeating/mod/RecordList.java @@ -18,7 +18,7 @@ public class RecordList { public RecordList(File folder) { this.folder = folder; this.records = new ArrayList<>(); - this.widget = new RecordListWidget(0, 0, 120, 80); + this.widget = new RecordListWidget(0, 0, 180, 200); } public List getRecords() { diff --git a/src/main/java/themixray/repeating/mod/RecordState.java b/src/main/java/themixray/repeating/mod/RecordState.java index fe844c8..239194a 100644 --- a/src/main/java/themixray/repeating/mod/RecordState.java +++ b/src/main/java/themixray/repeating/mod/RecordState.java @@ -128,11 +128,6 @@ public class RecordState { } 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 { diff --git a/src/main/java/themixray/repeating/mod/RepeatingScreen.java b/src/main/java/themixray/repeating/mod/RepeatingScreen.java index ed3ccb8..46d5877 100644 --- a/src/main/java/themixray/repeating/mod/RepeatingScreen.java +++ b/src/main/java/themixray/repeating/mod/RepeatingScreen.java @@ -11,6 +11,7 @@ import net.minecraft.client.gui.tooltip.Tooltip; import net.minecraft.client.gui.widget.ButtonWidget; import net.minecraft.client.gui.widget.SliderWidget; import net.minecraft.text.Text; +import themixray.repeating.mod.widget.RecordListWidget; import java.awt.*; import java.io.File; @@ -69,16 +70,23 @@ public class RepeatingScreen extends Screen { @Override 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( - Text.translatable("text.repeating-mod.start_record"), button -> { - if (!Main.me.is_replaying) { - if (Main.me.is_recording) - Main.me.stopRecording(); - else Main.me.startRecording(); - updateButtons(); - } - }) - .dimensions(width / 2 - 60, height / 2 - 76, 120, 20) + Text.translatable("text.repeating-mod.start_record"), button -> { + if (!Main.me.is_replaying) { + if (Main.me.is_recording) + Main.me.stopRecording(); + else Main.me.startRecording(); + updateButtons(); + } + }) + .dimensions(width / 2 - 120, height / 2 - 32, 120, 20) .tooltip(Tooltip.of(Text.translatable("text.repeating-mod.record_tooltip"))) .build(); @@ -86,14 +94,14 @@ public class RepeatingScreen extends Screen { Main.me.loop_replay = !Main.me.loop_replay; 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"))) .build(); 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") : - 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) { @Override @@ -153,14 +161,10 @@ public class RepeatingScreen extends Screen { } }}).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"))) .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; updateButtons(); diff --git a/src/main/java/themixray/repeating/mod/widget/RecordListWidget.java b/src/main/java/themixray/repeating/mod/widget/RecordListWidget.java index 3106ae5..5bcd5a4 100644 --- a/src/main/java/themixray/repeating/mod/widget/RecordListWidget.java +++ b/src/main/java/themixray/repeating/mod/widget/RecordListWidget.java @@ -51,7 +51,7 @@ public class RecordListWidget extends ScrollableWidget { } 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); widgets.add(0, widget); } @@ -72,7 +72,7 @@ public class RecordListWidget extends ScrollableWidget { @Override 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) { diff --git a/src/main/java/themixray/repeating/mod/widget/RecordWidget.java b/src/main/java/themixray/repeating/mod/widget/RecordWidget.java index 21ce25f..85900f7 100644 --- a/src/main/java/themixray/repeating/mod/widget/RecordWidget.java +++ b/src/main/java/themixray/repeating/mod/widget/RecordWidget.java @@ -77,7 +77,7 @@ public class RecordWidget implements Drawable, Widget { Main.client.textRenderer, parent.getX() + getX() + 5, parent.getY() + getY() + 5, - 70, + 102, 10, Text.empty()); @@ -96,7 +96,7 @@ public class RecordWidget implements Drawable, Widget { ButtonWidget delete_button = ButtonWidget.builder(Text.translatable("text.repeating-mod.delete"), (i) -> { 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); @@ -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); @@ -125,7 +125,7 @@ public class RecordWidget implements Drawable, Widget { i.setMessage(Text.translatable("text.repeating-mod.stop")); Main.me.now_record = record; 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(); children.add(replay_button); @@ -171,8 +171,8 @@ public class RecordWidget implements Drawable, Widget { .append(": ") .styled((s) -> s.withColor(0xbbbbbb)), Text.literal(record.getAuthor()).styled((s) -> s.withColor(0xffffff)) - ), 0.7f, - 7, + ), 1, + 9, false); if (!children.isEmpty()) { @@ -180,13 +180,13 @@ public class RecordWidget implements Drawable, Widget { name_widget.setPosition(parent.getX() + getX() + 5, parent.getY() + getY() + 5); 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); - 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); - 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) {