time for a crusade against dialogs

This commit is contained in:
Anuken
2019-09-08 15:08:55 -04:00
parent 2cc627e7d0
commit c9f0a59339
44 changed files with 375 additions and 262 deletions

View File

@@ -68,7 +68,7 @@ public class AboutDialog extends FloatingDialog{
table.addImageButton("icon-link", iconsize, () -> {
if(!Core.net.openURI(link.link)){
ui.showError("$linkfail");
ui.showErrorMessage("$linkfail");
Core.app.setClipboardText(link.link);
}
}).size(h - 5, h);

View File

@@ -168,11 +168,6 @@ public class DeployDialog extends FloatingDialog{
return false;
}
@Override
protected void drawBackground(float x, float y){
drawDefaultBackground(x, y);
}
void buildButton(Zone zone, Button button){
button.setDisabled(() -> hidden(zone));
button.clicked(() -> info.show(zone));

View File

@@ -43,7 +43,7 @@ public class DiscordDialog extends Dialog{
});
buttons.addButton("$openlink", () -> {
if(!Core.net.openURI(discordURL)){
ui.showError("$linkfail");
ui.showErrorMessage("$linkfail");
Core.app.setClipboardText(discordURL);
}
});

View File

@@ -1,19 +1,17 @@
package io.anuke.mindustry.ui.dialogs;
import io.anuke.arc.Core;
import io.anuke.arc.collection.Array;
import io.anuke.arc.files.FileHandle;
import io.anuke.arc.function.Consumer;
import io.anuke.arc.function.Predicate;
import io.anuke.arc.graphics.g2d.GlyphLayout;
import io.anuke.arc.scene.event.Touchable;
import io.anuke.arc.*;
import io.anuke.arc.collection.*;
import io.anuke.arc.files.*;
import io.anuke.arc.function.*;
import io.anuke.arc.graphics.g2d.*;
import io.anuke.arc.scene.event.*;
import io.anuke.arc.scene.ui.*;
import io.anuke.arc.scene.ui.layout.Table;
import io.anuke.arc.scene.ui.layout.UnitScl;
import io.anuke.arc.scene.ui.layout.*;
import io.anuke.arc.util.*;
import io.anuke.arc.util.pooling.Pools;
import io.anuke.arc.util.pooling.*;
import java.util.Arrays;
import java.util.*;
import static io.anuke.mindustry.Vars.*;
@@ -31,13 +29,9 @@ public class FileChooser extends FloatingDialog{
private Consumer<FileHandle> selectListener;
private boolean open;
public static final Predicate<String> pngFiles = str -> str.equals("png");
public static final Predicate<String> anyMapFiles = str -> str.equals(oldMapExtension) || str.equals(mapExtension);
public static final Predicate<String> mapFiles = str -> str.equals(mapExtension);
public static final Predicate<String> saveFiles = str -> str.equals(saveExtension);
public FileChooser(String title, Predicate<FileHandle> filter, boolean open, Consumer<FileHandle> result){
super(title);
setFillParent(true);
this.open = open;
this.filter = filter;
this.selectListener = result;
@@ -88,11 +82,7 @@ public class FileChooser extends FloatingDialog{
files.marginRight(10);
files.marginLeft(3);
pane = new ScrollPane(files){
public float getPrefHeight(){
return Core.graphics.getHeight();
}
};
pane = new ScrollPane(files);
pane.setOverscroll(false, false);
pane.setFadeScrollBars(false);
@@ -152,7 +142,7 @@ public class FileChooser extends FloatingDialog{
content.add(icontable).expandX().fillX();
content.row();
content.center().add(pane).width(Core.graphics.isPortrait() ? Core.graphics.getWidth() / UnitScl.dp.scl(1) : Core.graphics.getWidth() / UnitScl.dp.scl(2)).colspan(3).grow();
content.center().add(pane).colspan(3).grow();
content.row();
if(!open){
@@ -162,7 +152,7 @@ public class FileChooser extends FloatingDialog{
content.add(buttons).growX();
cont.add(content);
cont.add(content).grow();
}
private void updateFileFieldStatus(){

View File

@@ -66,7 +66,7 @@ public class HostDialog extends FloatingDialog{
net.host(Vars.port);
player.isAdmin = true;
}catch(IOException e){
ui.showError(Core.bundle.format("server.error", Strings.parseException(e, true)));
ui.showException("$server.error", e);
}
ui.loadfrag.hide();
hide();

View File

@@ -94,7 +94,7 @@ public class LoadDialog extends FloatingDialog{
slot.exportFile(file);
setup();
}catch(IOException e){
ui.showError(Core.bundle.format("save.export.fail", Strings.parseException(e, true)));
ui.showException("save.export.fail", e);
}
});
}else{
@@ -103,7 +103,7 @@ public class LoadDialog extends FloatingDialog{
slot.exportFile(file);
platform.shareFile(file);
}catch(Exception e){
ui.showError(Core.bundle.format("save.export.fail", Strings.parseException(e, true)));
ui.showException("save.export.fail", e);
}
}
}).size(iconsize).right();
@@ -177,10 +177,10 @@ public class LoadDialog extends FloatingDialog{
setup();
}catch(IOException e){
e.printStackTrace();
ui.showError(Core.bundle.format("save.import.fail", Strings.parseException(e, true)));
ui.showException("save.import.fail", e);
}
}else{
ui.showError("$save.import.invalid");
ui.showErrorMessage("$save.import.invalid");
}
});
}).fillX().margin(10f).minWidth(300f).height(70f).pad(4f).padRight(-4);
@@ -199,7 +199,7 @@ public class LoadDialog extends FloatingDialog{
Log.err(e);
state.set(State.menu);
logic.reset();
ui.showError("$save.corrupted");
ui.showErrorMessage("$save.corrupted");
}
});
}

