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 eab63dfa6 Modeler cleanup
eab63dfa6 is described below
commit eab63dfa6ffa5e902ab39ad9cf982aaa8548aabc
Author: Andrus Adamchik <[email protected]>
AuthorDate: Wed May 20 10:19:02 2026 -0400
Modeler cleanup
---
.../cayenne/modeler/toolkit/text/CMTextPane.java | 4 +--
.../modeler/toolkit/text/CMUndoableTextPane.java | 2 +-
.../modeler/ui/dbmerge/MergerTokenSelector.java | 3 +-
.../dbimport/ReverseEngineeringTreePanel.java | 27 ++++++++-------
.../editor/dbentity/main/PKGeneratorPanel.java | 15 ++++----
.../dbentity/properties/DbAttributePanel.java | 20 +++++------
.../dbentity/properties/DbRelationshipPanel.java | 18 +++++-----
.../objentity/properties/ObjAttributePanel.java | 40 +++++++++-------------
.../objentity/properties/ObjRelationshipPanel.java | 22 ++++++------
9 files changed, 70 insertions(+), 81 deletions(-)
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMTextPane.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMTextPane.java
index 975f3b273..3180920a6 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMTextPane.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMTextPane.java
@@ -37,8 +37,8 @@ import java.awt.geom.Rectangle2D;
public class CMTextPane extends JPanel {
protected Highlighter.HighlightPainter painter;
- private JTextPaneScrollable pane;
- private JScrollPane scrollPane;
+ private final JTextPaneScrollable pane;
+ private final JScrollPane scrollPane;
private boolean imageError;
private String tooltipTextError;
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMUndoableTextPane.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMUndoableTextPane.java
index 94a79775c..c3d8ceb37 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMUndoableTextPane.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/toolkit/text/CMUndoableTextPane.java
@@ -25,7 +25,7 @@ import javax.swing.event.UndoableEditListener;
public class CMUndoableTextPane extends CMTextPane {
- private UndoableEditListener undoListener;
+ private final UndoableEditListener undoListener;
public CMUndoableTextPane(CayenneUndoManager undoManager, TextSyntax
syntax) {
super(syntax);
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/dbmerge/MergerTokenSelector.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/dbmerge/MergerTokenSelector.java
index 8327e6556..bbedafe6b 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/dbmerge/MergerTokenSelector.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/dbmerge/MergerTokenSelector.java
@@ -69,7 +69,6 @@ public class MergerTokenSelector extends JPanel {
private final List<MergerToken> selectableTokensList;
private MergerToken token;
- private int permanentlyExcludedCount;
private MergerTokenFactory mergerTokenFactory;
private boolean isReverse;
@@ -140,7 +139,7 @@ public class MergerTokenSelector extends JPanel {
* A callback action that updates the state of Select All checkbox.
*/
public void tableSelectedAction() {
- int unselectedCount = excludedTokens.size() - permanentlyExcludedCount;
+ int unselectedCount = excludedTokens.size();
if (unselectedCount == selectableTokensList.size()) {
checkAll.setSelected(false);
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ReverseEngineeringTreePanel.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ReverseEngineeringTreePanel.java
index dad48130a..355caf716 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ReverseEngineeringTreePanel.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/datamap/dbimport/ReverseEngineeringTreePanel.java
@@ -30,36 +30,37 @@ import
org.apache.cayenne.dbsync.reverse.dbimport.ReverseEngineering;
import org.apache.cayenne.dbsync.reverse.dbimport.Schema;
import org.apache.cayenne.map.DataMap;
import org.apache.cayenne.modeler.project.ProjectSession;
+import org.apache.cayenne.modeler.toolkit.ProjectPanel;
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.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JTree;
-import javax.swing.SwingUtilities;
+import javax.swing.*;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.TreePath;
-import java.awt.BorderLayout;
+import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.HashMap;
import java.util.Map;
-class ReverseEngineeringTreePanel extends JPanel {
+class ReverseEngineeringTreePanel extends ProjectPanel {
private final DbImportTree reverseEngineeringTree;
private final DbImportTree dbSchemaTree;
- private final ProjectSession session;
private final DbImportActions actions;
private final DBSchemaPanel dbSchemaPanel;
private ConfigToolbar treeToolbar;
private final Map<Class<?>, DefaultPopUpMenu> popups;
- ReverseEngineeringTreePanel(ProjectSession session, DbImportTree
reverseEngineeringTree,
- DbImportTree dbSchemaTree, DBSchemaPanel
dbSchemaPanel,
- DbImportActions actions) {
- this.session = session;
+ ReverseEngineeringTreePanel(
+ ProjectSession session,
+ DbImportTree reverseEngineeringTree,
+ DbImportTree dbSchemaTree,
+ DBSchemaPanel dbSchemaPanel,
+ DbImportActions actions) {
+
+ super(session);
this.reverseEngineeringTree = reverseEngineeringTree;
this.dbSchemaTree = dbSchemaTree;
this.dbSchemaPanel = dbSchemaPanel;
@@ -126,7 +127,7 @@ class ReverseEngineeringTreePanel extends JPanel {
} else if (reverseEngineeringTree.getSelectionPath() != null) {
DbImportTreeNode selectedNode =
reverseEngineeringTree.getSelectedNode();
- if( selectedNode.isExcludeColumn() ||
selectedNode.isIncludeColumn()) {
+ if (selectedNode.isExcludeColumn() ||
selectedNode.isIncludeColumn()) {
DbImportTreeNode expandNode = selectedNode.getParent();
DbImportTreeNode parentPath = dbSchemaTree.findNode(
@@ -163,7 +164,7 @@ class ReverseEngineeringTreePanel extends JPanel {
private ReverseEngineering getReverseEngineeringBySelectedMap() {
DataMap dataMap = session.getSelectedDataMap();
- return session.app().getMetaData().get(dataMap,
ReverseEngineering.class);
+ return app.getMetaData().get(dataMap, ReverseEngineering.class);
}
private void changeIcons() {
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKGeneratorPanel.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKGeneratorPanel.java
index 96969b553..4c86d1511 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKGeneratorPanel.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/main/PKGeneratorPanel.java
@@ -19,20 +19,17 @@
package org.apache.cayenne.modeler.ui.project.editor.dbentity.main;
-import org.apache.cayenne.modeler.event.model.DbEntityEvent;
-import javax.swing.JPanel;
-
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.map.DbEntity;
+import org.apache.cayenne.modeler.event.model.DbEntityEvent;
import org.apache.cayenne.modeler.project.ProjectSession;
+import org.apache.cayenne.modeler.toolkit.ProjectPanel;
import org.apache.cayenne.modeler.undo.ChangePKGeneratorUndoableEdit;
-public abstract class PKGeneratorPanel extends JPanel {
-
- protected ProjectSession session;
+public abstract class PKGeneratorPanel extends ProjectPanel {
public PKGeneratorPanel(ProjectSession session) {
- this.session = session;
+ super(session);
}
/**
@@ -52,8 +49,8 @@ public abstract class PKGeneratorPanel extends JPanel {
onInitInternal(entity);
edit.captureNewState();
- if(edit.hasRealChange()) {
- session.app().getUndoManager().addEdit(edit);
+ if (edit.hasRealChange()) {
+ app.getUndoManager().addEdit(edit);
}
}
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbAttributePanel.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbAttributePanel.java
index 5e051a3a1..f07866ead 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbAttributePanel.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbAttributePanel.java
@@ -29,6 +29,7 @@ import
org.apache.cayenne.modeler.event.model.DbAttributeEvent;
import org.apache.cayenne.modeler.event.model.DbAttributeListener;
import org.apache.cayenne.modeler.project.ProjectSession;
import org.apache.cayenne.modeler.service.action.GlobalActions;
+import org.apache.cayenne.modeler.toolkit.ProjectPanel;
import org.apache.cayenne.modeler.toolkit.combobox.AutoCompletion;
import org.apache.cayenne.modeler.toolkit.combobox.CMComboBox;
import org.apache.cayenne.modeler.toolkit.table.BoardTableCellRenderer;
@@ -52,14 +53,13 @@ import java.util.List;
/**
* Detail view of the DbEntity attributes.
*/
-public class DbAttributePanel extends JPanel implements
DbEntityDisplayListener, DbAttributeListener {
+public class DbAttributePanel extends ProjectPanel implements
DbEntityDisplayListener, DbAttributeListener {
- private final ProjectSession session;
private final CMTable table;
private final DbEntityPropertiesView parentPanel;
public DbAttributePanel(ProjectSession session, DbEntityPropertiesView
parentPanel) {
- this.session = session;
+ super(session);
this.parentPanel = parentPanel;
this.table = new CMTable();
initLayout();
@@ -69,7 +69,7 @@ public class DbAttributePanel extends JPanel implements
DbEntityDisplayListener,
private void initLayout() {
setLayout(new BorderLayout());
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
table.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
@@ -92,7 +92,7 @@ public class DbAttributePanel extends JPanel implements
DbEntityDisplayListener,
table.getSelectionModel().addListSelectionListener(this::valueChanged);
- session.app().getActionManager().setupCutCopyPaste(
+ app.getActionManager().setupCutCopyPaste(
table,
CutAttributeRelationshipAction.class,
CopyAttributeRelationshipAction.class);
@@ -108,13 +108,13 @@ public class DbAttributePanel extends JPanel implements
DbEntityDisplayListener,
List<?> listAttrs = model.getObjectList();
int[] newSel = new int[attrs.length];
- session.app().getActionManager()
+ app.getActionManager()
.getAction(RemoveAttributeRelationshipAction.class)
.setCurrentSelectedPanel(parentPanel.getAttributePanel());
- session.app().getActionManager()
+ app.getActionManager()
.getAction(CutAttributeRelationshipAction.class)
.setCurrentSelectedPanel(parentPanel.getAttributePanel());
- session.app().getActionManager()
+ app.getActionManager()
.getAction(CopyAttributeRelationshipAction.class)
.setCurrentSelectedPanel(parentPanel.getAttributePanel());
@@ -185,7 +185,7 @@ public class DbAttributePanel extends JPanel implements
DbEntityDisplayListener,
TableColumn typeColumn =
table.getColumnModel().getColumn(DbAttributeTableModel.DB_ATTRIBUTE_TYPE);
typeColumn.setCellEditor(new CMComboBoxCellEditor(comboBox));
- new
CMTablePrefs(session.app().getPrefsManager().uiNode("dbEntity/attributeTable"))
+ new
CMTablePrefs(app.getPrefsManager().uiNode("dbEntity/attributeTable"))
.bind(table, null, DbAttributeTableModel.DB_ATTRIBUTE_NAME);
}
@@ -204,7 +204,7 @@ public class DbAttributePanel extends JPanel implements
DbEntityDisplayListener,
parentPanel.getRelationshipPanel().getTable().getCellEditor().stopCellEditing();
}
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(RemoveAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CutAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbRelationshipPanel.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbRelationshipPanel.java
index 3b2f89101..db9f0d02a 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbRelationshipPanel.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/dbentity/properties/DbRelationshipPanel.java
@@ -25,6 +25,7 @@ import
org.apache.cayenne.modeler.event.model.DbRelationshipEvent;
import org.apache.cayenne.modeler.event.model.DbEntityEvent;
import org.apache.cayenne.modeler.event.model.DbEntityListener;
import org.apache.cayenne.modeler.event.model.DbRelationshipListener;
+import org.apache.cayenne.modeler.toolkit.ProjectPanel;
import org.apache.cayenne.modeler.toolkit.icon.IconFactory;
import org.apache.cayenne.modeler.project.ProjectSession;
import org.apache.cayenne.modeler.service.action.GlobalActions;
@@ -59,17 +60,16 @@ import java.util.List;
/**
* Displays DbRelationships for the current DbEntity.
*/
-public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListener,
+public class DbRelationshipPanel extends ProjectPanel implements
DbEntityDisplayListener,
DbEntityListener, DbRelationshipListener, TableModelListener {
- private final ProjectSession session;
private final CMTable table;
private final DbEntityPropertiesView parentPanel;
private final JMenuItem editMenu;
private JComboBox<DbEntity> targetCombo;
public DbRelationshipPanel(ProjectSession session, DbEntityPropertiesView
parentPanel) {
- this.session = session;
+ super(session);
this.parentPanel = parentPanel;
this.table = new CMTable();
this.editMenu = new JMenuItem("Edit Relationship",
IconFactory.buildIcon("icon-edit.png"));
@@ -80,7 +80,7 @@ public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListen
private void initLayout() {
setLayout(new BorderLayout());
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
table.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
@@ -108,7 +108,7 @@ public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListen
table.getSelectionModel().addListSelectionListener(this::valueChanged);
- session.app().getActionManager().setupCutCopyPaste(
+ app.getActionManager().setupCutCopyPaste(
table,
CutAttributeRelationshipAction.class,
CopyAttributeRelationshipAction.class);
@@ -136,7 +136,7 @@ public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListen
List<DbRelationship> listRels = model.getObjectList();
int[] newSel = new int[rels.length];
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(RemoveAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CutAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CopyAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
@@ -193,7 +193,7 @@ public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListen
TableColumn toDepPkColumn =
table.getColumnModel().getColumn(DbRelationshipTableModel.TO_DEPENDENT_KEY);
toDepPkColumn.setCellRenderer(new CheckBoxCellRenderer());
- new
CMTablePrefs(session.app().getPrefsManager().uiNode("dbEntity/relationshipTable"))
+ new
CMTablePrefs(app.getPrefsManager().uiNode("dbEntity/relationshipTable"))
.bind(table, null, DbRelationshipTableModel.NAME);
}
@@ -267,7 +267,7 @@ public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListen
DbRelationshipTableModel model = (DbRelationshipTableModel)
table.getModel();
DbRelationship rel = model.getRelationship(row);
- new DbRelationshipDialog(session, session.app().getFrame())
+ new DbRelationshipDialog(session, app.getFrame())
.modifyRelationship(rel)
.open();
}
@@ -287,7 +287,7 @@ public class DbRelationshipPanel extends JPanel implements
DbEntityDisplayListen
parentPanel.getAttributePanel().getTable().getCellEditor().stopCellEditing();
}
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(RemoveAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CutAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CopyAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjAttributePanel.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjAttributePanel.java
index 3e0ef0cc2..d194fe63e 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjAttributePanel.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjAttributePanel.java
@@ -33,6 +33,7 @@ import org.apache.cayenne.modeler.event.model.ObjEntityEvent;
import org.apache.cayenne.modeler.event.model.ObjEntityListener;
import org.apache.cayenne.modeler.event.model.ProjectBeforeSaveEvent;
import org.apache.cayenne.modeler.event.model.ProjectBeforeSaveListener;
+import org.apache.cayenne.modeler.toolkit.ProjectPanel;
import org.apache.cayenne.modeler.toolkit.table.CMTablePrefs;
import org.apache.cayenne.modeler.project.ObjEntityOps;
import org.apache.cayenne.modeler.service.action.GlobalActions;
@@ -73,18 +74,16 @@ import java.util.Map;
/**
* Detail view of the ObjEntity attributes.
*/
-public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListener, ObjEntityListener, ObjAttributeListener,
ProjectBeforeSaveListener {
+public class ObjAttributePanel extends ProjectPanel implements
ObjEntityDisplayListener, ObjEntityListener, ObjAttributeListener,
ProjectBeforeSaveListener {
private static final ImageIcon INHERITANCE_ICON =
IconFactory.buildIcon("icon-inheritance.png");
- private final ProjectSession session;
private final ObjEntityPropertiesView parentPanel;
-
private final CMTable table;
private final JMenuItem editMenu;
public ObjAttributePanel(ProjectSession session, ObjEntityPropertiesView
parentPanel) {
- this.session = session;
+ super(session);
this.parentPanel = parentPanel;
this.table = new CMTable();
this.editMenu = new JMenuItem("Edit Attribute",
IconFactory.buildIcon("icon-edit.png"));
@@ -95,11 +94,11 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
private void initLayout() {
setLayout(new BorderLayout());
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
table.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
- table.setDefaultRenderer(String.class, new CellRenderer(session));
+ table.setDefaultRenderer(String.class, new CellRenderer());
JPopupMenu popup = new JPopupMenu();
popup.add(editMenu);
@@ -139,7 +138,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
table.getSelectionModel().addListSelectionListener(this::valueChanged);
- session.app().getActionManager().setupCutCopyPaste(
+ app.getActionManager().setupCutCopyPaste(
table,
CutAttributeRelationshipAction.class,
CopyAttributeRelationshipAction.class);
@@ -218,7 +217,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
public void objAttributeAdded(ObjAttributeEvent e) {
ObjAttributeTableModel model = (ObjAttributeTableModel)
table.getModel();
- model.addRow((ObjAttribute) e.getAttribute());
+ model.addRow(e.getAttribute());
model.fireTableDataChanged();
int ind = -1;
@@ -263,7 +262,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
JOptionPane.QUESTION_MESSAGE,
JOptionPane.YES_NO_OPTION);
- JDialog dialog = pane.createDialog(session.app().getFrame(),
"Confirm Remove");
+ JDialog dialog = pane.createDialog(app.getFrame(), "Confirm
Remove");
dialog.setVisible(true);
boolean shouldDelete;
@@ -318,7 +317,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
table.getColumnModel().getColumn(ObjAttributeTableModel.DB_ATTRIBUTE).setCellRenderer(new
DbAttributePathComboBoxRenderer());
table.getColumnModel().getColumn(ObjAttributeTableModel.DB_ATTRIBUTE).setCellEditor(new
DbAttributePathComboBoxEditor(session::getSelectedDataMap));
- new
CMTablePrefs(session.app().getPrefsManager().uiNode("objEntity/attributeTable"))
+ new
CMTablePrefs(app.getPrefsManager().uiNode("objEntity/attributeTable"))
.bind(table, minSizes, ObjAttributeTableModel.OBJ_ATTRIBUTE);
}
@@ -330,13 +329,12 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
return;
}
- if (!(table.getModel() instanceof ObjAttributeTableModel)) {
+ if (!(table.getModel() instanceof ObjAttributeTableModel model)) {
// probably means this panel hasn't been loaded yet...
return;
}
- ObjAttributeTableModel model = (ObjAttributeTableModel)
table.getModel();
- if (model.getDbEntity() != ((ObjEntity) e.getEntity()).getDbEntity()) {
+ if (model.getDbEntity() != e.getEntity().getDbEntity()) {
model.resetDbEntity();
setUpTableStructure();
}
@@ -347,20 +345,14 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
return;
}
- this.rebuildTable((ObjEntity) e.getEntity());
+ this.rebuildTable(e.getEntity());
}
public void objEntityRemoved(ObjEntityEvent e) {
}
// custom renderer used for inherited attributes highlighting
- static final class CellRenderer extends DefaultTableCellRenderer {
-
- private final ProjectSession session;
-
- CellRenderer(ProjectSession session) {
- this.session = session;
- }
+ final class CellRenderer extends DefaultTableCellRenderer {
@Override
public Component getTableCellRendererComponent(
@@ -403,7 +395,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
public void mouseClicked(MouseEvent event, int x) {
Point point = event.getPoint();
if (point.x - x <= INHERITANCE_ICON.getIconWidth()) {
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(ObjEntityToSuperEntityAction.class).performAction(null);
}
}
@@ -433,7 +425,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
// ... show dialog...
new ObjAttributeInfoDialog(
session,
- session.app().getFrame(),
+ app.getFrame(),
row, model).open();
// This is required for a table to be updated properly
@@ -459,7 +451,7 @@ public class ObjAttributePanel extends JPanel implements
ObjEntityDisplayListene
parentPanel.getRelationshipPanel().getTable().getCellEditor().stopCellEditing();
}
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(RemoveAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CutAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CopyAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
diff --git
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjRelationshipPanel.java
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjRelationshipPanel.java
index 5b1b1ff12..ab61cd1f7 100644
---
a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjRelationshipPanel.java
+++
b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/ui/project/editor/objentity/properties/ObjRelationshipPanel.java
@@ -25,6 +25,7 @@ import
org.apache.cayenne.modeler.event.model.ObjRelationshipEvent;
import org.apache.cayenne.modeler.event.model.ObjEntityEvent;
import org.apache.cayenne.modeler.event.model.ObjEntityListener;
import org.apache.cayenne.modeler.event.model.ObjRelationshipListener;
+import org.apache.cayenne.modeler.toolkit.ProjectPanel;
import org.apache.cayenne.modeler.toolkit.combobox.CMComboBox;
import org.apache.cayenne.modeler.toolkit.table.CMComboBoxCellEditor;
import org.apache.cayenne.modeler.toolkit.icon.IconFactory;
@@ -59,7 +60,7 @@ import java.util.List;
/**
* Displays ObjRelationships for the edited ObjEntity.
*/
-public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayListener, ObjEntityListener, ObjRelationshipListener {
+public class ObjRelationshipPanel extends ProjectPanel implements
ObjEntityDisplayListener, ObjEntityListener, ObjRelationshipListener {
private static final ImageIcon INHERITANCE_ICON =
IconFactory.buildIcon("icon-inheritance.png");
@@ -70,13 +71,12 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
DeleteRule.deleteRuleName(DeleteRule.DENY),
};
- private final ProjectSession session;
private final CMTable table;
private final ObjEntityPropertiesView parentPanel;
private final JMenuItem editMenu;
public ObjRelationshipPanel(ProjectSession session,
ObjEntityPropertiesView parentPanel) {
- this.session = session;
+ super(session);
this.parentPanel = parentPanel;
this.table = new CMTable();
this.editMenu = new JMenuItem("Edit Relationship",
IconFactory.buildIcon("icon-edit.png"));
@@ -87,7 +87,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
private void initLayout() {
setLayout(new BorderLayout());
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
table.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
@@ -133,7 +133,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
table.getSelectionModel().addListSelectionListener(this::valueChanged);
- session.app().getActionManager().setupCutCopyPaste(
+ app.getActionManager().setupCutCopyPaste(
table,
CutAttributeRelationshipAction.class,
CopyAttributeRelationshipAction.class);
@@ -232,7 +232,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
ObjRelationshipTableModel.REL_TARGET);
DefaultCellEditor editor = (DefaultCellEditor) col.getCellEditor();
- JComboBox combo = (JComboBox) editor.getComponent();
+ JComboBox<?> combo = (JComboBox<?>) editor.getComponent();
combo.setRenderer(Renderers.entityListRendererWithIcons(entity.getDataMap()));
ObjRelationshipTableModel model = (ObjRelationshipTableModel)
table.getModel();
@@ -268,7 +268,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
});
col =
table.getColumnModel().getColumn(ObjRelationshipTableModel.REL_DELETE_RULE);
- JComboBox deleteRulesCombo = new CMComboBox<>(DELETE_RULES);
+ JComboBox<?> deleteRulesCombo = new CMComboBox<>(DELETE_RULES);
deleteRulesCombo.setFocusable(false);
deleteRulesCombo.setEditable(true);
((JComponent)
deleteRulesCombo.getEditor().getEditorComponent()).setBorder(null);
@@ -276,7 +276,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
deleteRulesCombo.setSelectedIndex(0); // Default to the first value
col.setCellEditor(new CMComboBoxCellEditor(deleteRulesCombo));
- new
CMTablePrefs(session.app().getPrefsManager().uiNode("objEntity/relationshipTable"))
+ new
CMTablePrefs(app.getPrefsManager().uiNode("objEntity/relationshipTable"))
.bind(table, null, ObjRelationshipTableModel.REL_NAME);
}
@@ -364,7 +364,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
public void mouseClicked(MouseEvent event, int x) {
Point point = event.getPoint();
if (point.x - x <= INHERITANCE_ICON.getIconWidth()) {
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(ObjEntityToSuperEntityAction.class).performAction(null);
}
}
@@ -377,7 +377,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
}
ObjRelationshipTableModel model = (ObjRelationshipTableModel)
table.getModel();
- new ObjRelationshipInfoDialog(session, session.app().getFrame())
+ new ObjRelationshipInfoDialog(session, app.getFrame())
.modifyRelationship(model.getRelationship(row))
.open();
@@ -404,7 +404,7 @@ public class ObjRelationshipPanel extends JPanel implements
ObjEntityDisplayList
parentPanel.getAttributePanel().getTable().getCellEditor().stopCellEditing();
}
- GlobalActions globalActions = session.app().getActionManager();
+ GlobalActions globalActions = app.getActionManager();
globalActions.getAction(RemoveAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CutAttributeRelationshipAction.class).setCurrentSelectedPanel(this);
globalActions.getAction(CopyAttributeRelationshipAction.class).setCurrentSelectedPanel(this);