/** * Заполнить держатель атрибутов * * @param gl Глиф, с которого получаем атрибуты * @return Получить хранитель атрибутов */ public static AttributeHolder fillAttributeHolder(Glyph gl) { AttributeHolder attributeHolder = new AttributeHolder(); Integer uid = gl.getId(); attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_UID, uid); Integer type = gl.getType(); attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_TYPE, type); Color color = gl.getColor(); attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_COLOR, color); String text = gl.getText(); if (text != null) { attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_TEXT, text); } int status = gl.getStatus(); attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_STATUS, status); Point[] aPoints = gl.getCoo(); if (aPoints == null) { // Для отладки throw new NullPointerException(gl + " :has got null point array"); } if (aPoints.length > 0) { attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_COORDS, aPoints); } Boolean bEditable = gl.isEditable(); attributeHolder.addAttr(AttributeHolder.Attribute.ATTR_EDIT, bEditable); return attributeHolder; }
/** * Добавить атриьут * * @param attrId Идентификатор атрибута * @param attrValue Значение атрибута */ public void addAttr(AttributeHolder.Attribute attrId, Object attrValue) { attrHolder.addAttr(attrId, attrValue); }