Repository: cayenne
Updated Branches:
  refs/heads/master 263ac1c9e -> 77c59c75e


New welcome screen design


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

Branch: refs/heads/master
Commit: 77c59c75e018715bbc7594a71e3dc22b936d978e
Parents: 32399f9
Author: Nikita Timofeev <stari...@gmail.com>
Authored: Mon Dec 5 11:16:24 2016 +0300
Committer: Andrus Adamchik <and...@objectstyle.com>
Committed: Tue Dec 6 10:22:46 2016 +0300

----------------------------------------------------------------------
 .../modeler/dialog/welcome/WelcomeScreen.java   | 37 +++++++++++++++++---
 .../cayenne/modeler/pref/ComponentGeometry.java | 18 +++++-----
 2 files changed, 42 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/77c59c75/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/welcome/WelcomeScreen.java
----------------------------------------------------------------------
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/welcome/WelcomeScreen.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/welcome/WelcomeScreen.java
index 21793a6..b9598b7 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/welcome/WelcomeScreen.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/dialog/welcome/WelcomeScreen.java
@@ -19,7 +19,12 @@
 
 package org.apache.cayenne.modeler.dialog.welcome;
 
+import java.awt.Color;
+import java.awt.GradientPaint;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
 import java.awt.GridBagLayout;
+import java.awt.Paint;
 import java.awt.event.ActionEvent;
 import java.io.File;
 import java.util.List;
@@ -30,6 +35,7 @@ import javax.swing.ImageIcon;
 import javax.swing.JButton;
 import javax.swing.JList;
 import javax.swing.JPanel;
+import javax.swing.JScrollPane;
 
 import org.apache.cayenne.modeler.Application;
 import org.apache.cayenne.modeler.ModelerPreferences;
@@ -43,7 +49,17 @@ import org.apache.cayenne.modeler.util.ModelerUtil;
  * Welcome screen (CAY-894) is a panel shown when no project is open. User can 
quickly
  * create new project or open an existing one.
  */
-public class WelcomeScreen extends JPanel implements RecentFileListListener, 
RecentFileListRenderer.OnFileClickListener {
+public class WelcomeScreen extends JScrollPane implements 
RecentFileListListener, RecentFileListRenderer.OnFileClickListener {
+
+    /**
+     * Top color of gradient background
+     */
+    private static final Color TOP_GRADIENT = new Color(153, 153, 153);
+
+    /**
+     * Bottom color of gradient background
+     */
+    private static final Color BOTTOM_GRADIENT = new Color(230, 230, 230);
 
     /**
      * List of recent projects
@@ -52,6 +68,8 @@ public class WelcomeScreen extends JPanel implements 
RecentFileListListener, Rec
 
     private JPanel buttonsPanel;
 
+    private JPanel mainPanel;
+
     public WelcomeScreen() {
         initView();
     }
@@ -60,9 +78,20 @@ public class WelcomeScreen extends JPanel implements 
RecentFileListListener, Rec
      * Creates all necessary components
      */
     protected void initView() {
-        setLayout(new GridBagLayout());
+        mainPanel = new JPanel(new GridBagLayout()) {
+            @Override
+            public void paintComponent(Graphics g) {
+                // paint gradient background
+                Graphics2D g2 = (Graphics2D) g.create();
+                Paint paint = new GradientPaint(0, 0, TOP_GRADIENT, 0, 
getHeight(), BOTTOM_GRADIENT);
+                g2.setPaint(paint);
+                g2.fillRect(0, 0, getWidth(), getHeight());
+                g2.dispose();
+            }
+        };
         initButtonsPane();
         initFileListPane();
+        setViewportView(mainPanel);
     }
 
     private void initFileListPane() {
@@ -79,7 +108,7 @@ public class WelcomeScreen extends JPanel implements 
RecentFileListListener, Rec
         recentProjectsList.setCellRenderer(new 
RecentFileListRenderer(recentProjectsList, this));
 
         fileListPanel.add(recentProjectsList);
-        add(fileListPanel);
+        mainPanel.add(fileListPanel);
     }
 
     private void initButtonsPane() {
@@ -92,7 +121,7 @@ public class WelcomeScreen extends JPanel implements 
RecentFileListListener, Rec
         initButton("open", openButtonY, OpenProjectAction.class);
         initButton("new", newButtonY, NewProjectAction.class);
 
-        add(buttonsPanel);
+        mainPanel.add(buttonsPanel);
     }
 
     private void initButton(String name, int y,  Class<? extends Action> 
actionClass) {

http://git-wip-us.apache.org/repos/asf/cayenne/blob/77c59c75/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/ComponentGeometry.java
----------------------------------------------------------------------
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/ComponentGeometry.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/ComponentGeometry.java
index 0f24f16..78b1b5a 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/ComponentGeometry.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/pref/ComponentGeometry.java
@@ -67,14 +67,14 @@ public class ComponentGeometry extends CayennePreference {
 
             @Override
             public void componentResized(ComponentEvent e) {
-                setWidth(new Integer(window.getWidth()));
-                setHeight(new Integer(window.getHeight()));
+                setWidth(window.getWidth());
+                setHeight(window.getHeight());
             }
 
             @Override
             public void componentMoved(ComponentEvent e) {
-                setX(new Integer(window.getX()));
-                setY(new Integer(window.getY()));
+                setX(window.getX());
+                setY(window.getY());
             }
         });
     }
@@ -90,8 +90,8 @@ public class ComponentGeometry extends CayennePreference {
 
             @Override
             public void componentResized(ComponentEvent e) {
-                setWidth(new Integer(window.getWidth()));
-                setHeight(new Integer(window.getHeight()));
+                setWidth(window.getWidth());
+                setHeight(window.getHeight());
             }
         });
     }
@@ -119,7 +119,7 @@ public class ComponentGeometry extends CayennePreference {
     void updateIntProperty(Component c, String property, int defaultValue) {
         int i = getPreference().getInt(property, defaultValue);
         try {
-            PropertyUtils.setProperty(c, property, new Integer(i));
+            PropertyUtils.setProperty(c, property, i);
         }
         catch (Throwable th) {
             throw new PreferenceException("Error setting property: " + 
property, th);
@@ -153,13 +153,13 @@ public class ComponentGeometry extends CayennePreference {
 
     public void changeX(int xOffset) {
         if (xOffset != 0) {
-            setX(new Integer(getX(0) + xOffset));
+            setX(getX(0) + xOffset);
         }
     }
 
     public void changeY(int yOffset) {
         if (yOffset != 0) {
-            setY(new Integer(getY(0) + yOffset));
+            setY(getY(0) + yOffset);
         }
     }
 

Reply via email to