View File

@@ -65,7 +65,7 @@ public class MapsDialog extends FloatingDialog{
ui.loadAnd(() -> {
maps.tryCatchMapError(() -> {
if(MapIO.isImage(file)){
ui.showError("$editor.errorimage");
ui.showErrorMessage("$editor.errorimage");
return;
}
@@ -82,7 +82,7 @@ public class MapsDialog extends FloatingDialog{
//this will never actually get called, but it remains just in case
if(name == null){
ui.showError("$editor.errorname");
ui.showErrorMessage("$editor.errorname");
return;
}
@@ -192,7 +192,7 @@ public class MapsDialog extends FloatingDialog{
hide();
}catch(Exception e){
e.printStackTrace();
ui.showError("$error.mapnotfound");
ui.showErrorMessage("$error.mapnotfound");
}
}).fillX().height(54f).marginLeft(10);

View File

@@ -23,10 +23,6 @@ public class MinimapDialog extends FloatingDialog{
onResize(this::setup);
}
public void drawBackground(float x, float y){
drawDefaultBackground(x, y);
}
void setup(){
cont.clearChildren();

View File

@@ -1,9 +1,8 @@
package io.anuke.mindustry.ui.dialogs;
import io.anuke.arc.Core;
import io.anuke.arc.input.KeyCode;
import io.anuke.mindustry.core.GameState.State;
import io.anuke.mindustry.net.Net;
import io.anuke.arc.*;
import io.anuke.arc.input.*;
import io.anuke.mindustry.core.GameState.*;
import static io.anuke.mindustry.Vars.*;
@@ -123,7 +122,7 @@ public class PausedDialog extends FloatingDialog{
control.saves.getCurrent().save();
}catch(Throwable e){
e.printStackTrace();
ui.showError("[accent]" + Core.bundle.get("savefail"));
ui.showException("[accent]" + Core.bundle.get("savefail"), e);
}
state.set(State.menu);
logic.reset();

View File

@@ -53,7 +53,7 @@ public class SaveDialog extends LoadDialog{
}catch(Throwable e){
e.printStackTrace();
ui.showError("[accent]" + Core.bundle.get("savefail"));
ui.showException("[accent]" + Core.bundle.get("savefail"), e);
}
});
}

View File

@@ -15,7 +15,6 @@ import io.anuke.arc.util.*;
import io.anuke.mindustry.core.GameState.*;
import io.anuke.mindustry.gen.*;
import io.anuke.mindustry.graphics.*;
import io.anuke.mindustry.net.Net;
import static io.anuke.arc.Core.bundle;
import static io.anuke.mindustry.Vars.*;
@@ -108,7 +107,7 @@ public class SettingsMenuDialog extends SettingsDialog{
try{
data.exportData(file);
}catch(Exception e){
ui.showError(Strings.parseException(e, true));
ui.showException(e);
}
platform.shareFile(file);
}else{
@@ -118,7 +117,7 @@ public class SettingsMenuDialog extends SettingsDialog{
ui.showInfo("$data.exported");
}catch(Exception e){
e.printStackTrace();
ui.showError(Strings.parseException(e, true));
ui.showException(e);
}
});
}
@@ -133,13 +132,13 @@ public class SettingsMenuDialog extends SettingsDialog{
data.importData(file);
Core.app.exit();
}catch(IllegalArgumentException e){
ui.showError("$data.invalid");
ui.showErrorMessage("$data.invalid");
}catch(Exception e){
e.printStackTrace();
if(e.getMessage() == null || !e.getMessage().contains("too short")){
ui.showError(Strings.parseException(e, true));
ui.showException(e);
}else{
ui.showError("$data.invalid");
ui.showErrorMessage("$data.invalid");
}
}
})));
@@ -215,9 +214,11 @@ public class SettingsMenuDialog extends SettingsDialog{
game.checkPref("savecreate", true);
game.checkPref("publichost", false, i -> {
platform.updateLobby();
});
if(steam){
game.checkPref("publichost", false, i -> {
platform.updateLobby();
});
}
game.pref(new Setting(){
@Override

View File

@@ -53,11 +53,6 @@ public class TechTreeDialog extends FloatingDialog{
}).size(210f, 64f);
}
@Override
protected void drawBackground(float x, float y){
drawDefaultBackground(x, y);
}
void treeLayout(){
TreeLayout layout = new TreeLayout();
layout.gapBetweenLevels = UnitScl.dp.scl(60f);

View File

@@ -24,11 +24,6 @@ public class ZoneInfoDialog extends FloatingDialog{
addCloseButton();
}
@Override
protected void drawBackground(float x, float y){
drawDefaultBackground(x, y);
}
public void show(Zone zone){
setup(zone);
show();

View File

@@ -40,7 +40,7 @@ public class BlockInventoryFragment extends Fragment{
@Remote(called = Loc.server, targets = Loc.both, forward = true)
public static void requestItem(Player player, Tile tile, Item item, int amount){
if(player == null || tile == null || !player.timer.get(Player.timerTransfer, 20)) return;
if(player == null || tile == null || !player.timer.get(Player.timerTransfer, 20) || !tile.interactable(player.getTeam())) return;
int removed = tile.block().removeStack(tile, item, amount);