- // nodes viewer
- nodesViewer = new TreeViewer(top, SWT.MULTI | SWT.H_SCROLL
- | SWT.V_SCROLL);
- nodesViewer.getTree().setLayoutData(
- new GridData(SWT.FILL, SWT.FILL, true, true));
- nodesViewer.setContentProvider(new NodeContentProvider());
- nodesViewer.setLabelProvider(new NodeLabelProvider());
- nodesViewer
- .addSelectionChangedListener(new ISelectionChangedListener() {
- public void selectionChanged(SelectionChangedEvent event) {
- if (!event.getSelection().isEmpty()) {
- IStructuredSelection sel = (IStructuredSelection) event
- .getSelection();
- propertiesViewer.setInput(sel.getFirstElement());
- } else {
- propertiesViewer.setInput(getViewSite());
- }
- }
- });
-
- nodesViewer.addDoubleClickListener(new IDoubleClickListener() {
- public void doubleClick(DoubleClickEvent event) {
- if (event.getSelection() == null
- || event.getSelection().isEmpty())
- return;
- Object obj = ((IStructuredSelection) event.getSelection())
- .getFirstElement();
- if (obj instanceof RepositoryNode) {
- RepositoryNode rpNode = (RepositoryNode) obj;
- rpNode.login();
- // For the file provider to be able to browse the repo.
- // TODO : enhanced that.
- jfp.setRepositoryNode(rpNode);
-
- nodesViewer.refresh(obj);
- } else if (obj instanceof WorkspaceNode) {
- ((WorkspaceNode) obj).login();
- nodesViewer.refresh(obj);
- } // call the openFile commands on node
- else if (obj instanceof Node) {
- // Shell shell =
- // aup.getWorkbench().getActiveWorkbenchWindow()
- // .getShell();
- // we can also do
- // event.getViewer().getControl().getShell();
-
- // Browser browser = new Browser(shell, SWT.NONE);
- // browser.setText(encodedURL);
- // boolean check = browser.setUrl(encodedURL);
- // System.out.println("soo ?? : " + check);
- // System.out.println("script : " + browser.executeScript);
-
- // try {
- // RWT.getResponse().sendRedirect(encodedURL);
- // } catch (IOException e1) {
- // // TODO Auto-generated catch block
- // e1.printStackTrace();
- // }
-
- // final Browser browser = new Browser(parent, SWT.NONE);
- // browser.setText(createDownloadHtml("test.pdf",
- // "Download file"));
-
- Node node = (Node) obj;
- try {
- if (node.isNodeType("nt:file")) {
- String name = node.getName();
- String id = node.getIdentifier();
-
- Node child = node.getNodes().nextNode();
- if (!child.isNodeType("nt:resource")) {
- Error.show("Cannot open file children Node that are not of 'nt:resource' type.");
- return;
- }
-
- InputStream fis = null;
-
- try {
- fis = (InputStream) child
- .getProperty("jcr:data").getBinary()
- .getStream();
- // Instantiate the generic object that fits for
- // both RCP & RAP.
- fh.openFile(name, id, fis);
- } catch (Exception e) {
- throw new ArgeoException(
- "Stream error while opening file", e);
- } finally {
- IOUtils.closeQuietly(fis);
- }
- }
- } catch (RepositoryException re) {
- re.printStackTrace();
-
- }