Skip to content

Commit a7f862f

Browse files
committed
keep improving ui logic
1 parent eda4d79 commit a7f862f

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

src/main/java/ai/nets/samj/gui/ImageSelectionOnlyComboBox.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ protected void updateList() {
5555
DefaultComboBoxModel<ComboBoxItem> comboBoxModel = new DefaultComboBoxModel<ComboBoxItem>(objects);
5656
if (selected != null && objects.length != 0)
5757
comboBoxModel.setSelectedItem(selected);
58+
if (objects.length == 0)
59+
selected = null;
5860
this.cmbBox.setModel(comboBoxModel);
5961
} catch (Exception ex) {
6062
ex.printStackTrace();
@@ -70,7 +72,12 @@ public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
7072
public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
7173
try {
7274
ComboBoxItem item = (ComboBoxItem) this.cmbBox.getSelectedItem();
73-
if (selected == null || item == null || !selected.getId().equals(item.getId())) {
75+
if ((selected == null && item != null) || (selected != null && item == null)
76+
|| (selected != null && item != null && !selected.getId().equals(item.getId()))) {
77+
listener.modelActionsOnImageChanged();
78+
listener.imageActionsOnImageChanged();
79+
} else if (selected == null && item == null) {
80+
selected = null;
7481
listener.modelActionsOnImageChanged();
7582
listener.imageActionsOnImageChanged();
7683
}

src/main/java/ai/nets/samj/gui/MainGUI.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@ public MainGUI(List<SAMModel> modelList, ConsumerInterface consumer) {
110110
this.consumer.setGuiCallback(() -> {
111111
setTwoThirdsEnabled(false);
112112
cmbImages.updateList();
113+
if (cmbImages.getSelectedObject() == null)
114+
return;
113115
go.setEnabled(false);
114116
go.showAnimation(true);
115117
new Thread(() -> {
@@ -575,6 +577,10 @@ public void imageActionsOnImageChanged() {
575577
consumer.deactivateListeners();
576578
consumer.deselectImage();
577579
setTwoThirdsEnabled(false);
580+
if (MainGUI.this.cmbImages.getSelectedObject() == null) {
581+
go.setEnabled(false);
582+
return;
583+
}
578584
if (go.isEnabled())
579585
return;
580586
go.showAnimation(true);

0 commit comments

Comments
 (0)