source: temp/trunk/html/test/uehara/js/tree.js @ 9064

Revision 9064, 4.3 KB checked in by uehara, 20 years ago (diff)

blank

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1var IMG_FOLDER_CLOSE   = "./img/folder_close.gif";              // ¥Õ¥©¥ë¥À¥¯¥í¡¼¥º»þ²èÁü¥Ñ¥¹
2var IMG_FOLDER_CLOSE_P = "./img/folder_close_p.gif";            // ¥Õ¥©¥ë¥À¥¯¥í¡¼¥º»þ²èÁü¥Ñ¥¹(»ÒÍ­¤ê)
3var IMG_FOLDER_OPEN    = "./img/folder_open.gif";               // ¥Õ¥©¥ë¥À¥ª¡¼¥×¥ó»þ²èÁü¥Ñ¥¹
4var IMG_FOLDER_OPEN_M  = "./img/folder_open_m.gif";             // ¥Õ¥©¥ë¥À¥ª¡¼¥×¥ó»þ²èÁü¥Ñ¥¹(»ÒÍ­¤ê)
5
6var tree = "";
7var count = 0;
8var arrTreeStatus = new Array();
9
10// ¥Ä¥ê¡¼É½¼¨
11function fnTreeView(view_id, arrTree) {
12
13    tree += '<form name="tree_form">';
14    for(i = 0; i < arrTree.length; i++) {
15       
16        id = arrTree[i][0];
17        level = arrTree[i][3];
18       
19        if(i == 0) {
20            old_id = "0";
21            old_level = 0;
22        } else {
23            old_id = arrTree[i-1][0];
24            old_level = arrTree[i-1][3];
25        }
26   
27        // ³¬ÁØ¾å¤ØÌá¤ë
28        if(level <= (old_level - 1)) {
29            tmp_level = old_level - level;
30            for(up_roop = 0; up_roop <= tmp_level; up_roop++) {
31                tree += '</div>';
32            }
33        }
34       
35        // Ʊ°ì³¬ÁؤǼ¡¤Î¥Õ¥©¥ë¥À¤Ø
36        if(id != old_id && level == old_level) tree += '</div>';
37   
38        // ³¬ÁؤÎʬ¤À¤±¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤ë
39        for(space_cnt = 0; space_cnt < arrTree[i][3]; space_cnt++) {
40            tree += "¡¡";
41        }
42       
43        // ½é´üɽ¼¨¤Î²èÁü¤òÁªÂò
44        if(arrTree[i][1] == '_parent') {
45            if(arrTree[i][4]) {
46                defalt_img = IMG_FOLDER_OPEN_M;
47            } else {
48                defalt_img = IMG_FOLDER_CLOSE_P;
49            }
50        } else {
51            if(arrTree[i][4]) {
52                defalt_img = IMG_FOLDER_OPEN;
53            } else {
54                defalt_img = IMG_FOLDER_CLOSE;
55            }
56        }
57
58        if(arrTree[i][4]) {
59            // ³«¤­¾õÂÖ¤òÊÝ»ý
60            arrTreeStatus.push(arrTree[i][2]);
61            display = 'block';
62        } else {
63            display = 'none';
64        }
65        arrFileSplit = arrTree[i][2].split("/");
66        file_name = arrFileSplit[arrFileSplit.length-1];
67
68        tree += '<input type="radio" name="tree_test'+ i +'">';
69
70        tree += '<input type="image" src="'+ defalt_img +'" border="0" name="tree_img'+ i +'" id="tree_img'+ i +'" onclick="fnTreeMenu(\'tree'+ i +'\',\''+ arrTree[i][1] +'\',\'tree_img'+ i +'\',\''+ arrTree[i][2] +'\')">'+ file_name +'<br/>';
71        tree += '<div id="tree'+ i +'" style="display:'+ display +'">';
72   
73    }
74    tree += '</form>';
75    fnDrow(view_id, tree);
76    document.tree_form.tree_test2.focus(); 
77}
78
79// Tree¾õÂÖ¤òhidden¤Ë¥»¥Ã¥È
80function setTreeStatus(name) {
81    var tree_status = "";
82    for(i=0; i < arrTreeStatus.length ;i++) {
83        if(i != 0) tree_status += '|';
84        tree_status += arrTreeStatus[i];
85    }
86    document.form1[name].value = tree_status;
87}
88
89// Tree¾õÂÖ¤òºï½ü¤¹¤ë(ÊĤ¸¤ë¾õÂÖ¤Ø)
90function fnDelTreeStatus(path) {
91    for(i=0; i < arrTreeStatus.length ;i++) {
92        if(arrTreeStatus[i] == path) {
93            arrTreeStatus[i] = "";
94        }
95    }
96}
97// ¥Ä¥ê¡¼ÉÁ²è
98function fnDrow(id, tree) {
99    // ¥Ö¥é¥¦¥¶¼èÆÀ
100    MyBR = fnGetMyBrowser();
101    // ¥Ö¥é¥¦¥¶»ö¤Ë½èÍý¤òÀÚ¤êʬ¤±
102    switch(myBR) {
103        // IE4¤Î»þ¤Îɽ¼¨
104        case 'I4':
105            document.all(id).innerHTML = tree;
106            break;
107        // NN4¤Î»þ¤Îɽ¼¨
108        case 'N4':
109            document.layers[id].document.open();
110            document.layers[id].document.write("<div>");
111            document.layers[id].document.write(tree);
112            document.layers[id].document.write("</div>");
113            document.layers[id].document.close();
114            break;
115        default:
116            document.getElementById(id).innerHTML=tree;
117            break;
118    }
119}
120
121// ³¬Áإĥ꡼¥á¥Ë¥å¡¼É½¼¨¡¦Èóɽ¼¨½èÍý
122function fnTreeMenu(tName, type, imgName, path) {
123
124    tMenu = document.all[tName].style;
125    if(tMenu.display == 'none') {
126        if(type == '_parent') {
127            fnChgImg(IMG_FOLDER_OPEN_M, imgName);
128        } else {
129            fnChgImg(IMG_FOLDER_OPEN, imgName);
130        }
131        tMenu.display = "block";
132        // ¥ª¡¼¥×¥ó¥Õ¥¡¥¤¥ë¾õÂÖ¤òÊÝ»ý
133        arrTreeStatus.push(path);
134
135    } else {
136        if(type == '_parent') {
137            fnChgImg(IMG_FOLDER_CLOSE_P, imgName);
138        } else {
139            fnChgImg(IMG_FOLDER_CLOSE, imgName);
140        }
141        tMenu.display = "none";
142        // ÊĤ¸¾õÂÖ¤òÊÝ»ý
143        fnDelTreeStatus(path);
144    }
145    // ¥¯¥ê¥Ã¥¯¤·¤¿¥Õ¥©¥ë¥À¾ðÊó¤òÊÝ»ý
146    document.form1['tree_select_file'].value = path;
147    // tree¤Î¾õÂÖ¤ò¥»¥Ã¥È
148    setTreeStatus('tree_status');
149    // submit
150    fnModeSubmit('move','','');
151}
152
153// ±ÜÍ÷¥Ö¥é¥¦¥¶¼èÆÀ
154function fnGetMyBrowser() {
155    myOP = window.opera;            // OP
156    myN6 = document.getElementById; // N6
157    myIE = document.all;            // IE
158    myN4 = document.layers;         // N4
159    if      (myOP) myBR="O6";       // OP6°Ê¾å
160    else if (myIE) myBR="I4";       // IE4°Ê¾å
161    else if (myN6) myBR="N6";       // NS6°Ê¾å
162    else if (myN4) myBR="N4";       // NN4
163    else           myBR="";         // ¤½¤Î¾
164       
165    return myBR;
166}
167
168// img¥¿¥°¤Î²èÁüÊѹ¹
169function fnChgImg(fileName,imgName){
170    document.getElementById(imgName).src = fileName;
171}
172
173//test
174function test(id) {
175document.getElementById(id).value=tree
176}
Note: See TracBrowser for help on using the repository browser.