This is an automated email from the ASF dual-hosted git repository.

asf-gitbox-commits pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git


The following commit(s) were added to refs/heads/master by this push:
     new f0ca368d4 CAT-2938 Modeler: prettier DB Import - part 1
f0ca368d4 is described below

commit f0ca368d4735aa32ce78700ec791533034f23999
Author: Andrus Adamchik <[email protected]>
AuthorDate: Fri May 8 20:08:40 2026 -0400

    CAT-2938 Modeler: prettier DB Import - part 1
    
    cleanup...
    
    * remove left toolbar lock that creates weird flickering (will this result 
in race conditions on slow DB loads?)
    * align panel grey font colors
---
 .../editor/datamap/dbimport/ConfigToolbar.java     |  5 +---
 .../datamap/dbimport/DbImportTreeCellRenderer.java |  1 +
 .../editor/datamap/dbimport/DbImportView.java      | 30 +++++++++++-----------
 .../editor/datamap/dbimport/DbSchemaToolbar.java   |  5 +---
 .../dbimport/action/LoadDbSchemaAction.java        |  2 --
 5 files changed, 18 insertions(+), 25 deletions(-)

diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ConfigToolbar.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ConfigToolbar.java
index 54affc1c3..3a0d935c1 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ConfigToolbar.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ConfigToolbar.java
@@ -26,9 +26,7 @@ import org.apache.cayenne.dbsync.reverse.dbimport.Schema;
 import 
org.apache.cayenne.modeler.ui.project.editor.datamap.dbimport.action.DbImportActions;
 import 
org.apache.cayenne.modeler.ui.project.editor.datamap.dbimport.tree.DbImportTreeNode;
 
