org.glassmaker.eclipse/org.glassmaker.ui.editor/src/main/java/org/glassmaker/ui/views/PaletteView.java
public void createPartControl(Composite parent) {
		viewer = new PaletteViewer();
		viewer.createControl(parent);
		
		PaletteRoot root = new PaletteRoot();
		
		String[] category = getCategories();
		for(int i=0;i<category.length;i++){
			PaletteDrawer group = new PaletteDrawer(category[i]);
			IPaletteItem[] items = getPaletteItems(category[i]);
			for(int j=0;j<items.length;j++){
				HTMLPaletteEntry entry = new HTMLPaletteEntry(items[j].getLabel(),null,items[j].getImageDescriptor());
				tools.put(entry,items[j]);
				group.add(entry);
			}
			root.add(group);
		}
		
		viewer.setPaletteRoot(root);
		
		viewer.getControl().addMouseListener(new MouseAdapter(){
			@Override
			public void mouseDoubleClick(MouseEvent e) {

//				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); 
//				IEditorPart editorPart = page.getActiveEditor();
//				if(editorPart!=null){
//					editorPart.setFocus();
//				}
				if (e.button == 1) {
					EditPart part = PaletteView.this.viewer.findObjectAt(new Point(e.x, e.y));
					IPaletteItem item = null;
					if (part != null) {
						if (part.getModel() instanceof HTMLPaletteEntry)
							item = tools.get(part.getModel());
					}
					if (item != null)
						insert(item);
				}
				
			}
		});
	
	}
public void createPartControl(Composite parent) {
		viewer = new PaletteViewer();
		viewer.createControl(parent);
		
		PaletteRoot root = new PaletteRoot();
		
		String[] category = getCategories();
		for(int i=0;i<category.length;i++){
			PaletteDrawer group = new PaletteDrawer(category[i]);
			IPaletteItem[] items = getPaletteItems(category[i]);
			for(int j=0;j<items.length;j++){
				HTMLPaletteEntry entry = new HTMLPaletteEntry(items[j].getLabel(),null,items[j].getImageDescriptor());
				tools.put(entry,items[j]);
				group.add(entry);
			}
			root.add(group);
		}
		
		viewer.setPaletteRoot(root);
		
		viewer.getControl().addMouseListener(new MouseAdapter(){
			@Override
			public void mouseDoubleClick(MouseEvent e) {

//				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); 
//				IEditorPart editorPart = page.getActiveEditor();
//				if(editorPart!=null){
//					editorPart.setFocus();
//				}
				if (e.button == 1) {
					EditPart part = PaletteView.this.viewer.findObjectAt(new Point(e.x, e.y));
					IPaletteItem item = null;
					if (part != null) {
						if (part.getModel() instanceof HTMLPaletteEntry)
							item = tools.get(part.getModel());
					}
					if (item != null)
						insert(item);
				}
				
			}
		});
	
	}
public void createPartControl ( Composite parent ) { viewer = new PaletteViewer ( ) ; viewer . createControl ( parent ) ; PaletteRoot root = new PaletteRoot ( ) ; String [ ] category = getCategories ( ) ; for ( int i = 0 ; i < category . length ; i ++ ) { PaletteDrawer group = new PaletteDrawer ( category [ i ] ) ; IPaletteItem [ ] items = getPaletteItems ( category [ i ] ) ; for ( int j = 0 ; j < items . length ; j ++ ) { HTMLPaletteEntry entry = new HTMLPaletteEntry ( items [ j ] . getLabel ( ) , null , items [ j ] . getImageDescriptor ( ) ) ; tools . put ( entry , items [ j ] ) ; group . add ( entry ) ; } root . add ( group ) ; } viewer . setPaletteRoot ( root ) ; viewer . getControl ( ) . addMouseListener ( new MouseAdapter ( ) { @ Override public void mouseDoubleClick ( MouseEvent e ) { //				IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); 
 //				IEditorPart editorPart = page.getActiveEditor();
 //				if(editorPart!=null){
 //					editorPart.setFocus();
 //				}
 if ( e . button == 1 ) { EditPart part = PaletteView . this . viewer . findObjectAt ( new Point ( e . x , e . y ) ) ; IPaletteItem item = null ; if ( part != null ) { if ( part . getModel ( ) instanceof HTMLPaletteEntry ) item = tools . get ( part . getModel ( ) ) ; } if ( item != null ) insert ( item ) ; } } } ) ; }
create controls and apply configurations.
create controls and apply configurations .