Adding commands to tree renderer

Hello
Quick question:
I have a layout set similar to the adminexplorer.
Is there any way I can add a command group to each resource within the folder tree, e.g using a hover menu?  This would allow users to delete or rename folders from within the tree area.
Thanks for the help!
Chris

Hi Chris,
The "AdminCollectionTreeRenderer" you are talking about is a CollectionRenderer, but I am talking about changing ResourceRenderer.
Please refer to this to know about the settings you can make on ResourceRenderer:
http://help.sap.com/saphelp_nw2004s/helpdata/en/50/041142e862654ca98ced1607386c9c/frameset.htm
About CollectionRenderer:
http://help.sap.com/saphelp_nw2004s/helpdata/en/87/3d48475ee8bd448c4031aa98d90524/frameset.htm
I expect that you duplicated your "AdminExplorer" Layoutset, and if so you will see "AdminResourceRenderer" which is responsible to render the ListView on the right side of your Layout.
To extend the functioanlity you need to duplicate "AdminTreeResourceRenderer" and assign this to your LayoutSet and make all the settings as I told in my previous post.
So now you should see two ResourceRenderer set to your LayoutSet, and this should now solve your problem.
Hope this helps
Greetings,
Praveen Gudapati

Similar Messages

  • Custom command link in renderer

    Hello, I have created my own custom tree renderer that displays a tree structure on screen. For each node, I want to generate a command link that is bound to a single method in my backing bean. I am trying to use writer.startElement and writer.writeAttribute for this, but I don't know how to code the actual method binding. Here is what I have so far:
    writer.startElement("a", component);
    writer.writeAttribute("href", "#", "href");
    writer.writeAttribute("onclick" document.forms['workArea:subview1:treeTestForm'].submit();", "onclick); writer.write("My Node Label");
    writer.endElement("a");
    However, clicking this link submits the form, runs my encode method again and then runs my decode in the renderer. How can I write attributes to this link so that a single method in my backing bean is called each time a node is clicked?

    Basically what I'm doing now then is creating a MethodBinding in the decode method, so that it calls a method I'm looking for when the row is clicked. I have two problems now:
    1. The encodeBegin method is called again in this instance and I only want it called once when the component is first rendered. Is there a way to only allow it to run once?
    2. My ID is not being passed back in the UIComponent argument, even though I am setting it in the ResponseWriter.
    I read that the basic syntax for command links is:
    document.forms['CLIENT_ID']['CLIENT_ID'].value='CLIENT_ID' but when I view source on some of my other pages that use the h:commandLink tag, the second CLIENT ID reads : '['__LINK_TARGET__']. and I have no idea where that is coming from.
    Any ideas?

  • User command in trees?

    HI all,
    can anybody send be example code for user command in trees without using oops concept
    Regards,
    Deepa

    Hi,
    Refer the following program SE38.
    SAPSIMPLE_TREE_CONTROL_DEMO.
    <b>Reward points if it helps.</b>

  • Tree Renderer for detailed navigation

    Hi,
    does anyone know, which tree renderer is used in detailed navigation?
    I would like to change the behaviour:
    By default, the tree in detailed navigation should show  all items as open.

    Hello Holger,
    The only way to achieve this feature is by implementing your own detailed navigation.
    Check these wonderful blogs:
    EFP: Working with the New Taglibs - Part 2
    EFP: Working with the new Taglibs - Part 3
    Greetings,
    Praveen Gudapati

  • Hello, I have a problem on FCP 7 message (error: memory saturates) after (command   R) for rendering, cordially

    Hello, I have a problem on FCP 7 message (error: memory saturates) after (command + R) for rendering, cordially

    Do you use still images in your edit? Make sure all your images are RGB (not CMYK etc).
    Hope it helps
    Andy

  • [svn:osmf:] 14411: Adding command line build config files for the syndication library.

    Revision: 14411
    Revision: 14411
    Author:   [email protected]
    Date:     2010-02-24 17:45:22 -0800 (Wed, 24 Feb 2010)
    Log Message:
    Adding command line build config files for the syndication library.
    Added Paths:
        osmf/trunk/libs/Syndication/syndication-build-config.flex
        osmf/trunk/libs/Syndication/syndication-build-config.flexcov
        osmf/trunk/libs/Syndication/syndication-build-config.xml

    Revision: 14411
    Revision: 14411
    Author:   [email protected]
    Date:     2010-02-24 17:45:22 -0800 (Wed, 24 Feb 2010)
    Log Message:
    Adding command line build config files for the syndication library.
    Added Paths:
        osmf/trunk/libs/Syndication/syndication-build-config.flex
        osmf/trunk/libs/Syndication/syndication-build-config.flexcov
        osmf/trunk/libs/Syndication/syndication-build-config.xml

  • Programatically adding command links in ADF Tree?

    Hi,
    I am using Build JDEVADF_11.1.1.3.PS2_GENERIC_100408.2356.5660. Can anyone please provide me some sample code for programatically adding dynamically generated ADF command links in the nodes of ADF Tree(Tree nodes in it are created using View Object - Drag & drop of data control). Now how can i add links in the nodes generated.
    Thanks,
    Vik

    Hi,
    try setting partialSubmit=true on the command link. Just in case it fires the action method before the context menu displays
    Frank

  • Problem in getting IControlView of IconSuiteWidget which is added in the tree resource

    Hi friends,
    I am facing following problem while working with Tree Widget.
    Please guide me regarding this issue.
    I have added IconSuiteWidget to the tree resource in .fr file.
    Now I wish to hide it after user clicks on the node. I have written
    code for this in the file which is implementation of
    (classTreeObserverImpl) ClassTreeObserver, aggregated on the boss
    class kXXTreeViewWidgetBoss which inherits from the
    kTreeViewWidgetBoss. But I am not getting IControlView of the
    IconSuiteWidget . The work which I have done to get IControlView
    pointer is through using IWidgetParent interface.
    Could anybody tell me which step i am missing, because I am getting
    IControlView of the RollOverIcon which is placed aside of
    IconSuiteWidget(in the resource of tree).
    Please help me regarding this issue,
    Thanks in advance.
    Vijay Choudhari.

    Use IControlView* QueryWidgetFromNode ( const NodeID & node )
    .So the task before you is gettting the NodeID..
    You can get it from ..
    NodeID_rv id = TrvNodeID::Create();
    NodeID nodeID(id);
    Once you get the controlview of the node widget you can get the controlview of any of its child widget by gettting its IPanelControldata..
    Hope this helps..
    regds,
    yopangjo

  • Adding Branch to tree runtime

    Hi..All!
    I am using tree controll. I want to allow user to add item to
    seleceted node runtime.
    I m using a button to add or remove child. On clicking of add
    button child should be added to selected node.
    Thanks In advance
    Vishal

    Thank you for you answer. I have a custom repository with no Taxanomy table.
    May be that's why the "Add Branch" option was disabled.
    Now the question is, Why do you need to have a Taxonomy to enable the "Add branch" feature?
    Here is my scenario:
    I want to run series of Assignments.
    I defined 5 assignments. Thought that I can use MDM Workflow to call them in series. However MDM Workflow does not let me connect one Assignmen Task to next Assignment Task. So though Branched Assignment would be helpful.
    However looks like can not use "Add Branch" to assignment to run them in series.
    May be I will put a new post.
    Abhay

  • Tree renderer

    Is it possible to customize the Tree component to have two
    icons displayed? Thanks.

    Yes, certainly.
    Item editors are not simple, so I advise you start with an
    existing one an modify it.
    You can look at the code in the Adobe TreeItemRenderer.as
    class in the frameworks folder.
    Also, there is a reasonably simple but complete example of a
    tree item renderer on www.cflex.net, search for it. It actually
    adds some graphics to the rederer, so would be a good example.
    Tracy

  • Query on ADF Tree rendering - Jdeveloper 11g

    Hi,
    Am facing issues with Tree component rendering. Please find details below.
    Am using Jdeveloper 11g and have created data controls using plain java objects.
    Issue 1:
    I have a method getEmployees() which contains hierarchical data. Upon dragging this onto UI and on creating tree binding, i am able to see the tree.
    However i can expand only the parent node. Upon clicking on any of the child nodes (i.e Level 1 nodes), i get a blinking icon forever.
    Note that upon selecting the context menu option on root node and on selecting "Expand all", i get the complete tree in expanded format.
    Can anyone suggest as to what might be the issue with node expansion here ?
    Approach 2
    I tried creating Treemodel programatically.
    Please see snippet below:
    public TreeModel getModel() throws IntrospectionException {
    if (_model == null) {
    model = new ChildPropertyTreeModel(instance, "children")
    public boolean isContainer() {
    return ((T)getRowData()).hasChildren();
    return _model;
    By creating tree model in this way, tree node expansion issue is resolved. But i noticed that upon clicking on node for expansion,
    the getChildren() method (i.e the childProperty method) gets invoked multiple times and not once for the specifically expanded node.
    Can anyone please suggest as to why this is happening/possible solution?
    Thanks
    Navin

    Thanks for the reply. I can see the facets in the structure window and can seemingly add components there, but this is not reflected in the Design view for the page. Very strange. When the page is run, none of these components in the Accordion panel facets are displayed...
    I'm using JDeveloper version 11.1.2.1.0.

  • Adding commands to a canvas

    when the canvas is set to full screen and commands are added to it, the menu will appear if you press either the left or right button near the screen.. is it possible to make it appear only when the left button is pressed and not the right?

    I don't think so, but it will depend on the target device. Try to draw some kind of "menu" using the paint and keypressed methods? You'll have to do it manually (coding), there are not standard components for that. Warning: Not easy!

  • Tree renderer - change the appearance between selected and not selected

    Hi,
    I have a JTree that I would like to show for each node different information depending on it selection status. I wrote my own renderer to create the Component to display (it is a JPanel with one JLabel in one case, and a JPanel with mulitple JLabels in the other case).
    When I run my program, the node appears ok, but when I select it the tree doesn't update the size of the composnen to be displayed, and that resualts in displaying only a fraction of the information for the selected node.
    I have tried to set the tree row height, so the tree will ignore the chached size of the renderer but it didn't work.
    Any suggestions?
    Thanks,
    Benny

    Have you tried calling tre.setRowHeight(0) - this is supposed to indicate to the tree that the renderer will determine the height of each cell.
    Never tried it, though.

  • N-Tree rendering algorithm.

    Hello,
    I'm trying to create a program that can arrange a number of people's contact information into an n-Tree structure.
    I'm using a class called JBigTree that extends JPanel and overriding paint() to paint the entire tree with basically a rectangle for each person and their name in the middle.
    I'm going half-crazy at the moment trying to get a rendering algorithm that does not eventually overlap two or more nodes on top of each other...
    I'm going around looking for some sort of algorithm that's already been done to render an n-Tree of variable size to screen but so far I haven't found one.
    To give you an idea, it looks a bit like this:
    class Person
    String name;
    ArrayList<Person> children;
    Person parent;
    /* Add obvious get/set/add methods */
    class JBigTree extends JPanel
    private static final int CELL_WIDTH=100;
    private static final int CELL_HEIGHT=40;
    private static final int H_GAP=30;
    private static final int V_GAP=36;
    /*skip some of the initialization code...*/
    public void paint(Graphics g)
      renderNode(g,root,getWidth()/2,V_GAP);
    private void renderNode(Graphics g, Person node, topX,topY)
      //HELP!!!!
    }

    In case anyone googles this, I've gotten an algorithm working after a couple days of letting the problem simmer in my head and a couple hours of hardcore coding...
    It also allows to select single nodes by clicking...
    You can figure out the Node's class code on your own, it simply uses an ArrayList to store kids and stores its parent node, no other restrictions.
    Here is it is:
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseListener;
    import javax.swing.JPanel;
    import com.kangen.JMain;
    import com.kangen.helpers.JDistributeur; //This is the actual Node class, in my case it represents also a reseller ("Distributeur" in French), hence the name.
    public class JBigTree extends JPanel implements MouseListener {
         private static final int CELL_WIDTH=100;
         private static final int CELL_HEIGHT=40;
         private static int H_GAP=16;
         private static final int STATIC_V_GAP=36;
         private static int V_GAP=STATIC_V_GAP;
         private static final Color BG_COLOR=Color.white;
         private static final Color NODE_FRAME_COLOR=Color.BLUE;
         private static final Color NODE_FILL_COLOR=Color.cyan;
         private static final Color LINK_COLOR = Color.red;
         private JDistributeur nodeSelected=null;
         public JBigTree()
              addMouseListener(this);
         public void paint(Graphics g)
              g.setColor(BG_COLOR);
              g.fillRect(0,0, getWidth(),getHeight());
              int displayWidth=((treeWidth(JMain.getRootNode()))*(CELL_WIDTH+H_GAP))*2;
              setSize(displayWidth,getHeight());
              setPreferredSize(new Dimension(displayWidth,getHeight()));
              setMinimumSize(new Dimension(displayWidth,getHeight()));
              int displayHeight,treeHeight=treeHeight(JMain.getRootNode());
              V_GAP= STATIC_V_GAP + (STATIC_V_GAP * (treeHeight/8));
              displayHeight=treeHeight(JMain.getRootNode())*(CELL_HEIGHT+V_GAP);
              setSize(getWidth(),displayHeight);
              setPreferredSize(new Dimension(getWidth(),displayHeight));
              setMinimumSize(new Dimension(getWidth(),displayHeight));
              renderNode(g,JMain.getRootNode(), (getWidth()/2)-(CELL_WIDTH/2) ,(V_GAP) );
         private void renderNode(Graphics g,JDistributeur node, int topX, int topY)
              if (node==null||g==null)
                   return;
              node.setTopX(topX);
              node.setTopY(topY);
              g.setColor(NODE_FRAME_COLOR);
              g.drawRect(topX, topY, CELL_WIDTH, CELL_HEIGHT);
              if (node==getNodeSelected())
                   g.setColor(NODE_FILL_COLOR);
                   g.fill3DRect(topX, topY, CELL_WIDTH, CELL_HEIGHT,true);
              g.setColor(NODE_FRAME_COLOR);
              g.drawString(node.getNom(),topX+5,topY+(CELL_HEIGHT/2));
              if (node.getChildrenNodes().size()==0)
                   return;
              int totalChildren = treeWidth(node);
              int leftZeroForThisNode = topX-(int)((double)(CELL_WIDTH+H_GAP)*(((double)totalChildren/2.0)))+(CELL_WIDTH/2);
              if(leftZeroForThisNode<0)
                   leftZeroForThisNode=0;
                   JMain.ERROR("leftZeroForThisNode < 0");
              int childrenDrawn = 0;
              for (int i=0;i<node.getChildrenNodes().size();i++)
                   int thisNodeChildren = treeWidth(node.getChild(i));
                   childrenDrawn+=thisNodeChildren;
                   int newTopX=leftZeroForThisNode+((childrenDrawn*(CELL_WIDTH+H_GAP))/2);
                   newTopX-=(CELL_WIDTH/2);
                   renderNode(g,node.getChild(i),newTopX,topY+V_GAP+CELL_HEIGHT);
                   g.setColor(LINK_COLOR);
                   g.drawLine(topX+(CELL_WIDTH/2),topY+CELL_HEIGHT,newTopX+(CELL_WIDTH/2),topY+V_GAP+CELL_HEIGHT);
                   leftZeroForThisNode+=thisNodeChildren*(CELL_WIDTH+H_GAP);
         private int treeWidth(JDistributeur node)
              if (node==null)
                   return 0;
              int nb=0;
              for (int i=0;i<node.getChildrenNodes().size();i++)
                   nb+=treeWidth(node.getChild(i));
              return 1 + (nb>0?nb-1:0);
         private int treeHeight(JDistributeur node)
              if (node==null)
                   return 0;
              int maxChild=0;
              for (int i=0;i<node.getChildrenNodes().size();i++)
                   int childHeight = treeHeight(node.getChild(i));
                   if (childHeight>maxChild)
                        maxChild=childHeight;
              return 1+maxChild;
         @Override
         public void mouseClicked(MouseEvent arg0) {
              // TODO Auto-generated method stub
         @Override
         public void mouseEntered(MouseEvent arg0) {
              // TODO Auto-generated method stub
         @Override
         public void mouseExited(MouseEvent arg0) {
              // TODO Auto-generated method stub
         @Override
         public void mousePressed(MouseEvent arg0) {
              JDistributeur nodeClicked = nodeClicked(JMain.getRootNode(),arg0.getX(),arg0.getY());          
              if (nodeClicked!=null)
                   if (getNodeSelected()==nodeClicked)
                        setNodeSelected(null);
                   else
                        setNodeSelected(nodeClicked);
                   JMain.mainWindow.sidePanel.showNode(getNodeSelected());
                   repaint();
         private JDistributeur nodeClicked( JDistributeur node, int x, int y) {
              if( (x > node.getTopX()) && (x<node.getTopX()+CELL_WIDTH) && (y>node.getTopY()) && (y<node.getTopY()+CELL_HEIGHT))
                   return node;
              else
                   for(int i=0;i<node.getChildrenNodes().size();i++)
                        JDistributeur temp = nodeClicked(node.getChild(i),x,y);
                        if(temp!=null)
                             return temp;
                   return null;
         @Override
         public void mouseReleased(MouseEvent arg0) {
              // TODO Auto-generated method stub
         public void setNodeSelected(JDistributeur nodeSelected) {
              this.nodeSelected = nodeSelected;
         public JDistributeur getNodeSelected() {
              return nodeSelected;
    }

  • Why does the command "spanning-tree mst simulate pvst disable" exist

    That's all really. Why would you turn it off? What is the advantage. If you're not receiving PVST BPDUs, you don't need it, but why turn it off?

    When you use the spanning-tree mst simulate pvst disable command, specified MST interfaces that receive a Rapid PVST+ (SSTP) bridge protocol data unit (BPDU) move into the STP blocking state. Those interfaces remain in the inconsistent state until the port stops receiving Rapid PVST+ BPDUs, and then the port resumes the normal STP transition process.
    OK, that's what it does, but why? the only effect it has is blocking your ports. 

Maybe you are looking for

  • No such method error when migrating to 10.3.2

    Howdy! I am migrating a Portal application from 10.0.2 to 10.3.2 and getting the following exception when trying to access any page of the app. The app is using a home grown URI re-write mechanism that worked successfully in 10.0.2 environment. Thank

  • Automation process in Workspace (using MaxL script)

    Hi All, I have a MaxL script to export Level 0 data and to update new data in a database It is working fine. I have tried to schedule it, and its also working fine. But according to my requirement, i have to publish this MaxL script in workspace as a

  • Header Mapping

    Hey folks I would like to know the significance of Header mapping in B2B scenarios ? and is it mandatory for B2B ? I want to know why do we really need it. Thnx

  • .MTS transfer headache, and sequence setting suggestion needed

    Hello forum users... I am trying to edit a sequence with scenes captured on a variety of recording devices (SONY AVCHD, GoPro, and ScreenFlow screen capture)...It's a headache enough to try and get them all to match up for size and compression. I bou

  • Uninstall Safari

    what & how is the best way to uninstall safari & reinstall safari   Mac OS X (10.3.9)