You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pa...@apache.org on 2007/08/02 11:53:36 UTC
svn commit: r562058 - in
/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor:
controller/HierarchyViewController.java view/views/HierarchyView.java
Author: pamarcelot
Date: Thu Aug 2 02:53:36 2007
New Revision: 562058
URL: http://svn.apache.org/viewvc?view=rev&rev=562058
Log:
Added an Overview Label in the Hierarchy View indicating the aliases, OID and schema of the selected schema object.
Modified:
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/controller/HierarchyViewController.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/views/HierarchyView.java
Modified: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/controller/HierarchyViewController.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/controller/HierarchyViewController.java?view=diff&rev=562058&r1=562057&r2=562058
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/controller/HierarchyViewController.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/controller/HierarchyViewController.java Thu Aug 2 02:53:36 2007
@@ -72,6 +72,9 @@
{
public void openProjectChanged( Project oldProject, Project newProject )
{
+ // Since we're changing of project, let's set the input as null
+ view.setInput( null );
+
if ( newProject != null )
{
view.getViewer().getTree().setEnabled( true );
@@ -82,7 +85,6 @@
}
else
{
- view.setInput( null );
view.getViewer().getTree().setEnabled( false );
showSupertypeHierarchy.setEnabled( false );
showSubtypeHierarchy.setEnabled( false );
Modified: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/views/HierarchyView.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/views/HierarchyView.java?view=diff&rev=562058&r1=562057&r2=562058
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/views/HierarchyView.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/views/HierarchyView.java Thu Aug 2 02:53:36 2007
@@ -20,12 +20,20 @@
package org.apache.directory.studio.apacheds.schemaeditor.view.views;
+import org.apache.directory.shared.ldap.schema.SchemaObject;
import org.apache.directory.studio.apacheds.schemaeditor.Activator;
import org.apache.directory.studio.apacheds.schemaeditor.controller.HierarchyViewController;
+import org.apache.directory.studio.apacheds.schemaeditor.model.AttributeTypeImpl;
+import org.apache.directory.studio.apacheds.schemaeditor.model.ObjectClassImpl;
+import org.apache.directory.studio.apacheds.schemaeditor.view.ViewUtils;
import org.eclipse.jface.viewers.DecoratingLabelProvider;
import org.eclipse.jface.viewers.TreeViewer;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.CLabel;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.part.ViewPart;
@@ -46,12 +54,35 @@
/** The controller */
private HierarchyViewController controller;
+ /** The Overview label */
+ private Label overviewLabel;
+
/* (non-Javadoc)
* @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
*/
public void createPartControl( Composite parent )
{
+ GridLayout gridLayout = new GridLayout();
+ gridLayout.horizontalSpacing = 0;
+ gridLayout.marginBottom = 0;
+ gridLayout.marginHeight = 0;
+ gridLayout.marginLeft = 0;
+ gridLayout.marginRight = 0;
+ gridLayout.marginTop = 0;
+ gridLayout.marginWidth = 0;
+ gridLayout.verticalSpacing = 0;
+ parent.setLayout( gridLayout );
+
+ // Overview Label
+ overviewLabel = new Label( parent, SWT.WRAP );
+ overviewLabel.setText( "" );
+ overviewLabel.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
+ // Separator Label
+ Label separatorLabel = new Label( parent, SWT.SEPARATOR | SWT.HORIZONTAL );
+ separatorLabel.setLayoutData( new GridData( SWT.FILL, SWT.NONE, true, false ) );
+
initViewer( parent );
controller = new HierarchyViewController( this );
@@ -66,10 +97,11 @@
*/
private void initViewer( Composite parent )
{
- viewer = new TreeViewer( parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER );
+ viewer = new TreeViewer( parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL );
viewer.setContentProvider( new HierarchyViewContentProvider() );
viewer.setLabelProvider( new DecoratingLabelProvider( new HierarchyViewLabelProvider(), Activator.getDefault()
.getWorkbench().getDecoratorManager().getLabelDecorator() ) );
+ viewer.getTree().setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true ) );
viewer.getTree().setEnabled( false );
}
@@ -109,6 +141,53 @@
{
viewer.setInput( input );
viewer.expandAll();
+ if ( input == null )
+ {
+ overviewLabel.setText( "" );
+ }
+ else
+ {
+ if ( input instanceof AttributeTypeImpl )
+ {
+ setOverviewLabel( ( AttributeTypeImpl ) input );
+ }
+ else if ( input instanceof ObjectClassImpl )
+ {
+ setOverviewLabel( ( ObjectClassImpl ) input );
+ }
+ else
+ {
+ overviewLabel.setText( "" );
+ }
+ }
+ }
+
+
+ /**
+ * Set the overview label for the given schema object.
+ *
+ * @param object
+ * the schema object
+ */
+ private void setOverviewLabel( SchemaObject object )
+ {
+ StringBuffer sb = new StringBuffer();
+
+ String[] names = object.getNames();
+ if ( ( names != null ) && ( names.length > 0 ) )
+ {
+ sb.append( ViewUtils.concateAliases( names ) );
+ }
+ else
+ {
+ sb.append( "(None)" );
+ }
+ sb.append( " (" );
+ sb.append( object.getOid() );
+ sb.append( ") - Schema:" );
+ sb.append( object.getSchema() );
+
+ overviewLabel.setText( sb.toString() );
}
@@ -118,7 +197,7 @@
public void dispose()
{
controller.dispose();
-
+
super.dispose();
}
}