01: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
02: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
03: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
04: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
05: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
06: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
07: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
08: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
09: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
10: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
11: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
12: // POSSIBILITY OF SUCH DAMAGE.
13: //
14: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
15: package com.metaboss.applications.designstudio.userobjects;
16:
17: import com.metaboss.applications.designstudio.Application;
18: import com.metaboss.applications.designstudio.BasePropertiesDialog;
19: import com.metaboss.applications.designstudio.BaseUserObject;
20: import com.metaboss.applications.designstudio.propertiesdialogs.FieldPropertiesDialog;
21: import com.metaboss.applications.designstudio.propertiesview.PropertiesTableModel;
22: import com.metaboss.sdlctools.models.metabossmodel.MetaBossModelPackage;
23: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemimplementationmodel.Report;
24: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemimplementationmodel.ReportInputField;
25: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemimplementationmodel.ReportInputFieldClass;
26: import com.metaboss.sdlctools.models.metabossmodel.enterprisemodel.systemimplementationmodel.SystemImplementationModelPackage;
27:
28: /* Report input field user object */
29:
30: public class ReportInputFieldUserObject extends BaseUserObject {
31: ReportInputField mField = null;
32:
33: public ReportInputFieldUserObject(ReportInputField pField) {
34: super (pField, Application.FIELDS_ICON);
35: mField = pField;
36: }
37:
38: // create new field
39: public static void addNewReportInputField(Report pReport)
40: throws Exception {
41: new ReportInputFieldUserObject(null).addNewObject(
42: getObjectPackage(pReport), pReport.getInputFields());
43: }
44:
45: public BaseUserObject createNewObject(MetaBossModelPackage pPackage) {
46: SystemImplementationModelPackage lSystemImplementationModelPackage = pPackage
47: .getEnterpriseModel().getSystemImplementationModel();
48: ReportInputFieldClass lClass = lSystemImplementationModelPackage
49: .getReportInputField();
50: return new ReportInputFieldUserObject(lClass
51: .createReportInputField());
52: }
53:
54: public ReportInputField getField() {
55: return mField;
56: }
57:
58: // return object root node captions
59: public String getRootNodeName() {
60: return Application.getString("inputfields_node");
61: }
62:
63: // load object properties into grid control
64: public void loadObjectProperties(PropertiesTableModel pModel)
65: throws Exception {
66: super .loadObjectProperties(pModel);
67: if (pModel == null || mField == null)
68: return;
69:
70: addModelElement(pModel, "DataType", mField.getDataType());
71: pModel.AddProperty("Array", boolToString(mField.isArray()));
72: }
73:
74: // get object editor
75: public BasePropertiesDialog getObjectEditor() {
76: return new FieldPropertiesDialog();
77: }
78: }
|