ResourcesView : support JPEG format 37/20037/1
authorjeonghwan kim <jeonghwan0613.kim@samsung.com>
Fri, 25 Apr 2014 07:38:07 +0000 (16:38 +0900)
committerjeonghwan kim <jeonghwan0613.kim@samsung.com>
Fri, 25 Apr 2014 07:38:07 +0000 (16:38 +0900)
Change-Id: I406fab5338469fbbd191f2dbb8f9ab08363519eb
Signed-off-by: jeonghwan kim <jeonghwan0613.kim@samsung.com>
13 files changed:
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/ResourcesPage.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/ResourcesView.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/ResourcesViewKeyHandler.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/actions/AbstractResourcesViewAction.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/actions/CopyAction.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/actions/DeleteAction.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/actions/GoIntoAction.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/actions/RenameAction.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/model/Resource.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/viewer/ResourcesEntryEditPart.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/viewer/ResourcesGroupEditPart.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/viewer/ResourcesRootEditPart.java [new file with mode: 0644]
org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/viewer/ResourcesViewer.java

index f15950d..82bfbd7 100644 (file)
@@ -52,8 +52,10 @@ import org.eclipse.jface.action.Separator;
 import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.jface.viewers.ISelection;
 import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.dnd.DND;
 import org.eclipse.swt.dnd.DropTarget;
@@ -61,32 +63,39 @@ import org.eclipse.swt.dnd.FileTransfer;
 import org.eclipse.swt.dnd.Transfer;
 import org.eclipse.swt.events.ModifyEvent;
 import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.ImageData;
+import org.eclipse.swt.graphics.ImageLoader;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.program.Program;
 import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
 import org.eclipse.swt.widgets.DirectoryDialog;
+import org.eclipse.swt.widgets.Display;
 import org.eclipse.swt.widgets.FileDialog;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.IActionBars;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.ISharedImages;
+import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.actions.ActionFactory;
 import org.eclipse.ui.part.Page;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.tizen.common.util.Assert;
 import org.tizen.common.util.EFSUtil;
 import org.tizen.webuibuilder.gef.dnd.model.ResourceTemplate;
+import org.tizen.webuibuilder.ui.SelectionProvider;
 import org.tizen.webuibuilder.ui.editor.PageDesigner;
 import org.tizen.webuibuilder.ui.views.resources.model.Resource;
 import org.tizen.webuibuilder.ui.views.resources.viewer.ResourcesEntryEditPart;
 import org.tizen.webuibuilder.ui.views.resources.viewer.ResourcesViewer;
-import org.tizen.webuibuilder.utility.ImageUtils;
 
 
 public class ResourcesPage extends Page implements PalettePage, ModifyListener,
