X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;ds=sidebyside;f=eclipse%2Fplugins%2Forg.argeo.slc.client.ui.dist%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fclient%2Fui%2Fdist%2Feditors%2FArtifactDetailsPage.java;fp=eclipse%2Fplugins%2Forg.argeo.slc.client.ui.dist%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fclient%2Fui%2Fdist%2Feditors%2FArtifactDetailsPage.java;h=0000000000000000000000000000000000000000;hb=651d33e13bfa9a7b46464be412023ee747e612e8;hp=23d0eb67aa297985c522158b5a9dc795654ff736;hpb=868102c0f0220e12eca836b6ec9b3a2b9a3441e4;p=gpl%2Fargeo-slc.git
diff --git a/eclipse/plugins/org.argeo.slc.client.ui.dist/src/main/java/org/argeo/slc/client/ui/dist/editors/ArtifactDetailsPage.java b/eclipse/plugins/org.argeo.slc.client.ui.dist/src/main/java/org/argeo/slc/client/ui/dist/editors/ArtifactDetailsPage.java
deleted file mode 100644
index 23d0eb67a..000000000
--- a/eclipse/plugins/org.argeo.slc.client.ui.dist/src/main/java/org/argeo/slc/client/ui/dist/editors/ArtifactDetailsPage.java
+++ /dev/null
@@ -1,370 +0,0 @@
-/*
- * Copyright (C) 2007-2012 Mathieu Baudier
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.argeo.slc.client.ui.dist.editors;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.jcr.Node;
-import javax.jcr.NodeIterator;
-import javax.jcr.Property;
-import javax.jcr.PropertyIterator;
-import javax.jcr.RepositoryException;
-import javax.jcr.Value;
-import javax.jcr.nodetype.NodeType;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.argeo.ArgeoException;
-import org.argeo.slc.client.ui.dist.DistImages;
-import org.argeo.slc.client.ui.dist.utils.DistUiHelpers;
-import org.argeo.slc.client.ui.dist.utils.GenericDoubleClickListener;
-import org.argeo.slc.jcr.SlcNames;
-import org.argeo.slc.jcr.SlcTypes;
-import org.eclipse.jface.viewers.ColumnLabelProvider;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerCell;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeColumn;
-import org.eclipse.ui.forms.IManagedForm;
-import org.eclipse.ui.forms.editor.FormEditor;
-import org.eclipse.ui.forms.editor.FormPage;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.ScrolledForm;
-
-/**
- * Generic editor property page. Lists all properties of current node as a
- * complex tree. TODO: enable editing
- */
-
-public class ArtifactDetailsPage extends FormPage implements SlcNames, SlcTypes {
- private final static Log log = LogFactory.getLog(ArtifactDetailsPage.class);
-
- // Main business Objects
- private Node currentNode;
-
- // This page widgets
- private FormToolkit tk;
- private TreeViewer complexTree;
- private Text mavenSnippet;
-
- public ArtifactDetailsPage(FormEditor editor, String title, Node currentNode) {
- super(editor, "id", title);
- this.currentNode = currentNode;
- }
-
- protected void createFormContent(IManagedForm managedForm) {
- tk = managedForm.getToolkit();
- ScrolledForm form = managedForm.getForm();
- GridLayout layout = new GridLayout(1, false);
- layout.marginWidth = 5;
- form.getBody().setLayout(layout);
-
- complexTree = createComplexTree(form.getBody());
- createMavenSnipet(form.getBody());
- }
-
- private TreeViewer createComplexTree(Composite parent) {
- int style = SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION;
- Tree tree = new Tree(parent, style);
- GridData gd = new GridData(GridData.FILL_BOTH);
- gd.grabExcessHorizontalSpace = true;
- gd.grabExcessVerticalSpace = true;
- tree.setLayoutData(gd);
- createColumn(tree, "Attribute", SWT.LEFT, 200);
- createColumn(tree, "Value", SWT.LEFT, 200);
- tree.setLinesVisible(true);
- tree.setHeaderVisible(true);
-
- TreeViewer result = new TreeViewer(tree);
- result.setContentProvider(new TreeContentProvider());
- result.setLabelProvider(new TreeLabelProvider());
-
- result.setInput(currentNode);
- result.expandToLevel(2);
-
- result.addDoubleClickListener(new GenericDoubleClickListener(result));
- // result.expandAll();
- return result;
- }
-
- private void createMavenSnipet(Composite parent) {
- mavenSnippet = new Text(parent, SWT.MULTI | SWT.WRAP | SWT.BORDER);
- GridData gd = new GridData(GridData.FILL_HORIZONTAL);
- gd.grabExcessHorizontalSpace = true;
- gd.heightHint = 75;
- mavenSnippet.setLayoutData(gd);
- mavenSnippet.setText(generateXmlSnippet());
- }
-
- // Helpers
- private String generateXmlSnippet() {
- try {
- StringBuffer sb = new StringBuffer();
- sb.append("\n");
- sb.append("\t");
- sb.append(currentNode.getProperty(SLC_GROUP_ID).getString());
- sb.append("\n");
- sb.append("\t");
- sb.append(currentNode.getProperty(SLC_ARTIFACT_ID).getString());
- sb.append("\n");
- sb.append("\t");
- sb.append(currentNode.getProperty(SLC_ARTIFACT_VERSION).getString());
- sb.append("\n");
- sb.append("");
- return sb.toString();
- } catch (RepositoryException re) {
- throw new ArgeoException(
- "unexpected error while generating maven snippet");
- }
- }
-
- private static TreeColumn createColumn(Tree parent, String name, int style,
- int width) {
- TreeColumn result = new TreeColumn(parent, style);
- result.setText(name);
- result.setWidth(width);
- result.setMoveable(true);
- result.setResizable(true);
- return result;
- }
-
- // View specific object
- private class ViewSpecificItems {
- private String key;
- private Object value;
- private boolean isFolder;
- private Node curNode;
-
- public ViewSpecificItems(String key, Object value, boolean isFolder) {
- this.key = key;
- this.value = value;
- this.isFolder = isFolder;
- }
-
- public String getKey() {
- return key;
- }
-
- public void setNode(Node node) {
- this.curNode = node;
- }
-
- public Node getNode() {
- return curNode;
- }
-
- public Object getValue() {
- return value;
- }
-
- public boolean isFolder() {
- return isFolder;
- }
-
- }
-
- // providers
- private class TreeLabelProvider extends ColumnLabelProvider implements
- SlcTypes, SlcNames {
-
- public void update(ViewerCell cell) {
- try {
-
- int colIndex = cell.getColumnIndex();
- Object element = cell.getElement();
- if (element instanceof Property) {
- Property prop = (Property) element;
- if (colIndex == 0)
- cell.setText(DistUiHelpers.getLabelJcrName(prop
- .getName()));
- else if (colIndex == 1)
- cell.setText(DistUiHelpers.formatValueAsString(prop
- .getValue()));
-
- } else if (element instanceof ViewSpecificItems) {
- if (colIndex == 0)
- cell.setText(((ViewSpecificItems) element).getKey());
- else if (colIndex == 1)
- cell.setText(DistUiHelpers
- .formatAsString(((ViewSpecificItems) element)
- .getValue()));
-
- } else if (element instanceof Node) {
- Node node = (Node) element;
- if (colIndex == 0) {
- if (node.isNodeType(NodeType.NT_FILE)) {
- cell.setImage(DistImages.IMG_FILE);
- cell.setText(node.getName());
- } else if (node.isNodeType(SLC_IMPORTED_PACKAGE))
- cell.setText("Import package");
- else if (node.isNodeType(SLC_EXPORTED_PACKAGE))
- cell.setText("Export package");
-
- } else if (colIndex == 1) {
- if (node.isNodeType(SLC_ARTIFACT)) {
- StringBuffer sb = new StringBuffer("");
- if (node.hasProperty(SLC_ARTIFACT_CLASSIFIER)) {
- sb.append(node.getProperty(
- SLC_ARTIFACT_CLASSIFIER).getString());
- sb.append(" ");
- }
- if (node.hasProperty(SLC_ARTIFACT_EXTENSION))
- sb.append(node.getProperty(
- SLC_ARTIFACT_EXTENSION).getString());
- cell.setText(sb.toString());
- } else if (node.isNodeType(SLC_IMPORTED_PACKAGE)
- || node.isNodeType(SLC_EXPORTED_PACKAGE))
- cell.setText(node.getProperty(SLC_NAME).getString());
- }
- }
- } catch (RepositoryException e) {
- throw new ArgeoException(
- "unexpected error while getting artifact information",
- e);
- }
- }
- }
-
- private class TreeContentProvider implements ITreeContentProvider {
- public Object[] getElements(Object parent) {
- List