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.datadictionarymodel.AbstractDataField;
23:
24: /* Abstract data field user object */
25:
26: public class AbstractDataFieldUserObject extends BaseUserObject {
27: private AbstractDataField mAbstractField = null;
28:
29: public AbstractDataFieldUserObject(AbstractDataField pField) {
30: super (pField, Application.FIELDS_ICON);
31: mAbstractField = pField;
32: }
33:
34: public AbstractDataField getAbstractField() {
35: return mAbstractField;
36: }
37:
38: // return object root node captions
39: public String getRootNodeName() {
40: return Application.getString("fields_node");
41: }
42:
43: // load object properties into grid control
44: public void loadObjectProperties(PropertiesTableModel pModel)
45: throws Exception {
46: super .loadObjectProperties(pModel);
47: if (pModel == null || mAbstractField == null)
48: return;
49:
50: addModelElement(pModel, "DataType", mAbstractField
51: .getDataType());
52: addModelElement(pModel, "StructureType", mAbstractField
53: .getStructureType());
54: pModel.AddProperty("Array", boolToString(mAbstractField
55: .isArray()));
56: }
57:
58: // get object editor
59: public BasePropertiesDialog getObjectEditor() {
60: return new FieldPropertiesDialog();
61: }
62:
63: // can duplicate model element
64: public boolean canDuplicate() {
65: return true;
66: }
67: }
|