diff --git a/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java b/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java index 0e81485849..d2d77117fd 100644 --- a/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java +++ b/designer-base/src/main/java/com/fr/design/file/MutilTempalteTabPane.java @@ -26,6 +26,7 @@ import com.fr.third.javax.annotation.Nonnull; import javax.swing.BorderFactory; import javax.swing.ButtonModel; import javax.swing.Icon; +import javax.swing.ImageIcon; import javax.swing.JComponent; import javax.swing.JMenu; import javax.swing.JMenuItem; @@ -69,6 +70,8 @@ public class MutilTempalteTabPane extends JComponent { private static Icon CLOSE = BaseUtils.readIcon("/com/fr/design/images/buttonicon/close_icon.png"); private static Icon MOUSE_OVER_CLOSE = BaseUtils.readIcon("/com/fr/design/images/buttonicon/mouseoverclose icon.png"); private static Icon MOUSE_PRESS_CLOSE = BaseUtils.readIcon("/com/fr/design/images/buttonicon/pressclose icon.png"); + private static final Icon WHITE_SAVING_CLOSE_ICON = new ImageIcon(MutilTempalteTabPane.class.getResource("/com/fr/design/images/file/white_saving_close.gif")); + private static final Icon GREY_SAVING_CLOSE_ICON = new ImageIcon(MutilTempalteTabPane.class.getResource("/com/fr/design/images/file/grey_saving_close.gif")); private static final String ELLIPSIS = "..."; private static final int GAP = 5; private static final int SMALLGAP = 3; @@ -386,8 +389,14 @@ public class MutilTempalteTabPane extends JComponent { selectedIcon = CLOSE; } if (i == selectedIndex) { + if (template.isSaving()) { + selectedIcon = WHITE_SAVING_CLOSE_ICON; + } startX[i - minPaintIndex] = paintSelectedTab(g2d, icon, templateStartX, name, selectedIcon); } else { + if (template.isSaving()) { + selectedIcon = GREY_SAVING_CLOSE_ICON; + } boolean isLeft = i < selectedIndex; startX[i - minPaintIndex] = paintUnSelectedTab(g2d, icon, templateStartX, name, selectedIcon, isLeft, mouseOveredIndex, i); } diff --git a/designer-base/src/main/resources/com/fr/design/images/file/grey_saving_close.gif b/designer-base/src/main/resources/com/fr/design/images/file/grey_saving_close.gif new file mode 100644 index 0000000000..a3c061b0f1 Binary files /dev/null and b/designer-base/src/main/resources/com/fr/design/images/file/grey_saving_close.gif differ diff --git a/designer-base/src/main/resources/com/fr/design/images/file/white_saving_close.gif b/designer-base/src/main/resources/com/fr/design/images/file/white_saving_close.gif new file mode 100644 index 0000000000..2c287adbb5 Binary files /dev/null and b/designer-base/src/main/resources/com/fr/design/images/file/white_saving_close.gif differ