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/11/05 14:27:13 UTC
[3/5] cayenne git commit: Change listener to change listener on
tabbed view.
Change listener to change listener on tabbed view.
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/ff95457b
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/ff95457b
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/ff95457b
Branch: refs/heads/master
Commit: ff95457be3b409f44eb52a0b225297b92c15142d
Parents: 62bf6c4
Author: kkomyak <co...@gmail.com>
Authored: Fri Nov 2 15:11:43 2018 +0300
Committer: kkomyak <co...@gmail.com>
Committed: Fri Nov 2 15:31:06 2018 +0300
----------------------------------------------------------------------
.../modeler/editor/DataMapTabbedView.java | 23 ++++++--
.../modeler/editor/dbimport/DbImportView.java | 62 +++++++-------------
2 files changed, 41 insertions(+), 44 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/ff95457b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapTabbedView.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapTabbedView.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapTabbedView.java
index ed1b6f1..2cf6931 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapTabbedView.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/DataMapTabbedView.java
@@ -31,6 +31,8 @@ import org.apache.cayenne.modeler.editor.dbimport.DbImportView;
*/
public class DataMapTabbedView extends JTabbedPane {
ProjectController mediator;
+ private int lastSelectionIndex;
+ private DbImportView dbImportView1;
/**
* constructor
@@ -53,10 +55,23 @@ public class DataMapTabbedView extends JTabbedPane {
// add panels to tabs
// note that those panels that have no internal scrollable tables
// must be wrapped in a scroll pane
- JScrollPane dataMapView = new JScrollPane(new DataMapView(mediator));
- JScrollPane dbImportView = new JScrollPane(new DbImportView(mediator));
- addTab("DataMap", dataMapView);
- addTab("DbImport", dbImportView);
+ JScrollPane dataMapScrollPane = new JScrollPane(new DataMapView(mediator));
+ dbImportView1 = new DbImportView(mediator);
+ JScrollPane dbImportScrollPane = new JScrollPane(dbImportView1);
+ addTab("DataMap", dataMapScrollPane);
+ addTab("DbImport", dbImportScrollPane);
+ addChangeListener(e -> {
+ lastSelectionIndex = getSelectedIndex();
+ updateTabs();
+ });
+ }
+
+ private void updateTabs() {
+ switch (lastSelectionIndex) {
+ case 1:
+ dbImportView1.initFromModel();
+ break;
+ }
}
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/ff95457b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbimport/DbImportView.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbimport/DbImportView.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbimport/DbImportView.java
index f5e97b2..65641fc 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbimport/DbImportView.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbimport/DbImportView.java
@@ -16,7 +16,6 @@
* specific language governing permissions and limitations
* under the License.
****************************************************************/
-
package org.apache.cayenne.modeler.editor.dbimport;
import com.jgoodies.forms.builder.DefaultFormBuilder;
@@ -33,8 +32,6 @@ import org.apache.cayenne.modeler.util.CayenneAction;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
-import javax.swing.event.AncestorEvent;
-import javax.swing.event.AncestorListener;
import java.awt.BorderLayout;
/**
@@ -61,47 +58,10 @@ public class DbImportView extends JPanel {
public DbImportView(ProjectController projectController) {
this.projectController = projectController;
initFormElements();
- initListeners();
buildForm();
draggableTreePanel.getSourceTree().repaint();
}
- private void initListeners() {
-
- treePanel.addAncestorListener(new AncestorListener() {
- @Override
- public void ancestorAdded(AncestorEvent evPent) {
- DataMap map = projectController.getCurrentDataMap();
- treePanel.getReverseEngineeringTree().stopEditing();
- if (map != null) {
- treeToolbar.unlockButtons();
- ReverseEngineering reverseEngineering = DbImportView.this.projectController.getApplication().
- getMetaData().get(map, ReverseEngineering.class);
- if (reverseEngineering == null) {
- reverseEngineering = new ReverseEngineering();
- DbImportView.this.projectController.getApplication().getMetaData().add(map, reverseEngineering);
- }
- configPanel.fillCheckboxes(reverseEngineering);
- configPanel.initializeTextFields(reverseEngineering);
- treePanel.updateTree();
- DbImportTreeNode root = draggableTreePanel.getSourceTree().getRootNode();
- root.removeAllChildren();
- draggableTreePanel.updateTree(projectController.getCurrentDataMap());
- draggableTreePanel.getMoveButton().setEnabled(false);
- draggableTreePanel.getMoveInvertButton().setEnabled(false);
- }
- }
-
- @Override
- public void ancestorRemoved(AncestorEvent event) {
- }
-
- @Override
- public void ancestorMoved(AncestorEvent event) {
- }
- });
- }
-
private void buildForm() {
FormLayout buttonPanelLayout = new FormLayout(BUTTON_PANEL_LAYOUT);
DefaultFormBuilder buttonBuilder = new DefaultFormBuilder(buttonPanelLayout);
@@ -191,6 +151,28 @@ public class DbImportView extends JPanel {
configPanel = new ReverseEngineeringConfigPanel(projectController);
}
+ public void initFromModel() {
+ DataMap map = projectController.getCurrentDataMap();
+ treePanel.getReverseEngineeringTree().stopEditing();
+ if (map != null) {
+ treeToolbar.unlockButtons();
+ ReverseEngineering reverseEngineering = DbImportView.this.projectController.getApplication().
+ getMetaData().get(map, ReverseEngineering.class);
+ if (reverseEngineering == null) {
+ reverseEngineering = new ReverseEngineering();
+ DbImportView.this.projectController.getApplication().getMetaData().add(map, reverseEngineering);
+ }
+ configPanel.fillCheckboxes(reverseEngineering);
+ configPanel.initializeTextFields(reverseEngineering);
+ treePanel.updateTree();
+ DbImportTreeNode root = draggableTreePanel.getSourceTree().getRootNode();
+ root.removeAllChildren();
+ draggableTreePanel.updateTree(projectController.getCurrentDataMap());
+ draggableTreePanel.getMoveButton().setEnabled(false);
+ draggableTreePanel.getMoveInvertButton().setEnabled(false);
+ }
+ }
+
public boolean isSkipRelationshipsLoading() {
return configPanel.getSkipRelationshipsLoading().isSelected();
}