Class AbstractContainerPart<C extends org.eclipse.emf.ecore.EObject>

java.lang.Object
org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
com.amalgamasimulation.graphicaleditor.parts.AbstractContentPart<javafx.scene.Group>
com.amalgamasimulation.graphicaleditor.parts.AbstractContainerPart<C>
All Implemented Interfaces:
org.eclipse.gef.common.activate.IActivatable, org.eclipse.gef.common.adapt.IAdaptable, org.eclipse.gef.common.adapt.IAdaptable.Bound<org.eclipse.gef.mvc.fx.viewer.IViewer>, org.eclipse.gef.common.dispose.IDisposable, org.eclipse.gef.mvc.fx.parts.IContentPart<javafx.scene.Group>, org.eclipse.gef.mvc.fx.parts.IVisualPart<javafx.scene.Group>
Direct Known Subclasses:
AbstractLocatableContainerPart

public abstract class AbstractContainerPart<C extends org.eclipse.emf.ecore.EObject> extends AbstractContentPart<javafx.scene.Group>
  • Property Summary

    Properties inherited from class org.eclipse.gef.mvc.fx.parts.AbstractContentPart

    contentAnchoragesUnmodifiable, contentChildrenUnmodifiable, content

    Properties inherited from class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart

    active, adaptable, adapters, anchoragesUnmodifiable, anchoredsUnmodifiable, childrenUnmodifiable, parent, refreshVisual

    Properties inherited from interface org.eclipse.gef.common.activate.IActivatable

    active

    Properties inherited from interface org.eclipse.gef.common.adapt.IAdaptable

    adapters

    Properties inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound

    adaptable

    Properties inherited from interface org.eclipse.gef.mvc.fx.parts.IVisualPart

    anchoragesUnmodifiable, anchoredsUnmodifiable, childrenUnmodifiable, parent, refreshVisual
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.eclipse.gef.common.adapt.IAdaptable

    org.eclipse.gef.common.adapt.IAdaptable.Bound<A extends org.eclipse.gef.common.adapt.IAdaptable>

    Nested classes/interfaces inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound

    org.eclipse.gef.common.adapt.IAdaptable.Bound.Impl<T extends org.eclipse.gef.common.adapt.IAdaptable>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.eclipse.core.databinding.observable.list.IObservableList<Object>
     
    protected org.eclipse.core.databinding.observable.value.IObservableValue<C>
     
    protected Consumer<Boolean>
     

    Fields inherited from interface org.eclipse.gef.common.activate.IActivatable

    ACTIVE_PROPERTY

    Fields inherited from interface org.eclipse.gef.common.adapt.IAdaptable

    ADAPTERS_PROPERTY

    Fields inherited from interface org.eclipse.gef.mvc.fx.parts.IContentPart

    CONTENT_ANCHORAGES_PROPERTY, CONTENT_CHILDREN_PROPERTY, CONTENT_PROPERTY

    Fields inherited from interface org.eclipse.gef.mvc.fx.parts.IVisualPart

    ANCHORAGES_PROPERTY, ANCHOREDS_PROPERTY, CHILDREN_PROPERTY, PARENT_PROPERTY, REFRESH_VISUAL_PROPERTY
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addChildren(List<? extends org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node>> children, int index)
     
    void
     
    protected void
    doAddChildVisual(org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node> child, int index)
     
    protected void
    doAddContentChild(Object contentChild, int index)
     
    protected javafx.scene.Group
     
    protected com.google.common.collect.SetMultimap<? extends Object,String>
     
    protected List<? extends Object>
     
    protected void
    doRefreshVisual(javafx.scene.Group visual)
     
    protected void
    doRemoveChildVisual(org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node> child, int index)
     
    protected void
     
    protected abstract org.eclipse.core.databinding.observable.list.IObservableList<Object>
     
    protected abstract Comparator<Object>
     
     
     
    protected List<Object>
     
    boolean
     
    protected void
    removeChildContent(org.eclipse.emf.ecore.EObject childContent)
     
    void
    setContent(Object content)
     
    void
    setParent(org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node> newParent)
     
    void
    setUpdateRestricted(boolean updateRestricted)
     
    protected void
     
    void
     

    Methods inherited from class org.eclipse.gef.mvc.fx.parts.AbstractContentPart

    addContentChild, attachToContentAnchorage, contentAnchoragesUnmodifiableProperty, contentChildrenUnmodifiableProperty, contentProperty, detachFromContentAnchorage, doAttachToContentAnchorage, doDetachFromContentAnchorage, doReorderContentChild, getContentAnchoragesUnmodifiable, getContentChildrenUnmodifiable, isFocusable, isSelectable, refreshContentAnchorages, refreshContentChildren, register, registerAtContentPartMap, removeContentChild, reorderContentChild, unregister, unregisterFromContentPartMap

    Methods inherited from class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart

    activate, activateAdapters, activeProperty, adaptableProperty, adaptersProperty, anchoragesUnmodifiableProperty, anchoredsUnmodifiableProperty, attachAnchored, attachToAnchorage, attachToAnchorage, childrenUnmodifiableProperty, deactivate, deactivateAdapters, detachAnchored, detachFromAnchorage, detachFromAnchorage, determineViewer, doActivate, doAttachToAnchorageVisual, doDeactivate, doDetachFromAnchorageVisual, getAdaptable, getAdapter, getAdapter, getAdapter, getAdapterKey, getAdapters, getAdapters, getAdapters, getAnchoragesUnmodifiable, getAnchoredsUnmodifiable, getBehaviors, getHandlers, getParent, getPolicies, getRoot, getVisual, isActive, isRefreshVisual, parentProperty, refreshVisual, refreshVisualProperty, registerAtVisualPartMap, setAdaptable, setAdapter, setAdapter, setAdapter, setAdapter, setRefreshVisual, unregisterFromVisualPartMap, unsetAdapter

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.eclipse.gef.common.activate.IActivatable

    activate, activeProperty, deactivate, isActive

    Methods inherited from interface org.eclipse.gef.common.adapt.IAdaptable

    adaptersProperty, getAdapter, getAdapter, getAdapter, getAdapterKey, getAdapters, getAdapters, getAdapters, setAdapter, setAdapter, setAdapter, setAdapter, unsetAdapter

    Methods inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound

    adaptableProperty, getAdaptable, setAdaptable

    Methods inherited from interface org.eclipse.gef.mvc.fx.parts.IVisualPart

    anchoragesUnmodifiableProperty, anchoredsUnmodifiableProperty, attachAnchored, attachToAnchorage, attachToAnchorage, childrenUnmodifiableProperty, detachAnchored, detachFromAnchorage, detachFromAnchorage, getAnchoragesUnmodifiable, getAnchoredsUnmodifiable, getBehaviors, getHandlers, getParent, getPolicies, getRoot, getVisual, isRefreshVisual, parentProperty, refreshVisual, refreshVisualProperty, setRefreshVisual
  • Field Details

    • containerObservable

      protected org.eclipse.core.databinding.observable.value.IObservableValue<C extends org.eclipse.emf.ecore.EObject> containerObservable
    • childContentsObservable

      protected org.eclipse.core.databinding.observable.list.IObservableList<Object> childContentsObservable
    • redrawRestrictedListener

      protected Consumer<Boolean> redrawRestrictedListener
  • Constructor Details

    • AbstractContainerPart

      public AbstractContainerPart()
  • Method Details

    • getChildsContentComparator

      protected abstract Comparator<Object> getChildsContentComparator()
    • getChildContentsObservable

      protected abstract org.eclipse.core.databinding.observable.list.IObservableList<Object> getChildContentsObservable(C container)
    • removeChildContent

      protected void removeChildContent(org.eclipse.emf.ecore.EObject childContent)
    • setParent

      public void setParent(org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node> newParent)
      Specified by:
      setParent in interface org.eclipse.gef.mvc.fx.parts.IVisualPart<C extends org.eclipse.emf.ecore.EObject>
      Overrides:
      setParent in class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
    • doAddChildVisual

      protected void doAddChildVisual(org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node> child, int index)
      Overrides:
      doAddChildVisual in class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
    • doRemoveChildVisual

      protected void doRemoveChildVisual(org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node> child, int index)
      Overrides:
      doRemoveChildVisual in class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
    • doAddContentChild

      protected void doAddContentChild(Object contentChild, int index)
      Overrides:
      doAddContentChild in class org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
    • doCreateVisual

      protected javafx.scene.Group doCreateVisual()
      Specified by:
      doCreateVisual in class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
    • doGetContentAnchorages

      protected com.google.common.collect.SetMultimap<? extends Object,String> doGetContentAnchorages()
      Specified by:
      doGetContentAnchorages in class org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
    • addChildren

      public void addChildren(List<? extends org.eclipse.gef.mvc.fx.parts.IVisualPart<? extends javafx.scene.Node>> children, int index)
      Specified by:
      addChildren in interface org.eclipse.gef.mvc.fx.parts.IVisualPart<C extends org.eclipse.emf.ecore.EObject>
      Overrides:
      addChildren in class AbstractContentPart<javafx.scene.Group>
    • sortChilds

      protected void sortChilds()
    • doGetContentChildren

      protected List<? extends Object> doGetContentChildren()
      Specified by:
      doGetContentChildren in class org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
    • getVisibleChilds

      protected List<Object> getVisibleChilds(List<Object> elements)
    • updateChildsVisibility

      public void updateChildsVisibility()
    • doRefreshVisual

      protected void doRefreshVisual(javafx.scene.Group visual)
      Specified by:
      doRefreshVisual in class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
    • doRemoveContentChild

      protected void doRemoveContentChild(Object contentChild)
      Overrides:
      doRemoveContentChild in class org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
    • setContent

      public void setContent(Object content)
      Specified by:
      setContent in interface org.eclipse.gef.mvc.fx.parts.IContentPart<C extends org.eclipse.emf.ecore.EObject>
      Overrides:
      setContent in class org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
    • isUpdateRestricted

      public boolean isUpdateRestricted()
    • setUpdateRestricted

      public void setUpdateRestricted(boolean updateRestricted)
    • dispose

      public void dispose()
      Specified by:
      dispose in interface org.eclipse.gef.common.dispose.IDisposable
      Overrides:
      dispose in class org.eclipse.gef.mvc.fx.parts.AbstractVisualPart<javafx.scene.Group>
    • getContent

      public C getContent()
      Specified by:
      getContent in interface org.eclipse.gef.mvc.fx.parts.IContentPart<C extends org.eclipse.emf.ecore.EObject>
      Overrides:
      getContent in class org.eclipse.gef.mvc.fx.parts.AbstractContentPart<javafx.scene.Group>
    • getViewer

      public InfiniteCanvasViewer getViewer()