-import javax.swing.JButton;
-import javax.swing.JToolBar;
-import javax.swing.border.EmptyBorder;
+import javax.swing.*;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -66,7 +64,6 @@ class ConfigToolbar extends JToolBar {
 
         this.levels = initLevels();
         addButtons();
-        this.setBorder(new EmptyBorder(0, 0, 0, 0));
     }
 
     void unlockButtons() {
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTreeCellRenderer.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTreeCellRenderer.java
index f575e8c07..5a00cf3c4 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTreeCellRenderer.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportTreeCellRenderer.java
@@ -96,6 +96,7 @@ public class DbImportTreeCellRenderer extends 
DefaultTreeCellRenderer {
         }
         if (node.getUserObject() instanceof String) {
             setIcon(null);
+            setEnabled(true);
             if (!sel) {
                 Color disabled = 
UIManager.getColor("Label.disabledForeground");
                 setForeground(disabled != null ? disabled : Color.GRAY);
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportView.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportView.java
index 740b545b1..99345b1cd 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportView.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbImportView.java
@@ -58,33 +58,33 @@ public class DbImportView extends ProjectPanel {
 
         DbImportTreeNode configRoot = new DbImportTreeNode(new 
ReverseEngineering());
         DbImportTree configTree = new DbImportTree(configRoot);
-        DbImportTreeModel configModel = new DbImportTreeModel(configRoot, 
true, "Configuration is empty.");
+        DbImportTreeModel configModel = new DbImportTreeModel(configRoot, 
true, "Create DB Import Rules");
         configTree.setRootVisible(false);
         configTree.setModel(configModel);
         configTree.setShowsRootHandles(true);
 
-        DbImportTreeNode dbRoot = new DbImportTreeNode(new 
ReverseEngineering());
-        DbImportTree dbTree = new DbImportTree(new TransferableNode(dbRoot));
-        DbImportTreeModel dbModel = new DbImportTreeModel(dbRoot, false, 
"Click 'Refresh DB Schema' above to load the schema.");
-        dbTree.setRootVisible(false);
-        dbTree.setShowsRootHandles(true);
-        dbTree.setModel(dbModel);
+        DbImportTreeNode dbSchemaRootNode = new DbImportTreeNode(new 
ReverseEngineering());
+        DbImportTree dbSchemaTree = new DbImportTree(new 
TransferableNode(dbSchemaRootNode));
+        DbImportTreeModel dbSchemaModel = new 
DbImportTreeModel(dbSchemaRootNode, false, "Click 'Refresh DB Schema' to load 
the schema.");
+        dbSchemaTree.setRootVisible(false);
+        dbSchemaTree.setShowsRootHandles(true);
+        dbSchemaTree.setModel(dbSchemaModel);
 
-        DbImportActions actions = new DbImportActions(app, this, configTree, 
dbTree);
-        this.dbSchemaPanel = new DBSchemaPanel(dbTree, configTree, actions);
+        DbImportActions actions = new DbImportActions(app, this, configTree, 
dbSchemaTree);
+        this.dbSchemaPanel = new DBSchemaPanel(dbSchemaTree, configTree, 
actions);
         this.dbSchemaToolbar = new DbSchemaToolbar(actions);
 
-        dbTree.setLoadDbSchemaAction(actions.getLoadDbSchemaAction());
+        dbSchemaTree.setLoadDbSchemaAction(actions.getLoadDbSchemaAction());
         this.configToolbar = new ConfigToolbar(configTree, actions);
-        this.configTree = new ReverseEngineeringTreePanel(session, configTree, 
dbTree, this.dbSchemaPanel, actions);
+        this.configTree = new ReverseEngineeringTreePanel(session, configTree, 
dbSchemaTree, this.dbSchemaPanel, actions);
         this.configTree.setTreeToolbar(configToolbar);
 
         // repaint the db schema tree whenever the config tree changes so 
ColorTreeRenderer refreshes
         configModel.addTreeModelListener(new TreeModelListener() {
-            public void treeNodesChanged(TreeModelEvent e) { dbTree.repaint(); 
}
-            public void treeNodesInserted(TreeModelEvent e) { 
dbTree.repaint(); }
-            public void treeNodesRemoved(TreeModelEvent e) { dbTree.repaint(); 
}
-            public void treeStructureChanged(TreeModelEvent e) { 
dbTree.repaint(); }
+            public void treeNodesChanged(TreeModelEvent e) { 
dbSchemaTree.repaint(); }
+            public void treeNodesInserted(TreeModelEvent e) { 
dbSchemaTree.repaint(); }
+            public void treeNodesRemoved(TreeModelEvent e) { 
dbSchemaTree.repaint(); }
+            public void treeStructureChanged(TreeModelEvent e) { 
dbSchemaTree.repaint(); }
         });
 
         ((ColorTreeRenderer) 
dbSchemaPanel.getSourceTree().getCellRenderer()).setReverseEngineeringTree(configTree);
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbSchemaToolbar.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbSchemaToolbar.java
index e1423e009..6559d2d46 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbSchemaToolbar.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/DbSchemaToolbar.java
@@ -22,9 +22,7 @@ package 
org.apache.cayenne.modeler.ui.project.editor.datamap.dbimport;
 import org.apache.cayenne.modeler.toolkit.AppAction;
 import 
org.apache.cayenne.modeler.ui.project.editor.datamap.dbimport.action.DbImportActions;
 
-import javax.swing.JButton;
-import javax.swing.JToolBar;
-import javax.swing.border.EmptyBorder;
+import javax.swing.*;
 
 class DbSchemaToolbar extends JToolBar {
 
@@ -43,7 +41,6 @@ class DbSchemaToolbar extends JToolBar {
         reverseEngineeringButton.setText("Run Import");
 
         setFloatable(false);
-        setBorder(new EmptyBorder(0, 0, 0, 0));
         add(configureButton);
         add(loadDbSchemaButton);
         add(reverseEngineeringButton);
diff --git 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/LoadDbSchemaAction.java
 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/LoadDbSchemaAction.java
index 5d228a998..fc690bbde 100644
--- 
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/LoadDbSchemaAction.java
+++ 
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/action/LoadDbSchemaAction.java
@@ -70,7 +70,6 @@ public class LoadDbSchemaAction extends 
DBConnectionAwareAction {
         view.getLoadDbSchemaButton().setEnabled(false);
         Thread thread = new Thread(() -> {
             LoadDbSchemaAction.this.setEnabled(false);
-            view.lockToolbarButtons();
             sourceTargetPanel.getMoveButton().setEnabled(false);
             sourceTargetPanel.getMoveInvertButton().setEnabled(false);
             try {
@@ -110,7 +109,6 @@ public class LoadDbSchemaAction extends 
DBConnectionAwareAction {
             } finally {
                 view.getLoadDbSchemaButton().setEnabled(true);
                 view.getLoadDbSchemaProgress().setVisible(false);
-                view.unlockToolbarButtons();
             }
         });
         thread.start();

Reply via email to