KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > Raptor > transactions > removeNode_tr


1 /*******************************************************************************
2  * Copyright (c) 2004, Dirk von der Weiden.
3  * All rights reserved. This program and the accompanying materials
4  * are made available under the terms of the Common Public License v1.0
5  * which accompanies this distribution.
6  *
7  * Contributors:
8  * Dirk von der Weiden - initial API and implementation
9  *
10  * Created on 04.04.2004
11  *
12  * date: 04.04.2004
13  * project: WiSer Builder
14  *
15  *******************************************************************************/

16
17 package Raptor.transactions;
18
19 import java.util.*;
20
21 import Jmc.seviceLayer.base_transaction;
22 import Jmc.baseTools.*;
23 import Jmc.commonGui.*;
24 import Jmc.baseGui.*;
25
26 import Raptor.model.*;
27
28
29 /**
30  * @author Dirk
31  *
32  * date: 04.08.2003
33  * project: WiSer-Builder
34  *
35  * <p>
36  * ...
37  * </p>
38  */

39 public class removeNode_tr extends base_transaction
40 {
41   public removeNode_tr()
42   {
43     super();
44     
45     this.pcmf_setWorkFct(new work ());
46   }
47   
48   class work implements base_executableObject_if
49   {
50     public Object JavaDoc pcmf_execObj(Object JavaDoc xObj)
51     {
52       base_guiObj l_obj = (base_guiObj)xObj;
53       base_appl_if l_appl = l_obj.pcmf_getAppl();
54       raptor_mainModel l_model = (raptor_mainModel)l_appl.pcmf_getGuiObj().pcmf_getModel();
55       base_guiObj l_tree = l_model.getPem_appTree();
56
57       try
58       {
59         Iterator l_it = ((base_multiSelectable_if)l_tree).pcmf_getValues().pcmf_getValueIt();
60         Object JavaDoc l_select = null;
61         while (l_it.hasNext())
62         {
63           l_select = l_it.next();
64           if (l_select instanceof base_treeNode)
65           {
66             base_treeNode l_selNode = (base_treeNode)l_select;
67             base_treeNode l_pselNode = l_selNode.pcmf_getParentNode();
68             
69             if (l_selNode.pcmf_getName().equals("applications"))
70               throw(new Exception JavaDoc ("cannot remove root"));
71             
72             if (l_pselNode != null)
73             {
74               l_pselNode.pcmf_removeNode(l_selNode);
75               if (l_model.getPem_inEditor() != l_select)
76               {
77                 l_selNode.pcmf_delete();
78                 l_model.pcmf_addMessage("- node permantentely removed", raptor_mainModel.RAPTOR_INFO);
79               }
80             }
81           }
82         
83         l_model.setPem_inEditor(l_model.getPem_inEditor());
84         l_model.pcmf_createAutoWdgPreview();
85         }
86       }
87       catch (Exception JavaDoc e)
88       {
89         l_model.pcmf_addMessage("- please mark a node which can be removed", raptor_mainModel.RAPTOR_INFO);
90         base_log.pcmf_logException(l_appl.pcmf_getGuiObj().pcmf_getName(), this, e);
91       };
92
93       l_tree.pcmf_repaint();
94       l_appl.pcmf_setActive(null);
95
96       return (null);
97     };
98   };
99 }
Popular Tags