-        ISelectionChangedListener {
+        ISelectionChangedListener, ISelectionProvider {
 
     private static int ITEM_WIDTH = 32;
     private static int ITEM_HEIGHT = 32;
@@ -105,14 +114,11 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
     protected Text filterText = null;
     protected Combo filterCombo = null;
 
-    protected PaletteRoot root = null;
-    protected IProject project = null;
     protected IFolder currentFolder = null;
     protected List<Resource> resources = null;
 
     // PageDesigner
     private PageDesigner pageDesigner = null;
-    private IFile baseFile = null;
 
     // Drag & Drop
     private TemplateTransferDragSourceListener dragSourceListener = null;
@@ -121,9 +127,11 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
     private DropTarget dropTarget = null;
 
     private ResourcesView view = null;
-    protected ResourcesViewer viewer = null;
+    private ResourcesViewer viewer = null;
     private List<String> selectionActions = new ArrayList<String>();
-    protected List<Resource> displayResources = new LinkedList<Resource>();
+
+    private SelectionProvider selectionProvider = new SelectionProvider();
+    private static Logger logger = LoggerFactory.getLogger(ResourcesPage.class);
 
     public ResourcesPage(ResourcesView view) {
         super();
@@ -140,12 +148,7 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
 
     protected void setPageDesigner(PageDesigner pageDesigner) {
         this.pageDesigner = pageDesigner;
-        IEditorInput input = pageDesigner.getEditorInput();
-        if (!(input instanceof IFileEditorInput)) {
-            return;
-        }
-        IFileEditorInput fileInput = (IFileEditorInput) input;
-        baseFile = fileInput.getFile();
+
     }
 
     protected PageDesigner getPageDesigner() {
@@ -153,7 +156,10 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
     }
 
     protected IFile getBaseFile() {
-        return baseFile;
+        IEditorInput input = pageDesigner.getEditorInput();
+        Assert.isTrue(input instanceof IFileEditorInput);
+        IFileEditorInput fileInput = (IFileEditorInput) input;
+        return fileInput.getFile();
     }
 
     /*
@@ -193,7 +199,7 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
         dropTargetListener = new ResourcesViewDropTargetAdapter(this);
         pageDesignerDnDHooker = new PageDesignerDnDHooker(this);
 
-        getSite().setSelectionProvider(viewer);
+        getSite().setSelectionProvider(this);
         addListeners();
     }
 
@@ -204,8 +210,8 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
      */
     @Override
     public void dispose() {
-        super.dispose();
         removeListeners();
+        super.dispose();
     }
 
     protected ActionRegistry getActionRegistry() {
@@ -343,12 +349,16 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
 
     private void setInput(IFolder folder) {
         Assert.notNull(folder);
-        project = folder.getProject();
         currentFolder = folder;
         resources = getResources(currentFolder);
-        root = getPaletteRoot(currentFolder, resources);
+        setInput(resources);
+    }
+
+    private void setInput(List<Resource> resources) {
+        PaletteRoot root = getPaletteRoot(currentFolder, resources);
         viewer.setPaletteRoot(root);
-        updateActions();
+        viewer.deselectAll();
+        refreshViewer();
     }
 
     /**
@@ -368,7 +378,7 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
         List<Resource> resources = new LinkedList<Resource>();
         int folderCount = 0;
         for (IResource member : members) {
-            Resource resource = new Resource(baseFile, member);
+            Resource resource = new Resource(getBaseFile(), member);
             if (member instanceof IFolder) {
                 resources.add(folderCount, resource);
                 folderCount++;
@@ -398,13 +408,17 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
         group.setDescription(groupName);
         for (Resource resource : resources) {
             String name = resource.getName();
-            Image image = resource.getImage();
-            image = ImageUtils.resize(image, ITEM_WIDTH, ITEM_HEIGHT);
-            ImageDescriptor imageDescriptor = ImageDescriptor.createFromImage(image);
+            IResource iResource = resource.getResource();
+            ImageDescriptor imageDescriptor = getImageDescriptor(iResource);
+            ImageData imageData = imageDescriptor.getImageData();
+            ImageData resizedImageData = imageData.scaledTo(ITEM_WIDTH, ITEM_HEIGHT);
+            ImageDescriptor resizedImageDescriptor =
+                    ImageDescriptor.createFromImageData(resizedImageData);
             ResourceTemplate template = new ResourceTemplate(resource);
             CombinedTemplateCreationEntry entry =
                     new CombinedTemplateCreationEntry(name, "", template, template.getFactory(),
-                                                      imageDescriptor, imageDescriptor);
+                                                      resizedImageDescriptor,
+                                                      resizedImageDescriptor);
             group.add(entry);
         }
         root.add(group);
@@ -440,6 +454,16 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
      */
     @Override
     public void selectionChanged(SelectionChangedEvent event) {
+        ISelection selection = event.getSelection();
+        Assert.isTrue(selection instanceof IStructuredSelection);
+        IStructuredSelection ss = (IStructuredSelection) selection;
+        Object object = ss.getFirstElement();
+        logger.info(object.getClass().toString());
+        if (object instanceof ResourcesEntryEditPart) {
+            setSelection(selection);
+        } else {
+            setSelection(StructuredSelection.EMPTY);
+        }
         updateActions();
     }
 
@@ -468,7 +492,7 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
     }
 
     public void goInto() {
-        ISelection selection = viewer.getSelection();
+        ISelection selection = getSelection();
         if (!(selection instanceof IStructuredSelection)) {
             return;
         }
@@ -611,9 +635,127 @@ public class ResourcesPage extends Page implements PalettePage, ModifyListener,
     }
 
     private void runFilters(String exp, String extension) {
-        displayResources = getRegExpFilteredResources(resources, exp);
+        List<Resource> displayResources = getRegExpFilteredResources(resources, exp);
         displayResources = getExtensionFilteredResources(displayResources, extension);
-        root = getPaletteRoot(currentFolder, displayResources);
-        viewer.setPaletteRoot(root);
+        setInput(displayResources);
+    }
+
+    protected void refreshViewer() {
+        // PaletteRoot
+        PaletteRoot root = viewer.getPaletteRoot();
+        List<?> groups = root.getChildren();
+        Assert.isTrue(groups.size() == 1);
+        Object group = groups.get(0);
+        // PaletteDrawer
+        Assert.isTrue(group instanceof PaletteDrawer);
+        PaletteDrawer paletteDrawer = (PaletteDrawer) group;
+        List<?> entries = paletteDrawer.getChildren();
+        for (Object entry : entries) {
+            Assert.isTrue(entry instanceof CombinedTemplateCreationEntry);
+            final CombinedTemplateCreationEntry templateEntry =
+                    (CombinedTemplateCreationEntry) entry;
+            Object template = templateEntry.getTemplate();
+            Assert.isTrue(template instanceof ResourceTemplate);
+            ResourceTemplate resourceTemplate = (ResourceTemplate) template;
+            Resource resource = resourceTemplate.getResource();
+            if (resource.getType() != Resource.IMAGE) {
+                continue;
+            }
+            final IResource iResource = resource.getResource();
+            Display.getCurrent().asyncExec(new Runnable() {
+                /*
+                 * (non-Javadoc)
+                 * 
+                 * @see java.lang.Runnable#run()
+                 */
+                @Override
+                public void run() {
+                    ImageLoader imageLoader = new ImageLoader();
+                    ImageData[] imageData = imageLoader.load(iResource.getLocation().toString());
+                    ImageData resizedImageData = imageData[0].scaledTo(ITEM_WIDTH, ITEM_HEIGHT);
+                    ImageDescriptor imageDescriptor =
+                            ImageDescriptor.createFromImageData(resizedImageData);
+                    templateEntry.setSmallIcon(imageDescriptor);
+                    templateEntry.setLargeIcon(imageDescriptor);
+                }
+            });
+        }
+    }
+
+    private ImageDescriptor getImageDescriptor(IResource resource) {
+        Assert.notNull(resource);
+        ImageDescriptor imageDescriptor = null;
+        if (resource instanceof IFolder) {
+            imageDescriptor =
+                    PlatformUI.getWorkbench().getSharedImages()
+                            .getImageDescriptor(ISharedImages.IMG_OBJ_FOLDER);
+        } else if (resource instanceof IFile) {
+            IFile file = (IFile) resource;
+            imageDescriptor = getImageDescriptor(file);
+        } else {
+        }
+        return imageDescriptor;
+    }
+
+    private ImageDescriptor getImageDescriptor(IFile file) {
+        Assert.notNull(file);
+        ImageDescriptor imageDescriptor = null;
+        String extension = file.getFileExtension();
+        Program program = Program.findProgram(extension);
+        if (program != null) {
+            imageDescriptor = ImageDescriptor.createFromImageData(program.getImageData());
+        } else {
+            imageDescriptor =
+                    PlatformUI.getWorkbench().getSharedImages()
+                            .getImageDescriptor(ISharedImages.IMG_OBJ_FILE);
+        }
+        return imageDescriptor;
+    }
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see
+     * org.eclipse.jface.viewers.ISelectionProvider#setSelection(org.eclipse.jface.viewers.ISelection
+     * )
+     */
+    @Override
+    public void setSelection(ISelection selection) {
+        selectionProvider.setSelection(selection);
+    }
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()
+     */
+    @Override
+    public ISelection getSelection() {
+        return selectionProvider.getSelection();
+    }
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see
+     * org.eclipse.jface.viewers.ISelectionProvider#addSelectionChangedListener(org.eclipse.jface
+     * .viewers.ISelectionChangedListener)
+     */
+    @Override
+    public void addSelectionChangedListener(ISelectionChangedListener listener) {
+        selectionProvider.addSelectionChangedListener(listener);
+    }
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see
+     * org.eclipse.jface.viewers.ISelectionProvider#removeSelectionChangedListener(org.eclipse.jface
+     * .viewers.ISelectionChangedListener)
+     */
+    @Override
+    public void removeSelectionChangedListener(ISelectionChangedListener listener) {
+        selectionProvider.removeSelectionChangedListener(listener);
     }
