kerry
3 years ago
4 changed files with 52 additions and 6 deletions
@ -0,0 +1,42 @@
|
||||
package com.fr.design.icon; |
||||
|
||||
import com.fr.base.BaseUtils; |
||||
import com.fr.design.gui.itree.filetree.FileTreeIcon; |
||||
|
||||
import javax.swing.Icon; |
||||
import java.awt.Component; |
||||
import java.awt.Graphics; |
||||
|
||||
/** |
||||
* Created by kerry on 2021/11/11 |
||||
*/ |
||||
public class LocalFileIcon implements Icon { |
||||
private static final Icon FILE_LOCKED_ICON = BaseUtils.readIcon(FileTreeIcon.FILE_LOCKED_ICON_PATH); |
||||
private static final int OFFSET_X = 9; |
||||
private static final int OFFSET_Y = 8; |
||||
private final Icon mainIcon; |
||||
private final boolean showLock; |
||||
|
||||
public LocalFileIcon(Icon mainIcon, boolean showLock) { |
||||
this.mainIcon = mainIcon; |
||||
this.showLock = showLock; |
||||
} |
||||
|
||||
@Override |
||||
public void paintIcon(Component c, Graphics g, int x, int y) { |
||||
mainIcon.paintIcon(c, g, x, y); |
||||
if (showLock) { |
||||
FILE_LOCKED_ICON.paintIcon(c, g, OFFSET_X, OFFSET_Y); |
||||
} |
||||
} |
||||
|
||||
@Override |
||||
public int getIconWidth() { |
||||
return mainIcon.getIconWidth(); |
||||
} |
||||
|
||||
@Override |
||||
public int getIconHeight() { |
||||
return mainIcon.getIconHeight(); |
||||
} |
||||
} |
After Width: | Height: | Size: 225 B |
Loading…
Reference in new issue