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/08/28 11:01:14 UTC
[1/2] cayenne git commit: CAY-2455. Add limited text field.
Repository: cayenne
Updated Branches:
refs/heads/master dba94b25d -> 57e39c57b
CAY-2455. Add limited text field.
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/d357da50
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/d357da50
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/d357da50
Branch: refs/heads/master
Commit: d357da501ddf68d1e76e69e48a10c7bc5ed4aee4
Parents: 36faff5
Author: Arseni Bulatski <an...@gmail.com>
Authored: Wed Aug 22 13:58:39 2018 +0300
Committer: Arseni Bulatski <an...@gmail.com>
Committed: Tue Aug 28 12:32:51 2018 +0300
----------------------------------------------------------------------
RELEASE-NOTES.txt | 1 +
.../modeler/editor/ProcedureParameterTab.java | 48 ++++++++++++--------
.../editor/ProcedureParameterTableModel.java | 15 +++---
.../editor/dbentity/DbAttributeTableModel.java | 25 ++++++----
.../editor/dbentity/DbEntityAttributePanel.java | 9 ++++
.../swing/components/LimitedDocument.java | 22 +++++++++
.../swing/components/LimitedJTextField.java | 9 ++++
7 files changed, 92 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/RELEASE-NOTES.txt
----------------------------------------------------------------------
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index d2e5421..37bb8c7 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -20,6 +20,7 @@ Bug Fixes:
CAY-2444 Change URI from http:// to https:// in xsi:schemaLocation
CAY-2445 Oracle: Problem with ExpressionFactory.notInExp()
+CAY-2455 The width of the pop-up window is very large
----------------------------------
Release: 4.1.M2
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTab.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTab.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTab.java
index c1be0d4..653d88d 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTab.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTab.java
@@ -19,26 +19,6 @@
package org.apache.cayenne.modeler.editor;
-import java.awt.BorderLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.util.EventObject;
-import java.util.List;
-
-import javax.swing.Icon;
-import javax.swing.JButton;
-import javax.swing.JComboBox;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JPopupMenu;
-import javax.swing.JToolBar;
-import javax.swing.SwingConstants;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ListSelectionEvent;
-import javax.swing.event.ListSelectionListener;
-import javax.swing.table.DefaultTableCellRenderer;
-import javax.swing.table.TableColumn;
-
import org.apache.cayenne.configuration.DataChannelDescriptor;
import org.apache.cayenne.configuration.event.ProcedureEvent;
import org.apache.cayenne.configuration.event.ProcedureParameterEvent;
@@ -67,8 +47,28 @@ import org.apache.cayenne.modeler.util.ModelerUtil;
import org.apache.cayenne.modeler.util.PanelFactory;
import org.apache.cayenne.modeler.util.UIUtil;
import org.apache.cayenne.modeler.util.combo.AutoCompletion;
+import org.apache.cayenne.swing.components.LimitedJTextField;
import org.apache.cayenne.swing.components.image.FilteredIconFactory;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
+import javax.swing.JToolBar;
+import javax.swing.SwingConstants;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ListSelectionEvent;
+import javax.swing.event.ListSelectionListener;
+import javax.swing.table.DefaultTableCellRenderer;
+import javax.swing.table.TableColumn;
+import java.awt.BorderLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.EventObject;
+import java.util.List;
+
public class ProcedureParameterTab extends JPanel implements ProcedureParameterListener,
ProcedureDisplayListener, ExistingSelectionProcessor, ActionListener {
@@ -303,6 +303,14 @@ public class ProcedureParameterTab extends JPanel implements ProcedureParameterL
directionEditor.setEditable(false);
directionColumn.setCellEditor(new CayenneCellEditor(directionEditor));
+ TableColumn precisionColumn = table.getColumnModel().getColumn(ProcedureParameterTableModel.PARAMETER_PRECISION);
+ LimitedJTextField limitedPrecisionField = new LimitedJTextField(10);
+ precisionColumn.setCellEditor(Application.getWidgetFactory().createCellEditor(limitedPrecisionField));
+
+ TableColumn lengthColumn = table.getColumnModel().getColumn(ProcedureParameterTableModel.PARAMETER_LENGTH);
+ LimitedJTextField limitedLengthField = new LimitedJTextField(10);
+ lengthColumn.setCellEditor(Application.getWidgetFactory().createCellEditor(limitedLengthField));
+
moveUp.setEnabled(false);
moveDown.setEnabled(false);
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTableModel.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTableModel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTableModel.java
index 40005fc..b316270 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTableModel.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/ProcedureParameterTableModel.java
@@ -19,10 +19,6 @@
package org.apache.cayenne.modeler.editor;
-import java.util.ArrayList;
-
-import javax.swing.JOptionPane;
-
import org.apache.cayenne.configuration.event.ProcedureParameterEvent;
import org.apache.cayenne.dba.TypesMapping;
import org.apache.cayenne.map.Procedure;
@@ -31,6 +27,9 @@ import org.apache.cayenne.modeler.ProjectController;
import org.apache.cayenne.modeler.util.CayenneTableModel;
import org.apache.cayenne.modeler.util.ProjectUtil;
+import javax.swing.JOptionPane;
+import java.util.ArrayList;
+
public class ProcedureParameterTableModel extends CayenneTableModel<ProcedureParameter> {
public static final int PARAMETER_NUMBER = 0;
@@ -127,10 +126,10 @@ public class ProcedureParameterTableModel extends CayenneTableModel<ProcedurePar
parameter.setMaxLength(Integer.parseInt(newVal));
} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog(
- null,
- "Invalid Max Length (" + newVal + "), only numbers are allowed",
- "Invalid Maximum Length",
- JOptionPane.ERROR_MESSAGE);
+ null,
+ "Invalid Max Length (" + newVal + "), only numbers are allowed",
+ "Invalid Maximum Length",
+ JOptionPane.ERROR_MESSAGE);
}
}
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbAttributeTableModel.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbAttributeTableModel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbAttributeTableModel.java
index c53be29..9c62874 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbAttributeTableModel.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbAttributeTableModel.java
@@ -19,15 +19,6 @@
package org.apache.cayenne.modeler.editor.dbentity;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.swing.JOptionPane;
-
import org.apache.cayenne.dba.TypesMapping;
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.map.DbEntity;
@@ -39,6 +30,14 @@ import org.apache.cayenne.modeler.util.CayenneTableModel;
import org.apache.cayenne.modeler.util.ProjectUtil;
import org.apache.cayenne.project.extension.info.ObjectInfo;
+import javax.swing.JOptionPane;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Iterator;
+import java.util.List;
+
/**
* Model for DbEntity attributes. Allows adding/removing attributes, modifying types and names.
*/
@@ -74,6 +73,14 @@ public class DbAttributeTableModel extends CayenneTableModel<DbAttribute> {
return DB_ATTRIBUTE_TYPE;
}
+ public int lengthColumnId(){
+ return DB_ATTRIBUTE_MAX;
+ }
+
+ public int scaleColumnId(){
+ return DB_ATTRIBUTE_SCALE;
+ }
+
public int mandatoryColumnInd() {
return DB_ATTRIBUTE_MANDATORY;
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbEntityAttributePanel.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbEntityAttributePanel.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbEntityAttributePanel.java
index 82deb69..1a66661 100644
--- a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbEntityAttributePanel.java
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/modeler/editor/dbentity/DbEntityAttributePanel.java
@@ -39,6 +39,7 @@ import org.apache.cayenne.modeler.util.CayenneTable;
import org.apache.cayenne.modeler.util.PanelFactory;
import org.apache.cayenne.modeler.util.UIUtil;
import org.apache.cayenne.modeler.util.combo.AutoCompletion;
+import org.apache.cayenne.swing.components.LimitedJTextField;
import javax.swing.JComboBox;
import javax.swing.JPanel;
@@ -180,6 +181,14 @@ public class DbEntityAttributePanel extends JPanel implements DbEntityDisplayLis
col.setCellEditor(Application.getWidgetFactory().createCellEditor(comboBox));
+ TableColumn lengthColumn = table.getColumnModel().getColumn(model.lengthColumnId());
+ LimitedJTextField limitedLengthField = new LimitedJTextField(10);
+ lengthColumn.setCellEditor(Application.getWidgetFactory().createCellEditor(limitedLengthField));
+
+ TableColumn scaleColumn = table.getColumnModel().getColumn(model.scaleColumnId());
+ LimitedJTextField limitedScaleField = new LimitedJTextField(10);
+ scaleColumn.setCellEditor(Application.getWidgetFactory().createCellEditor(limitedScaleField));
+
tablePreferences.bind(table, null, null, null, model.nameColumnInd(), true);
}
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedDocument.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedDocument.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedDocument.java
new file mode 100644
index 0000000..18efc0c
--- /dev/null
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedDocument.java
@@ -0,0 +1,22 @@
+package org.apache.cayenne.swing.components;
+
+import javax.swing.text.AttributeSet;
+import javax.swing.text.BadLocationException;
+import javax.swing.text.PlainDocument;
+
+public class LimitedDocument extends PlainDocument {
+ private int limit;
+
+ LimitedDocument(int limit) {
+ super();
+ this.limit = limit;
+ }
+
+ public void insertString( int offset, String str, AttributeSet attr ) throws BadLocationException {
+ if (str == null) return;
+
+ if ((getLength() + str.length()) <= limit) {
+ super.insertString(offset, str, attr);
+ }
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/cayenne/blob/d357da50/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedJTextField.java
----------------------------------------------------------------------
diff --git a/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedJTextField.java b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedJTextField.java
new file mode 100644
index 0000000..5769738
--- /dev/null
+++ b/modeler/cayenne-modeler/src/main/java/org/apache/cayenne/swing/components/LimitedJTextField.java
@@ -0,0 +1,9 @@
+package org.apache.cayenne.swing.components;
+
+import javax.swing.JTextField;
+
+public class LimitedJTextField extends JTextField {
+ public LimitedJTextField(int limit) {
+ setDocument(new LimitedDocument(limit));
+ }
+}
[2/2] cayenne git commit: Merge PR #309
Posted by nt...@apache.org.
Merge PR #309
Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/57e39c57
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/57e39c57
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/57e39c57
Branch: refs/heads/master
Commit: 57e39c57b13ac6a564e365521614df18740d7fa7
Parents: dba94b2 d357da5
Author: Nikita Timofeev <st...@gmail.com>
Authored: Tue Aug 28 14:00:19 2018 +0300
Committer: Nikita Timofeev <st...@gmail.com>
Committed: Tue Aug 28 14:00:19 2018 +0300
----------------------------------------------------------------------
RELEASE-NOTES.txt | 1 +
.../modeler/editor/ProcedureParameterTab.java | 48 ++++++++++++--------
.../editor/ProcedureParameterTableModel.java | 15 +++---
.../editor/dbentity/DbAttributeTableModel.java | 25 ++++++----
.../editor/dbentity/DbEntityAttributePanel.java | 9 ++++
.../swing/components/LimitedDocument.java | 22 +++++++++
.../swing/components/LimitedJTextField.java | 9 ++++
7 files changed, 92 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cayenne/blob/57e39c57/RELEASE-NOTES.txt
----------------------------------------------------------------------
diff --cc RELEASE-NOTES.txt
index 0f961cd,37bb8c7..daf059b
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@@ -20,14 -20,7 +20,15 @@@ Bug Fixes
CAY-2444 Change URI from http:// to https:// in xsi:schemaLocation
CAY-2445 Oracle: Problem with ExpressionFactory.notInExp()
-CAY-2455 The width of the pop-up window is very large
+CAY-2449 Modeler: Needless scrollbar in Generate DB Schema result menu
+CAY-2450 Modeler: Impossible to update Attribute title after syncing ObjEntity
+CAY-2451 Modeler: ObjEntity "Edit" button doesn't open editor for Relationship
+CAY-2454 Modeler: Unable to read validation message if it's truncated
++CAY-2455 Modeler: The width of the pop-up window is very large
+CAY-2459 Modeler: DataMap paste function is not working
+CAY-2462 Modeler: Clipboard holds old content after application was reloaded
+CAY-2463 Modeler: DB Schema generation doesn't work
+CAY-2464 ClassCastException when returning PRUNED_NODE in expression transformer
----------------------------------
Release: 4.1.M2