• R/O
  • SSH
  • HTTPS

Commit

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

OmegaT の背景に画像を表示します。


Commit MetaInfo

Revision54 (tree)
Time2014-05-25 23:29:12
Authoryu-tang

Log Message

メインウィンドウに背景設定した場合、エディターも除外できるようにした

Change Summary

Incremental Difference

--- trunk/src/jp/sourceforge/users/yutang/omegat/plugin/moenizer/MoeUI.java (revision 53)
+++ trunk/src/jp/sourceforge/users/yutang/omegat/plugin/moenizer/MoeUI.java (revision 54)
@@ -174,7 +174,7 @@
174174 makeTransparentStatusbar = !exclude.contains(Parts.StatusBar);
175175 makeTransparentPaneTitlebar = !exclude.contains(Parts.PaneTitleBar);
176176 }
177- transparent();
177+ transparent(exclude);
178178 break;
179179
180180 case EDITOR:
@@ -207,7 +207,7 @@
207207 }
208208 }
209209
210- private void transparent() {
210+ private void transparent(EnumSet<Parts> exclude) {
211211 UIThreadsUtil.mustBeSwingThread();
212212
213213 if (makeTransparentMenubar) {
@@ -220,12 +220,13 @@
220220 MoeRootPaneUI ui = (MoeRootPaneUI) uis.get(Parts.MainWindow);
221221 ui.setMarginTop(marginTop);
222222 }
223- transparentRecursive(contentPane);
224- removeInstantStartBgColor();
223+ transparentRecursive(contentPane, exclude);
224+ if (!exclude.contains(Parts.EDITOR)) {
225+ removeInstantStartBgColor();
226+ }
225227
226228 // try to make transparent editor pane
227- //@@TODO エディターが除外パーツになっている場合を考慮
228- if (!isEditorTransparent) {
229+ if (!exclude.contains(Parts.EDITOR) && !isEditorTransparent) {
229230 isEditorTransparent = transparentEditor();
230231 if (!isEditorTransparent) {
231232 CoreEvents.registerProjectChangeListener(this);
@@ -374,7 +375,7 @@
374375 menuBar.setUI ( new WindowsMenuBarUI () {
375376 @Override
376377 public void paint ( Graphics g, JComponent c ) {
377- int alpha = 100; // transparent <- 0...255 -> opaque
378+ int alpha = 100; // transparent <- 0...255 -> opaque //@@TODO sdjust value
378379 Color oldColor = g.getColor();
379380 Color color = SystemColor.menu;
380381 g.setColor ( new Color( color.getRGB() & 0xffffff | alpha << 24, true));
@@ -385,20 +386,20 @@
385386 menuBar.setOpaque(false);
386387 }
387388
388- private void transparentRecursive(Component component) {
389+ private void transparentRecursive(Component component, EnumSet<Parts> exclude) {
389390 // StatusBar
390- if (!makeTransparentStatusbar && statusBar.equals(component)) {
391+ if (exclude.contains(Parts.StatusBar) && statusBar.equals(component)) {
391392 return;
392393 }
393394
394395 // ButtonPanel
395- if (!makeTransparentButtonPanel && buttonPanel.equals(component)) {
396+ if (exclude.contains(Parts.ButtonPanel) && buttonPanel.equals(component)) {
396397 return;
397398 }
398399
399400 if (component instanceof JComponent) {
400401 JComponent c = (JComponent) component;
401- if (c.isOpaque()) {
402+ if (c.isShowing() && c.isOpaque()) {
402403 c.setOpaque(false);
403404 }
404405 }
@@ -406,16 +407,16 @@
406407 if (component instanceof Container) {
407408 Container container = (Container) component;
408409 for (Component c: container.getComponents()) {
409- transparentRecursive(c);
410+ transparentRecursive(c, exclude);
410411 }
411412 }
412413
413414 if (component instanceof DockingDesktop) {
414- transparentRecursive((DockingDesktop) component);
415+ transparentRecursive((DockingDesktop) component, exclude);
415416 }
416417 }
417418
418- private void transparentRecursive(DockingDesktop desktop) {
419+ private void transparentRecursive(DockingDesktop desktop, EnumSet<Parts> exclude) {
419420 //DockingPanel dockingPanel = dockingDesktop.getDockingPanel(); // Scoping NG
420421 // DockingPanel にアクセスできないので、下位要素から上にさかのぼって処理する。
421422 // 階層的には、こんな感じになっている。
@@ -429,7 +430,10 @@
429430 ArrayList<Dockable> dockables = desktop.getContext()
430431 .getDockablesByState(desktop, DockableState.STATE_DOCKED);
431432 for (Dockable d : dockables) {
432- transparentRecursive(d);
433+ Parts part = Parts.valueOf(d.getDockKey().getKey());
434+ if (!exclude.contains(part)) {
435+ transparentRecursive(d);
436+ }
433437 }
434438 }
435439