Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion assets/bundles/bundle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,8 @@ ai.config.oneTime = One-Time Pick
ai.config.logic.ui = Logic UI
ai.config.logic.unitBuildWarning = Allow UnitBuild addition bypass map rule\nCAUTION: Unexpected exit may corrupt map rules

emoji.switchDisplay = < Icon / List >
emoji.switchDisplay = \ue811 < Icon / List >
emoji.noResult = [lightgray]\ue815 No Result[]

MI2UI.MI2U = MI2U
LogicHelper.MI2U = Logic Helper
Expand Down Expand Up @@ -173,6 +174,7 @@ settings.LogicHelper.autocomplete = Auto Complete
settings.LogicHelper.split = Split

settings.Emojis.emojiPerRow = Emojis Per Row
settings.Emojis.emojiMaxCol = Max Display Columns

settings.mindow.scale = UI Scale

Expand Down
8 changes: 5 additions & 3 deletions assets/bundles/bundle_zh_CN.properties
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,6 @@ minimap.finder.buildRange = 建造范围
minimap.finder.mapRange = 全图
minimap.finder.showBlockNames = 显示方块名称

emoji.switchDisplay = < 图标 / 列表 >

ai.config.follow = 协助建造
ai.config.autorebuild = 自动重建
ai.config.attack = 攻击敌人
Expand All @@ -66,6 +64,9 @@ ai.config.oneTime = 一次性抓取
ai.config.logic.ui = 自定义UI
ai.config.logic.unitBuildWarning = 允许绕过规则添加单位建造语句\n警告:意外退出可能导致地图规则不可逆修改

emoji.switchDisplay = \ue811 < 图标 / 列表 >
emoji.noResult = [lightgray]\ue815 无结果[]

MI2UI.MI2U = MI2U
LogicHelper.MI2U = 逻辑辅助
Minimap.MI2U = 小地图
Expand Down Expand Up @@ -172,7 +173,8 @@ settings.Minimap.drawUnitOutline = 单位描边量
settings.LogicHelper.autocomplete = 自动补全
settings.LogicHelper.split = 分隔符

settings.Emojis.emojiPerRow = 每行Emoji数
settings.Emojis.emojiPerRow = 每行Emoji个数
settings.Emojis.emojiMaxCol = 最大显示列数

settings.mindow.scale = 窗口缩放

Expand Down
19 changes: 13 additions & 6 deletions src/mi2u/ui/EmojiMindow.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ public EmojiMindow() {

rebuildEmojiTable();

titlePane.table(t -> t.button(Iconc.list + " " + bundle.get("emoji.switchDisplay"), Styles.nonet, () -> {
titlePane.table(t -> t.button(bundle.get("emoji.switchDisplay"), Styles.nonet, () -> {
listMode = !listMode;
rebuild();
}).height(titleButtonSize).update(b -> b.setChecked(listMode)).growX()).grow().minWidth(32f);
Expand Down Expand Up @@ -83,8 +83,8 @@ public void rebuildEmojiTable(){
}
}
if (count == 0){
iconT.center().label(() -> "[lightgray]"+Iconc.cancel + " No Result[]").width(emojiPerRow * 40f).height(40f);
listT.center().label(() -> "[lightgray]"+Iconc.cancel + " No Result[]").width(emojiPerRow * 40f).height(40f);
iconT.center().label(() -> bundle.get("emoji.noResult")).width(emojiPerRow * 40f).height(40f);
listT.center().label(() -> bundle.get("emoji.noResult")).width(emojiPerRow * 40f).height(40f);
}else if (count < emojiPerRow){
for (int i = 0; i < emojiPerRow - count; i++){
iconT.image().color(Color.clear).size(40f);
Expand All @@ -94,8 +94,14 @@ public void rebuildEmojiTable(){

@Override
public void setupCont(Table cont){
int emojiPerRow = settings.getInt("emojiPerRow", 9);
int emojiMaxCol = settings.getInt("emojiMaxCol", 6);

rebuildEmojiTable();

cont.clear();
cont.table(t -> {
t.top();
t.table(s -> {
s.image(Icon.zoom).size(40f).padLeft(4f);
search = s.field(filter, text -> {
Expand All @@ -105,7 +111,7 @@ public void setupCont(Table cont){
search.setMessageText("@players.search");
}).growX().padRight(8f).row();

t.pane(listMode ? listT : iconT).maxHeight(Core.graphics.getHeight() / 3f).growX().update(p -> {
t.pane(listMode ? listT : iconT).growX().update(p -> {
p.setStyle(Styles.smallPane);
p.setScrollingDisabled(true, false);
Element e = Core.scene.hit(Core.input.mouseX(), Core.input.mouseY(), true);
Expand All @@ -115,13 +121,14 @@ public void setupCont(Table cont){
Core.scene.setScrollFocus(null);
}
});
});
}).width(emojiPerRow * 40f + 12f).height(emojiMaxCol * 40f + 48f);
}

@Override
public void initSettings(){
super.initSettings();
settings.sliderPref("emojiPerRow", 9, 6, 12, 1, i -> "" + i, i -> rebuildEmojiTable());
settings.sliderPref("emojiPerRow", 9, 6, 12, 1, i -> "" + i, i -> rebuild());
settings.sliderPref("emojiMaxCol", 6, 2, 12, 1, i -> "" + i, i -> rebuild());
}

private void updateEmoji(){
Expand Down
16 changes: 14 additions & 2 deletions src/mi2u/ui/elements/Mindow2.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,11 @@ public class Mindow2 extends Table{
public float fromx = 0, fromy = 0, curx = 0, cury = 0;
boolean dragging = false;
public boolean minimized = false;
public boolean hoverTitle = false;
protected Table titleBar = new Table(), titlePane = new Table(Styles.black6);
protected Table cont = new Table();
public SettingHandler settings;
protected MI2Utils.IntervalMillis interval = new MI2Utils.IntervalMillis(3);
protected MI2Utils.IntervalMillis interval = new MI2Utils.IntervalMillis(4);
public int edgesnap = Align.center;
@Nullable
public Mindow2 tbSnap, lrSnap;
Expand Down Expand Up @@ -70,7 +71,7 @@ public void rebuild(){
clear();

setupTitle();
var c = new MCollapser(titleBar, false).setCollapsed(true, () -> !this.hasMouse() && !minimized).setDirection(false, true).setDuration(0.1f);
var c = new MCollapser(titleBar, false).setCollapsed(true, () -> !hoverTitle && !minimized).setDirection(false, true).setDuration(0.1f);
add(c).growX();
//add(titleBar).growX();
row();
Expand All @@ -81,6 +82,17 @@ public void rebuild(){
add(cont).growX();
}
setTransform(true);

update(() -> {
if(hasMouse()){
hoverTitle = true;
interval.reset(3, 0);
}else {
if (interval.check(3, 3000)){
hoverTitle = false;
}
}
});
Comment on lines +85 to +95

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

尽量不要占用update吧,多个update不能共存

}

/**
Expand Down
Loading