+
 }
index e5f3375..739d60a 100644 (file)
@@ -199,7 +199,6 @@ public class ResourcesView extends PageBookView {
 
         action = new CopyAction(this);
         action.setId(ActionFactory.COPY.getId());
-        logger.info(ActionFactory.COPY.getId() + " : " + ActionFactory.COPY.getCommandId());
         action.setText(ResourcesViewMessages.ACTION_COPY_TITLE);
         action.setImageDescriptor(getImageDescriptor(ISharedImages.IMG_TOOL_COPY));
         getActionRegistry().registerAction(action);
index 7ed9513..4cd5999 100644 (file)
@@ -27,12 +27,9 @@ import org.eclipse.gef.ui.palette.PaletteViewer;
 import org.eclipse.gef.ui.parts.PaletteViewerKeyHandler;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.KeyEvent;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 
 public class ResourcesViewKeyHandler extends PaletteViewerKeyHandler {
-    private static Logger logger = LoggerFactory.getLogger(ResourcesViewKeyHandler.class);
     private ResourcesPage page = null;
 
     public ResourcesViewKeyHandler(ResourcesPage page, PaletteViewer viewer) {
@@ -47,7 +44,6 @@ public class ResourcesViewKeyHandler extends PaletteViewerKeyHandler {
      * org.eclipse.gef.ui.parts.PaletteViewerKeyHandler#keyPressed(org.eclipse.swt.events.KeyEvent)
      */
     public boolean keyPressed(KeyEvent event) {
-        logger.info(event.toString());
         if (acceptGoInto(event)) {
             goInto();
             return true;
index 0fc6369..e3185a2 100644 (file)
@@ -65,6 +65,10 @@ public abstract class AbstractResourcesViewAction extends SelectionAction {
      */
     @Override
     public boolean calculateEnabled() {
+        return isActivatePage();
+    }
+
+    protected boolean isActivatePage() {
         ResourcesView view = getParentView();
         IPage page = view.getCurrentPage();
         if (!(page instanceof ResourcesPage)) {
@@ -75,6 +79,14 @@ public abstract class AbstractResourcesViewAction extends SelectionAction {
         return true;
     }
 
+    protected boolean hasSelectedResources() {
+        List<IResource> resources = getSelectedResources();
+        if (resources.isEmpty()) {
+            return false;
+        }
+        return true;
+    }
+
     protected ResourcesView getParentView() {
         IWorkbenchPart part = getWorkbenchPart();
         Assert.isTrue(part instanceof ResourcesView);
index efc6c2f..13ed351 100644 (file)
@@ -23,8 +23,6 @@
 
 package org.tizen.webuibuilder.ui.views.resources.actions;
 
-import java.util.List;
-
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.swt.dnd.Clipboard;
 import org.eclipse.ui.part.IPageSite;
@@ -49,8 +47,7 @@ public class CopyAction extends AbstractResourcesViewAction {
         if (!super.calculateEnabled()) {
             return false;
         }
-        List<?> selectedObjects = getSelectedObjects();
-        if (selectedObjects.size() == 0) {
+        if (!hasSelectedResources()) {
             return false;
         }
         return true;
index 3bb132d..287ec7d 100644 (file)
@@ -23,8 +23,6 @@
 
 package org.tizen.webuibuilder.ui.views.resources.actions;
 
-import java.util.List;
-
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.ui.actions.DeleteResourceAction;
 import org.eclipse.ui.part.IPageSite;
@@ -48,10 +46,11 @@ public class DeleteAction extends AbstractResourcesViewAction {
         if (!super.calculateEnabled()) {
             return false;
         }
-        List<?> selectedObjects = getSelectedObjects();
-        if (selectedObjects.size() == 0) {
+
+        if (!hasSelectedResources()) {
             return false;
         }
+
         return true;
     }
 
index ec40f55..707a74e 100644 (file)
@@ -49,11 +49,11 @@ public class GoIntoAction extends AbstractResourcesViewAction {
             return false;
         }
 
-        List<IResource> resources = getSelectedResources();
-        if (resources.size() == 0) {
+        if (!hasSelectedResources()) {
             return false;
         }
 
+        List<IResource> resources = getSelectedResources();
         for (IResource resource : resources) {
             if (!(resource instanceof IFolder)) {
                 return false;
index 5685900..e147bbf 100644 (file)
@@ -23,8 +23,6 @@
 
 package org.tizen.webuibuilder.ui.views.resources.actions;
 
-import java.util.List;
-
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.ui.actions.RenameResourceAction;
 import org.eclipse.ui.part.IPageSite;
@@ -49,8 +47,8 @@ public class RenameAction extends AbstractResourcesViewAction {
         if (!super.calculateEnabled()) {
             return false;
         }
-        List<?> selectedObjects = getSelectedObjects();
-        if (selectedObjects.size() == 0) {
+
+        if (!hasSelectedResources()) {
             return false;
         }
         return true;
index fc0c536..0e01302 100644 (file)
@@ -26,13 +26,7 @@ package org.tizen.webuibuilder.ui.views.resources.model;
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IFolder;
 import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IPath;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.program.Program;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.ISharedImages;
-import org.eclipse.ui.PlatformUI;
 import org.tizen.common.util.Assert;
 
 
@@ -47,7 +41,6 @@ public class Resource {
     private int type = INVALID;
     private String name = null;
     private String description = null;
-    private Image image = null;
     private String path = null;
 
     private Resource() {
@@ -59,7 +52,6 @@ public class Resource {
         this.resource = resource;
         this.name = resource.getName();
         this.type = getType(resource);
-        this.image = getImage(resource);
         this.path = getPath(base, resource);
     }
 
@@ -79,10 +71,6 @@ public class Resource {
         return resource;
     }
 
-    public Image getImage() {
-        return image;
-    }
-
     public String getPath() {
         return path;
     }
@@ -125,8 +113,7 @@ public class Resource {
         if (extension == null) {
             return false;
         }
-        if (extension.equalsIgnoreCase("png")
-                // || file.getFileExtension().equalsIgnoreCase("jpg")
+        if (extension.equalsIgnoreCase("png") || file.getFileExtension().equalsIgnoreCase("jpg")
                 || file.getFileExtension().equalsIgnoreCase("ico")
                 || file.getFileExtension().equalsIgnoreCase("bmp")
                 || file.getFileExtension().equalsIgnoreCase("gif")) {
@@ -159,52 +146,4 @@ public class Resource {
         return false;
     }
 
-    private Image getImage(IResource resource) {
-        Assert.notNull(resource);
-        Image image = null;
-        if (resource instanceof IFolder) {
-            image =
-                    PlatformUI.getWorkbench().getSharedImages()
-                            .getImage(ISharedImages.IMG_OBJ_FOLDER);
-        } else if (resource instanceof IFile) {
-            IFile file = (IFile) resource;
-            image = getImage(file);
-        } else {
-        }
-        return image;
-    }
-
-    private Image getImage(IFile file) {
-        Assert.notNull(file);
-        /*
-         * create image we have to dispose this image
-         */
-        Image image = null;
-        if (isImageFile(file)) {
-            try {
-                image = new Image(Display.getCurrent(), file.getContents());
-            } catch (CoreException e) {
-                e.printStackTrace();
-                return null;
-            }
-        } else {
-            String extension = file.getFileExtension();
-            if (extension == null) {
-                image =
-                        PlatformUI.getWorkbench().getSharedImages()
-                                .getImage(ISharedImages.IMG_OBJ_FILE);
-                return image;
-            }
-
-            Program program = Program.findProgram(extension);
-            if (program != null) {
-                image = new Image(Display.getCurrent(), program.getImageData());
-            } else {
-                image =
-                        PlatformUI.getWorkbench().getSharedImages()
-                                .getImage(ISharedImages.IMG_OBJ_FILE);
-            }
-        }
-        return image;
-    }
 }
\ No newline at end of file
index e380a76..8fe4b02 100644 (file)
 
 package org.tizen.webuibuilder.ui.views.resources.viewer;
 
+import org.eclipse.draw2d.IFigure;
 import org.eclipse.gef.internal.ui.palette.editparts.ToolEntryEditPart;
 import org.eclipse.gef.palette.PaletteEntry;
 
 
 @SuppressWarnings("restriction")
 public class ResourcesEntryEditPart extends ToolEntryEditPart {
+
     public ResourcesEntryEditPart(PaletteEntry paletteEntry) {
         super(paletteEntry);
     }
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see org.eclipse.gef.internal.ui.palette.editparts.ToolEntryEditPart#createFigure()
+     */
+    @Override
+    public IFigure createFigure() {
+        IFigure figure = super.createFigure();
+        return figure;
+    }
+
+    /**
+     * Get the model element for this palette edit part.
+     * 
+     * @return the model element.
+     */
+    protected PaletteEntry getPaletteEntry() {
+        PaletteEntry entry = (PaletteEntry) getModel();
+        return entry;
+    }
+
 }
\ No newline at end of file
index 5582c04..a599e28 100644 (file)
@@ -43,12 +43,7 @@ public class ResourcesGroupEditPart extends DrawerEditPart {
      */
     @Override
     public IFigure createFigure() {
-        ResourcesGroupFigure fig = new ResourcesGroupFigure(getViewer().getControl()) {
-            @SuppressWarnings("unused")
-            IFigure buildTooltip() {
-                return createToolTip();
-            }
-        };
+        ResourcesGroupFigure fig = new ResourcesGroupFigure(getViewer().getControl());
         fig.setExpanded(getDrawer().isInitiallyOpen());
         fig.setPinned(getDrawer().isInitiallyPinned());
         fig.getCollapseToggle().addFocusListener(new org.eclipse.draw2d.FocusListener.Stub() {
diff --git a/org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/viewer/ResourcesRootEditPart.java b/org.tizen.webuibuilder/src/org/tizen/webuibuilder/ui/views/resources/viewer/ResourcesRootEditPart.java
new file mode 100644 (file)
index 0000000..4cb1ce0
--- /dev/null
@@ -0,0 +1,53 @@
+/*
+ * UI Builder
+ *
+ * Copyright (c) 2000 - 2014 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * 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.
+ *
+ * Contributors:
+ * - S-Core Co., Ltd
+ *
+ */
+
+
+package org.tizen.webuibuilder.ui.views.resources.viewer;
+
+import org.eclipse.gef.EditPart;
+import org.eclipse.gef.editparts.SimpleRootEditPart;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+public class ResourcesRootEditPart extends SimpleRootEditPart {
+    private static Logger logger = LoggerFactory.getLogger(ResourcesRootEditPart.class);
+
+    /*
+     * (non-Javadoc)
+     * 
+     * @see org.eclipse.gef.editparts.SimpleRootEditPart#setContents(org.eclipse.gef.EditPart)
+     */
+    @Override
+    public void setContents(EditPart editpart) {
+        logger.info(editpart.getClass().toString());
+        super.setContents(editpart);
+        // if (contents == editpart)
+        // return;
+        // if (contents != null)
+        // removeChild(contents);
+        // contents = editpart;
+        // if (contents != null)
+        // addChild(contents, 0);
+    }
+
+}
index c31842c..35fa306 100644 (file)
@@ -30,6 +30,8 @@ import org.eclipse.gef.ui.palette.PaletteViewerPreferences;
 public class ResourcesViewer extends PaletteViewer {
     private PaletteViewerPreferences preference = new ResourcesViewerPreferences();
 
+    // private static Logger logger = LoggerFactory.getLogger(ResourcesViewer.class);
+
     public ResourcesViewer() {
         super();
         setEditPartFactory(new ResourcesEditPartFactory());
@@ -56,4 +58,13 @@ public class ResourcesViewer extends PaletteViewer {
     public void setPaletteViewerPreferences(PaletteViewerPreferences preference) {
     }
 
+    /*
+     * (non-Javadoc)
+     * 
+     * @see org.eclipse.gef.ui.palette.PaletteViewer#createDefaultRoot()
+     */
+    protected void createDefaultRoot() {
+        setRootEditPart(new ResourcesRootEditPart());
+    }
+
 }