From 93d299716c2580b0a837e611577549939ee074e2 Mon Sep 17 00:00:00 2001 From: Anuken Date: Wed, 4 May 2022 20:24:59 -0400 Subject: [PATCH] WIP style refactoring --- .../units/basic-assembler-module-side1.png | Bin 645 -> 969 bytes .../units/basic-assembler-module-side2.png | Bin 701 -> 1091 bytes core/assets/logicids.dat | Bin 4424 -> 4410 bytes core/src/mindustry/content/Blocks.java | 2 +- .../src/mindustry/editor/MapEditorDialog.java | 4 +-- .../mindustry/editor/MapGenerateDialog.java | 6 ++-- core/src/mindustry/editor/WaveGraph.java | 2 +- core/src/mindustry/editor/WaveInfoDialog.java | 2 +- core/src/mindustry/logic/LStatements.java | 2 +- core/src/mindustry/logic/LogicDialog.java | 4 +-- core/src/mindustry/ui/Styles.java | 27 +++++++++++------- .../ui/dialogs/CustomRulesDialog.java | 2 +- core/src/mindustry/ui/dialogs/LoadDialog.java | 2 +- .../mindustry/ui/dialogs/LoadoutDialog.java | 4 +-- core/src/mindustry/ui/dialogs/MapsDialog.java | 2 +- core/src/mindustry/ui/dialogs/ModsDialog.java | 2 +- .../mindustry/ui/dialogs/ResearchDialog.java | 11 ++++++- .../ui/dialogs/SchematicsDialog.java | 4 +-- .../ui/dialogs/SettingsMenuDialog.java | 4 +-- 19 files changed, 48 insertions(+), 32 deletions(-) diff --git a/core/assets-raw/sprites/blocks/units/basic-assembler-module-side1.png b/core/assets-raw/sprites/blocks/units/basic-assembler-module-side1.png index 202794fcf3a3947360172b44ea76b612eec0b953..2bc2f854655852cd6ad0c1c47235df686a148a9f 100644 GIT binary patch delta 935 zcmZo=J;^@7pq{ze)5S5QV$R#UhDFlm5^WFrXP((nl)m~ir_A(yE?)76#S4}PPUn82 zwX>tPE2b%Pi&WR6qDEF0i)WvwOww3c(XO&Y-hqh$0p1kM_{&{j-FN?e|8sd^g`;&g zHMVLe<-ga5mltd9b7>HXdK7)dWrtY2k^|SAapui4K~I`K!fH;$i_diRp^g;wEOoT zGtW=|4$ppdoNI#KN8K!C5e3h0t`&0k7pXZhep;e-XzLHLrGi`&(!G@Kbma#MEo7)n z)IKzc;r+k*KdV>h*0()uwS646-0QJ7%ZaYNg4d2r=a`_KrM#vW=mKdke|~mGqoWTmA6ERxbArVis8O>1jR{ber$i1I9Bey9;wSyF`z8MH z|La$5OMlnizie=*H`|hZ7dzvn5}`V6#z{-w>P--1dg6IH*W<#`{`U39Z~kAz%<$lP z>7Tm#EvFK@Qn{BiNWLrizkxyWRn6yJ43f_-o#bR%vb+BO&oZA=?>G(lJ;J?fma=%5 zZv}Z_vTZ$xYTgSX13?a&>C@n&>aa{m!8huChp@ugC?yev*f+fa4JD8FB`jOrd%=X~ zu*C5sE9R9x=_>PIe!HX19@{Cv@Zh<@uL`r(3G>caEC^~)DRj{nwp=nNGv@LEldavo z*E<3l%-1~6`u=!&dAR-lve4<34s8*?x6cOp|5;EAQ_70Z9IPh_mIGr*Qzpo7Ql0k0 zwV@xR&NrCneQO0uXSFb?oZJIcGFcK7iEi#0qCV!;Wji@1tOG^$-K#Dd4souTElf|Y zTKr^SsEfMCyy<04(zAD;Z;Qu2o=_C$`f|s#+eR*EK>27$b6TD{sbjZvaKnlDD?^D_cx~0re!X zpCcQTQaYz`yyadt)7R6-+zOb?4xQlG%bpT?`sYQrPcIieW%)Y^=;CG5tX;MN!_YM< zFL0OGLI%xkE<4gEZUV9-kD2*0Fetz?&WmUEiDz><&Of?m1`_jh^>bP0l+XkK;$fz$ literal 645 zcmeAS@N?(olHy`uVBq!ia0vp^3qY8I4M=vMPuB%fjKx9jP7LeL$-HD>V6yjgaSW-L z^Y-rPT;V{8wuk3AI@y@4wKy_cQg3-MztMT0(GZrQva(67%{NCf`S`q<#?RS*S8kJw z7hCUUHLutcXdVtQZPTiMj4|sUR@%Eq`8dvfNry>c&MU;sN=;%PwA?v~(&lI{EJ zA{t6ccT~hSloaPYXJNc_XZ`&9Z7M&1{5*U!`z-sCmAN(3g%r;A^y&*L^!juHNnRfi z+xRSqeU!yRlQGDv;moI(ufIp~8?&6qDOM6u@b&2pXfQEWbz;19-=xGU2g0Ccg$LWY-l_D+mJht!^`WSR@vnRD44mHlum zRNh0w!An_0!SfZ+A=aXTTodfS^j*-Hk+y72k+6bqFUV!)YEF!sI=q3Zx;K7i#1X*^ b3<0mrqn95ztPm630#f7Y>gTe~DWM4fLE!Qd diff --git a/core/assets-raw/sprites/blocks/units/basic-assembler-module-side2.png b/core/assets-raw/sprites/blocks/units/basic-assembler-module-side2.png index 0137cd141deb414806e2ac86a0169cdaa7d86154..6ac72798d9c8ec64b954a1638e28ff23ac57fcdd 100644 GIT binary patch delta 1058 zcmdnXdYEH^K|S+dPZ!6KiaBrZ+7{h0V`zKmKl98Iua_m3jdz|2?CjQ`aBOkmWbPj_ zdBq&tFLB<9d>6CxmWWheSkylT74aD@=YxZ9>E3JP;9?MFK!AkS+4tfb>im`mUp`;` z827Q8x?mcqNBvXIi%j zJPfMoWSALjbjmj-SSUV8tR`dg<_EWa@A1DMR?DueFg@&C$#nq*ebXL&L51g1$AJbM zZ2KX%|Idm1`aio~rL&%R_Jb{3Nkrk~?cJgN&gULWUvblLm>1$^A$EU(niJ!vH3o-v z{$N`wSS3(fpD>w!k@!1KZ>E~h&+ohDN;2-;@@ZZ{fE3Uz%hvR4P}}FyaAsxC1~VY7 zquEp7Thr-zV&T?%!bZn9Ji?ilte#(8&-ib@&dKGoFRA`yN-19o^jb=~DTs96`cYL) zu_tn)!_{>b-x7m`?%tT{#!NsX9rAvVt zCY@m~I|`(YB)H$60$Ts%PGte_Bkwsq1sQ&B4?eJfTsym+|Ggj6lI}$A|MAf^;^pg)*W)U$yOKf!nH z7%;edw;chJ=fGxaGj2M0tNaKr%ZapTV3_ZYkY31ev-dme<=EVovZJyQuVV|7PjBpL zFnL^IwyW4d^{(Zj>F?S&e4Y5tT$GWipU3dht6@(`eRkprnb}+c7!TtJ+xdp*29@jZoPfYd$T9Gabbgh29 zY2O8%9|ykOn_}|y{WeQChce@>4-)zqZieQz0Ate>sBpDL?*)}72j=t~c*r?n-5but zo2x~Q`{V0kVjfK>TDQ1h=d|sqoA#gD+H_C+OkJ2>$k$^f+ivgh+NI`no{>N2i)Dgi zP4eUkhVl0G@q3POoY;J5;`_7j_v^#~leUsWJ=@g!vgb-Vy}+b=@>TV|jU1q0_Slpu z`lYf39PS$o4}ntClR3VgCD$#S7>iaWw#d22-+0t?<bo2)78&qol`;+0B9)YdjJ3c literal 701 zcmeAS@N?(olHy`uVBq!ia0vp^3qY8I4M=vMPuB%fjKx9jP7LeL$-HD>U@G@?aSW-L z^Y-p(U+F-Jwuk*1x=Xk+RQ6tQFyq+h$$aJDG^I^PeO2BB9Y|?(lSt`*UZmIctn%8i zc}G{@m#R58lLcrXcCcXD>U-i2_J<8ZYX2WT{PrmSkD#wyH`ZEyRApMyv=c;bPz8|- zmVQ({d0k5UQ2o27b%h@7%ddyZr!sxI*!5$ZfWmvJ72W+B{!t9#g|B5d!N@Lt~a~cP$hhVm{ zh{Dk|odFFZTTPsHKPp@Eb={8O(;IypW)<2<-?dyY>7C3)@ABl9Jg2fV7iHeeV*t9X z=1Y-vPs|QJXxb6b;L{#v=>+oS0WCL;1GdpZVM{sY@*b`c7L=P8 zr~d!ToyEI==2~nO(H2zTjpX+z=UcJF+WpI=yAlhZMp&EiIB%?9AG3?w?l{Yx-EQYw ztlb+*dIK8vycAi;P?jdoYVfpf|`DxM=-Oo4pCC1!u6{1-oD!M { - t.button("@editor.center", Icon.move, Styles.cleart, view::center).growX().margin(9f); + t.button("@editor.center", Icon.move, Styles.flatt, view::center).growX().margin(9f); }).growX().top(); } mid.row(); mid.table(t -> { - t.button("@editor.cliffs", Icon.terrain, Styles.cleart, editor::addCliffs).growX().margin(9f); + t.button("@editor.cliffs", Icon.terrain, Styles.flatt, editor::addCliffs).growX().margin(9f); }).growX().top(); }).margin(0).left().growY(); diff --git a/core/src/mindustry/editor/MapGenerateDialog.java b/core/src/mindustry/editor/MapGenerateDialog.java index fce71c044b..cc9f751d5e 100644 --- a/core/src/mindustry/editor/MapGenerateDialog.java +++ b/core/src/mindustry/editor/MapGenerateDialog.java @@ -63,7 +63,7 @@ public class MapGenerateDialog extends BaseDialog{ shown(this::setup); addCloseListener(); - var style = Styles.cleart; + var style = Styles.flatt; buttons.defaults().size(180f, 64f).pad(2f); buttons.button("@back", Icon.left, this::hide); @@ -334,7 +334,7 @@ public class MapGenerateDialog extends BaseDialog{ if(filter.isPost() && applied) continue; - p.button((icon == '\0' ? "" : icon + " ") + filter.name(), Styles.cleart, () -> { + p.button((icon == '\0' ? "" : icon + " ") + filter.name(), Styles.flatt, () -> { filter.randomize(); filters.add(filter); rebuildFilters(); @@ -344,7 +344,7 @@ public class MapGenerateDialog extends BaseDialog{ if(++i % 3 == 0) p.row(); } - p.button(Iconc.refresh + " " + Core.bundle.get("filter.defaultores"), Styles.cleart, () -> { + p.button(Iconc.refresh + " " + Core.bundle.get("filter.defaultores"), Styles.flatt, () -> { maps.addDefaultOres(filters); rebuildFilters(); update(); diff --git a/core/src/mindustry/editor/WaveGraph.java b/core/src/mindustry/editor/WaveGraph.java index af80ab18d6..398443c177 100644 --- a/core/src/mindustry/editor/WaveGraph.java +++ b/core/src/mindustry/editor/WaveGraph.java @@ -181,7 +181,7 @@ public class WaveGraph extends Table{ colors.clear(); colors.left(); - colors.button("@waves.units.hide", Styles.cleart, () -> { + colors.button("@waves.units.hide", Styles.flatt, () -> { if(hidden.size == usedCopy.size){ hidden.clear(); }else{ diff --git a/core/src/mindustry/editor/WaveInfoDialog.java b/core/src/mindustry/editor/WaveInfoDialog.java index 7c4d4a3936..083a6a7d8e 100644 --- a/core/src/mindustry/editor/WaveInfoDialog.java +++ b/core/src/mindustry/editor/WaveInfoDialog.java @@ -80,7 +80,7 @@ public class WaveInfoDialog extends BaseDialog{ dialog.addCloseButton(); dialog.setFillParent(false); dialog.cont.table(Tex.button, t -> { - var style = Styles.cleart; + var style = Styles.flatt; t.defaults().size(210f, 58f); t.button("@waves.copy", Icon.copy, style, () -> { diff --git a/core/src/mindustry/logic/LStatements.java b/core/src/mindustry/logic/LStatements.java index 17498f9dc6..3dfaf82aaf 100644 --- a/core/src/mindustry/logic/LStatements.java +++ b/core/src/mindustry/logic/LStatements.java @@ -516,7 +516,7 @@ public class LStatements{ //sensors new Table(i -> { for(LAccess sensor : LAccess.senseable){ - i.button(sensor.name(), Styles.cleart, () -> { + i.button(sensor.name(), Styles.flatt, () -> { stype("@" + sensor.name()); hide.run(); }).size(240f, 40f).self(c -> tooltip(c, sensor)).row(); diff --git a/core/src/mindustry/logic/LogicDialog.java b/core/src/mindustry/logic/LogicDialog.java index 50652c5d10..dc36d41fc4 100644 --- a/core/src/mindustry/logic/LogicDialog.java +++ b/core/src/mindustry/logic/LogicDialog.java @@ -43,7 +43,7 @@ public class LogicDialog extends BaseDialog{ dialog.cont.pane(p -> { p.margin(10f); p.table(Tex.button, t -> { - TextButtonStyle style = Styles.cleart; + TextButtonStyle style = Styles.flatt; t.defaults().size(280f, 60f).left(); t.button("@schematic.copy", Icon.copy, style, () -> { @@ -159,7 +159,7 @@ public class LogicDialog extends BaseDialog{ LStatement example = prov.get(); if(example instanceof InvalidStatement || example.hidden() || (example.privileged() && !privileged) || (example.nonPrivileged() && privileged)) continue; - TextButtonStyle style = new TextButtonStyle(Styles.cleart); + TextButtonStyle style = new TextButtonStyle(Styles.flatt); style.fontColor = example.color(); style.font = Fonts.outline; diff --git a/core/src/mindustry/ui/Styles.java b/core/src/mindustry/ui/Styles.java index c6f25cd7c0..ecd5d549c2 100644 --- a/core/src/mindustry/ui/Styles.java +++ b/core/src/mindustry/ui/Styles.java @@ -28,8 +28,23 @@ public class Styles{ public static ButtonStyle defaultb, underlineb; - public static TextButtonStyle defaultt, nodet, cleart, nonet, clearPartialt, clearTogglet, logicTogglet, clearToggleMenut, togglet, transt, fullTogglet, squareTogglet, logict; + /** Default text button style - gray corners at 45 degrees. */ + public static TextButtonStyle defaultt, + /** Flat, square, opaque. */ + flatt, + /** No background whatsoever, only text. */ + nonet, + clearPartialt, + clearTogglet, + logicTogglet, + clearToggleMenut, + togglet, transt, + fullTogglet, + squareTogglet, + logict; + public static ImageButtonStyle defaulti, nodei, emptyi, emptytogglei, selecti, logici, geni, colori, accenti, cleari, clearFulli, clearPartiali, clearTogglei, clearTransi, clearToggleTransi, clearTogglePartiali; + public static ScrollPaneStyle defaultPane, horizontalPane, smallPane, noBarPane; public static SliderStyle defaultSlider; public static LabelStyle defaultLabel, outlineLabel, techLabel; @@ -75,14 +90,6 @@ public class Styles{ down = buttonDown; up = button; }}; - nodet = new TextButtonStyle(){{ - disabled = button; - font = Fonts.def; - fontColor = Color.white; - disabledFontColor = Color.gray; - up = buttonOver; - over = buttonDown; - }}; nonet = new TextButtonStyle(){{ font = Fonts.outline; fontColor = Color.lightGray; @@ -90,7 +97,7 @@ public class Styles{ disabledFontColor = Color.gray; up = none; }}; - cleart = new TextButtonStyle(){{ + flatt = new TextButtonStyle(){{ over = flatOver; font = Fonts.def; fontColor = Color.white; diff --git a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java index cf5ab075ee..aec0d63672 100644 --- a/core/src/mindustry/ui/dialogs/CustomRulesDialog.java +++ b/core/src/mindustry/ui/dialogs/CustomRulesDialog.java @@ -445,7 +445,7 @@ public class CustomRulesDialog extends BaseDialog{ for(Weather weather : content.getBy(ContentType.weather)){ if(weather.hidden) continue; - t.button(weather.localizedName, Styles.cleart, () -> { + t.button(weather.localizedName, Styles.flatt, () -> { rules.weather.add(new WeatherEntry(weather)); rebuild[0].run(); diff --git a/core/src/mindustry/ui/dialogs/LoadDialog.java b/core/src/mindustry/ui/dialogs/LoadDialog.java index f77bbfcf55..3b8f3dc1b9 100644 --- a/core/src/mindustry/ui/dialogs/LoadDialog.java +++ b/core/src/mindustry/ui/dialogs/LoadDialog.java @@ -103,7 +103,7 @@ public class LoadDialog extends BaseDialog{ any = true; - TextButton button = new TextButton("", Styles.cleart); + TextButton button = new TextButton("", Styles.flatt); button.getLabel().remove(); button.clearChildren(); diff --git a/core/src/mindustry/ui/dialogs/LoadoutDialog.java b/core/src/mindustry/ui/dialogs/LoadoutDialog.java index eff8f24164..8e342ee67b 100644 --- a/core/src/mindustry/ui/dialogs/LoadoutDialog.java +++ b/core/src/mindustry/ui/dialogs/LoadoutDialog.java @@ -89,12 +89,12 @@ public class LoadoutDialog extends BaseDialog{ for(ItemStack stack : stacks){ items.table(Tex.pane, t -> { t.margin(4).marginRight(8).left(); - t.button("-", Styles.cleart, () -> { + t.button("-", Styles.flatt, () -> { stack.amount = Math.max(stack.amount - step(stack.amount), 0); updater.run(); }).size(bsize); - t.button("+", Styles.cleart, () -> { + t.button("+", Styles.flatt, () -> { stack.amount = Math.min(stack.amount + step(stack.amount), capacity); updater.run(); }).size(bsize); diff --git a/core/src/mindustry/ui/dialogs/MapsDialog.java b/core/src/mindustry/ui/dialogs/MapsDialog.java index 5b2aff38d3..2452e39a36 100644 --- a/core/src/mindustry/ui/dialogs/MapsDialog.java +++ b/core/src/mindustry/ui/dialogs/MapsDialog.java @@ -180,7 +180,7 @@ public class MapsDialog extends BaseDialog{ mapTable.row(); } - TextButton button = mapTable.button("", Styles.cleart, () -> showMapInfo(map)).width(mapsize).pad(8).get(); + TextButton button = mapTable.button("", Styles.flatt, () -> showMapInfo(map)).width(mapsize).pad(8).get(); button.clearChildren(); button.margin(9); button.add(map.name()).width(mapsize - 18f).center().get().setEllipsis(true); diff --git a/core/src/mindustry/ui/dialogs/ModsDialog.java b/core/src/mindustry/ui/dialogs/ModsDialog.java index c792fe7261..7dc9aacf27 100644 --- a/core/src/mindustry/ui/dialogs/ModsDialog.java +++ b/core/src/mindustry/ui/dialogs/ModsDialog.java @@ -160,7 +160,7 @@ public class ModsDialog extends BaseDialog{ buttons.button("@mod.import", Icon.add, style, () -> { BaseDialog dialog = new BaseDialog("@mod.import"); - TextButtonStyle bstyle = Styles.cleart; + TextButtonStyle bstyle = Styles.flatt; dialog.cont.table(Tex.button, t -> { t.defaults().size(300f, 70f); diff --git a/core/src/mindustry/ui/dialogs/ResearchDialog.java b/core/src/mindustry/ui/dialogs/ResearchDialog.java index cb9de61de3..3a86d929a8 100644 --- a/core/src/mindustry/ui/dialogs/ResearchDialog.java +++ b/core/src/mindustry/ui/dialogs/ResearchDialog.java @@ -11,6 +11,7 @@ import arc.scene.actions.*; import arc.scene.event.*; import arc.scene.style.*; import arc.scene.ui.*; +import arc.scene.ui.TextButton.*; import arc.scene.ui.layout.*; import arc.struct.*; import arc.util.*; @@ -30,6 +31,7 @@ import mindustry.ui.layout.TreeLayout.*; import java.util.*; import static mindustry.Vars.*; +import static mindustry.gen.Tex.*; public class ResearchDialog extends BaseDialog{ public static boolean debugShowRequirements = false; @@ -667,7 +669,14 @@ public class ResearchDialog extends BaseDialog{ if(mobile && locked(node)){ b.row(); - b.button("@research", Icon.ok, Styles.nodet, () -> spend(node)) + b.button("@research", Icon.ok, new TextButtonStyle(){{ + disabled = Tex.button; + font = Fonts.def; + fontColor = Color.white; + disabledFontColor = Color.gray; + up = buttonOver; + over = buttonDown; + }}, () -> spend(node)) .disabled(i -> !canSpend(node)).growX().height(44f).colspan(3); } }); diff --git a/core/src/mindustry/ui/dialogs/SchematicsDialog.java b/core/src/mindustry/ui/dialogs/SchematicsDialog.java index ed8b2380bb..76c2a2786f 100644 --- a/core/src/mindustry/ui/dialogs/SchematicsDialog.java +++ b/core/src/mindustry/ui/dialogs/SchematicsDialog.java @@ -258,7 +258,7 @@ public class SchematicsDialog extends BaseDialog{ dialog.cont.pane(p -> { p.margin(10f); p.table(Tex.button, t -> { - TextButtonStyle style = Styles.cleart; + TextButtonStyle style = Styles.flatt; t.defaults().size(280f, 60f).left(); t.row(); t.button("@schematic.copy.import", Icon.copy, style, () -> { @@ -309,7 +309,7 @@ public class SchematicsDialog extends BaseDialog{ dialog.cont.pane(p -> { p.margin(10f); p.table(Tex.button, t -> { - TextButtonStyle style = Styles.cleart; + TextButtonStyle style = Styles.flatt; t.defaults().size(280f, 60f).left(); if(steam && !s.hasSteamID()){ t.button("@schematic.shareworkshop", Icon.book, style, diff --git a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java index 87129459dd..3b6edecba4 100644 --- a/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java +++ b/core/src/mindustry/ui/dialogs/SettingsMenuDialog.java @@ -85,7 +85,7 @@ public class SettingsMenuDialog extends BaseDialog{ dataDialog.cont.table(Tex.button, t -> { t.defaults().size(280f, 60f).left(); - TextButtonStyle style = Styles.cleart; + TextButtonStyle style = Styles.flatt; t.button("@settings.cleardata", Icon.trash, style, () -> ui.showConfirm("@confirm", "@settings.clearall.confirm", () -> { ObjectMap map = new ObjectMap<>(); @@ -248,7 +248,7 @@ public class SettingsMenuDialog extends BaseDialog{ void rebuildMenu(){ menu.clearChildren(); - TextButtonStyle style = Styles.cleart; + TextButtonStyle style = Styles.flatt; menu.defaults().size(300f, 60f); menu.button("@settings.game", style, () -> visible(0));