1. #601
    Sencha User
    Join Date
    Oct 2008
    Posts
    81
    Vote Rating
    0
    Pachat is on a distinguished road

      0  

    Default Is it possible to set path and rootpaht dynamically

    Is it possible to set path and rootpaht dynamically


    From an event in a grid, is it possible to set dynamically the path and rootpath of the uploadpanel and the FileTreePanel ?
    I found how to refresh the filetreepanel, but I'd like it to show specific directories only, depending on the current row of the grid.

    Any hint to achieve this is Welcome!

  2. #602
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,561
    Vote Rating
    384
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    PHP Code:
    tree.getRootNode().path '/new/path';
    tree.getRootNode().reload(); 
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  3. #603
    Sencha User
    Join Date
    Dec 2008
    Posts
    85
    Vote Rating
    0
    martinrame is on a distinguished road

      0  

    Smile Adding columns to Tree

    Adding columns to Tree


    Hi Saki, thank you for this awesome component. What I'm trying to do is to add columns to the tree, to add some information such as number of files in a folder, or file size, for example.

    Can you give me some pointers?

    Thank in advance.

  4. #604
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,561
    Vote Rating
    384
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    File size is already there - in tooltip. Be in your shoes, I'd deliver the information from server and displayed in tooltip. This is unbelievably easy.
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  5. #605
    Sencha User
    Join Date
    Dec 2008
    Posts
    85
    Vote Rating
    0
    martinrame is on a distinguished road

      0  

    Default About columns

    About columns


    Yes, I found the tooltip, but what about adding columns?

  6. #606
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,561
    Vote Rating
    384
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    I don't use column trees at all => I don't know.
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  7. #607
    Sencha User vmorale4's Avatar
    Join Date
    Mar 2007
    Location
    Chicago, IL
    Posts
    189
    Vote Rating
    1
    vmorale4 is on a distinguished road

      0  

    Default Question about adding listeners

    Question about adding listeners


    I noticed that if add a listener to the contextmenu event after the treepanel object has been created my handler is not fired. However if I add the listener in the constructor it does work. Is this intended?

    For example this works:
    PHP Code:
     var treepanel = new Ext.ux.FileTreePanel({
            
    height400
            
    width300
            
    url'filetree.ashx'
            
    id'ftp'
            
    title'Share files'
            
    renderTo'treepanel'
            
    rootPath'root'
            
    topMenutrue
                
    listeners: { 'contextmenu': function() { console.log('clic'); } }
        }); 
    But this doesn't:

    PHP Code:
     var treepanel = new Ext.ux.FileTreePanel({
            
    height400
            
    width300
            
    url'filetree.ashx'
            
    id'ftp'
            
    title'Share files'
            
    renderTo'treepanel'
            
    rootPath'root'
            
    topMenutrue
        
    });

        
    treepanel.on( {'contextmenu': function() { console.log('clic'); } }); 
    Am I missing something?

  8. #608
    Sencha - Community Support Team jsakalos's Avatar
    Join Date
    Apr 2007
    Location
    Slovakia
    Posts
    27,561
    Vote Rating
    384
    jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future jsakalos has a brilliant future

      0  

    Default


    These should be equivalent...
    Jozef Sakalos, aka Saki

    Education, extensions and services for developers at new http://extjs.eu
    News: Grid Search Plugin, ExtJS 5 Complex Data Binding using MVVM


  9. #609
    Sencha User vmorale4's Avatar
    Join Date
    Mar 2007
    Location
    Chicago, IL
    Posts
    189
    Vote Rating
    1
    vmorale4 is on a distinguished road

      0  

    Default


    Quote Originally Posted by jsakalos View Post
    These should be equivalent...
    Found the problem. The built-in 'onContextMenu' handler is returning a false value after executing. If you change it to true then it works (line 1125):


    PHP Code:
     onContextMenu: function(nodee) {
            if (
    this.readOnly) {
                return 
    false;
            }
            
    this.showContextMenu(node);

            return 
    true;  //I changed this to true
        
    // eo function onContextMenu 
    I tested it in Chrome, Firefox 3, Opera, IE7 and I didn't notice any side effects of changing that value (in Windows)

  10. #610
    Sencha User vmorale4's Avatar
    Join Date
    Mar 2007
    Location
    Chicago, IL
    Posts
    189
    Vote Rating
    1
    vmorale4 is on a distinguished road

      0  

    Default My 2 cents

    My 2 cents


    What do you think of adding an 'alias' attribute for tree nodes?

    In the project that I'm working some of the 'physical directory' names are different, but for usability purposes I am displaying a 'User-friendly' name.

    When the FileTreePanel executes a GET cmd, the server response normally looks like this:
    PHP Code:
    [{"text":"simple_folder","iconcls":"folder","disabled":false,"leaf":false}] 
    However, let's say for example we have a directory in the server called 'ftrpnl' but I want my users to see 'File Tree Panel' instead. Hence the response from the server would be:

    PHP Code:
    [{"text":"File Tree Panel","iconcls":"folder","disabled":false,"leaf":falsealias:'ftrpnl'}] 
    To make this work I updated the getPath method so that it first looks at the alias attribute (if defined). If alias is undefined is assumed that the directory name is identical in the server.

    It is a simple change, (two lines of code):

    PHP Code:
       /**
        * returns path of node (file/directory)
        * @private
        */
        
    getPath: function(node) {
            var 
    pathpa;

            
    // get path for non-root node
            
    if (node !== this.root) {
                
    node.parentNode;
                
    = [node.attributes.alias || node.text]; //changed vmorale4
                
    while (&& !== this.root) {
                    
    a.unshift(p.attributes.alias || p.text); //changed vmorale4
                    
    p.parentNode;
                }
                
    a.unshift(this.root.attributes.path || '');
                
    path a.join(this.pathSeparator);
            }

            
    // path for root node is it's path attribute
            
    else {
                
    path node.attributes.path || '';
            }

            
    // a little bit of security: strip leading / or .
            // full path security checking has to be implemented on server
            
    path path.replace(/^[\/\.]*/, '');
            return 
    path;
        } 
    // eo function getPath 
    I called the new attribute alias, but I'm open for ideas for other name (serverName, name, link, etc..)

    It would be great if you could incorporate that change

Thread Participants: 173

  1. danvega (10 Posts)
  2. jay@moduscreate.com (1 Post)
  3. jweber (1 Post)
  4. jt (1 Post)
  5. slacker775 (2 Posts)
  6. vmorale4 (12 Posts)
  7. stever (2 Posts)
  8. Dumbledore (9 Posts)
  9. ismoore (1 Post)
  10. mystix (8 Posts)
  11. sdrew (3 Posts)
  12. mxracer (1 Post)
  13. Foggy (3 Posts)
  14. madrabaz (8 Posts)
  15. Thorsten (4 Posts)
  16. Fabyo (1 Post)
  17. mschaefer (11 Posts)
  18. tchitani (3 Posts)
  19. loeppky (11 Posts)
  20. damsfx (1 Post)
  21. cmendez21 (7 Posts)
  22. anjelika (3 Posts)
  23. randcasburn (3 Posts)
  24. mjlecomte (3 Posts)
  25. esoteric (10 Posts)
  26. pravin_bluebird (1 Post)
  27. ZooKeeper (4 Posts)
  28. george.antoniadis (1 Post)
  29. fermo111 (1 Post)
  30. glaforge (2 Posts)
  31. Spirit (1 Post)
  32. newc_k (1 Post)
  33. adam.jimenez (9 Posts)
  34. juandj (10 Posts)
  35. rballman (2 Posts)
  36. Michelangelo (6 Posts)
  37. kk_kkk (7 Posts)
  38. issomesmo (5 Posts)
  39. mashiki (1 Post)
  40. juljupy (2 Posts)
  41. cafebabe (1 Post)
  42. ferrenliu (1 Post)
  43. smartlit (14 Posts)
  44. chunkT (1 Post)
  45. mankz (6 Posts)
  46. luisparada (4 Posts)
  47. iDevelopment (4 Posts)
  48. cblin (9 Posts)
  49. ljaeren (2 Posts)
  50. endlichstudent (9 Posts)
  51. RacingTomcat (1 Post)
  52. lobo-tuerto (5 Posts)
  53. maximumcoder (1 Post)
  54. calavera (3 Posts)
  55. ningle (5 Posts)
  56. jbird526 (4 Posts)
  57. sekundek (8 Posts)
  58. GokhanNL (1 Post)
  59. markkl (1 Post)
  60. basshcm (2 Posts)
  61. dbraiden (2 Posts)
  62. incaic (2 Posts)
  63. silcreval (6 Posts)
  64. sirioz10 (2 Posts)
  65. iulian (2 Posts)
  66. hsurya (7 Posts)
  67. johnrembo (2 Posts)
  68. fraric (4 Posts)
  69. Silver Paladin (5 Posts)
  70. Rafael (2 Posts)
  71. treqx (1 Post)
  72. spectrus (6 Posts)
  73. JoyfulBobHome (2 Posts)
  74. fxlacroix (3 Posts)
  75. jove4015 (1 Post)
  76. rtrocc (12 Posts)
  77. carl23934 (1 Post)
  78. ClemsonJeeper (1 Post)
  79. lagos.tout (2 Posts)
  80. craigharmonic (3 Posts)
  81. siebertm (3 Posts)
  82. zombeerose (11 Posts)
  83. keckeroo (1 Post)
  84. dotchris (7 Posts)
  85. fallenone (4 Posts)
  86. yhwh (1 Post)
  87. harirama (2 Posts)
  88. scroll (1 Post)
  89. mlim1972 (4 Posts)
  90. Arthur.Blake (1 Post)
  91. nileshgund (1 Post)
  92. blow (1 Post)
  93. piyushjain7 (1 Post)
  94. njeriextjs (3 Posts)
  95. hileon (1 Post)
  96. bomka (15 Posts)
  97. --maty (1 Post)
  98. WhiteRussian (1 Post)
  99. kpopov (1 Post)
  100. captainfish (5 Posts)
  101. Gosa (5 Posts)
  102. extjsF4n (1 Post)
  103. Chida (1 Post)
  104. Nthalk (2 Posts)
  105. nescha (2 Posts)
  106. jorgemuza (3 Posts)
  107. Eric24 (1 Post)
  108. edui (1 Post)
  109. shadoi (4 Posts)
  110. acidfilez (1 Post)
  111. BrainDrain (2 Posts)
  112. dimitrij.zub (1 Post)
  113. ixnixnixn (2 Posts)
  114. calicoder (2 Posts)
  115. wes (1 Post)
  116. mammerman (1 Post)
  117. Voronchuk (3 Posts)
  118. jwmianzu (3 Posts)
  119. gnomie (2 Posts)
  120. pflammer (2 Posts)
  121. The0s (2 Posts)
  122. gogogo521 (1 Post)
  123. tegel (2 Posts)
  124. wulfshayde (2 Posts)
  125. mikecx (2 Posts)
  126. paul@demiduk.com (1 Post)
  127. romulodelazzari (1 Post)
  128. sabline (2 Posts)
  129. mikecc (8 Posts)
  130. dan.plifeye (2 Posts)
  131. JGALFO (1 Post)
  132. Stephan Schrade (3 Posts)
  133. khurri.saleem (1 Post)
  134. voidus (1 Post)
  135. Shockdoc1 (1 Post)
  136. dport (3 Posts)
  137. jahman (3 Posts)
  138. Pachat (4 Posts)
  139. BIS (1 Post)
  140. sanraj (4 Posts)
  141. deemonas (1 Post)
  142. jpipas (2 Posts)
  143. martinrame (2 Posts)
  144. MrEnirO (2 Posts)
  145. elona (1 Post)
  146. cwford (6 Posts)
  147. triptonemeister (2 Posts)
  148. gonzalez (1 Post)
  149. wallacer (1 Post)
  150. Natalie (2 Posts)
  151. Phatnine (2 Posts)
  152. js_coder (3 Posts)
  153. Bobrovnik (4 Posts)
  154. kender (1 Post)
  155. avsomeren (2 Posts)
  156. rkulkarni (2 Posts)
  157. lxfliu (2 Posts)
  158. pbaker99 (2 Posts)
  159. naf305 (2 Posts)
  160. cybervirax (1 Post)
  161. AmrMostafa (1 Post)
  162. tumbochka (1 Post)
  163. exdelierium (1 Post)
  164. toubeau (4 Posts)
  165. nosferatum (1 Post)
  166. Boy.Kortman (1 Post)
  167. erlinis (1 Post)
  168. nhocoi (2 Posts)
  169. varunach (1 Post)
  170. _DR_ (1 Post)
  171. rodenp (1 Post)
  172. tutuianu_daniel (1 Post)
  173. Shabneez (2 Posts)