KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > Raptor > transactions > createNewWidget_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 Jmc.seviceLayer.base_transaction;
20 import Jmc.baseTools.*;
21 import Jmc.commonGui.*;
22 import Jmc.baseGui.*;
23 import Jmc.model.*;
24
25 import java.util.*;
26
27 import Raptor.model.*;
28
29 /**
30  *
31  * @author Dirk
32  *
33  * Created: 2003
34  * Comment: Arbeitet als Listener des "create new widget" Buttons. Es erzeugt ein
35  * neues uniwidget, transferiert die Daten in die View und aktiviert diese.
36  * Zudem wird im Modell das aktuelle Edit-Objekt gesetzt.
37  */

38 public class createNewWidget_tr extends base_transaction
39 {
40     public createNewWidget_tr()
41     {
42         super();
43     
44     this.pcmf_setWorkFct(new work ());
45     }
46   
47   class work implements base_executableObject_if
48   {
49     public Object JavaDoc pcmf_execObj(Object JavaDoc xObj)
50     {
51       base_guiObj l_obj = (base_guiObj)xObj;
52       base_appl_if l_appl = l_obj.pcmf_getAppl();
53       raptor_mainModel l_model= (raptor_mainModel)l_appl.pcmf_getGuiObj().pcmf_getModel();
54       base_guiObj l_tree = l_model.getPem_appTree();
55       base_treeNode l_inEd = (base_treeNode)l_model.getPem_inEditor();
56
57       try
58       {
59         base_guiObj l_selector = l_model.getPem_widgetSelect();
60         String JavaDoc l_selected = l_selector.pcmf_getValue().toString();
61         
62         base_guiObj l_parContainer = l_model.getPem_editWin();
63         base_guiObj l_parTab = null;
64         
65         base_multipleModelValue_if l_new = (base_multipleModelValue_if)l_appl.pcmf_getGuiObj().pcmf_newModelValue(l_selected, true);
66         if (l_new != null)
67           l_parTab = l_new.pcmf_getUiMap();
68         
69         ((base_treeNode)l_new).pcmf_HideAll();
70           
71         if (l_inEd != null && l_inEd.pcmf_getParentNode() == null)
72         {
73           l_inEd.pcmf_releaseSubs();
74           l_model.pcmf_addMessage("- node permantentely removed", raptor_mainModel.RAPTOR_INFO);
75         }
76         if (l_parTab != null)
77         {
78           base_guiObj l_actObj = null;
79           Iterator l_it = l_parContainer.pcmf_getSubIterator();
80           Object JavaDoc l_test = null;
81           while (l_it.hasNext())
82           {
83             l_test = l_it.next();
84             if (l_test instanceof base_eventChannel_if == false)
85             {
86               l_actObj = (base_guiObj)l_test;
87               break;
88             }
89           }
90           String JavaDoc act = null;
91           if (l_actObj != null)
92           {
93             act = l_actObj.pcmf_getName();
94             l_parContainer.pcmf_removeNode(act);
95           };
96           
97           l_new.pcmf_model2UI();
98           l_parContainer.pcmf_addNode(l_parTab.pcmf_getName(), l_parTab);
99           ((base_guiContainer_if)l_parContainer).pcmf_setGuiObjPosition(l_parTab.pcmf_getName(), 0, 0, 1, 1, "WEST");
100           
101           l_model.setPem_inEditor(l_new);
102           l_model.pcmf_createAutoWdgPreview();
103         }
104         else
105           base_log.pcmf_log(l_appl.pcmf_getGuiObj().pcmf_getName(), "Widget not found", this, base_log.ERROR);
106           
107         l_tree.pcmf_dispatchEvent();
108       }
109       catch (Exception JavaDoc e)
110       {
111         l_model.pcmf_addMessage("- please mark a valid object to show in the detail-editor", raptor_mainModel.RAPTOR_MESSAGE);
112         base_log.pcmf_logException(l_appl.pcmf_getGuiObj().pcmf_getName(), this, e);
113       };
114
115       return (null);
116     };
117   };
118 }
Popular Tags