我試圖繪製包含一個單獨的實體,其中包含多個元素內的圖。
我的MVC結構看起來是這樣的:
型號:包含EntityModel.java和ElementModel.java代表我的模型對象。
查看: EntityFigure.java和ElementFigure.java
控制器: EntityEditPart.java和ElementEditPart.java
如何計算圖形的大小,包括GEF中的所有子圖(具有單獨的編輯部分)?
我重寫getModelChildren方法()在EntityEditPart.java返回ElementModel.java的列表,以便這就是GEF如何知道一個元素「屬於」一個實體。
由於我想計算我的實體的圖形大小並在此計算中包含嵌入的元素,因此在EntityEditPart.java中的createFigure()期間無法調用entityFigure.getPreferredSize(),因爲此時元素數字不存在(ElementEditPart.java中的createFigure()不會被調用)。
我正在尋找一個地方來設置我的實體形象,所有兒童人物創建後。
我雖然要在ElementEditPart.java中重寫addNotify(),但是它在創建特定的內部元素之後被調用,而不是在創建所有元素之後調用。
任何想法?
希望我很清楚......