package com.persagy.adm.diagram.core.model.base;

/**
 * 布局和绘制组件接口
 * @author zhaoyk
 */
public interface IComponent {

    String getId();

    void setId(String id);

    String getName();

    void setName(String name);

    String getCompType();

    IContainer getParent();

    void setParent(IContainer parent);

    void layout();

    XY getLocation();

    void setLocation(XY xy);

    XY getSize();

    PositionData getPosition();

    void setPosition(PositionData position);

    PositionData defaultPosition();

    boolean isAbsolutePosition();

    boolean isHidden();

//    Object getData(String key);
//
//    void setData(String key, Object value);

}
