You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2018/03/24 13:11:03 UTC

[1/2] cayenne git commit: Fix Win text field UI compilation on JDK 9 and 10

Repository: cayenne
Updated Branches:
  refs/heads/master c55e46f0c -> 23732634d


Fix Win text field UI compilation on JDK 9 and 10


Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/a985d7b8
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/a985d7b8
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/a985d7b8

Branch: refs/heads/master
Commit: a985d7b85addc6c130738ee5a38fb51617999a70
Parents: c55e46f
Author: stariy <st...@gmail.com>
Authored: Sat Mar 24 12:47:05 2018 +0300
Committer: stariy <st...@gmail.com>
Committed: Sat Mar 24 12:47:05 2018 +0300

----------------------------------------------------------------------
 .../modeler/win/WinCustomTextFieldUI.java       | 24 ++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/a985d7b8/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinCustomTextFieldUI.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinCustomTextFieldUI.java b/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinCustomTextFieldUI.java
index 3828e69..bb6a278 100644
--- a/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinCustomTextFieldUI.java
+++ b/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinCustomTextFieldUI.java
@@ -19,11 +19,11 @@
 
 package org.apache.cayenne.modeler.win;
 
+import java.lang.reflect.Constructor;
 import javax.swing.JComponent;
 import javax.swing.plaf.ComponentUI;
 import javax.swing.plaf.basic.BasicTextFieldUI;
 
-import com.jgoodies.looks.windows.WindowsTextFieldUI;
 import org.apache.cayenne.modeler.util.combo.EditorTextField;
 
 /**
@@ -31,6 +31,19 @@ import org.apache.cayenne.modeler.util.combo.EditorTextField;
  */
 public class WinCustomTextFieldUI extends BasicTextFieldUI {
 
+    private static Constructor<? extends ComponentUI> winFieldUIConstructor;
+
+    static {
+        try {
+            @SuppressWarnings("unchecked")
+            Class<? extends ComponentUI> winFieldUIClass = (Class<? extends ComponentUI>)Class
+                    .forName("com.jgoodies.looks.windows.WindowsTextFieldUI");
+            winFieldUIConstructor = winFieldUIClass.getDeclaredConstructor();
+        } catch (ClassNotFoundException | NoSuchMethodException ex) {
+            winFieldUIConstructor = null;
+        }
+    }
+
     public WinCustomTextFieldUI() {
     }
 
@@ -38,7 +51,14 @@ public class WinCustomTextFieldUI extends BasicTextFieldUI {
         if(c instanceof EditorTextField) {
             c.putClientProperty("TextField.fullSizeBackground", Boolean.TRUE);
         }
-        return new WindowsTextFieldUI();
+        if(winFieldUIConstructor == null) {
+            return new BasicTextFieldUI();
+        }
+        try {
+            return winFieldUIConstructor.newInstance();
+        } catch (Exception ex) {
+            return new BasicTextFieldUI();
+        }
     }
 
 }


[2/2] cayenne git commit: Modeler: cleanup Windows UI

Posted by nt...@apache.org.
Modeler: cleanup Windows UI


Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/23732634
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/23732634
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/23732634

Branch: refs/heads/master
Commit: 23732634d0db1e1a4ea1578e6af51318e44c6c8f
Parents: a985d7b
Author: stariy <st...@gmail.com>
Authored: Sat Mar 24 16:01:56 2018 +0300
Committer: stariy <st...@gmail.com>
Committed: Sat Mar 24 16:01:56 2018 +0300

----------------------------------------------------------------------
 .../modeler/win/WinPlatformInitializer.java      |  10 +++++++++-
 .../cayenne/modeler/images/CayenneModeler.png    | Bin 5321 -> 1442 bytes
 2 files changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/23732634/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinPlatformInitializer.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinPlatformInitializer.java b/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinPlatformInitializer.java
index 7b42d8f..fff78c1 100644
--- a/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinPlatformInitializer.java
+++ b/modeler/cayenne-modeler-win-ext/src/main/java/org/apache/cayenne/modeler/win/WinPlatformInitializer.java
@@ -27,7 +27,9 @@ import org.slf4j.LoggerFactory;
 import javax.swing.JFrame;
 import javax.swing.UIManager;
 import javax.swing.BorderFactory;
-import java.awt.Color;
+import javax.swing.border.AbstractBorder;
+import javax.swing.border.Border;
+import java.awt.*;
 
 public class WinPlatformInitializer implements PlatformInitializer {
 
@@ -54,6 +56,8 @@ public class WinPlatformInitializer implements PlatformInitializer {
         UIManager.put("Tree.collapsedIcon",     ModelerUtil.buildIcon("icon-arrow-closed.png"));
         UIManager.put("Tree.paintLines",        Boolean.FALSE);
         UIManager.put("Tree.drawDashedFocusIndicator",  Boolean.FALSE);
+        UIManager.put("Tree.selectionBackground",       darkGrey);
+        UIManager.put("Tree.selectionForeground",       Color.BLACK);
         UIManager.put("Tree.selectionBorderColor",      UIManager.get("Tree.selectionBackground"));
         UIManager.put("ScrollPane.border",      BorderFactory.createEmptyBorder());
         UIManager.put("Table.scrollPaneBorder", BorderFactory.createEmptyBorder());
@@ -62,5 +66,9 @@ public class WinPlatformInitializer implements PlatformInitializer {
         UIManager.put("Separator.background",   darkGrey);
         UIManager.put("Separator.foreground",   darkGrey);
         UIManager.put("Separator.opaque",       Boolean.TRUE);
+        UIManager.put("MenuItem.selectionBackground",   darkGrey);
+        UIManager.put("MenuItem.selectionForeground",   Color.BLACK);
+        UIManager.put("MenuItem.opaque",        Boolean.TRUE);
+        UIManager.put("Button.border", BorderFactory.createEmptyBorder(2, 2, 2, 2));
     }
 }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/23732634/modeler/cayenne-modeler/src/main/resources/org/apache/cayenne/modeler/images/CayenneModeler.png
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/resources/org/apache/cayenne/modeler/images/CayenneModeler.png b/modeler/cayenne-modeler/src/main/resources/org/apache/cayenne/modeler/images/CayenneModeler.png
index 5619fd7..e7de158 100644
Binary files a/modeler/cayenne-modeler/src/main/resources/org/apache/cayenne/modeler/images/CayenneModeler.png and b/modeler/cayenne-modeler/src/main/resources/org/apache/cayenne/modeler/images/CayenneModeler.png differ