Author: [email protected]
Date: Fri Jan 23 12:13:41 2009
New Revision: 2932
Modified:
trunk/regress/ca/sqlpower/architect/swingui/TestSwingUIProject.java
trunk/regress/ca/sqlpower/architect/swingui/TestingArchitectSwingSession.java
trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSession.java
trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSessionImpl.java
trunk/src/ca/sqlpower/architect/swingui/ProjectSettingsPanel.java
trunk/src/ca/sqlpower/architect/swingui/SwingUIProject.java
trunk/src/ca/sqlpower/architect/swingui/TablePane.java
Log:
Improved the columnVisibility options by using Enumeration instead of
booleans.
If open a old project, it will be default to show all columns.
Modified:
trunk/regress/ca/sqlpower/architect/swingui/TestSwingUIProject.java
==============================================================================
--- trunk/regress/ca/sqlpower/architect/swingui/TestSwingUIProject.java
(original)
+++ trunk/regress/ca/sqlpower/architect/swingui/TestSwingUIProject.java Fri
Jan 23 12:13:41 2009
@@ -67,6 +67,7 @@
import ca.sqlpower.architect.profile.ColumnProfileResult;
import ca.sqlpower.architect.profile.ProfileManager;
import ca.sqlpower.architect.profile.TableProfileResult;
+import
ca.sqlpower.architect.swingui.ArchitectSwingSessionImpl.ColumnVisibility;
import ca.sqlpower.architect.swingui.dbtree.DBTreeModel;
import ca.sqlpower.sql.PlDotIni;
import ca.sqlpower.sql.SPDataSource;
@@ -164,7 +165,7 @@
" <source-stuff datastoreTypeAsString='PROJECT'
connectName='Arthur_test' " +
" schema='ARCHITECT_REGRESS' filepath='' />"+
"<target-stuff datastoreTypeAsString='FILE' filePath='Testpath' />
</compare-dm-settings>"+
- " <play-pen zoom=\"12.3\" viewportX=\"200\" viewportY=\"20\"
relationship-style=\"rectilinear\" showPrimaryTag=\"true\"
showForeignTag=\"true\" showAlternateTag=\"true\" showPK=\"false\"
showPKFK=\"false\" showIndexed=\"false\" showPKFKUnique=\"false\"
showPKFKUniqueIndexed=\"false\" showAll=\"true\" >" +
+ " <play-pen zoom=\"12.3\" viewportX=\"200\" viewportY=\"20\"
relationship-style=\"rectilinear\" showPrimaryTag=\"true\"
showForeignTag=\"true\" showAlternateTag=\"true\"
columnVisibility=\"PK_FK\" >" +
" <table-pane table-ref='TAB0' x='85' y='101' />" +
" <table-pane table-ref='TAB6' x='196' y='38' />" +
" <table-link relationship-ref='REL12' pk-x='76' pk-y='60'
fk-x='114' fk-y='30' />" +
@@ -1027,10 +1028,7 @@
session.setShowPkTag(false);
session.setShowFkTag(false);
session.setShowAkTag(false);
- session.setShowPK(false);
- session.setShowPKFK(false);
- session.setShowPKFKUnique(false);
- session.setShowPKFKUniqueIndexed(false);
+ session.setColumnVisibility(ColumnVisibility.ALL);
ByteArrayOutputStream byteArrayOutputStream = new
ByteArrayOutputStream();
project.save(byteArrayOutputStream, ENCODING);
@@ -1048,11 +1046,7 @@
assertEquals("PK Tag", session.isShowPkTag(),
newSession.isShowPkTag());
assertEquals("FK Tag", session.isShowFkTag(),
newSession.isShowFkTag());
assertEquals("AK Tag", session.isShowAkTag(),
newSession.isShowAkTag());
- assertEquals("Primary Column", session.isShowPK(),
newSession.isShowPK());
- assertEquals("PK and Fk Column", session.isShowPKFK(),
newSession.isShowPKFK());
- assertEquals("PK, FK and Unique Column",
session.isShowPKFKUnique(), newSession.isShowPKFKUnique());
- assertEquals("PK, FK, Unique and Indexed Columns",
session.isShowPKFKUniqueIndexed(), newSession.isShowPKFKUniqueIndexed());
-
+ assertEquals("Show Option", session.getColumnVisibility(),
newSession.getColumnVisibility());
}
public void testLoadCoversPlayPen()throws Exception{
@@ -1069,11 +1063,7 @@
assertEquals("PK Tag", true, session.isShowPkTag());
assertEquals("FK Tag", true, session.isShowFkTag());
assertEquals("AK Tag", true, session.isShowAkTag());
- assertEquals("Primary Columns", false, session.isShowPK());
- assertEquals("PK and Fk Columns", false, session.isShowPKFK());
- assertEquals("PK, FK and Unique Columns", false,
session.isShowPKFKUnique());
- assertEquals("PK, FK, Unique and Indexed Columns", false,
session.isShowPKFKUniqueIndexed());
- assertEquals("All Columns", true, session.isShowAll());
+ assertEquals("ShowOption", ColumnVisibility.PK_FK,
session.getColumnVisibility());
}
/**
Modified:
trunk/regress/ca/sqlpower/architect/swingui/TestingArchitectSwingSession.java
==============================================================================
---
trunk/regress/ca/sqlpower/architect/swingui/TestingArchitectSwingSession.java
(original)
+++
trunk/regress/ca/sqlpower/architect/swingui/TestingArchitectSwingSession.java
Fri Jan 23 12:13:41 2009
@@ -43,6 +43,7 @@
import ca.sqlpower.architect.olap.OLAPSession;
import ca.sqlpower.architect.profile.ProfileManager;
import ca.sqlpower.architect.profile.ProfileManagerImpl;
+import
ca.sqlpower.architect.swingui.ArchitectSwingSessionImpl.ColumnVisibility;
import ca.sqlpower.architect.swingui.olap.OLAPEditSession;
import ca.sqlpower.architect.undo.ArchitectUndoManager;
import ca.sqlpower.swingui.SPSwingWorker;
@@ -75,11 +76,7 @@
private boolean showFkTag = true;
private boolean showAkTag = true;
- protected boolean showAll = true;
- protected boolean show_PK = false;
- protected boolean show_PK_FK= false;
- protected boolean show_PK_FK_Unique = false;
- protected boolean show_PK_FK_Unique_Indexed = false;
+ private ColumnVisibility choice = ColumnVisibility.ALL;
public TestingArchitectSwingSession(ArchitectSwingSessionContext
context) throws ArchitectException {
this.context = context;
@@ -303,47 +300,14 @@
}
}
- public boolean isShowPK() {
- return show_PK;
- }
-
- public void setShowPK(boolean showPrimary) {
- this.show_PK = showPrimary;
- }
-
- public boolean isShowPKFK() {
- return show_PK_FK;
- }
-
- public void setShowPKFK(boolean showForeign) {
- this.show_PK_FK = showForeign;
- }
-
- public boolean isShowPKFKUnique() {
- return show_PK_FK_Unique;
- }
-
- public void setShowPKFKUnique(boolean showUnique) {
- this.show_PK_FK_Unique = showUnique;
+ public void setColumnVisibility(ColumnVisibility option) {
+ choice = option;
}
- public boolean isShowPKFKUniqueIndexed() {
- return show_PK_FK_Unique_Indexed;
+ public ColumnVisibility getColumnVisibility() {
+ return choice;
}
-
- public void setShowPKFKUniqueIndexed(boolean showIndexed) {
- this.show_PK_FK_Unique_Indexed = showIndexed;
- }
-
-
- public boolean isShowAll() {
- return showAll;
- }
-
- public void setShowAll(boolean showTheRest) {
- this.showAll = showTheRest;
- }
-
+
public OLAPRootObject getOLAPRootObject() {
return olapRootObject;
}
Modified: trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSession.java
==============================================================================
--- trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSession.java
(original)
+++ trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSession.java Fri
Jan 23 12:13:41 2009
@@ -30,6 +30,7 @@
import ca.sqlpower.architect.etl.kettle.KettleJob;
import ca.sqlpower.architect.olap.OLAPRootObject;
import ca.sqlpower.architect.olap.OLAPSession;
+import
ca.sqlpower.architect.swingui.ArchitectSwingSessionImpl.ColumnVisibility;
import ca.sqlpower.architect.swingui.olap.OLAPEditSession;
import ca.sqlpower.architect.undo.ArchitectUndoManager;
import ca.sqlpower.swingui.SwingWorkerRegistry;
@@ -218,58 +219,19 @@
* Sets whether the AK Tags will be shown
*/
public void setShowAkTag(boolean showAkTag);
-
- /**
- * Indicates whether All Columns will be shown.
- */
-
- public boolean isShowAll();
-
- /**
- * Sets whether All Columns should be shown.
- */
- public void setShowAll(boolean showForeign);
/**
- * Indicates whether PK, FK, Unique and Indexed Columns will be shown.
+ * Sets the choice of what columns to show
+ * @param choice The choice user made on how
+ * to show columns.
*/
- public boolean isShowPKFKUniqueIndexed();
+ public void setColumnVisibility(ColumnVisibility choice);
/**
- * Sets whether PK, FK, Unique and Indexed Columns should be shown.
- */
- public void setShowPKFKUniqueIndexed(boolean showUnique);
-
- /**
- * Indicates whether PK, FK and Unique Columns will be shown.
- */
- public boolean isShowPKFKUnique();
-
- /**
- * Sets whether PK,FK and Unique Columns should be shown.
- */
- public void setShowPKFKUnique(boolean showPKFKUnique);
-
-
- /**
- * Indicates whether only PK and FK Columns will be shown.
- */
- public boolean isShowPKFK();
-
- /**
- * Sets whether only PK and FK Columns should be shown.
- */
- public void setShowPKFK(boolean showThePKFK);
-
- /**
- * Indicates whether only PK Columns will be shown.
- */
- public boolean isShowPK();
-
- /**
- * Sets whether only PK Columns should be shown.
+ *
+ * @return the choice of how to show columns.
*/
- public void setShowPK(boolean showThePK);
+ public ColumnVisibility getColumnVisibility();
/**
* Shows the schema manager dialog for this session's OLAP Schemas.
Modified:
trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSessionImpl.java
==============================================================================
--- trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSessionImpl.java
(original)
+++ trunk/src/ca/sqlpower/architect/swingui/ArchitectSwingSessionImpl.java
Fri Jan 23 12:13:41 2009
@@ -141,13 +141,17 @@
private boolean showPkTag = true;
private boolean showFkTag = true;
private boolean showAkTag = true;
-
- private boolean showAll = true;
- private boolean show_Pk_Fk_Unique_Indexed = false;
- private boolean show_Pk_Fk_Unique = false;
- private boolean show_Pk_Fk = false;
- private boolean show_Pk = false;
+ private ColumnVisibility columnVisibility = ColumnVisibility.ALL;
+
+ public static enum ColumnVisibility {
+ ALL,
+ PK,
+ PK_FK,
+ PK_FK_UNIQUE,
+ PK_FK_UNIQUE_INDEXED;
+ }
+
private List<OLAPEditSession> olapEditSessions;
/**
@@ -871,44 +875,19 @@
}
}
- public boolean isShowAll() {
- return showAll;
- }
-
- public void setShowAll(boolean showAll) {
- this.showAll = showAll;
- }
-
- public boolean isShowPKFKUniqueIndexed() {
- return show_Pk_Fk_Unique_Indexed;
- }
-
- public void setShowPKFKUniqueIndexed(boolean showIndexed) {
- this.show_Pk_Fk_Unique_Indexed = showIndexed;
- }
-
- public boolean isShowPKFKUnique() {
- return show_Pk_Fk_Unique;
- }
-
- public void setShowPKFKUnique(boolean showPKFKUnique) {
- this.show_Pk_Fk_Unique = showPKFKUnique;
+ /**
+ * Sets the visibility of columns in the playpen of this session.
+ *
+ * @param option The new column visibility setting. If null, all
columns will
+ * be shown (equivalent to specifying {...@link ColumnVisibility#ALL}).
+ */
+ public void setColumnVisibility(ColumnVisibility option) {
+ columnVisibility = option;
+ // XXX should fire property change event, but apparently the
session doesn't support that
}
- public boolean isShowPKFK() {
- return show_Pk_Fk;
- }
-
- public void setShowPKFK(boolean showPKFK) {
- this.show_Pk_Fk = showPKFK;
- }
-
- public boolean isShowPK() {
- return show_Pk;
- }
-
- public void setShowPK(boolean showPK) {
- this.show_Pk = showPK;
+ public ColumnVisibility getColumnVisibility() {
+ return columnVisibility;
}
public void showOLAPSchemaManager(Window owner) {
Modified: trunk/src/ca/sqlpower/architect/swingui/ProjectSettingsPanel.java
==============================================================================
--- trunk/src/ca/sqlpower/architect/swingui/ProjectSettingsPanel.java
(original)
+++ trunk/src/ca/sqlpower/architect/swingui/ProjectSettingsPanel.java Fri
Jan 23 12:13:41 2009
@@ -30,6 +30,7 @@
import org.apache.log4j.Logger;
import ca.sqlpower.architect.profile.TableProfileCreator;
+import
ca.sqlpower.architect.swingui.ArchitectSwingSessionImpl.ColumnVisibility;
import ca.sqlpower.swingui.DataEntryPanel;
import com.jgoodies.forms.layout.CellConstraints;
@@ -65,10 +66,10 @@
private JCheckBox showAkTag;
private JRadioButton showAll;
- private JRadioButton show_Pk_Fk_Unique_Indexed;
- private JRadioButton show_Pk_Fk_Unique;
- private JRadioButton show_Pk_Fk;
- private JRadioButton show_Pk;
+ private JRadioButton showPkFkUniqueIndexed;
+ private JRadioButton showPkFkUnique;
+ private JRadioButton showPkFk;
+ private JRadioButton showPk;
public ProjectSettingsPanel(ArchitectSwingSession session) {
this.session = session;
@@ -112,31 +113,31 @@
add(new JSeparator(), cc.xyw(1, row, 2));
row++;
- add(showAll = new JRadioButton
(Messages.getString("ProjectSettingsPanel.showAll")), cc.xy(1, row));
//$NON-NLS-1$
+ add(showAll = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showAll")), cc.xy(1,
row)); //$NON-NLS-1$
add(showPkTag = new
JCheckBox(Messages.getString("ProjectSettingsPanel.showPKTags")), cc.xy(2,
row)); //$NON-NLS-1$
row++;
- add(show_Pk_Fk_Unique_Indexed = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPKFKUniqueIndexed")),
cc.xy(1, row)); //$NON-NLS-1$
+ add(showPkFkUniqueIndexed = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPKFKUniqueIndexed")),
cc.xy(1, row)); //$NON-NLS-1$
add(showFkTag = new
JCheckBox(Messages.getString("ProjectSettingsPanel.showFKTags")), cc.xy(2,
row)); //$NON-NLS-1$
row++;
- add(show_Pk_Fk_Unique = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPKFKUnique")),
cc.xy(1, row)); //$NON-NLS-1$
+ add(showPkFkUnique = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPKFKUnique")),
cc.xy(1, row)); //$NON-NLS-1$
add(showAkTag = new
JCheckBox(Messages.getString("ProjectSettingsPanel.showAKTags")), cc.xy(2,
row)); //$NON-NLS-1$
row++;
- add(show_Pk_Fk = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPKFK")), cc.xy(1,
row)); //$NON-NLS-1$
+ add(showPkFk = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPKFK")), cc.xy(1,
row)); //$NON-NLS-1$
add(new JLabel(), cc.xy(2, row));
row++;
- add(show_Pk = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPK")), cc.xy(1,
row)); //$NON-NLS-1$
+ add(showPk = new
JRadioButton(Messages.getString("ProjectSettingsPanel.showPK")), cc.xy(1,
row)); //$NON-NLS-1$
add(new JLabel(), cc.xy(2, row));
ButtonGroup column_show_settings = new ButtonGroup();
column_show_settings.add(showAll);
- column_show_settings.add(show_Pk_Fk_Unique_Indexed);
- column_show_settings.add(show_Pk_Fk_Unique);
- column_show_settings.add(show_Pk_Fk);
- column_show_settings.add(show_Pk);
+ column_show_settings.add(showPkFkUniqueIndexed);
+ column_show_settings.add(showPkFkUnique);
+ column_show_settings.add(showPkFk);
+ column_show_settings.add(showPk);
/*
*/
@@ -156,16 +157,24 @@
showFkTag.setSelected(session.isShowFkTag());
showAkTag.setSelected(session.isShowAkTag());
- if (session.isShowAll()) {
+ ColumnVisibility choice = session.getColumnVisibility();
+
+ switch (choice) {
+ case ALL:
showAll.setSelected(true);
- } else if (session.isShowPKFKUniqueIndexed()) {
- show_Pk_Fk_Unique_Indexed.setSelected(true);
- } else if (session.isShowPKFKUnique()) {
- show_Pk_Fk_Unique.setSelected(true);
- } else if (session.isShowPKFK()) {
- show_Pk_Fk.setSelected(true);
- } else {
- show_Pk.setSelected(true);
+ break;
+ case PK:
+ showPk.setSelected(true);
+ break;
+ case PK_FK:
+ showPkFk.setSelected(true);
+ break;
+ case PK_FK_UNIQUE:
+ showPkFkUnique.setSelected(true);
+ break;
+ case PK_FK_UNIQUE_INDEXED:
+ showPkFkUniqueIndexed.setSelected(true);
+ break;
}
}
@@ -192,12 +201,23 @@
session.setShowFkTag(showFkTag.isSelected());
session.setShowAkTag(showAkTag.isSelected());
- session.setShowAll(showAll.isSelected());
-
session.setShowPKFKUniqueIndexed(show_Pk_Fk_Unique_Indexed.isSelected());
- session.setShowPKFKUnique(show_Pk_Fk_Unique.isSelected());
- session.setShowPKFK(show_Pk_Fk.isSelected());
- session.setShowPK(show_Pk.isSelected());
+ if (showAll.isSelected()) {
+ session.setColumnVisibility(ColumnVisibility.ALL);
+ }
+ if (showPk.isSelected()) {
+ session.setColumnVisibility(ColumnVisibility.PK);
+ }
+ if (showPkFk.isSelected()) {
+ session.setColumnVisibility(ColumnVisibility.PK_FK);
+ }
+ if (showPkFkUnique.isSelected()) {
+ session.setColumnVisibility(ColumnVisibility.PK_FK_UNIQUE);
+ }
+ if (showPkFkUniqueIndexed.isSelected()) {
+
session.setColumnVisibility(ColumnVisibility.PK_FK_UNIQUE_INDEXED);
+ }
+ // XXX this refresh should be handled via a property change event
on the session
session.getPlayPen().updateHiddenColumns();
return true;
Modified: trunk/src/ca/sqlpower/architect/swingui/SwingUIProject.java
==============================================================================
--- trunk/src/ca/sqlpower/architect/swingui/SwingUIProject.java (original)
+++ trunk/src/ca/sqlpower/architect/swingui/SwingUIProject.java Fri Jan 23
12:13:41 2009
@@ -70,6 +70,7 @@
import ca.sqlpower.architect.profile.ProfileManager;
import ca.sqlpower.architect.profile.ProfileResult;
import ca.sqlpower.architect.profile.TableProfileResult;
+import
ca.sqlpower.architect.swingui.ArchitectSwingSessionImpl.ColumnVisibility;
import
ca.sqlpower.architect.swingui.CompareDMSettings.SourceOrTargetSettings;
import ca.sqlpower.architect.swingui.olap.CubePane;
import ca.sqlpower.architect.swingui.olap.DimensionPane;
@@ -289,24 +290,10 @@
setupGenericPlayPen(pp, attributes);
// default values in playpen are true
- String showPK = attributes.getValue("showPK"); //$NON-NLS-1$
- if (showPK != null) {
- getSession().setShowPK(Boolean.valueOf(showPK));
- }
- String showPKFK = attributes.getValue("showPKFK"); //$NON-NLS-1$
- if (showPKFK != null) {
- getSession().setShowPKFK(Boolean.valueOf(showPKFK));
}
- String showPKFKUnique = attributes.getValue("showPKFKUnique");
//$NON-NLS-1$
- if (showPKFKUnique != null) {
-
getSession().setShowPKFKUnique(Boolean.valueOf(showPKFKUnique));
- }
- String showPKFKUniqueIndexed =
attributes.getValue("showPKFKUniqueIndexed"); //$NON-NLS-1$
- if (showPKFKUniqueIndexed != null) {
-
getSession().setShowPKFKUniqueIndexed(Boolean.valueOf(showPKFKUniqueIndexed));
- }
- String showAll = attributes.getValue("showAll"); //$NON-NLS-1$
- if (showAll != null) {
- getSession().setShowAll(Boolean.valueOf(showAll));
+
+ String columnVisibility =
attributes.getValue("columnVisibility"); //$NON-NLS-1$
+ if (columnVisibility != null) {
+
getSession().setColumnVisibility(ColumnVisibility.valueOf(columnVisibility));
}
String showPrimaryTag = attributes.getValue("showPrimaryTag");
//$NON-NLS-1$
@@ -972,11 +959,7 @@
tagText.append("
showPrimaryTag=\"").append(getSession().isShowPkTag()).append("\"");
//$NON-NLS-1$ //$NON-NLS-2$
tagText.append("
showForeignTag=\"").append(getSession().isShowFkTag()).append("\"");
//$NON-NLS-1$ //$NON-NLS-2$
tagText.append("
showAlternateTag=\"").append(getSession().isShowAkTag()).append("\"");
//$NON-NLS-1$ //$NON-NLS-2$
- tagText.append("
showPK=\"").append(getSession().isShowPK()).append("\""); //$NON-NLS-1$
//$NON-NLS-2$
- tagText.append("
showPKFK=\"").append(getSession().isShowPKFK()).append("\""); //$NON-NLS-1$
//$NON-NLS-2$
- tagText.append("
showPKFKUnique=\"").append(getSession().isShowPKFKUnique()).append("\"");
//$NON-NLS-1$ //$NON-NLS-2$
- tagText.append("
showPKFKUniqueIndexed=\"").append(getSession().isShowPKFKUniqueIndexed()).append("\"");
//$NON-NLS-1$ //$NON-NLS-2$
- tagText.append("
showAll=\"").append(getSession().isShowAll()).append("\""); //$NON-NLS-1$
//$NON-NLS-2$
+ tagText.append("
columnVisibility=\"").append(getSession().getColumnVisibility()).append("\"");
//$NON-NLS-1$ //$NON-NLS-2$
}
tagText.append(">"); //$NON-NLS-1$
ioo.println(out, tagText.toString());
Modified: trunk/src/ca/sqlpower/architect/swingui/TablePane.java
==============================================================================
--- trunk/src/ca/sqlpower/architect/swingui/TablePane.java (original)
+++ trunk/src/ca/sqlpower/architect/swingui/TablePane.java Fri Jan 23
12:13:41 2009
@@ -64,6 +64,7 @@
import ca.sqlpower.architect.SQLRelationship;
import ca.sqlpower.architect.SQLTable;
import ca.sqlpower.architect.layout.LayoutEdge;
+import
ca.sqlpower.architect.swingui.ArchitectSwingSessionImpl.ColumnVisibility;
import ca.sqlpower.architect.swingui.action.EditSpecificIndexAction;
import ca.sqlpower.architect.swingui.dbtree.SQLObjectSelection;
import ca.sqlpower.swingui.ColorIcon;
@@ -393,11 +394,11 @@
public void updateHiddenColumns() {
hiddenColumns.clear();
ArchitectSwingSession session = getPlayPen().getSession();
+ ColumnVisibility choice = session.getColumnVisibility();
// if all the boxes are checked, then hide no columns, only these 3
need be
// checked. Draw a truth table if you don't believe me.
- if (!session.isShowAll()) {
-
+ if(!choice.equals(ColumnVisibility.ALL)) {
// start with a list of all the columns, then remove the ones
that
// should be shown
hiddenColumns.addAll(getItems());
@@ -405,13 +406,14 @@
if (col.isPrimaryKey()) {
hiddenColumns.remove(col);
}
- if (!session.isShowPK() && col.isForeignKey()) {
+ if (!choice.equals(ColumnVisibility.PK) &&
col.isForeignKey()) {
hiddenColumns.remove(col);
}
- if (!session.isShowPK() && !session.isShowPKFK() &&
col.isUniqueIndexed()) {
+ if (!choice.equals(ColumnVisibility.PK)
&& !choice.equals(ColumnVisibility.PK_FK) && col.isUniqueIndexed()) {
hiddenColumns.remove(col);
}
- if (!session.isShowPK() && !session.isShowPKFK()
&& !session.isShowPKFKUnique() && col.isIndexed()) {
+ if (!choice.equals(ColumnVisibility.PK)
&& !choice.equals(ColumnVisibility.PK_FK) &&
+ !choice.equals(ColumnVisibility.PK_FK_UNIQUE) &&
col.isIndexed()) {
hiddenColumns.remove(col);
}
}