root/BH13SPARQLBuilder/src/hozo/maptool/MapFactory.java @ 68

リビジョン 40, 23.3 KB (コミッタ: kozaki, 11 年 前)
  • 属性 svn:mime-type の設定値 text/plain
行番号 
1package hozo.maptool;
2
3
4import java.awt.Color;
5import java.awt.Font;
6import java.io.File;
7import java.util.ArrayList;
8import java.util.Enumeration;
9import java.util.List;
10import java.util.Vector;
11
12import javax.swing.JOptionPane;
13
14import hozo.sparql.gui.SparqlBuilderPanel;
15
16import org.biohackathon.SPARQLBuilder.OWL.ClassLink;
17import org.biohackathon.SPARQLBuilder.OWL.Direction;
18import org.biohackathon.SPARQLBuilder.OWL.Path;
19
20/***邵イ�ス008/10/18邵イ�スkozaki
21邵イ�スAP騾墓サ難ソス邵コ�ョ邵コ貅假ス∫クコ�ォ�ス譴ァ�ウ證ョ�ス郢ァミ杆L邵コ�ョAPI邵コ荵晢ス会ソス蠕鯉ソス郢晢ソス�ス騾包スィ邵コ�ョ郢晢ソス�ス郢ァ�ソ郢ァ蜑�スス諛茨ソス邵コ蜷カ�狗クコ貅假ス∫クコ�ョ
22邵イ�スホ鍋ケァ�ス郢晢ソス繝ゥ鬯俶ァュ�堤クコ阮呻ソス郢ァ�ッ郢晢スゥ郢ァ�ケ邵コ�ォ邵コ�セ邵コ�ィ郢ァ竏夲ス具ソス�ス
23
24***/
25public class MapFactory implements Runnable{
26
27        ExtendBP exbp;
28        public ExtendFrame exbpframe;
29        Vector focal_points;//隴幢ソス�ス邵コ�ォ鬩包スク隰壽ァュ�邵コ讚サode(邵コ�ェ邵コ�ゥ)郢ァ蜑�スソ譎�亜邵コ蜷カ��
30        boolean isSubLung;
31        static boolean isGrayView=false;
32        Vector<String> checked_nodes;
33        boolean search_shortest=true;//郢ァ�オ郢晢スシ郢昶�繝ア郢ァ�ケ邵コ�ァ隴幢ソス豢堤ケ昜サ」縺帷ケァ蜻茨ス、諛�スエ�「邵コ蜷カ��
34        int serch_depth = 10;//郢ァ�オ郢晢スシ郢昶�繝ア郢ァ�ケ邵コ�ァ隴幢ソス豢堤ケ昜サ」縺帷ケァ蜻茨ス、諛�スエ�「邵コ蜷カ�玖アコ�ア邵コ蛹�スシ蝓滓€咎¥�ュ郢昜サ」縺幄ョ€諛�スエ�「郢ァ蛛オ�邵コ�ェ邵コ�ス竊堤クコ髦ェ�ス陟「�ス笘�抄�ソ邵コ�ス�シ�ス
35        Vector<ExbpNodeTemp> temp_nodes;
36       
37        SparqlBuilderPanel spBuilder;
38       
39        public static void main (String[] args) {
40                MapFactory map = new MapFactory();
41                //map.loadPathList(map.getDummyPathList());
42        }
43       
44        public List<Path> getDummyPathList(){
45                ArrayList pathlist = new ArrayList();
46//              ArrayList class_link_list = new ArrayList<ClassLink>() {{
47//                      add(new ClassLink("propertyURI", "linkedClassURI2", Direction.forward));
48//                      add(new ClassLink("propertyURI2", "linkedClassURI3", Direction.forward));
49//                      add(new ClassLink("propertyURI3", "linkedClassURI4", Direction.forward));
50//                  }};
51//              Path path = new Path("StartClass1", class_link_list);
52//              pathlist.add(path);
53//             
54                return pathlist;
55        }
56       
57        public void setSPARQLbuilder(SparqlBuilderPanel builder){
58                this.spBuilder = builder;
59        }
60       
61//      void setSPARQLquery(Path path){
62//              this.spBuilder;
63//      }
64       
65        public MapFactory() {
66                exbpframe = new ExtendFrame(this);
67                exbp = exbpframe.getExtendBP();
68                focal_points = new Vector<Object>();
69                temp_nodes = new Vector<ExbpNodeTemp>();
70               
71//              focal_points.add("TEST");
72//              focal_points.add("TEST2");
73               
74//              isSubLung=hze.isSubLang;
75//              isGrayView=hze.isGrayView;//#kozaki 2009/07/28
76//              exbp.setHZEditor(hze);
77//              exbpframe.select_dialog = new EtendBPSelectDialog(exbp,exbpframe);
78                exbpframe.setVisible(true);
79        exbpframe.RefreshExbp();
80       
81//      if(focal_points.size()==1){
82//              exbp.cmd_dialog.setCommandOptions(exbp.exbp_node_center);
83//      }
84//     
85//      treeSelectDialog = new TreeSelectDialog(true);
86//          treeSelectDialog.setHZEditor(this.hzEditor);
87//          treeSelectDialog.setSubLang(this.isSubLung);
88//          treeSelectDialog.setSize(450, 600);
89//         
90                }
91       
92        public void loadPathList(Path[] pathlist){
93                if(pathlist.length==0){
94                        JOptionPane.showMessageDialog(null, "NO PATH!!");
95                        return;
96                }
97                Path path = pathlist[0];
98               
99                this.exbp.exbp_node_center = new ExbpNode(getTempLabel(path.getStartClass()));
100
101                for(int i = 0; i<pathlist.length; i++){
102                        addPath(pathlist[i]);
103                }
104                this.exbpframe.RefreshExbp();
105//              this.exbp.exbp_node_center = exbpnode;
106//              exbpnode= new ExbpNode("Center");;
107//              exbpnode.setChildrenColor(Color.red);
108//              exbpnode.key="prop1";
109//              this.exbp_node_center.addChild(exbpnode);
110//              this.exbp_node_center.addChild(new ExbpNode("TEST2"));
111//              this.exbp_node_center.addChild(new ExbpNode("TEST3"));
112//              this.exbp_node_center.addChild(new ExbpNode("TEST4"));
113               
114               
115        }
116
117       
118       
119        void addPath(Path path){
120                System.out.println("addPath"+path.getStartClass()+"--->"+path.getClassLinks().size());
121                String target_class = path.getStartClass();
122//              ExbpNode node = this.exbp.findExbpNode(target_class);
123                ExbpNode node = this.exbp.exbp_node_center;
124       
125               
126                List<ClassLink> links = path.getClassLinks();
127                for(ClassLink link : links){
128                        String next_class = link.getLinkedClassURI();
129                        System.out.println("="+link.getNumOfLinks()+"=>"+next_class);
130                       
131                        /*
132                        String next_class_lbl ="";
133                        int index = next_class.lastIndexOf("/");
134                        if(index>0 && index<next_class.length()){
135                                next_class_lbl = next_class.substring(index+1);
136                        }
137                        else{
138                                next_class_lbl = next_class;
139                        }
140                       
141                        int index2 = next_class_lbl.lastIndexOf("#");
142                        if(index2>0 && index2<next_class_lbl.length()){
143                                next_class_lbl = next_class_lbl.substring(index2+1);
144                        }
145
146                        */
147                        ExbpNode next_node = new ExbpNode(getTempLabel(next_class));
148                        next_node.setOrgNode(path);
149
150                        node.addChild(next_node);
151                        node = next_node;
152                        String prop = getTempLabel(link.getPropertyURI());
153                       
154                        if(link.getDirection().equals(Direction.reverse)){
155                                prop += "[<=]";
156                        }
157                        else if(link.getDirection().equals(Direction.both)){
158                                prop += "[<=>]";
159                        }
160                        next_node.key = prop;                   
161                }
162                       
163               
164        }
165
166       
167        String getTempLabel(String next_class){
168                String next_class_lbl ="";
169                int index = next_class.lastIndexOf("/");
170                if(index>0 && index<next_class.length()){
171                        next_class_lbl = next_class.substring(index+1);
172                }
173                else{
174                        next_class_lbl = next_class;
175                }
176               
177                int index2 = next_class_lbl.lastIndexOf("#");
178                if(index2>0 && index2<next_class_lbl.length()){
179                        next_class_lbl = next_class_lbl.substring(index2+1);
180                }
181               
182                return next_class_lbl;
183        }
184       
185        //陷茨ソス竊堤クコ�ェ郢ァ逡ソditor驕イ蟲ィ縲樽apTool郢ァ蝣、�ョ�。騾�ソス�邵コ�ヲ邵コ�ス�儀ector郢ァ螳夲スソ譁絶�邵イ鬟殪zo闔会ス・陞滓じ縲堤クコ�ッ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ荵晢ソス
186        Vector getMapVec(){
187                return null;   
188        }
189       
190        //陷茨ソス竊堤クコ�ェ郢ァ荵昴′郢晢スウ郢晏現ホ溽ケァ�ク郢晢スシ邵コ�ョ郢晁シ斐<郢ァ�、郢晢スォ郢ァ螳夲スソ譁絶�邵イ鬟殪zo闔会ス・陞滓じ縲堤クコ�ッ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ荵晢ソス
191        File getFile(){
192                return null;   
193        }
194       
195        //邵コ蜷カ竏狗クコ�ヲ邵コ�ョ郢晢スュ郢晢スシ郢晢スォ邵コ�ョ闕ウ�ス�ヲ�ァ郢ァ螳夲スソ譁絶�
196        Vector getRoleList(){
197                Vector roles = new Vector();
198/*              Enumeration en = this.hzEditor.WCEditor.browsingPanel.node_lists.elements();
199                while(en.hasMoreElements()){
200                        Node n =(Node)en.nextElement();
201                        Enumeration slot_en = n.getSlots().elements();
202                        while(slot_en.hasMoreElements()){
203                                Slot slot =(Slot)slot_en.nextElement();
204                                if(!roles.contains(slot.getRoleName())){
205                                        roles.addElement(slot.getRoleName());
206                                }
207                        }
208                }
209                        */
210                return roles;
211        }
212
213        //陷茨ソス竊堤クコ�ェ郢ァ荵昴′郢晢スウ郢晏現ホ溽ケァ�ク郢晢スシ邵コ�ァ邵コ�ョ鬩包スク隰壽ゥク�シ蛹サ縺醍ケ晢スェ郢晢ソス縺托ソス迚呻ソス騾�ソス�スHozo闔会ス・陞滓じ縲堤クコ�ッ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ荵晢ソス
214        void selected(ExbpNode exbpnode){
215//              this.hzEditor.WCEditor.browsingPanel.Jump(exbpnode.getHozoNode());     
216        }
217
218        //陷茨ソス竊堤クコ�ェ郢ァ荵昴′郢晢スウ郢晏現ホ溽ケァ�ク郢晢スシ邵コ�ァ邵コ�ョ鬩包スク隰壽ゥク�シ蛹サ縺醍ケ晢スェ郢晢ソス縺托ソス迚呻ソス騾�ソス�スHozo闔会ス・陞滓じ縲堤クコ�ッ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ荵晢ソス
219        void selectedClear(){
220//              this.hzEditor.WCEditor.definitionPanel.uncursel();
221//              this.hzEditor.WCEditor.browsingPanel.pick(null, false);
222        }
223        //Open邵コ蜉ア笳�AP邵コ�ィ郢ァ�ェ郢晢スウ郢晏現ホ溽ケァ�ク郢晢スシ邵コ�ョ陷茨ソス繝ァ郢晢スシ郢ァ�ソ邵コ�ョ陝�スセ陟「諛岩名邵コ�ス
224        void setOrgNodes(){
225                /*
226                if (this.hzEditor==null) {
227                        System.out.println("ERROR!!:::HzEditor is NOT FOUND!");
228                        return;
229                }
230               
231                Enumeration en =exbp.nodes.elements();
232                while(en.hasMoreElements()){
233                        ExbpNode node =(ExbpNode)en.nextElement();
234                        String lbl = node.getLabel();
235                        Node org_node;
236                        if(lbl.endsWith("[RH]")){
237                                lbl=lbl.substring(0,lbl.indexOf("[RH]"));
238                                //System.out.println(node.getLabel()+"====>"+lbl);
239                                if(this.isSubLung){
240                                        org_node = this.hzEditor.WCEditor.findNodeWithSubLang(lbl);
241                                }
242                                else{
243                                        org_node = this.hzEditor.findRH(lbl);
244                                }
245                        }
246                        else{
247                                if(this.isSubLung){
248                                        org_node = this.hzEditor.WCEditor.findNodeWithSubLang(lbl);
249                                }
250                                else{
251                                        org_node = this.hzEditor.findNode(lbl);
252                                }
253                        }
254                        node.setOrgNode(org_node);
255                        if(org_node!=null){
256                                //System.out.println("setOrgNodes:::"+lbl+"<=>"+org_node.getLabel());
257                        }else{
258                                //System.out.println("setOrgNodes:::"+lbl+"<=>NOT FOUND!");
259                        }
260                }
261                        */
262        }
263       
264        //陷茨ソス竊堤クコ�ェ郢ァ霆恵ject邵コ荵晢ス宇ocalPoint邵コ�ィ邵コ�ェ郢ァ逡ソxbpNode郢ァ蜑�スス諛奇ス狗クイ鬟殪zo闔会ス・陞滓じ縲堤クコ�ッ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ荵晢ソス
265        ExbpNode[] setFocalPoints(){
266//              if (this.hzEditor==null) return null;
267               
268                ExbpNode[] exbpnodes = null;
269
270                exbp.nodes.removeAllElements();
271               
272//              Vector<Node> chi_nodes;         
273//              GraphicObject gobj=null;
274//              Object ob=null;
275
276                if (focal_points.size() == 1) {//�ス莉」笆ス邵コ�ョNode郢ァ蟶昶�隰壽ァュ�邵コ貊�怙邵コ�ョ陷�スヲ騾�ソス
277                        Object gobj = focal_points.firstElement();
278            //gobj =(GraphicObject) focal_points.firstElement();
279           
280                        if(gobj instanceof String){
281                                exbp.exbp_node_center =new ExbpNode((String)gobj);
282                                exbp.exbp_node_center.setOrgNode(gobj);
283                                exbp.nodes.add(exbp.exbp_node_center);
284                                exbpnodes = new ExbpNode[1];
285                                exbpnodes[0]=exbp.exbp_node_center;
286                        }
287                        else if(gobj instanceof Object){
288                                System.out.println("*** ERROR:Node郢ァ蟶昶�隰壽ァュ笘�ケァ蜿・�ソ�ス�ヲ竏壺€イ邵コ繧�ス顔クコ�セ邵コ�ス:" );
289                        }
290                        else{//鬩包スク隰壽ァュ竊醍クコ蜉ア�ス陜」�エ陷キ蛹サ�ス�ス蠕後♀郢晢スゥ郢晢スシ郢ァ雋橸ソス邵コ蜉ア窶サ驍ィ繧�スコ�ス
291                               
292                                JOptionPane.showMessageDialog(exbpframe,
293                                                "You Have to select [Node]!",
294                                                "ERROR",
295                                                JOptionPane.ERROR_MESSAGE);
296                                System.out.println("ERROR:Node郢ァ蟶昶�隰壽ァュ笘�ケァ蜿・�ソ�ス�ヲ竏壺€イ邵コ繧�ス顔クコ�セ邵コ�ス:" );
297                                exbpframe.dispose();
298                        }                               
299                }
300        else {//髫搾ソス辟哢ode郢ァ蟶昶�隰壽ァュ�邵コ貊�怙邵コ�ョ陷�スヲ騾�ソス
301                        if(focal_points.size() > 1){
302                    exbp.exbp_node_center = new ExbpNode("(ROOT)");
303                    exbp.nodes.addElement(exbp.exbp_node_center);
304
305                    Vector chi_nodes = new Vector();
306                                Enumeration node_en = focal_points.elements();
307                    while(node_en.hasMoreElements()){
308                                        Object gobj2 = node_en.nextElement();
309                                        if(gobj2 instanceof String){
310                                                ExbpNode chinode = new ExbpNode((String)gobj2);
311                                                chinode.setOrgNode(gobj2);
312                                                exbp.exbp_node_center.addChild(chinode);
313                                                exbp.nodes.add(chinode);
314                                        }
315                                       
316                                        exbpnodes = new ExbpNode[exbp.exbp_node_center.children.size()];
317                                        for(int i=0;i<exbp.exbp_node_center.children.size();i++){
318                                                exbpnodes[i]=(ExbpNode)exbp.exbp_node_center.children.elementAt(i);
319                                        }
320                                }
321                        }               
322                else{//Node郢ァ螳夲スヲ遏ゥ竏郁ャ壽ァュ�ス鬮ォ蟶呻ソス陷�スヲ騾�ソス
323                        JOptionPane.showMessageDialog(exbpframe,
324                                        "You Have to select [Node]!",
325                                        "ERROR",
326                                        JOptionPane.ERROR_MESSAGE);
327                        System.out.println("ERROR:Node");
328                        exbpframe.dispose();                   
329                        }                       
330       }
331               
332                return exbpnodes;
333        }
334       
335        /*
336        //陷茨ソス竊堤クコ�ェ郢ァ霆恵ject邵コ荵晢ス右xbpNode郢ァ蜑�スス諛奇ス狗クイ鬟殪zo闔会ス・陞滓じ縲堤クコ�ッ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ荵晢ソス
337        ExbpNode makeExbpNode(Object obj){
338                if(!(obj instanceof String)){
339                        //System.out.println("ERROR@makeChildNodes():obj is NOT Node!");
340                        return null;
341                }
342               
343                Node node =(Node)obj;
344                ExbpNode exbpnode;
345               
346               
347                //#kozaki 2009/08/19邵イ�スlot邵コ�ョ陷�スヲ騾�ソス�帝恆�ス陷会ソス
348                if(node instanceof hozo.oe.gobj.Slot){
349                        if(!((Slot)node).getRHname().equals("")){
350                                node = this.hzEditor.findRH(((Slot)node).getRHname());
351                        }
352                        else{
353                               
354                        }       
355                }
356               
357                if(node instanceof hozo.oe.gobj.NodeRH){
358                        if(this.isSubLung){
359                                exbpnode= new ExbpNode(node.getSubLabel()+"[RH]");
360                                }
361                        else{
362                                exbpnode= new ExbpNode(node.getLabel()+"[RH]");
363                        }                       
364                }
365                else{
366                        if(this.isSubLung){
367                                exbpnode= new ExbpNode(node.getSubLabel());
368                                }
369                        else{
370                                exbpnode= new ExbpNode(node.getLabel());
371                        }                       
372                }
373               
374                exbpnode.setOrgNode(obj);
375                //exbp.nodes.add(exbpnode);
376               
377                return exbpnode;
378        }*/
379       
380       
381        //�ス莉」笆ス邵コ�ョExbpNode邵コ�ォ郢ァ�ウ郢晄ァュホヲ郢晏ウィ�帝ゥ包スゥ陟「諛奇シ邵コ�ヲ闕ウ蛟カ�ス蟄肺bpNode郢ァ螳夲スソ�ス陷会ソス笘�ケァ荵晢ソスHozo闔会ス・陞滓じ縲堤クコ�ョ郢ァ�ェ郢晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ�ス陟「�ス�ヲ竏壺�邵コ蜉ア�ス
382        //邵イ�ス縺慕ケ晄ァュホヲ郢晉判�ッ蠑ア竊鍋ケ晢ス。郢ァ�ス郢晢ソス繝ゥ郢ァ蛛オ縺檎ケ晢スシ郢晁��ス郢晢スゥ郢ァ�、郢晏ウィ笘�ケァ�ス
383        void makeChildNodes(ExbpNode exbpnode, String command){
384        /*      if(!(exbpnode.getOrgNode() instanceof Node)){
385                        //System.out.println("ERROR@makeChildNodes():orgnode is NOT Node!");
386                        return;
387                }
388               
389//              exbpnode.children.removeAllElements(); 
390//              System.out.println("makeChildNodes():::command="+command);
391                removeAllChildren(exbpnode);   
392               
393                       
394                if(command.equals("isa")){ // ?邵イ�ス�ク蛟カ�ス閧エ�ヲ繧�スソ�オ邵コ�ョ隰夲スス陷�スコ is-a
395                        makeChildNodeISA(exbpnode);
396                        }
397                else if(command.equals("super")){// ?闕ウ雍具スス閧エ�ヲ繧�スソ�オ邵コ�ョ隰夲スス陷�スコ
398                        makeChildNodeSuper(exbpnode);
399                        }                       
400                else if(command.startsWith(":")){// 陷ソ繧会ソス陷茨ソス�ス隰夲スス陷�スコ邵イ�スefereed to
401                        makeChildNodeRefered(exbpnode,command);
402                        }
403                // #hirota 08/08/19 郢ァ�ウ郢晄ァュホヲ郢晁��オ莉咏イ�
404                else if(command.startsWith(";")){ // (old)郢晢スュ郢晢スシ郢晢スォ隰厄ソス�ョ螢ケ竕郢ァ鄙ォ�ス�ス荵晢ソス闕ウ蛟カ�ス閧エ�ヲ繧�スソ�オ隰厄ソス�ョ螢ケ竕郢ァ�ス
405                        makeChildNodeRoleSub(exbpnode,command);
406                        }
407                else if(command.equals("any-h")){ // ? depend-on 遶奇ソス #hirota 11/26  霑エ�セ陜ィ�ィ邵コ�ョ髫穂ケ溘○邵コ蜷孃de邵コ�ョ邵コ�ィ邵コ髦ェ�スNode邵コ�ョ郢ァ�ケ郢晢スュ郢晢ソス繝ィ邵コ�ョRH郢ァ螳夲ス。�ィ驕会スコ
408                        makeChildNodeDependOnRH(exbpnode,command);
409                        }
410                else if(command.equals("++s")){// ?邵イ�スepend on 邵イ�ス�ス郢ァ�ウ郢晢スウ郢晢ソス縺冗ケァ�ケ郢晏現�定愾謔カ�願怎�コ邵コ�ス
411                        makeChildNodeDependOnContext(exbpnode,command);         
412                        }
413                else if(command.equals("++P")){//  playable 鬮「�「闖ォ�ス?邵イ�ス�ス all
414                        makeChildNodePlayable(exbpnode);
415                }
416                else if(command.startsWith("++p")){// playable 鬮「�「闖ォ�ス?邵イ�ス�ス label 隰厄ソス�ョ�ス
417                        makeChildNodePlayableByLabel(exbpnode, command);
418                        }
419                else if(command.equals("++c")){ // ?邵イ�スlayable 遶奇ソス郢晏干ホ樒ケァ�、郢晢ス、郢晢スシ邵コ�ョ陷ソ謔カ�願怎�コ邵コ�ス
420                        makeChildNodePlayer(exbpnode);
421                        }
422                else if(command.startsWith("++r:")){// ?鬮「�「闖ォ繧茨スヲ繧�スソ�オ邵コ�ョ陷ソ謔カ�願怎�コ邵コ�ス ++r:Lable
423                        makeChildNodeRelationConcept(exbpnode,command);
424                }
425                else if(command.equals("++R")){ // ++R  陷茨スィ鬩幢スィ陷ソ謔カ�願怎�コ邵コ�ス
426                        makeChildNodeRelationAll(exbpnode);
427                        }       
428                else if(command.startsWith("super_isa")){ // #hirota 08/09/03 陷茨ソス�シ貊難スヲ繧�スソ�オ邵コ�ョ陷ソ謔カ�願怎�コ邵コ�スsuper+isa)
429                        makeChildNodeBrothers(exbpnode);
430                        }
431                else if(command.startsWith("_")){//             郢ァ�ッ郢晢スゥ郢ァ�ケ陋サ�カ驍擾ソス�帝恷�ソ郢ァ蜿・�ス騾�ソス�スonly RH
432                        makeChildNodeCConlyRH(exbpnode,command);
433                        }
434                else{
435                        makeChildNodeReferringTo(exbpnode,command);// 郢ァ�ッ郢晢スゥ郢ァ�ケ陋サ�カ驍擾ソス�帝恷�ソ郢ァ蜿・�ス騾�ソス
436                        }
437                        */
438                }
439       
440        public void run(){
441                //SerachPath(target_nodes,target_cls);
442        }
443       
444        public void stop(){
445//              pbar_frame.stop();
446//              pbar_frame=null;                       
447        }
448       
449        ExbpNode[] target_nodes;
450//      Node[] target_cls;
451        int[] match_num;
452//      ProgressFrame pbar_frame;
453       
454/*     
455        public void SearchPathAsThread(ExbpNode[] nodes, Node[] cls){
456                pbar_frame = new ProgressFrame("Serach Path","Now,Searching..., Please wait.");
457                pbar_frame.frame.setAlwaysOnTop(true);
458                pbar_frame.frame.setLocation(exbp.cmd_dialog.getWidth(),100);
459               
460               
461                target_nodes = nodes;
462                target_cls =cls;
463                match_num = new int[cls.length];
464                for(int i=0;i<match_num.length;i++){
465                        match_num[i]=0;
466                }
467               
468                Thread thread = new Thread(this);
469                thread.start();
470               
471
472        }*/
473        /*
474       
475        void checkMatchCount(){
476                match_num = new int[target_cls.length];
477                for(int i=0;i<match_num.length;i++){
478                        match_num[i]=0;
479                }
480               
481                Enumeration en = this.exbp.nodes.elements();
482                while(en.hasMoreElements()){
483                        ExbpNode node = (ExbpNode)en.nextElement();
484                        Object obj = node.getOrgNode();
485                        if(obj instanceof Node){
486                                Node hozonode=(Node)obj;
487                                for(int i=0;i<target_cls.length;i++){
488                                        if(target_cls[i] instanceof Node){
489                                                if(hozonode.isSubclassOf((Node)target_cls[i])
490                                                                || hozonode.equals(target_cls[i])){
491                                                        match_num[i]++;
492                                                }
493                                        }
494                                }
495                        }
496                }
497               
498                for(int i=0;i<target_cls.length;i++){
499                        System.out.println(
500                                        target_cls[i].getLabel()+" = "+
501                                        match_num[i]);
502                }
503        }
504        */
505       
506        //#kozaki邵イ�ス009/02/13邵イ�ス�ッ�セ髮趣ス。郢晏シア�ス郢晏ウィ�帝嚶�ス辟夂クコ�ォ隲。�。陟托スオ
507//      public void SerachPath(ExbpNode[] nodes, Node[] target_cls/*String[] cls_lists*/){}
508
509//      private Vector<ExbpNode> SerachPath(Vector<ExbpNode> nodes,
510//                      Node[] cls_lists,Vector<ExbpNode> match_nodes){}
511       
512        void removeAllChildren(ExbpNode exbpnode){
513                this.exbp.nodes.removeAll(exbpnode.children);
514                exbpnode.children.removeAllElements(); 
515        }
516
517        //隹コ�。邵コ�ォ邵コ貅倪�郢ァ荵昴Π郢晢スシ郢晏ウィ�ス郢晢スェ郢ァ�ケ郢晏現�定愾髢€�セ蜉ア笘�ケァ�ス
518        //遯カ�サ闕ウ�ス�コ�ヲ邵コ貅倪�邵コ�」邵コ貅假シ�クコ�ィ邵コ�ョ邵コ繧�ス狗ケ晢ソス�ス郢ァ�ソ邵コ�ッ�ス闕各mp_nodes邵コ�ォ闖ォ譎�亜邵コ霈費ス鯉ソス蠕娯落邵コ�。郢ァ蟲ィ�帝恆譁絶�
519//      Vector<ExbpNode> getChildNodeFromTemp(ExbpNode exbpnode, String cmd){}
520
521       
522        void explore(ExbpNode exbpnode, boolean all, String cmd){
523        /*      ExbpNode[] exbpnodes=new ExbpNode[1];
524               
525                if(!all){
526                        exbpnodes=new ExbpNode[1];
527                        exbpnodes[0]=exbpnode;
528                }
529                else{
530                        int layer = exbpnode.getLocatedLayer();
531                        exbpnodes=exbp.getExbpNodesAtLear(layer,true);
532                }
533               
534                for(int l=0;l<exbpnodes.length;l++){
535                        if(exbpnodes[l].visible){
536                                this.makeChildNodeReferringToDirectly(exbpnodes[l], cmd);
537                                this.makeChildNodeRefered(exbpnodes[l], ":Any");
538                               
539                                //exbpnodes[l].children.removeAllElements();
540//                              Vector temp_children = getChildNodeFromTemp(exbpnodes[l],cmd);
541//                              Enumeration en = temp_children.elements();
542//                              while(en.hasMoreElements()){
543//                                      ExbpNode chi = (ExbpNode)en.nextElement();
544//                                      exbpnodes[l].addChild(chi);
545//                                      chi.setVisible(true);
546//                              }
547                        }
548                }*/
549               
550        }
551
552        void clearSubPath(ExbpNode exbpnode){
553                ExbpNode[] exbpnodes=new ExbpNode[1];
554               
555                int layer = exbpnode.getLocatedLayer();
556                exbpnodes=exbp.getExbpNodesAtLear(layer,true);
557               
558               
559                for(int l=0;l<exbpnodes.length;l++){
560                        if(exbpnodes[l].visible){
561                                this.removeAllChildren(exbpnodes[l]);
562                        }
563                }
564               
565        }
566
567       
568        //陷キ�ス縺慕ケ晄ァュホヲ郢晏ウィ�帝ゥ包スゥ騾包スィ邵コ蜉ア笳�クコ�ィ邵コ髦ェ竊鍋クコ貅倪�郢ァ荵昴Π郢晢スシ郢晏ウィ�堤クコ蜉ア�臥クコ�ケ邵コ�ヲ�ス蜊ヲree邵コ�ョ郢ァ�ウ郢晄ァュホヲ郢晏ウィホ懃ケァ�ケ郢晏現竊楢怦�・郢ァ蠕鯉ス具ソス�ス
569//      void setCommandsTree(ExbpNode[] exbpnodes){}
570       
571public void makeChildNodeSuper(ExbpNode exbpnode) {}
572
573
574private void makeSlotRelatedExbpNode(ExbpNode exbpnode, String command) {}
575
576//      #kozaki 2008/08/17邵イ�ス縺帷ケ晢スュ郢晢ソス繝ィ邵コ�ァ鬮「�「鬨セ�」邵コ蜉ア笳�ョ弱g�ソ�オ郢ァ螳夲スセ�ソ郢ァ蜿・�ス騾�ソス竏育クコ�ョ陋サ�ス�イ�ス
577//      private void makeSlotRelatedExbpNode(ExbpNode par_exbpnode, Node node, String command){}
578       
579       
580        //#kozaki 2008/08/12邵イ�ス縺醍ケ晢スゥ郢ァ�ケ陋サ�カ驍擾ソス�帝恷�ソ郢ァ蜿・�ス騾�ソス�定ソ「�ャ驕カ�ス
581//      private void makeExbpNodeCC(ExbpNode par_exbpnode,      //髫包スェ邵コ�ィ邵コ�ェ郢ァ逡ソxbpNode
582//                                                              Slot slot,                              //髴趣スソ郢ァ蜿・�ッ�セ髮趣ス。邵コ�ィ邵コ�ェ郢ァ荵昴○郢晢スュ郢晢ソス繝ィ
583//                                                              Node slot_node,                 //郢ァ�ッ郢晢スゥ郢ァ�ケ陋サ�カ驍擾ソス竊堤クコ蜉ア窶サ陷ソ繧会ソス邵コ蜉ア窶サ邵コ�ス�狗ケ晏シア�ス郢晢ソス
584//                                                              Node node,                              //髴趣スソ郢ァ荵昴○郢晢スュ郢晢ソス繝ィ郢ァ蜻域亜邵コ�、郢晏シア�ス郢晢ソス
585//                                                              String command,         //髴趣スソ郢ァ荵昴&郢晄ァュホヲ郢晢ソス
586//                                                              String match_key                //闕ウ�ス�ス邵コ蜉ア笳�ケァ�ウ郢晄ァュホヲ郢昜シ夲スシ莠包スク雍具スス髦ェ縺帷ケ晢スュ郢晢ソス繝ィ邵コ�ョ陷�スヲ騾�ソス逡托ソス�ス
587//                                                              ){}
588       
589//      public void makeChildNodeISA(ExbpNode exbpnode){}
590
591       
592        // ?
593//      private void makeChildNodeRefered(ExbpNode exbpnode, String command) {}
594
595        //      ?遯カ�ス(old)郢晢スュ郢晢スシ郢晢スォ隰厄ソス�ョ螢ケ竕郢ァ鄙ォ�ス�ス荵晢ソス闕ウ蛟カ�ス閧エ�ヲ繧�スソ�オ隰厄ソス�ョ螢ケ竕郢ァ�ス
596//      public void makeChildNodeRoleSub(ExbpNode exbpnode,String command) {}
597
598        // ? depend-on 遶奇ソス #hirota 11/26  霑エ�セ陜ィ�ィ邵コ�ョ髫穂ケ溘○邵コ蜷孃de邵コ�ョ邵コ�ィ邵コ髦ェ�スNode邵コ�ョ郢ァ�ケ郢晢スュ郢晢ソス繝ィ邵コ�ョRH郢ァ螳夲ス。�ィ驕会スコ
599//      public void makeChildNodeDependOnRH(ExbpNode exbpnode,String NodeCC) {}
600       
601       
602       
603        // ?邵イ�スepend on 邵イ�ス�ス郢ァ�ウ郢晢スウ郢晢ソス縺冗ケァ�ケ郢晏現�定愾謔カ�願怎�コ邵コ�ス#hirota add 09/11/09
604//      public void makeChildNodeDependOnContext(ExbpNode exbpnode,String command) {}
605       
606//  playable 鬮「�「闖ォ�ス?邵イ�ス�ス all
607//      public void makeChildNodePlayable(ExbpNode exbpnode) {}
608
609        // playable 鬮「�「闖ォ�ス?邵イ�ス�ス label 隰厄ソス�ョ�ス
610//      private void makeChildNodePlayableByLabel(ExbpNode exbpnode,String command) {}
611
612         // ?邵イ�スlayable 遶奇ソス郢晏干ホ樒ケァ�、郢晢ス、郢晢スシ邵コ�ョ陷ソ謔カ�願怎�コ邵コ�ス
613//      public void makeChildNodePlayer(ExbpNode exbpnode) {}   
614//      private void makeChildNodeRelationConcept(ExbpNode exbpnode,String command) {} 
615       
616//       ++R  陷茨スィ鬩幢スィ陷ソ謔カ�願怎�コ邵コ�ス驍ッ蜻惹セ。郢ァ�ェ郢晏干縺咏ケ晢スァ郢晢スウ邵コ繧�ス顔クコ�ョ邵コ�ィ邵コ謳セ�シ�ス
617//      public void makeChildNodeRelationAllToDirectry(ExbpNode exbpnode) {}
618        // ++R  陷茨スィ鬩幢スィ陷ソ謔カ�願怎�コ邵コ�ス
619//      public void makeChildNodeRelationAll(ExbpNode exbpnode) {}     
620       
621        // #hirota 08/09/03 陷茨ソス�シ貊難スヲ繧�スソ�オ邵コ�ョ陷ソ謔カ�願怎�コ邵コ�スsuper+isa)
622//      private void makeChildNodeBrothers(ExbpNode exbpnode) {}       
623       
624        //      郢ァ�ッ郢晢スゥ郢ァ�ケ陋サ�カ驍擾ソス�帝恷�ソ郢ァ蜿・�ス騾�ソス�スonly RH
625//      private void makeChildNodeCConlyRH(ExbpNode exbpnode,String command) {}
626       
627        //      郢ァ�ッ郢晢スゥ郢ァ�ケ陋サ�カ驍擾ソス�帝恷�ソ郢ァ蜿・�ス騾�ソス�ス
628//      private void makeChildNodeReferringTo(ExbpNode exbpnode,String command) {}     
629
630//      郢ァ�ッ郢晢スゥ郢ァ�ケ陋サ�カ驍擾ソス�帝恷�ソ郢ァ蜿・�ス騾�ソス�ス郢ァ�オ郢晄じ縺帷ケ晢スュ郢晢ソス繝ィ郢ァ雋樊€ァ邵コ�セ邵コ�ェ邵コ�ス�ス#kozaki邵イ�ス009/08/19
631//      private void makeChildNodeReferringToDirectly(ExbpNode exbpnode,String command) {}     
632
633       
634//      String[] getOtionLists(Vector<ExbpNode> exbpnodes){}
635       
636       
637/*      public String[] getSelectedClass(String[] labels){
638                TreeSelectDialog treeSelectDialog = new TreeSelectDialog(true);
639            treeSelectDialog.setHZEditor(this.hzEditor);
640            treeSelectDialog.setSubLang(this.isSubLung);
641            treeSelectDialog.updateTree();
642            //treeSelectDialog.setSize(320, 450);
643            if(labels.length>0){
644                        String label = labels[0];
645                        for(int i=1;i<labels.length;i++){
646                                label +=" "+"\\" + Slot.OR_DELIMITER+" "+labels[i];
647                        }
648                        treeSelectDialog.setSelectedTreeDialog(labels, label);
649            }
650            treeSelectDialog.setVisible(true);
651        if (treeSelectDialog.isOK()) {
652                String[] cls_lists = treeSelectDialog.getSelectedHozoNodesByLabel();
653//              String opt = treeSelectDialog.getSelected();
654//              if(opt==null){
655//                              opt="Any";
656//                      }
657//              String[] cls_lists = opt.split(" "+"\\" + Slot.OR_DELIMITER+" ");
658            return cls_lists;
659        }
660        return null;
661        }*/
662       
663//      public Object[] getSelectedClasses(String target_cls){}
664       
665//      public Node[] getSelectedClassesAsNode(String target_cls){}
666
667//      public Node getHozoNode(String lbl){}   
668       
669//      public boolean isSubClassOfSelectedClasses(Object node, Object[] target_classes){}
670       
671//      public boolean isSubClass(Object node, Object target){}
672
673        //#kozaki 2009/02/13邵イ�スode[]郢ァ諡�ring[]邵コ�ォ陞溽判驪、
674//      public String[] NodesToStrings(Node[] nodes){}
675       
676        //#kozaki 2009/02/13邵イ�ス縺醍ケ晢スゥ郢ァ�ケ闕ウ�ス�ヲ�ァ郢ァ隱ーode[]邵コ�ァ陷ソ髢€�セ�ス
677//      public Node[] getSelectedClassNodes(Node[] nodes){}
678
679        //#hirota 2009/05/18邵イ�ス譛ェ闖ォ繧茨スヲ繧�スソ�オ闕ウ�ス�ヲ�ァ郢ァ隱ーode[]邵コ�ァ陷ソ髢€�セ�ス
680//      public Node[] getSelectedClassNodes2(Node[] nodes){
681//       return null;   
682//      }
683       
684        //#kozaki 09/02/15
685//      public void setSubLang(boolean b){}
686       
687}
688
689
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。