OmegaT の背景に画像を表示します。
画像透過の opacity を設定ファイルによって指定可能にした
| @@ -43,7 +43,8 @@ | ||
| 43 | 43 | |
| 44 | 44 | private BufferedImage image = null; |
| 45 | 45 | private BufferedImage tiledImage = null; |
| 46 | - private float alpha = 0.5f; //@@TODO replace literal to constant | |
| 46 | + private final float DEFAULT_ALPHA = 0.5f; | |
| 47 | + private float alpha = DEFAULT_ALPHA; | |
| 47 | 48 | private int paintMarginTop = 0; |
| 48 | 49 | |
| 49 | 50 | public MoeLayeredPane() { |
| @@ -59,6 +60,10 @@ | ||
| 59 | 60 | this.repaint(); |
| 60 | 61 | } |
| 61 | 62 | |
| 63 | + public void setOpacity(float opacity) { | |
| 64 | + this.alpha = opacity; | |
| 65 | + } | |
| 66 | + | |
| 62 | 67 | @Override |
| 63 | 68 | protected void paintComponent(Graphics g) { |
| 64 | 69 | if (image != null) { |
| @@ -16,7 +16,6 @@ | ||
| 16 | 16 | |
| 17 | 17 | package jp.sourceforge.users.yutang.omegat.plugin.moenizer.effect; |
| 18 | 18 | |
| 19 | -import groovy.util.ConfigObject; | |
| 20 | 19 | import java.io.File; |
| 21 | 20 | import java.io.IOException; |
| 22 | 21 | import java.net.MalformedURLException; |
| @@ -25,8 +24,6 @@ | ||
| 25 | 24 | import java.util.EnumSet; |
| 26 | 25 | import java.util.List; |
| 27 | 26 | import java.util.Map; |
| 28 | -import java.util.logging.Level; | |
| 29 | -import java.util.logging.Logger; | |
| 30 | 27 | import javax.imageio.ImageIO; |
| 31 | 28 | import jp.sourceforge.users.yutang.omegat.plugin.moenizer.MoeUI; |
| 32 | 29 | import jp.sourceforge.users.yutang.omegat.plugin.moenizer.MoeUI.Parts; |
| @@ -97,9 +94,9 @@ | ||
| 97 | 94 | Log.log(ex.getMessage()); |
| 98 | 95 | } |
| 99 | 96 | |
| 97 | + ui.setOpacity(opacity); | |
| 98 | + | |
| 100 | 99 | ui.transparent(excludeParts); |
| 101 | - //@@TODO transparentEditor | |
| 102 | - //@@TODO opacity | |
| 103 | 100 | } |
| 104 | 101 | |
| 105 | 102 | } |
| @@ -58,6 +58,7 @@ | ||
| 58 | 58 | private DockingDesktop desktop; |
| 59 | 59 | private JPanel statusBar; |
| 60 | 60 | private AutoHideButtonPanel buttonPanel; |
| 61 | + private float opacity = 0.5f; | |
| 61 | 62 | |
| 62 | 63 | private boolean makeTransparentMenubar = true; |
| 63 | 64 | private boolean makeTransparentButtonPanel = true; |
| @@ -87,6 +88,11 @@ | ||
| 87 | 88 | return moeUI; |
| 88 | 89 | } |
| 89 | 90 | |
| 91 | + public void setOpacity(float opacity) { | |
| 92 | + this.opacity = opacity; | |
| 93 | + layeredPane.setOpacity(opacity); | |
| 94 | + } | |
| 95 | + | |
| 90 | 96 | public void transparent(EnumSet<Parts> exclude) { |
| 91 | 97 | if (exclude != null) { |
| 92 | 98 | makeTransparentMenubar = !exclude.contains(Parts.MenuBar); |