Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.pentaho.ui.xul.jface.tags;
  
  import java.util.List;
  
  import  org.eclipse.jface.action.IMenuManager;
  import  org.eclipse.jface.action.MenuManager;
  import  org.eclipse.swt.SWT;
 
 public class JfaceMenu extends AbstractSwtXulContainer implements XulMenu {
 
   private IMenuManager parentMenu;
   
   private String accel = null;
   
   private XulComponent parent;
   
   private PentahoMenuManager menu;
   
   public JfaceMenu(Element selfXulComponent parentXulDomContainer domContainerString tagName) {
     super("menu");
     
      = .;
     
      = (MenuManager) parent.getManagedObject();
     this. = parent;
   }
 
   @Override
   public void setIdString id ) {
 	  this. = id;
   }
 
   @Override
   public XulComponent getParent() {
     return ;
   }
   
   private void addMenuChildren(MenuManager menuParentList<XulComponentchildren){
 
 //      System.out.println( "JfaceMenu adding children" );
 	  for (Element comp : children) {
 
     	// TODO
     	/*
       for (XulComponent compInner : ((SwtMenupopup) comp).getChildNodes()) {
          if(compInner instanceof XulMenu){
           MenuItem item = new MenuItem(menuParent, SWT.CASCADE);
           Menu flyout = new Menu(shell, SWT.DROP_DOWN);
           item.setMenu(flyout);
           addMenuChildren(flyout, compInner.getChildNodes());
         } else {
 
           
           
         }
       }
       */
     }
   }
   
   public void layout() {
      = true;
   }
 //
 //  @Override
 //  public void addComponent(XulComponent c) {
 //    super.addComponent(c);
 //    if (initialized) {
 //      resetContainer();
 //      layout();
 //    }
 //  }
 
   public String getAcceltext() {
     return ;
   }
 
   public String getAccesskey() {
     return null;
   }
   
   public boolean isDisabled() {
     return !.isEnabled();
   }
 
   public String getLabel() {
     return .getMenuText();
   }
 
   public void setAcceltext(String accel) {
     this. = accel;
  }
  public void setAccesskey(String accessKey) {
    if( != null){
      int mask = 0;
      if(accessKey.indexOf("ctrl") > -1){
        mask += SWT.CTRL;
      }
      if(accessKey.indexOf("shift") > -1){
        mask += SWT.SHIFT;
      }
      if(accessKey.indexOf("alt") > -1){
        mask += SWT.ALT;
      }
      String remainder = accessKey.replaceAll("ctrl""").replaceAll("shift""").replaceAll("alt""").replaceAll("-","").trim();
      if(remainder.length() == 1){
        mask += remainder.charAt(0);
      }
      // TODO
//      header.setAccelerator(mask);
    }
  }
  public void setDisabled(boolean disabled) {
	  super.setDisabled(disabled);
	  .setEnabled(!disabled);
/*	  
    if(menu != null && menu.getMenu() != null){
      menu.getMenu().setEnabled(!disabled);
      menu.getMenu().getParentItem().setEnabled(!disabled);
    }
*/
  }
  public void setLabel(String label) {
//    if(menubar != null){
// TODO
         = new PentahoMenuManager(label);
        
        setManagedObject();
//        menubar.add(header);
//        System.out.println( "JfaceMenu created menu: "+label );
        
//    }
  }
  public void addChildElement c ) {
	  addChildAt(c, -1);
  }
  
  public void addChildAt(Element cint pos) {
	  ifpos != -1 ) {
		  super.addChildAt(cpos);
	  } else {
	      super.addChild(c);
	  }
	  ifc instanceof JfaceMenupopup ) {
		  /*
		  JfaceMenupopup popup = (JfaceMenupopup) c;
		  System.out.println("JfaceMenu adding popup "+popup.getId());
		  popup.setMenu(menu);
		  IMenuManager menu = (IMenuManager) popup.getManagedObject();
		  if( pos == -1 ) {
			  header.add(menu);
		  } else {
			  header.insert(pos, menu);
		  }
		  */
	  }
  }  
  
  protected MenuManager getJfaceMenu() {
	return ;
  public void setVisible(boolean visible) {
	if != null ) {
//		  System.out.println("JFaceMenu setting visible for "+menu.getId()+" "+getLabel()+" ("+menu.getClass().getSimpleName()+") to "+visible);
		    .setVisible(visible);
//	} else {
//		  System.out.println("JFaceMenu setting visible for null header");
	}
  }
  public void removeChild(Element e) {
//	  System.out.println( "JfaceMenu.removeChild: "+e.getClass().getSimpleName() );
	  ife instanceof XulMenuitem ) {
//		  System.out.println( "removing menu item: "+((XulMenuitem)e).getLabel() );
	  }
	  ife instanceof XulMenupopup ) {
//		  System.out.println( "removing menu popup: "+((XulMenupopup)e).getId() );
	  }
	  ife instanceof XulMenu ) {
//		  System.out.println( "removing menu: "+((XulMenu)e).getId() );
	  }
  }
  
}

  
New to GrepCode? Check out our FAQ X